[go: up one dir, main page]

JP2017521788A - Bridging interbus communication - Google Patents

Bridging interbus communication Download PDF

Info

Publication number
JP2017521788A
JP2017521788A JP2017501003A JP2017501003A JP2017521788A JP 2017521788 A JP2017521788 A JP 2017521788A JP 2017501003 A JP2017501003 A JP 2017501003A JP 2017501003 A JP2017501003 A JP 2017501003A JP 2017521788 A JP2017521788 A JP 2017521788A
Authority
JP
Japan
Prior art keywords
address
bus
access request
requester
address range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017501003A
Other languages
Japanese (ja)
Other versions
JP6464253B2 (en
Inventor
アーバール,イガル
アーマド,サグヒーア
アザド,サロシュ・アイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xilinx Inc
Original Assignee
Xilinx Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xilinx Inc filed Critical Xilinx Inc
Publication of JP2017521788A publication Critical patent/JP2017521788A/en
Application granted granted Critical
Publication of JP6464253B2 publication Critical patent/JP6464253B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/145Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Small-Scale Networks (AREA)
  • Bus Control (AREA)

Abstract

第1のバスと第2のバスとの間の通信のブリッジングのための方策が開示される。アドレス変換情報と、関連付けられたセキュリティ指標とがメモリ内に記憶される(202)。第1のバスからの各アクセス要求は、第1のリクエスタセキュリティ指標と要求されたアドレスとを含む。リクエスタセキュリティ指標と、要求されたアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標とに基づいて、第1のバスから第2のバスへ向けられた各アクセス要求は、拒否されるか(214)、または、変換されて(210)第2のバスへ伝達される(212)。第2のバスから第1のバスへの各アクセス要求は、要求されたアドレスを含む。このアクセス要求は変換されて(226)、上記要求されたアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標と共に、第1のバスへ伝達される(228)。A strategy for bridging communications between a first bus and a second bus is disclosed. The address translation information and the associated security index are stored in memory (202). Each access request from the first bus includes a first requester security indicator and the requested address. Based on the requester security indicator and the security indicator associated with the address translation information for the requested address, each access request directed from the first bus to the second bus is denied (214); Alternatively, it is converted (210) and transmitted to the second bus (212). Each access request from the second bus to the first bus includes the requested address. This access request is translated (226) and transmitted to the first bus along with the security indicator associated with the address translation information for the requested address (228).

Description

発明の分野
本開示は、概してバス間の通信をブリッジングすることに関する。
The present disclosure relates generally to bridging communication between buses.

背景
バスは、電子回路内の異なるデバイス間でデータを転送するインターコネクトサブシステムまたは回路である。バスを介して効果的に通信するために、バスは、当該バスに接続された各デバイスが従うべき1組のルールおよび接続を規定する。バスに接続され得るデバイスの例として、たとえばプロセッサ、メモリ、外部システムへのブリッジが含まれ得るが、これらに限定されない。バスは、ポイントツーポイント接続と違って、共通の1組の線を介して複数の周辺機器を接続可能である。
Background A bus is an interconnect subsystem or circuit that transfers data between different devices in an electronic circuit. In order to communicate effectively over a bus, the bus defines a set of rules and connections that each device connected to the bus must follow. Examples of devices that may be connected to the bus may include, but are not limited to, for example, a processor, memory, and a bridge to an external system. Unlike a point-to-point connection, a bus can connect a plurality of peripheral devices via a common set of lines.

多くの電子システムは複数のバスを含むことにより、並行して複数のデバイス間でデータを転送することが容易になる。いくつかのシステムにおいて、或るプロトコルを実現するバスから別の異なるプロトコルを実現するバスにデータが転送されてもよい。異なるプロトコルを実現するバスを接続することにより、互換性の問題が生じる場合がある。たとえば、AMBA(Advanced Microcontroller Bus Architecture)のAXI(Advanced eXtensible Interface)は、ソフトウェアにより制御され、かつ、ハードウェアにより実施されるセキュアなアイソレーションと、バスに接続された非セキュアなリソースとをサポートする。一方、PCIエクスプレス(PCIe:Peripheral Component Interconnect express)バスアーキテクチャは、同様のセキュリティを提供しない。異なるバスは異なる特徴を有するため、バスを接続することは問題をはらむ場合がある。   Many electronic systems include multiple buses, making it easier to transfer data between multiple devices in parallel. In some systems, data may be transferred from a bus that implements one protocol to a bus that implements a different protocol. By connecting buses that implement different protocols, compatibility issues may arise. For example, Advanced Microcontroller Bus Architecture (AMBA) Advanced eXtensible Interface (AXI) supports secure isolation controlled by software and implemented by hardware and non-secure resources connected to the bus . On the other hand, the PCI Express (PCIe: Peripheral Component Interconnect express) bus architecture does not provide similar security. Because different buses have different characteristics, connecting the buses can be problematic.

概要
一実施形態において、第1のバスと第2のバスとの間の通信のブリッジングの方法は、アドレス変換情報と、関連付けられたセキュリティ指標とをメモリ内に記憶するステップを含む。第1のバスから受信された各第1のアクセス要求は、第1のリクエスタセキュリティ指標と第1のアドレスとを含む。各第1のアクセス要求に応答して、上記方法は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否する。第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、第1のアクセス要求は、アドレス変換情報を用いて第2のバス用の第2のアクセス要求に変換され、第2のアクセス要求は、第2のバスに伝達される。第2のバスから受信された各第3のアクセス要求は、第3のアドレスを含む。各第3のアクセス要求に応答して、上記方法は、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換する。上記方法は、第4のアクセス要求を、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標と共に、第1のバスに伝達する。
Overview In one embodiment, a method for bridging communication between a first bus and a second bus includes storing address translation information and an associated security indicator in memory. Each first access request received from the first bus includes a first requester security indicator and a first address. In response to each first access request, the method includes the first requester security indicator representing a non-secure requester and the security indicator associated with the address translation information for the first address being a secure address. In response to representing the range, the first access request is denied. In response to the first requester security indicator representing a secure requester, the first access request is translated into a second access request for the second bus using the address translation information, and the second access The request is communicated to the second bus. Each third access request received from the second bus includes a third address. In response to each third access request, the method uses the address translation information to convert the third access request into a fourth access request for the first bus. The method communicates the fourth access request to the first bus along with a security indicator associated with the address translation information for the fourth address.

別の実施形態において、第1のバスと第2のバスとの間の通信のためのブリッジ回路は、アドレス変換情報と、関連付けられたセキュリティ指標とを記憶するように構成可能であるメモリを備える。送出回路が、メモリと第1および第2のバスとに結合される。送出回路は、第1のバスから第1のアクセス要求を受信するように構成され、各第1のアクセス要求は第1のリクエスタセキュリティ指標と第1のアドレスとを含む。各第1のアクセス要求に関して、送出回路は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否するように構成されている。送出回路は、第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、アドレス変換情報を用いて第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成されている。入来回路が、メモリと第1および第2のバスとに結合される。入来回路は、第2のバスから第3のアクセス要求を受信するように構成され、各第3のアクセス要求は第3のアドレスを含む。入来回路は、さらに、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換するように構成されている。入来回路は、第4のアクセス要求を、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標と共に、第1のバスに伝達するように構成されている。   In another embodiment, a bridge circuit for communication between a first bus and a second bus comprises a memory that is configurable to store address translation information and an associated security indicator. . A delivery circuit is coupled to the memory and the first and second buses. The sending circuit is configured to receive a first access request from a first bus, each first access request including a first requester security indicator and a first address. For each first access request, the sending circuit indicates that the first requester security indicator represents a non-secure requester, and the security indicator associated with the address translation information for the first address represents a secure address range. In response, the first access request is configured to be rejected. In response to the first requestor security indicator representing a secure requester, the sending circuit uses the address translation information to convert the first access request to a second access request for the second bus, and The second access request is transmitted to the second bus. An incoming circuit is coupled to the memory and the first and second buses. The incoming circuit is configured to receive a third access request from the second bus, and each third access request includes a third address. The incoming circuit is further configured to convert the third access request into a fourth access request for the first bus using the address translation information. The incoming circuit is configured to communicate the fourth access request to the first bus along with a security indicator associated with the address translation information for the fourth address.

別の実施形態において、システムが提供される。このシステムは、第1のバスと、第1のバスに結合された第1の組のマスター・スレーブ回路と、第2のバスと、第1のバスと第2のバスとの間に結合されたブリッジ回路と、第2のバスに結合された第2の組のマスター・スレーブ回路とを含む。ブリッジ回路は、アドレス変換情報と、関連付けられたセキュリティ指標とを記憶するように構成可能であるメモリを備える。送出回路が、メモリと第1および第2のバスとに結合される。送出回路は、第1のバスから第1のアクセス要求を受信するように構成され、各第1のアクセス要求は第1のリクエスタセキュリティ指標と第1のアドレスとを含む。各第1のアクセス要求に関して、送出回路は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否するように構成されている。送出回路は、第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、アドレス変換情報を用いて第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成されている。入来回路が、メモリと第1および第2のバスとに結合される。入来回路は、第2のバスから第3のアクセス要求を受信するように構成され、各第3のアクセス要求は第3のアドレスを含む。入来回路は、さらに、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換するように構成されている。入来回路は、第4のアクセス要求を、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標と共に、第1のバスに伝達するように構成されている。   In another embodiment, a system is provided. The system is coupled between a first bus, a first set of master / slave circuits coupled to the first bus, a second bus, and the first bus and the second bus. And a second set of master / slave circuits coupled to the second bus. The bridge circuit comprises a memory that can be configured to store address translation information and associated security indicators. A delivery circuit is coupled to the memory and the first and second buses. The sending circuit is configured to receive a first access request from a first bus, each first access request including a first requester security indicator and a first address. For each first access request, the sending circuit indicates that the first requester security indicator represents a non-secure requester, and the security indicator associated with the address translation information for the first address represents a secure address range. In response, the first access request is configured to be rejected. In response to the first requestor security indicator representing a secure requester, the sending circuit uses the address translation information to convert the first access request to a second access request for the second bus, and The second access request is transmitted to the second bus. An incoming circuit is coupled to the memory and the first and second buses. The incoming circuit is configured to receive a third access request from the second bus, and each third access request includes a third address. The incoming circuit is further configured to convert the third access request into a fourth access request for the first bus using the address translation information. The incoming circuit is configured to communicate the fourth access request to the first bus along with a security indicator associated with the address translation information for the fourth address.

他の特徴は、以下の詳細な説明および特許請求の範囲を考慮することにより理解されるであろう。   Other features will be understood by consideration of the following detailed description and claims.

以下の詳細な説明を検討し、かつ図面を参照すれば、方法およびシステムのさまざまな局面および特徴が明らかになるであろう。   Various aspects and features of the methods and systems will become apparent upon review of the following detailed description and upon reference to the drawings.

ハードウェアにより実施される制御をセキュアなリソースおよび非セキュアなリソースに対して提供する第1のバスと、第1のバスのセキュリティ機構を認識しない第2のバスとの間で通信するためのブリッジ回路を含むシステムを示す図である。Bridge for communicating between a first bus that provides control implemented by hardware to secure and non-secure resources and a second bus that does not recognize the security mechanism of the first bus 1 is a diagram showing a system including a circuit. FIG. 第1のバスと第2のバスとの間の通信のブリッジングに関する処理の例のフローチャートである。It is a flowchart of the example of the process regarding bridging of communication between the 1st bus and the 2nd bus. 図1のブリッジング回路と図2の処理とが実現され得るプログラマブル集積回路(IC:integrated circuit)を示す図である。FIG. 3 is a diagram showing a programmable integrated circuit (IC) in which the bridging circuit of FIG. 1 and the processing of FIG. 2 can be realized.

図面の詳細な説明
以下の説明において、本明細書で提示する具体例を説明するために、多くの具体的詳細を示す。しかしながら、下記の具体的詳細のうち必ずしもすべてが無くても、1つ以上の他の例および/またはこれらの例の変形例を実践し得ることが、当業者に明らかになるはずである。他の例において、本明細書中の例の説明が不鮮明にならないように、公知の特徴については詳述していない。説明を容易にするために、異なる図中で同じ参照番号を用いて同じ事項を指すことがある。一方、別の例では、事項が異なることもある。
DETAILED DESCRIPTION OF THE DRAWINGS In the following description, numerous specific details are set forth in order to describe the specific examples presented herein. However, it should be apparent to one skilled in the art that one or more other examples and / or variations on these examples may be practiced without all of the specific details described below. In other instances, well known features have not been described in detail so as not to obscure the description of the examples herein. For ease of explanation, the same reference numerals may be used in different figures to refer to the same items. On the other hand, in another example, matters may be different.

開示されたブリッジ回路は、第2のバスとの通信のブリッジングにおいて、第1のバスにより実現されるセキュリティ手段を収容する。第2のバスは、第1のバスのセキュリティ機構を実現しない。1つの方策によれば、ブリッジ回路は、アドレス変換情報と、関連付けられたセキュリティ指標とを記憶する。アドレス変換情報を用いて、第1のバスのアドレス空間と第2のバスのアドレス空間との間でアドレスが変換される。アドレス変換情報に関連付けられたセキュリティ指標は、異なるアドレス範囲が異なるセキュリティ指定を有し得るように構成可能である。   The disclosed bridge circuit accommodates security means implemented by the first bus in bridging communication with the second bus. The second bus does not implement the security mechanism of the first bus. According to one strategy, the bridge circuit stores address translation information and associated security indicators. Using the address translation information, an address is translated between the address space of the first bus and the address space of the second bus. The security indicator associated with the address translation information can be configured such that different address ranges can have different security designations.

ブリッジ回路により第1のバスから受信されたアクセス要求は要求されたアドレスを参照し、関連付けられたリクエスタセキュリティ指標を有する。要求されたアドレスは、第1のバスの第1のアドレス空間内のアドレスを参照する。リクエスタセキュリティ指標は、リクエスタのセキュリティ設定を表わす。たとえばリクエスタのセキュリティ設定は、セキュアであるか非セキュアであるかであってもよい。   The access request received from the first bus by the bridge circuit refers to the requested address and has an associated requester security indicator. The requested address refers to an address in the first address space of the first bus. The requester security indicator represents the security setting of the requester. For example, the requester's security settings may be secure or non-secure.

リクエスタが非セキュアである旨をリクエスタセキュリティ指標が表わすこと、かつ、要求されたアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、ブリッジ回路は、第1のバス上のリクエスタから第2のバス上の宛先へのアクセス要求を拒否する。リクエスタが非セキュアであり、かつ、要求されたアドレス範囲が非セキュアであることをリクエスタセキュリティ指標が表わす場合、ブリッジ回路は、アドレス変換情報を用いてアクセス要求を第2のバス用のアクセス要求に変換する。リクエスタがセキュアであることをリクエスタセキュリティ指標が表わす場合、ブリッジ回路は、セキュアなアドレス範囲および非セキュアなアドレス範囲の両方について、アドレス変換情報を用いてアクセス要求を第2のバス用のアクセス要求に変換する。変換されたアクセス要求は第2のバスに伝達される。   In response to the requester security indicator indicating that the requester is non-secure and the security indicator associated with the address translation information for the requested address represents a secure address range, the bridge circuit includes a first Request from the requester on the second bus to the destination on the second bus is rejected. If the requester security indicator indicates that the requester is non-secure and the requested address range is non-secure, the bridge circuit uses the address translation information to turn the access request into an access request for the second bus. Convert. If the requester security indicator indicates that the requester is secure, the bridge circuit uses the address translation information to turn the access request into an access request for the second bus for both the secure address range and the non-secure address range. Convert. The converted access request is transmitted to the second bus.

ブリッジ回路により第2のバスから受信されたアクセス要求は要求されたアドレスを参照するが、関連付けられたリクエスタセキュリティ指標は存在しない。要求されたアドレスは、第2のバスの第2のアドレス空間内のアドレスを参照する。第2のバスを介して受信された要求について、ブリッジ回路は、アドレス変換情報を用いて当該要求を第1のバス用のアクセス要求に変換する。次いでブリッジ回路は、変換されたアクセス要求を、アドレス変換情報に関連付けられたセキュリティ指標と共に第1のバスに伝達する。   The access request received from the second bus by the bridge circuit refers to the requested address, but there is no associated requester security indicator. The requested address refers to an address in the second address space of the second bus. For a request received via the second bus, the bridge circuit converts the request into an access request for the first bus using the address translation information. The bridge circuit then communicates the translated access request to the first bus along with a security indicator associated with the address translation information.

図1は、ハードウェアにより実施される制御をセキュアなリソースおよび非セキュアなリソースに対して提供する第1のバスと、第1のバスのセキュリティ機構を認識しない第2のバスとの間で通信するためのブリッジ回路を含むシステム100を示す。図示はしないが、ブリッジおよびバスは、図示されたアドレスチャネルの他にデータチャネルを提供することが理解されるであろう。   FIG. 1 illustrates communication between a first bus that provides control implemented by hardware to secure and non-secure resources and a second bus that does not recognize the security mechanism of the first bus. 1 shows a system 100 that includes a bridge circuit for Although not shown, it will be understood that the bridge and bus provide a data channel in addition to the illustrated address channel.

システム100は、第1のバス104に結合された第1の組のマスター・スレーブ回路102と、ブリッジ回路106と、バスコントローラ108と、第2のバス110と、第2のバスに結合された第2の組のマスター・スレーブ回路112とを含む。第1の組のマスター・スレーブ回路102は、1つ以上のマスター回路と1つ以上のスレーブ回路とを含んでもよく、第2の組のマスター・スレーブ回路112は、1つ以上のマスター回路と1つ以上のスレーブ回路とを含んでもよい。マスター回路の例としては、マイクロプロセッサ、ダイレクトメモリアクセス(DMA:direct memory access)回路、および/またはデジタルシグナルプロセッサ(DSP:digital signal processor)が含まれる。スレーブ回路の例としては、フラッシュメモリデバイス、ソリッドステートドライブ、またはハードディスクドライブが含まれる。ブリッジ回路106は、第1のバス104上のスレーブ回路の一例である。   The system 100 is coupled to a first set of master / slave circuits 102, a bridge circuit 106, a bus controller 108, a second bus 110, and a second bus coupled to a first bus 104. And a second set of master / slave circuits 112. The first set of master / slave circuits 102 may include one or more master circuits and one or more slave circuits, and the second set of master / slave circuits 112 may include one or more master circuits and One or more slave circuits may be included. Examples of a master circuit include a microprocessor, a direct memory access (DMA) circuit, and / or a digital signal processor (DSP). Examples of slave circuits include flash memory devices, solid state drives, or hard disk drives. The bridge circuit 106 is an example of a slave circuit on the first bus 104.

ブリッジ回路106は、第1のバス104と第2のバス110との間で要求を変換する。バスは、さまざまなアドレス空間、さまざまな物理構成、およびさまざまなセキュリティ機構を有し得る。たとえば、バス104は、AXIバスなどのパラレルバスであってもよく、バス110は、PCIeなどのシリアルバスであってもよい。また、AXIバスは、セキュアなリソースと非セキュアなリソースとを分離する。AXIバス上において、デバイスがセキュアであるか非セキュアであるかを表わすセキュリティプロファイルが各デバイスに割当てられてもよい。メモリアクセストランザクションは、リクエスタのセキュリティレベルを表わすようにタグが付けられ、タグはインターコネクトシステムにわたって伝達される。非セキュアなマスターデバイスまたは非セキュアなソフトウェアタスクは、非セキュアなメモリ領域または非セキュアなスレーブデバイスのみへのアクセスが許可される。セキュアなマスターデバイスまたはセキュアなソフトウェアタスクは、セキュアなメモリ領域および非セキュアなメモリ領域の両方へのアクセスが許可される。AXIバス上において、トランザクションセキュリティは、セキュリティ指標142に相当するAxPROT[1]信号(xは読取チャネルを表わすRおよび書込チャネルを表わすWを示す)の状態により表わされる。PCIeバス上において、トランザクションと共に送信される同様のセキュリティ情報は存在しない。   The bridge circuit 106 translates requests between the first bus 104 and the second bus 110. The bus may have different address spaces, different physical configurations, and different security mechanisms. For example, the bus 104 may be a parallel bus such as an AXI bus, and the bus 110 may be a serial bus such as PCIe. The AXI bus separates secure resources and non-secure resources. On the AXI bus, each device may be assigned a security profile that indicates whether the device is secure or non-secure. Memory access transactions are tagged to represent the requester's security level and the tag is communicated across the interconnect system. Non-secure master devices or non-secure software tasks are allowed access only to non-secure memory regions or non-secure slave devices. A secure master device or secure software task is allowed access to both secure and non-secure memory areas. On the AXI bus, transaction security is represented by the state of the AxPROT [1] signal corresponding to security indicator 142 (where x represents R for read channel and W for write channel). There is no similar security information sent with the transaction on the PCIe bus.

送出回路122は、第1のバス104上のリクエスタ(マスター回路)からの要求を、第2のバス110上のスレーブ回路に好適な要求に変換する。入来回路124は、第2のバス110上のリクエスタからの要求を、第1のバス104上のスレーブ回路に好適な要求に変換する。送出変換回路および入来変換回路は、2つのアドレス空間の間でアドレスを変換し、アドレス範囲マップ126を用いて第1のバスのセキュリティ機構を実施する。アドレス範囲マップは、たとえば、1つ以上のデュアルポートメモリ128で実現されてもよい。実施の一例において、アドレス範囲マップ126は、構成信号130を介して構成可能であってもよい。   The sending circuit 122 converts the request from the requester (master circuit) on the first bus 104 into a request suitable for the slave circuit on the second bus 110. The incoming circuit 124 converts the request from the requester on the second bus 110 into a request suitable for the slave circuit on the first bus 104. The send translation circuit and the incoming translation circuit translate the address between the two address spaces and implement the first bus security mechanism using the address range map 126. The address range map may be implemented with one or more dual port memories 128, for example. In one example implementation, address range map 126 may be configurable via configuration signal 130.

各アドレス範囲マップは、それぞれのアドレスの範囲を記述する。アドレス範囲マップにおける情報は、アドレス範囲のサイズ132と、リモートベースアドレス134と、ローカルベースアドレス136と、セキュリティ指標138とを指定する。アドレス範囲のサイズは、たとえば、範囲内のアドレス可能なワード数を表わす。リモートベースアドレスは、第2のバス110のアドレス空間内の、アドレス範囲が始まるベースアドレスを表わす。ローカルベースアドレスは、第1のバス104のアドレス空間内の、アドレス範囲が始まるベースアドレスを表わす。セキュリティ指標138は、アドレス範囲がセキュアであるか非セキュアであるかを表わす。   Each address range map describes the range of each address. The information in the address range map specifies an address range size 132, a remote base address 134, a local base address 136, and a security index 138. The size of the address range represents, for example, the number of addressable words within the range. The remote base address represents the base address within the address space of the second bus 110 where the address range begins. The local base address represents the base address within the address space of the first bus 104 where the address range begins. Security indicator 138 represents whether the address range is secure or non-secure.

送出回路は、第1のバス104からアクセス要求を受信する。各アクセス要求(本明細書においてトランザクションと称される場合もある)は、リクエスタセキュリティ指標142とアドレス144とを含む。セキュリティ指標は、要求を開始したマスター回路のセキュリティレベル、たとえば、セキュアであるか非セキュアであるかを指定する。アドレスは、第1のバス104のアドレス空間のアドレスを参照する。アクセス要求に応答して、送出回路は、リクエスタセキュリティ指標と、要求されたアドレスに関連付けられたセキュリティ指標とに基づき、当該要求を変換して第2のバス110に伝達するか否かを判断する。リクエスタがセキュアであることをリクエスタセキュリティ指標が表わす場合、送出回路は、第1のバスからのアクセス要求を、第2のバス用のアクセス要求に変換する。特に、要求されたアドレスは、当該要求されたアドレスが該当するアドレス範囲を指定する、アドレスマップ126のうちの1つを用いて変換される(ローカルベースアドレス<=要求されたアドレス<=(ローカルベースアドレス+サイズ))。送出回路により出力されるアドレス146は、第2のバス110のアドレス空間内のアドレスであり、(要求されたアドレス−ローカルベースアドレス)+リモートベースアドレスと等しい。リクエスタセキュリティ指標が非セキュアなリクエスタを表わし、かつ、要求されたアドレスに関するアドレス変換情報が非セキュアなアドレス範囲を表わす場合、送出回路は上述のようにアクセス要求を変換する。リクエスタが非セキュアである旨をリクエスタセキュリティ指標が表わすこと、かつ、要求されたアドレスがセキュアなアドレス範囲内である旨をアドレス範囲に関連付けられたセキュリティ指標が表わすことに応答して、送出回路はアクセス要求を拒否する。この拒否は、送出回路からの拒否信号148によって表わされてもよい。   The sending circuit receives an access request from the first bus 104. Each access request (sometimes referred to herein as a transaction) includes a requester security indicator 142 and an address 144. The security indicator specifies the security level of the master circuit that initiated the request, for example, secure or non-secure. The address refers to an address in the address space of the first bus 104. In response to the access request, the sending circuit determines whether to convert the request and transmit it to the second bus 110 based on the requester security index and the security index associated with the requested address. . If the requester security indicator indicates that the requester is secure, the sending circuit converts the access request from the first bus into an access request for the second bus. In particular, the requested address is translated using one of the address maps 126 that specify the address range to which the requested address falls (local base address <= requested address <= (local Base address + size)). The address 146 output by the sending circuit is an address in the address space of the second bus 110 and is equal to (requested address−local base address) + remote base address. If the requester security indicator represents a non-secure requester and the address translation information for the requested address represents a non-secure address range, the sending circuit translates the access request as described above. In response to the requester security indicator indicating that the requester is non-secure and the security indicator associated with the address range indicating that the requested address is within the secure address range, the sending circuit is Deny access request. This rejection may be represented by a rejection signal 148 from the sending circuit.

入来回路124は、第1のバス104上のデバイスにアドレス指定された、第2のバス110上のリクエスタからの要求を受信して処理する。第2のバスからの要求は、要求されたアドレス152を含むが、第1のバス104からの要求が含むようなリクエスタセキュリティ指標を含まない。入来回路は、アドレス範囲マップのうちの1つを用いて、第2のバス110からのアクセス要求を、第1のバス104用のアクセス要求に変換する。上記1つのアドレス範囲マップは、(リモートベースアドレス<=要求されたアドレス<=(リモートベースアドレス+サイズ))である。入来回路により出力されたアドレス154は、第1のバス104のアドレス空間内のアドレスであり、(要求されたアドレス−リモートベースアドレス)+ローカルベースアドレスである。アドレス154と共に、入来回路は、要求されたアドレスのアドレス範囲に関連付けられたセキュリティ指標156を伝達する。このように、アドレス範囲に関連付けられたセキュリティ指標は、第1のバス104にアクセス要求を送るすべてのマスター回路112について、リクエスタのセキュリティレベルを表わす。承認信号および拒否信号は、信号線158を通ってバスコントローラ108に提供される。   Incoming circuit 124 receives and processes requests from requesters on second bus 110 addressed to devices on first bus 104. The request from the second bus includes the requested address 152 but does not include the requester security indicator as the request from the first bus 104 includes. The incoming circuit uses one of the address range maps to convert an access request from the second bus 110 into an access request for the first bus 104. The one address range map is (remote base address <= requested address <= (remote base address + size)). The address 154 output by the incoming circuit is an address in the address space of the first bus 104 and is (requested address−remote base address) + local base address. Along with the address 154, the incoming circuit communicates a security indicator 156 associated with the address range of the requested address. Thus, the security index associated with the address range represents the requester's security level for all master circuits 112 that send access requests to the first bus 104. The approval signal and the rejection signal are provided to the bus controller 108 through the signal line 158.

バスコントローラは、ブリッジ回路106と第2のバス110との間のインターフェイスを提供する。バス110が、PCIエクスプレス(PCIe)などのシリアルリンクを提供する実施態様において、バスコントローラは、トランザクション、リンク、および回路の物理層を含み得る。   The bus controller provides an interface between the bridge circuit 106 and the second bus 110. In embodiments where the bus 110 provides a serial link, such as PCI Express (PCIe), the bus controller may include the physical layers of transactions, links, and circuits.

図2は、第1のバスと第2のバスとの間の通信のブリッジングに関する処理の例のフローチャートである。ブロック202において、アドレスマップは、第1のバスと第2のバスとの間で要求を変換するためのアドレス変換情報で構成される。各アドレス範囲マップは、それぞれのアドレスの範囲について、サイズと、リモートベースアドレスと、ローカルベースアドレスと、セキュリティ指標とを指定する。   FIG. 2 is a flowchart of an example of processing related to bridging of communication between the first bus and the second bus. In block 202, the address map consists of address translation information for translating requests between the first bus and the second bus. Each address range map specifies a size, a remote base address, a local base address, and a security index for each address range.

第1のバス(セキュリティ手段を実現するバス)からのアクセス要求に関して、処理はブロック204に進む。ブロック204において、アクセス要求におけるアドレスのアドレス範囲を決定する。判断ブロック206は、範囲がセキュアであると指定されたか否かを判断する。範囲がセキュアである場合、判断ブロック208は、アクセス要求に伴う信号によって表わされるように、リクエスタがセキュアであるか否かを判断する。リクエスタがセキュアである場合、ブロック210において、処理は、要求のアドレスを第1のバスのアドレス空間から第2のバスのアドレス空間に変換する。ブロック212において、変換されたアドレスを用いてアクセス要求を作成し、第2のバスへ伝達する。リクエスタがセキュアではなく、かつ、要求されたアドレスが、セキュアであると指定されたアドレス範囲内にある場合、判断ブロック208は、処理をブロック214に進める。ブロック214では、アクセス要求がリクエスタへの信号を用いて拒否される。   For an access request from the first bus (the bus that implements the security measure), processing proceeds to block 204. At block 204, an address range of addresses in the access request is determined. Decision block 206 determines whether the range has been designated as secure. If the range is secure, decision block 208 determines whether the requester is secure, as represented by the signal accompanying the access request. If the requester is secure, at block 210, the process converts the requested address from the address space of the first bus to the address space of the second bus. At block 212, an access request is created using the translated address and communicated to the second bus. If the requester is not secure and the requested address is within the address range specified as secure, decision block 208 proceeds to block 214. At block 214, the access request is denied using a signal to the requester.

ブロック220において、第2のバス(第1のバスのセキュリティ手段を実現しないバス)からのアクセス要求に関して、アクセス要求におけるアドレスのアドレス範囲を決定する。ブロック226において、アドレス範囲マップを用いて、アドレスを、第2のバスのアドレス空間から第1のバスのアドレス空間のアドレスに変換する。ブロック228において、変換されたアドレスを用いてアクセス要求を作成し、このアドレス要求と、アドレス範囲マップに基づくセキュリティ指標の状態とを第1のバスに伝達する。アクセス要求を受信する第1のバス上のデバイスは、アクセスを許可するか要求を拒否するかを判断可能である。   At block 220, for an access request from a second bus (a bus that does not implement the security measures of the first bus), an address range of addresses in the access request is determined. At block 226, the address range map is used to convert the address from the address space of the second bus to the address of the address space of the first bus. At block 228, an access request is created using the translated address, and the address request and the status of the security indicator based on the address range map are communicated to the first bus. A device on the first bus that receives the access request can determine whether to grant access or reject the request.

図3は、図1のブリッジング回路と図2の処理とが実現され得るプログラマブル集積回路(IC)を示す。図3のプログラマブルICは、数多くのさまざまなプログラマブルタイルを含むFPGAアーキテクチャ(300)を示す。さまざまなプログラマブルタイルには、マルチギガビットトランシーバ(MGT:multi-gigabit transceiver)301、構成可能な論理ブロック(CLB:configurable logic block)302、ランダムアクセスメモリブロック(BRAM:random access memory block)303、入力/出力ブロック(lOB:input/output block)304、構成およびクロッキング論理(CONFIG/CLOCKS:configuration and clocking logic)305、デジタル信号処理ブロック(DSP:digital signal processing block)306、特殊入力/出力ブロック(I/O:input/output block)307(たとえばクロックポート)、および他のプログラマブル論理308(たとえば、デジタルクロックマネージャ、アナログデジタル変換器、およびシステム監視論理)などが含まれる。いくつかのFPGAは、専用プロセッサブロック(PROC:dedicated processor block)310、ならびに内部再構成ポートおよび外部再構成ポート(図示せず)も含む。   FIG. 3 shows a programmable integrated circuit (IC) in which the bridging circuit of FIG. 1 and the process of FIG. 2 can be implemented. The programmable IC of FIG. 3 shows an FPGA architecture (300) that includes a number of different programmable tiles. Various programmable tiles include multi-gigabit transceiver (MGT) 301, configurable logic block (CLB) 302, random access memory block (BRAM) 303, input / An input / output block (lOB) 304, a configuration and clocking logic (CONFIG / CLOCKS) 305, a digital signal processing block (DSP) 306, a special input / output block (I / O: input / output block) 307 (eg, clock port), and other programmable logic 308 (eg, digital clock manager, analog-to-digital converter, and system monitoring logic) and the like. Some FPGAs also include a dedicated processor block (PROC) 310, and internal and external reconfiguration ports (not shown).

いくつかのFPGAにおいて、各プログラマブルタイルはプログラマブルインターコネクト要素(INT:programmable interconnect element)311を含む。このプログラマブルインターコネクト要素311は、隣接する各タイルにおける対応するインターコネクト要素への規格化された接続、および、隣接する各タイルにおける対応するインターコネクト要素からの規格化された接続を有する。したがって、プログラマブルインターコネクト要素の集合によって、図示されたFPGAのプログラマブルインターコネクト構造が実現される。図3の上部に含まれた例で示すように、プログラマブルインターコネクト要素INT311は、同一タイル内のプログラマブル論理素子への接続、および同一タイル内のプログラマブル論理素子からの接続も含む。   In some FPGAs, each programmable tile includes a programmable interconnect element (INT) 311. This programmable interconnect element 311 has a standardized connection to the corresponding interconnect element in each adjacent tile and a standardized connection from the corresponding interconnect element in each adjacent tile. Therefore, the programmable interconnect structure of the illustrated FPGA is realized by a set of programmable interconnect elements. As shown in the example included at the top of FIG. 3, programmable interconnect element INT 311 also includes connections to and from programmable logic elements within the same tile.

たとえば、CLB302は、ユーザ論理と、単一のプログラマブルインターコネクト要素INT311とを実現するようにプログラムされ得る構成可能な論理素子(CLE:configurable logic element)312を含み得る。BRAM303は、1つ以上のプログラマブルインターコネクト要素に加えて、BRAM論理素子(BRL:BRAM logic element)313を含み得る。典型的には、1つのタイルに含まれるインターコネクト要素の数は、そのタイルの高さによって決まる。図示した実施形態において、BRAMタイルは5つのCLBと同じ高さを有するが、他の数(たとえば4つ)も用いられ得る。DSPタイル306は、適切な数のプログラマブルインターコネクト要素に加えて、DSP論理素子(DSPL:DSP logic element)314を含み得る。IOB304は、プログラマブルインターコネクト要素INT311の1つのインスタンスに加えて、たとえば、入力/出力論理素子(IOL:input/output logic element)315の2つのインスタンスを含み得る。当業者には明らかになるであろうが、たとえばI/O論理素子315に接続される実際のI/Oボンディングパッドは、金属層を用いて、図示したさまざまな論理ブロック上に製造され、典型的には、入力/出力論理素子315の領域に限定されない。   For example, CLB 302 may include a configurable logic element (CLE) 312 that may be programmed to implement user logic and a single programmable interconnect element INT 311. BRAM 303 may include a BRAM logic element (BRL) 313 in addition to one or more programmable interconnect elements. Typically, the number of interconnect elements included in a tile depends on the height of the tile. In the illustrated embodiment, the BRAM tile has the same height as five CLBs, but other numbers (eg, four) may be used. The DSP tile 306 may include a DSP logic element (DSPL) 314 in addition to an appropriate number of programmable interconnect elements. IOB 304 may include two instances of input / output logic element (IOL) 315 in addition to one instance of programmable interconnect element INT311, for example. As will be apparent to those skilled in the art, for example, the actual I / O bond pads connected to the I / O logic element 315 are fabricated on the various logic blocks shown, typically using metal layers. Specifically, the region is not limited to the input / output logic element 315.

図示した実施形態において、ダイ(die)の中心付近の列領域(図3において網掛けで示した領域)は、構成、クロック、および他の制御論理のために用いられる。この列から広がる水平領域309を用いて、クロックおよび構成信号がFPGAの幅にわたって分配される。   In the illustrated embodiment, the column area near the center of the die (the area shaded in FIG. 3) is used for configuration, clock, and other control logic. A horizontal region 309 extending from this column is used to distribute clock and configuration signals across the width of the FPGA.

図3に示すアーキテクチャを用いるいくつかのFPGAは、FPGAの大部分を構成する規則正しい列構造を乱す追加の論理ブロックを含む。追加の論理ブロックは、プログラマブルブロックおよび/または専用論理であり得る。たとえば、図3に示すプロセッサブロックPROC310は、いくつかのCLBの列およびBRAMの列にまたがる。   Some FPGAs using the architecture shown in FIG. 3 include additional logic blocks that disrupt the regular column structure that makes up the bulk of the FPGA. The additional logic block can be a programmable block and / or dedicated logic. For example, the processor block PROC 310 shown in FIG. 3 spans several CLB columns and BRAM columns.

図3は、単なる例であるFPGAアーキテクチャを示すように意図されたものであることに留意されたい。1列中の論理ブロックの数、列の相対幅、列の数および順番、列に含まれる論理ブロックの種類、論理ブロックの相対サイズ、ならびに、図3の上部に含まれたインターコネクト/論理の実施は、全くの例示である。たとえば実際のFPGAにおいて、典型的には、CLBが現れる場合は必ずCLBの隣接列が1つ以上含まれる。これにより、ユーザ論理の効率的な実現が容易になる。   Note that FIG. 3 is intended to show an FPGA architecture, which is merely an example. The number of logical blocks in a column, the relative width of the column, the number and order of the columns, the type of logical block contained in the column, the relative size of the logical block, and the interconnect / logic implementation included at the top of FIG. Is a complete illustration. For example, in an actual FPGA, typically, when CLB appears, one or more adjacent columns of CLB are always included. This facilitates efficient realization of user logic.

本明細書において記載される例示的な方法は、第1のバスと第2のバスとの間の通信をブリッジングすることに関する。通信のブリッジに関するそのような方法は、アドレス変換情報と、関連付けられたセキュリティ指標とをメモリ内に記憶するステップを含み得る。上記方法は、さらに、第1のリクエスタセキュリティ指標と第1のアドレスとを含む、第1のバスから受信された各第1のアクセス要求に応答して、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否するステップと、第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、アドレス変換情報を用いて第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するステップとを含み得る。上記方法は、さらに、第3のアドレスを含む、第2のバスから受信された各第3のアクセス要求に応答して、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換するステップと、第4のアクセス要求と、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標とを第1のバスに伝達するステップとを含み得る。   The exemplary methods described herein relate to bridging communication between a first bus and a second bus. Such a method for communication bridging may include storing address translation information and associated security indicators in a memory. The method further includes the first requester security index is non-secure in response to each first access request received from the first bus, the first requester security index and the first address. Refusing the first access request in response to representing the requester and the security indicator associated with the address translation information for the first address representing a secure address range; and first requester security In response to the index representing a secure requester, the address translation information is used to translate the first access request into a second access request for the second bus, and the second access request is translated to the second bus. Communicating to the network. The method further includes responding to each third access request received from the second bus, including the third address, using the address translation information to route the third access request for the first bus. Translating to a fourth access request, and communicating the fourth access request and the security indicator associated with the address translation information for the fourth address to the first bus.

そのような方法において、アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々は、アドレス範囲マップのうちの1つに関連付けられ得る。   In such a method, the address translation information includes a plurality of address range maps, each address range map mapping a first address range of a first bus to a second address range of a second bus, and security Each of the indicators may be associated with one of the address range maps.

そのような方法は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報が非セキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するステップをさらに含み得る。   Such a method is responsive to the first requester security indicator representing a non-secure requester and the address translation information for the first address representing a non-secure address range. Can be further converted to a second access request for the second bus and communicating the second access request to the second bus.

そのような方法は、アドレス変換情報が複数のアドレス範囲マップを含み、各アドレス範囲マップが、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々が、アドレス範囲マップのうちの1つに関連付けられ、各アドレス範囲マップが、第1のベースアドレスと第2のベースアドレスとを指定することをさらに含み得る。   In such a method, the address translation information includes a plurality of address range maps, each address range map mapping a first address range of a first bus to a second address range of a second bus, and security Each of the indicators may be associated with one of the address range maps, and each address range map may further include designating a first base address and a second base address.

そのような方法は、各アドレス範囲マップがサイズを指定することをさらに含み得る。
そのような方法は、第1のベースアドレスが第1のバスの第1のアドレス空間内にあり、第2のベースアドレスが第2のバスの第2のアドレス空間内にあることをさらに含み得る。
Such a method may further include each address range map specifying a size.
Such a method may further include the first base address being in the first address space of the first bus and the second base address being in the second address space of the second bus. .

そのような方法は、セキュリティ指標がプログラマブルであることをさらに含み得る。
本明細書において記載される例示的な装置は、概してブリッジ回路に関する。そのような装置において、第1のバスと第2のバスとの間の通信のためのブリッジ回路は、アドレス変換情報と、関連付けられたセキュリティ指標とを記憶するように構成可能であるメモリを備え得る。ブリッジ回路は、さらに、メモリと第1および第2のバスとに結合された送出回路を備え得る。送出回路は、第1のバスから第1のアクセス要求を受信するように構成され、各第1のアクセス要求は第1のリクエスタセキュリティ指標と第1のアドレスとを含む。各第1のアクセス要求に関して、送出回路は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否するとともに、第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、アドレス変換情報を用いて第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成されている。ブリッジ回路は、さらに、メモリと第1および第2のバスとに結合された入来回路を備え得る。入来回路は、第2のバスから第3のアクセス要求を受信するように構成されており、各第3のアクセス要求は第3のアドレスを含む。入来回路はさらに、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換するとともに、第4のアクセス要求と、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標とを第1のバスに伝達するように構成されている。
Such a method may further include that the security indicator is programmable.
The exemplary apparatus described herein generally relates to a bridge circuit. In such a device, a bridge circuit for communication between the first bus and the second bus comprises a memory that is configurable to store address translation information and associated security indicators. obtain. The bridge circuit may further comprise a delivery circuit coupled to the memory and the first and second buses. The sending circuit is configured to receive a first access request from a first bus, each first access request including a first requester security indicator and a first address. For each first access request, the sending circuit indicates that the first requester security indicator represents a non-secure requester, and the security indicator associated with the address translation information for the first address represents a secure address range. In response, the first access request is rejected, and in response to the first requester security indicator representing a secure requester, the first access request is routed to the second bus using the address translation information. The second access request is converted to a second access request, and the second access request is transmitted to the second bus. The bridge circuit may further comprise an incoming circuit coupled to the memory and the first and second buses. The incoming circuit is configured to receive a third access request from the second bus, and each third access request includes a third address. The incoming circuit further converts the third access request into a fourth access request for the first bus using the address conversion information, and converts the fourth access request and the address conversion information related to the fourth address. The associated security indicator is configured to communicate to the first bus.

そのような装置において、アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々は、アドレス範囲マップのうちの1つに関連付けられ得る。   In such a device, the address translation information includes a plurality of address range maps, each address range map mapping a first address range on a first bus to a second address range on a second bus, and security Each of the indicators may be associated with one of the address range maps.

そのような装置において、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報が非セキュアなアドレス範囲を表わすことに応答して、送出回路は、さらに、第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成され得る。   In such an apparatus, in response to the first requester security indicator representing a non-secure requester and the address translation information for the first address representing a non-secure address range, the sending circuit further includes: , May be configured to convert the first access request into a second access request for the second bus and to communicate the second access request to the second bus.

そのような装置において、アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々は、アドレス範囲マップのうちの1つに関連付けられ、各アドレス範囲マップは、第1のベースアドレスと第2のベースアドレスとを指定し得る。   In such a device, the address translation information includes a plurality of address range maps, each address range map mapping a first address range on a first bus to a second address range on a second bus, and security Each of the indicators is associated with one of the address range maps, and each address range map may specify a first base address and a second base address.

そのような装置において、各アドレス範囲マップはサイズを指定し得る。
そのような装置において、第1のベースアドレスは第1のバスの第1のアドレス空間内にあり、第2のベースアドレスは第2のバスの第2のアドレス空間内にあり得る。
In such a device, each address range map may specify a size.
In such a device, the first base address may be in the first address space of the first bus and the second base address may be in the second address space of the second bus.

そのような装置において、セキュリティ指標はプログラマブルであり得る。
また、別の例として、システムが提供される。このシステムは、第1のバスと、第1のバスに結合された第1の組のマスター・スレーブ回路と、第2のバスと、第1のバスと第2のバスとの間に結合されたブリッジ回路と、第2のバスに結合された第2の組のマスター・スレーブ回路とを含み得る。ブリッジ回路は、アドレス変換情報と、関連付けられたセキュリティ指標とを記憶するように構成可能であるメモリを備える。ブリッジ回路は、さらに、メモリと第1および第2のバスとに結合された送出回路を備える。送出回路は、第1のバスから第1のアクセス要求を受信するように構成され、各第1のアクセス要求は第1のリクエスタセキュリティ指標と第1のアドレスとを含む。各第1のアクセス要求に関して、送出回路は、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、第1のアクセス要求を拒否するとともに、第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、アドレス変換情報を用いて第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成されている。ブリッジ回路は、さらに、メモリと第1および第2のバスとに結合された入来回路を備える。入来回路は、第2のバスから第3のアクセス要求を受信するように構成されており、各第3のアクセス要求は第3のアドレスを含む。入来回路はさらに、アドレス変換情報を用いて第3のアクセス要求を第1のバス用の第4のアクセス要求に変換するとともに、第4のアクセス要求と、第4のアドレスに関するアドレス変換情報に関連付けられたセキュリティ指標とを第1のバスに伝達するように構成されている。
In such a device, the security indicator can be programmable.
As another example, a system is provided. The system is coupled between a first bus, a first set of master / slave circuits coupled to the first bus, a second bus, and the first bus and the second bus. And a second set of master / slave circuits coupled to the second bus. The bridge circuit comprises a memory that can be configured to store address translation information and associated security indicators. The bridge circuit further comprises a delivery circuit coupled to the memory and the first and second buses. The sending circuit is configured to receive a first access request from a first bus, each first access request including a first requester security indicator and a first address. For each first access request, the sending circuit indicates that the first requester security indicator represents a non-secure requester, and the security indicator associated with the address translation information for the first address represents a secure address range. In response, the first access request is rejected, and in response to the first requester security indicator representing a secure requester, the first access request is routed to the second bus using the address translation information. The second access request is converted to a second access request, and the second access request is transmitted to the second bus. The bridge circuit further comprises an incoming circuit coupled to the memory and the first and second buses. The incoming circuit is configured to receive a third access request from the second bus, and each third access request includes a third address. The incoming circuit further converts the third access request into a fourth access request for the first bus using the address conversion information, and converts the fourth access request and the address conversion information related to the fourth address. The associated security indicator is configured to communicate to the first bus.

そのようなシステムにおいて、アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々は、アドレス範囲マップのうちの1つに関連付けられ得る。   In such a system, the address translation information includes a plurality of address range maps, each address range map mapping a first address range on a first bus to a second address range on a second bus, and security Each of the indicators may be associated with one of the address range maps.

そのようなシステムにおいて、第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、第1のアドレスに関するアドレス変換情報が非セキュアなアドレス範囲を表わすことに応答して、送出回路は、さらに、第1のアクセス要求を第2のバス用の第2のアクセス要求に変換し、第2のアクセス要求を第2のバスに伝達するように構成され得る。   In such a system, in response to the first requester security indicator representing a non-secure requester and the address translation information for the first address representing a non-secure address range, the sending circuit further includes: , May be configured to convert the first access request into a second access request for the second bus and to communicate the second access request to the second bus.

そのようなシステムにおいて、アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、第1のバスの第1のアドレス範囲を第2のバスの第2のアドレス範囲にマップし、セキュリティ指標の各々は、アドレス範囲マップのうちの1つに関連付けられ、各アドレス範囲マップは、第1のベースアドレスと第2のベースアドレスとを指定し得る。   In such a system, the address translation information includes a plurality of address range maps, each address range map mapping a first address range on a first bus to a second address range on a second bus, and security Each of the indicators is associated with one of the address range maps, and each address range map may specify a first base address and a second base address.

そのようなシステムにおいて、各アドレス範囲マップはサイズを指定し得る。そのようなシステムにおいて、第1のベースアドレスは第1のバスの第1のアドレス空間内にあり、第2のベースアドレスは第2のバスの第2のアドレス空間内にあり得る。   In such a system, each address range map may specify a size. In such a system, the first base address may be in the first address space of the first bus and the second base address may be in the second address space of the second bus.

場合によっては、局面および特徴が個別の図に記載されていることがあるが、組合せが明示的に図示されていないとしても、または、組合せとして明示的に説明されていないとしても、或る図中の特徴を別の図中の特徴と組合せ得ることが理解されるであろう。   In some cases, aspects and features may be described in separate drawings, but some combinations may not be explicitly illustrated or described as combinations. It will be understood that features in it may be combined with features in other figures.

上記方法およびシステムは、異なるバス間の通信のブリッジングのためのさまざまなシステムに適用可能であると考えられる。明細書を考慮することにより、他の局面および特徴が当業者に明らかになるであろう。上記方法およびシステムは、特定用途向け集積回路(ASIC:application specific integrated circuit)として、または、プログラマブル論理デバイス上の論理として、ソフトウェアを実行するように構成された1つ以上のプロセッサとして実現されてもよい。明細書および図面は例として考慮されるにすぎず、本発明の真の範囲は以下の特許請求の範囲によって表わされることが意図される。   The methods and systems described above are considered applicable to a variety of systems for bridging communications between different buses. Other aspects and features will be apparent to those skilled in the art from consideration of the specification. The methods and systems may be implemented as one or more processors configured to execute software as application specific integrated circuits (ASICs) or as logic on a programmable logic device. Good. The specification and drawings are to be considered merely as examples and the true scope of the invention is intended to be represented by the following claims.

Claims (14)

第1のバスと第2のバスとの間の通信をブリッジングする方法であって、
アドレス変換情報と、関連付けられたセキュリティ指標とをメモリ内に記憶するステップと、
第1のリクエスタセキュリティ指標と第1のアドレスとを含む、前記第1のバスから受信された各第1のアクセス要求に応答して、
前記第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、前記第1のアドレスに関する前記アドレス変換情報に関連付けられた前記セキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、前記第1のアクセス要求を拒否するステップと、
前記第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、前記アドレス変換情報を用いて前記第1のアクセス要求を前記第2のバス用の第2のアクセス要求に変換し、前記第2のアクセス要求を前記第2のバスに伝達するステップと、
第3のアドレスを含む、前記第2のバスから受信された各第3のアクセス要求に応答して、
前記アドレス変換情報を用いて前記第3のアクセス要求を前記第1のバス用の第4のアクセス要求に変換するステップと、
前記第4のアクセス要求と、第4のアドレスに関する前記アドレス変換情報に関連付けられた前記セキュリティ指標とを前記第1のバスに伝達するステップとを含む、方法。
A method of bridging communication between a first bus and a second bus, comprising:
Storing address translation information and associated security indicators in memory;
In response to each first access request received from the first bus, including a first requester security indicator and a first address;
In response to the first requestor security indicator representing a non-secure requester and the security indicator associated with the address translation information for the first address representing a secure address range. Denying the access request of 1;
In response to the first requester security indicator representing a secure requester, the first translation request is converted to a second access request for the second bus using the address translation information; Communicating a second access request to the second bus;
In response to each third access request received from the second bus, including a third address,
Converting the third access request into a fourth access request for the first bus using the address translation information;
Communicating the fourth access request and the security indicator associated with the address translation information for a fourth address to the first bus.
前記アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、前記第1のバスの第1のアドレス範囲を前記第2のバスの第2のアドレス範囲にマップし、前記セキュリティ指標の各々は、前記アドレス範囲マップのうちの1つに関連付けられる、請求項1に記載の方法。   The address translation information includes a plurality of address range maps, wherein each address range map maps a first address range of the first bus to a second address range of the second bus, and The method of claim 1, wherein each is associated with one of the address range maps. 前記第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、前記第1のアドレスに関する前記アドレス変換情報が非セキュアなアドレス範囲を表わすことに応答して、前記第1のアクセス要求を前記第2のバス用の前記第2のアクセス要求に変換し、前記第2のアクセス要求を前記第2のバスに伝達するステップをさらに含む、請求項1または2に記載の方法。   In response to the first requester security indicator representing a non-secure requester and the address translation information relating to the first address representing a non-secure address range, 3. The method according to claim 1 or 2, further comprising the step of converting to the second access request for a second bus and communicating the second access request to the second bus. 前記アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、前記第1のバスの第1のアドレス範囲を前記第2のバスの第2のアドレス範囲にマップし、前記セキュリティ指標の各々は、前記アドレス範囲マップのうちの1つに関連付けられ、
各アドレス範囲マップは、第1のベースアドレスと第2のベースアドレスとを指定する、請求項1に記載の方法。
The address translation information includes a plurality of address range maps, wherein each address range map maps a first address range of the first bus to a second address range of the second bus, and Each associated with one of the address range maps;
The method of claim 1, wherein each address range map specifies a first base address and a second base address.
各アドレス範囲マップはサイズを指定する、請求項4に記載の方法。   The method of claim 4, wherein each address range map specifies a size. 前記第1のベースアドレスは前記第1のバスの第1のアドレス空間内にあり、前記第2のベースアドレスは前記第2のバスの第2のアドレス空間内にある、請求項5に記載の方法。   The first base address is in a first address space of the first bus, and the second base address is in a second address space of the second bus. Method. 前記セキュリティ指標はプログラマブルである、請求項1〜6のいずれかに記載の方法。   The method according to claim 1, wherein the security indicator is programmable. 第1のバスと第2のバスとの間の通信のためのブリッジ回路であって、
アドレス変換情報と、関連付けられたセキュリティ指標とを記憶するように構成可能であるメモリと、
前記メモリと前記第1および第2のバスとに結合された送出回路とを備え、前記送出回路は、前記第1のバスから第1のアクセス要求を受信するように構成され、各第1のアクセス要求は第1のリクエスタセキュリティ指標と第1のアドレスとを含み、各第1のアクセス要求に関して、前記送出回路は、
前記第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、前記第1のアドレスに関する前記アドレス変換情報に関連付けられた前記セキュリティ指標がセキュアなアドレス範囲を表わすことに応答して、前記第1のアクセス要求を拒否し、
前記第1のリクエスタセキュリティ指標がセキュアなリクエスタを表わすことに応答して、前記アドレス変換情報を用いて前記第1のアクセス要求を前記第2のバス用の第2のアクセス要求に変換し、前記第2のアクセス要求を前記第2のバスに伝達するように構成され、前記ブリッジ回路はさらに、
前記メモリと前記第1および第2のバスとに結合された入来回路を備え、前記入来回路は、前記第2のバスから第3のアクセス要求を受信するように構成され、各第3のアクセス要求は第3のアドレスを含み、前記入来回路はさらに、
前記アドレス変換情報を用いて前記第3のアクセス要求を前記第1のバス用の第4のアクセス要求に変換し、
前記第4のアクセス要求と、第4のアドレスに関する前記アドレス変換情報に関連付けられた前記セキュリティ指標とを前記第1のバスに伝達するように構成されている、ブリッジ回路。
A bridge circuit for communication between a first bus and a second bus,
A memory configurable to store address translation information and associated security indicators;
A sending circuit coupled to the memory and the first and second buses, wherein the sending circuit is configured to receive a first access request from the first bus; The access request includes a first requester security indicator and a first address, and for each first access request, the sending circuit includes:
In response to the first requestor security indicator representing a non-secure requester and the security indicator associated with the address translation information for the first address representing a secure address range. Deny access request of 1,
In response to the first requester security indicator representing a secure requester, the first translation request is converted to a second access request for the second bus using the address translation information; Configured to communicate a second access request to the second bus, the bridge circuit further comprising:
An incoming circuit coupled to the memory and the first and second buses, wherein the incoming circuit is configured to receive a third access request from the second bus; The access request includes a third address, and the incoming circuit further includes:
Using the address translation information to convert the third access request into a fourth access request for the first bus;
A bridge circuit configured to communicate the fourth access request and the security indicator associated with the address translation information relating to a fourth address to the first bus.
前記アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、前記第1のバスの第1のアドレス範囲を前記第2のバスの第2のアドレス範囲にマップし、前記セキュリティ指標の各々は、前記アドレス範囲マップのうちの1つに関連付けられる、請求項8に記載の回路。   The address translation information includes a plurality of address range maps, wherein each address range map maps a first address range of the first bus to a second address range of the second bus, and The circuit of claim 8, wherein each is associated with one of the address range maps. 前記第1のリクエスタセキュリティ指標が非セキュアなリクエスタを表わすこと、かつ、前記第1のアドレスに関する前記アドレス変換情報が非セキュアなアドレス範囲を表わすことに応答して、前記送出回路は、さらに、前記第1のアクセス要求を前記第2のバス用の前記第2のアクセス要求に変換し、前記第2のアクセス要求を前記第2のバスに伝達するように構成されている、請求項8または9に記載の回路。   In response to the first requester security indicator representing a non-secure requester and the address translation information for the first address representing a non-secure address range, the sending circuit further includes: 10. The system according to claim 8, wherein the first access request is converted into the second access request for the second bus, and the second access request is transmitted to the second bus. Circuit described in. 前記アドレス変換情報は複数のアドレス範囲マップを含み、各アドレス範囲マップは、前記第1のバスの第1のアドレス範囲を前記第2のバスの第2のアドレス範囲にマップし、前記セキュリティ指標の各々は、前記アドレス範囲マップのうちの1つに関連付けられ、
各アドレス範囲マップは、第1のベースアドレスと第2のベースアドレスとを指定する、請求項8に記載の回路。
The address translation information includes a plurality of address range maps, wherein each address range map maps a first address range of the first bus to a second address range of the second bus, and Each associated with one of the address range maps;
9. The circuit of claim 8, wherein each address range map specifies a first base address and a second base address.
各アドレス範囲マップはサイズを指定する、請求項11に記載の回路。   The circuit of claim 11, wherein each address range map specifies a size. 前記第1のベースアドレスは前記第1のバスの第1のアドレス空間内にあり、前記第2のベースアドレスは前記第2のバスの第2のアドレス空間内にある、請求項12に記載の回路。   13. The first base address is in a first address space of the first bus and the second base address is in a second address space of the second bus. circuit. 前記セキュリティ指標はプログラマブルである、請求項8〜13のいずれかに記載の回路。   The circuit according to claim 8, wherein the security index is programmable.
JP2017501003A 2014-07-07 2015-07-01 Bridging interbus communication Active JP6464253B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/325,238 2014-07-07
US14/325,238 US9720868B2 (en) 2014-07-07 2014-07-07 Bridging inter-bus communications
PCT/US2015/038899 WO2016007358A1 (en) 2014-07-07 2015-07-01 Bridging inter-bus communications

Publications (2)

Publication Number Publication Date
JP2017521788A true JP2017521788A (en) 2017-08-03
JP6464253B2 JP6464253B2 (en) 2019-02-06

Family

ID=53682833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017501003A Active JP6464253B2 (en) 2014-07-07 2015-07-01 Bridging interbus communication

Country Status (6)

Country Link
US (1) US9720868B2 (en)
EP (1) EP3167374B1 (en)
JP (1) JP6464253B2 (en)
KR (1) KR102398515B1 (en)
CN (1) CN106537363B (en)
WO (1) WO2016007358A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10657067B1 (en) 2016-09-12 2020-05-19 Xilinx, Inc. Memory management unit with prefetch
FR3061326A1 (en) * 2016-12-27 2018-06-29 Thales DEVICE AND METHOD FOR CREATING A TRUSTED ENVIRONMENT IN A DISTRIBUTED SYSTEM
GB201806465D0 (en) 2018-04-20 2018-06-06 Nordic Semiconductor Asa Memory-access controll
US10719452B2 (en) 2018-06-22 2020-07-21 Xilinx, Inc. Hardware-based virtual-to-physical address translation for programmable logic masters in a system on chip
GB201810662D0 (en) * 2018-06-28 2018-08-15 Nordic Semiconductor Asa Peripheral Access On A Secure-Aware Bus System
GB201810659D0 (en) * 2018-06-28 2018-08-15 Nordic Semiconductor Asa Secure-Aware Bus System
GB201810653D0 (en) * 2018-06-28 2018-08-15 Nordic Semiconductor Asa Secure peripheral interconnect
FR3089322B1 (en) * 2018-11-29 2020-12-18 St Microelectronics Rousset Managing access restrictions within a system on a chip
US11281810B1 (en) 2018-12-11 2022-03-22 Xilinx, Inc. Memory access protection in programmable logic device
US11030144B2 (en) * 2018-12-14 2021-06-08 Texas Instruments Incorporated Peripheral component interconnect (PCI) backplane connectivity system on chip (SoC)
CN110688328B (en) * 2019-09-27 2023-03-14 山东华芯半导体有限公司 Configurable remapping realization method for AXI bus sub-host mapping set
US11496418B1 (en) * 2020-08-25 2022-11-08 Xilinx, Inc. Packet-based and time-multiplexed network-on-chip
KR20240044695A (en) * 2022-09-29 2024-04-05 삼성전자주식회사 Electronic apparatus and method controlling thereof

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005528677A (en) * 2002-04-18 2005-09-22 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Computer system including a CPU capable of executing a secure execution mode and a security service processor connected via a highly reliable (secure) communication path
JP2007110706A (en) * 2005-10-12 2007-04-26 Samsung Electronics Co Ltd NoC system applying AXI protocol
JP2009289264A (en) * 2008-05-30 2009-12-10 Intel Corp Method for providing peripheral component interconnection (pci)-compatible transaction level protocol for system on chip (soc)
JP2013117962A (en) * 2011-12-02 2013-06-13 Samsung Electronics Co Ltd Secure method and device
US8706931B1 (en) * 2005-10-28 2014-04-22 Altera Corporation Tool selection and implementation of port adapters
US20140189187A1 (en) * 2013-01-02 2014-07-03 Satish B. Acharya Method to integrate arm ecosystem ips into pci-based interconnect

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2402785B (en) 2002-11-18 2005-12-07 Advanced Risc Mach Ltd Processor switching between secure and non-secure modes
AU2003900764A0 (en) * 2003-02-20 2003-03-06 Secure Systems Limited Bus bridge security system and method for computers
CN101326501B (en) 2006-04-06 2010-12-15 索尼株式会社 Bridge, processor unit, information processing apparatus, and access control method
CN101299228B (en) * 2008-01-26 2010-09-01 青岛大学 Safe network terminal based on single CPU dual bus
US8489791B2 (en) 2010-03-12 2013-07-16 Lsi Corporation Processor bus bridge security feature for network processors or the like
US20110103391A1 (en) * 2009-10-30 2011-05-05 Smooth-Stone, Inc. C/O Barry Evans System and method for high-performance, low-power data center interconnect fabric
US8930724B2 (en) * 2011-08-17 2015-01-06 Broadcom Corporation Semiconductor device predictive dynamic thermal management
US8954017B2 (en) * 2011-08-17 2015-02-10 Broadcom Corporation Clock signal multiplication to reduce noise coupled onto a transmission communication signal of a communications device
US8831021B2 (en) * 2011-09-25 2014-09-09 Qualcomm Incorporated System and method for dynamically configurable multi-window divergent protocol bridge
GB2501274B (en) 2012-04-17 2020-05-13 Advanced Risc Mach Ltd Management of data processing security in a secondary processor
US8775757B2 (en) * 2012-09-25 2014-07-08 Apple Inc. Trust zone support in system on a chip having security enclave processor
US9063891B2 (en) 2012-12-19 2015-06-23 Advanced Micro Devices, Inc. Secure computer system for preventing access requests to portions of system memory by peripheral devices and/or processor cores
GB2522906B (en) * 2014-02-10 2021-07-14 Advanced Risc Mach Ltd Region identifying operation for identifying a region of a memory attribute unit corresponding to a target memory address
GB2531844B (en) * 2014-10-31 2019-06-26 Hewlett Packard Development Co Hardware-protective data processing systems and methods using an application executing in a secure domain

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005528677A (en) * 2002-04-18 2005-09-22 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Computer system including a CPU capable of executing a secure execution mode and a security service processor connected via a highly reliable (secure) communication path
JP2007110706A (en) * 2005-10-12 2007-04-26 Samsung Electronics Co Ltd NoC system applying AXI protocol
US8706931B1 (en) * 2005-10-28 2014-04-22 Altera Corporation Tool selection and implementation of port adapters
JP2009289264A (en) * 2008-05-30 2009-12-10 Intel Corp Method for providing peripheral component interconnection (pci)-compatible transaction level protocol for system on chip (soc)
JP2013117962A (en) * 2011-12-02 2013-06-13 Samsung Electronics Co Ltd Secure method and device
US20140189187A1 (en) * 2013-01-02 2014-07-03 Satish B. Acharya Method to integrate arm ecosystem ips into pci-based interconnect

Also Published As

Publication number Publication date
WO2016007358A1 (en) 2016-01-14
US20160004656A1 (en) 2016-01-07
EP3167374A1 (en) 2017-05-17
EP3167374B1 (en) 2018-09-12
KR20170030569A (en) 2017-03-17
US9720868B2 (en) 2017-08-01
JP6464253B2 (en) 2019-02-06
KR102398515B1 (en) 2022-05-13
CN106537363A (en) 2017-03-22
CN106537363B (en) 2019-03-19

Similar Documents

Publication Publication Date Title
JP6464253B2 (en) Bridging interbus communication
US7861027B2 (en) Providing a peripheral component interconnect (PCI)-compatible transaction level protocol for a system on a chip (SoC)
CN112534418B (en) Logical transmission through fixed PCIE physical transmission network
JP7744469B2 (en) Peripheral Component Interconnect (PCI) backplane connectivity System on Chip (SoC)
US7783819B2 (en) Integrating non-peripheral component interconnect (PCI) resources into a personal computer system
US8725919B1 (en) Device configuration for multiprocessor systems
KR20130071782A (en) Bus bridge apparatus
JP2013088879A (en) Information processor
CN103246623B (en) SOC calculates device extension system
CN105988968A (en) Semiconductor device
CN210983400U (en) System-on-Chip and Microcontrollers
KR100475438B1 (en) Data bus system and method for performing cross-access between buses
US20210250385A1 (en) Axi interconnect module communication network platform

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20170209

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180626

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180629

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181211

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190107

R150 Certificate of patent or registration of utility model

Ref document number: 6464253

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250