JP2011150645A - Information processor - Google Patents
Information processor Download PDFInfo
- Publication number
- JP2011150645A JP2011150645A JP2010013254A JP2010013254A JP2011150645A JP 2011150645 A JP2011150645 A JP 2011150645A JP 2010013254 A JP2010013254 A JP 2010013254A JP 2010013254 A JP2010013254 A JP 2010013254A JP 2011150645 A JP2011150645 A JP 2011150645A
- Authority
- JP
- Japan
- Prior art keywords
- local
- local memory
- access
- memory
- bus controller
- 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.)
- Withdrawn
Links
Images
Landscapes
- Hardware Redundancy (AREA)
- Bus Control (AREA)
Abstract
Description
本発明は、CPU(中央処理装置)の動作モードを高信頼モードと高性能モードに動的に切り替え可能な情報処理装置におけるメモリアクセス技術に関する。 The present invention relates to a memory access technique in an information processing apparatus capable of dynamically switching an operation mode of a CPU (central processing unit) between a high reliability mode and a high performance mode.
複数のCPUを搭載するシステムにおいて、それらのCPUの動作モードは高信頼モードと高性能モードの2つに大別される。高信頼モードはロックステップに代表される動作モードであり、複数CPU間で同期を取って互いに同一プログラムを実行させることにより、エラー検出やエラー訂正などを可能とする動作モードである。一方の高性能モードは一般的なマルチコアシステムであり、各CPUに対して互いに異なるプログラムを実行させることにより、システム全体として高性能を達成する動作モードである。これらの動作モードは、一般的にはシステム毎にいずれか一方に固定された状態で使用される。特許文献1〜6には、システムの動作中にCPUの動作モードを切り替える方式及び、それに関連する技術が記載されている。
In a system equipped with a plurality of CPUs, the operation modes of these CPUs are roughly divided into a high reliability mode and a high performance mode. The high-reliability mode is an operation mode typified by a lock step, and is an operation mode that enables error detection, error correction, and the like by synchronizing multiple CPUs to execute the same program. One high-performance mode is a general multi-core system, and is an operation mode that achieves high performance as a whole system by causing each CPU to execute different programs. These operation modes are generally used while being fixed to one of the systems.
本願発明者は、組み込みシステムなどのリアルタイム性の要求される分野に、システムの動作中にモードを切り替える方式を適用する場合について検討した。 The inventor of the present application examined the case of applying a mode switching method during the operation of the system to a field requiring real-time performance such as an embedded system.
組み込みシステムなどのリアルタイム性の要求される分野に、システムの動作中にモードを切り替える方式を適用する場合、高信頼モードにおいて、各CPUに密結合したローカルメモリなどのリソースに同一データを配置する構成が考えられる。また、各CPUが高性能モードで使用するデータは、メモリ使用量削減の観点から、各CPUのローカルメモリにのみ配置することが求められる。 When applying a mode switching method during system operation to a field that requires real-time performance such as an embedded system, the same data is arranged in a resource such as a local memory tightly coupled to each CPU in the high-reliability mode. Can be considered. Further, data used by each CPU in the high-performance mode is required to be arranged only in the local memory of each CPU from the viewpoint of reducing the memory usage.
ローカルメモリ内のあるひとつのデータに着目すると、そのデータへのCPUと周辺機能からのアクセスは常に時分割に行われる。例えば、外部からの入力データを周辺機能を通じてローカルメモリに格納し、一定量蓄積されてからCPUで解析したり、また、CPUにて予め作成しておいたデータを周辺機能を通じて外部に出力するといった使用方法が挙げられる。このような時分割でのアクセスはデータの更新と参照において矛盾を生じさせないために必須である。つまり、あるタイミングにおいてCPUが実行しているプログラムと、周辺機能部からのローカルメモリへのアクセスは無関係であるといえる。 When attention is paid to one piece of data in the local memory, access to the data from the CPU and peripheral functions is always performed in a time-sharing manner. For example, input data from the outside is stored in the local memory through the peripheral function, and after a certain amount is accumulated, it is analyzed by the CPU, or data created in advance by the CPU is output to the outside through the peripheral function. The usage method is mentioned. Such access in time division is indispensable so as not to cause inconsistency in data update and reference. That is, it can be said that the program executed by the CPU at a certain timing and the access to the local memory from the peripheral function unit are irrelevant.
更に、システムの動作中にCPUの動作モードを切り替えることを考慮すると、以下のようになる。 Further, considering the switching of the CPU operation mode during the operation of the system, the following occurs.
CPUがある動作モードで実行するプログラムがアクセスするローカルメモリ上のデータは、そのプログラムが動作する前後に周辺機能部によってアクセスされる。システムの動作中にCPUの動作モードが切り替わるということは、そのプログラムの動作前後においてCPUの動作モードが異なる可能性を意味している。つまり、周辺機能部がローカルメモリにアクセスする際に、複数のローカルメモリにアクセスを行うのか、一部のローカルメモリにのみアクセスを行うのかを設定する機構が必要であることを意味する。例えば、自動車におけるエンジン制御等の分野においては常に外部状態の監視及び制御が必要であるため周辺機能部を停止させることができず、このような機構がなければシステムとして成り立たない。 Data on a local memory accessed by a program executed in a certain operation mode by the CPU is accessed by the peripheral function unit before and after the program operates. The fact that the CPU operation mode is switched during the operation of the system means that the CPU operation mode may be different before and after the operation of the program. In other words, when the peripheral function unit accesses the local memory, it means that a mechanism for setting whether to access a plurality of local memories or only a part of the local memories is necessary. For example, in the field of engine control and the like in automobiles, it is necessary to constantly monitor and control the external state, so that the peripheral function unit cannot be stopped. Without such a mechanism, the system cannot be established.
更に、このようなアクセスを可能とした場合、高信頼モードにおいてCPUがローカルメモリにアクセスしている最中に、周辺機能が特定CPUのローカルメモリにのみアクセスを行うことにより、そのローカルメモリにおいてアクセス競合が発生し、CPU間の同期が外れる可能性がある。よって、同期外れを発生させずに、特定のローカルメモリにのみアクセスを可能とする必要がある。 Further, when such access is possible, the peripheral function accesses only the local memory of the specific CPU while the CPU is accessing the local memory in the high reliability mode, so that the local memory accesses the local memory. There is a possibility that contention occurs and synchronization between CPUs is lost. Therefore, it is necessary to make it possible to access only a specific local memory without causing loss of synchronization.
上記引用文献1〜6においては、システムの動作中にCPUの動作モードを切り替える方式及び、それに関連する技術が記載されているものの、周辺機能部がローカルメモリにアクセスする際に、複数のローカルメモリ対してアクセスするのか、一部のローカルメモリに対してアクセスするのかの制御については考慮されていない。
Although the above cited
本発明の目的は、複数のCPUの動作モードを高信頼モードと高性能モードとに動的に切り替えるシステムにおいて、周辺機能部がローカルメモリにアクセスする際に、複数のローカルメモリに対してアクセスするのか、一部のローカルメモリに対してアクセスするのかを制御可能な技術を提供することにある。 An object of the present invention is to access a plurality of local memories when a peripheral function unit accesses the local memory in a system that dynamically switches the operation mode of the plurality of CPUs between a high-reliability mode and a high-performance mode. Or providing a technique capable of controlling whether to access a part of local memory.
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。 The following is a brief description of an outline of typical inventions disclosed in the present application.
すなわち、情報処理装置は、第1CPUと、上記第1CPUに結合された第1ローカルバスと、上記第1ローカルバスに結合された第1ローカルメモリと、第2CPUと、上記第2CPUに結合された第2ローカルバスと、上記第2ローカルバスに結合された第2ローカルメモリと、上記第1ローカルメモリと上記第2ローカルメモリとに結合可能なシステムバスと、上記システムバスに結合された周辺機能部とを備える。また、上記情報処理装置は、CPUの動作モードとして、上記第1CPUと上記第2CPUとで互いに同一プログラムを実行させる高信頼モードと、上記第1CPUと上記第2CPUとで互いに異なるプログラムを実行可能な高性能モードとを有する。このような情報処理装置において、上記情報処理装置のアドレス空間における上記第1ローカルメモリ及び上記第2ローカルメモリについての定義情報と、上記CPUの動作モードとに基づいて、上記周辺機能部からの通信要求に対応する、上記システムバスから上記第1ローカルバス及び上記第2ローカルバスへのルーティングを制御可能なシステムバスコントローラを設ける。また、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第1ローカルバスから上記第1ローカルメモリへのルーティングを制御可能な第1ローカルバスコントローラと、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第2ローカルバスから上記第2ローカルメモリへのルーティングを制御可能な第2ローカルバスコントローラとを設ける。 That is, the information processing apparatus is coupled to the first CPU, the first local bus coupled to the first CPU, the first local memory coupled to the first local bus, the second CPU, and the second CPU. A second local bus; a second local memory coupled to the second local bus; a system bus coupleable to the first local memory and the second local memory; and peripheral functions coupled to the system bus A part. The information processing apparatus can execute a high reliability mode in which the first CPU and the second CPU execute the same program as the operation mode of the CPU, and different programs in the first CPU and the second CPU. With high performance mode. In such an information processing apparatus, communication from the peripheral function unit is performed based on the definition information about the first local memory and the second local memory in the address space of the information processing apparatus and the operation mode of the CPU. A system bus controller capable of controlling routing from the system bus to the first local bus and the second local bus corresponding to the request is provided. In addition, based on the definition information, a first local bus controller that can control routing from the first local bus to the first local memory, corresponding to a communication request from the peripheral function unit, and the definition information And a second local bus controller capable of controlling the routing from the second local bus to the second local memory corresponding to the communication request from the peripheral function unit.
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。 The effects obtained by the representative ones of the inventions disclosed in the present application will be briefly described as follows.
すなわち、高信頼モードと高性能モードとに動的に切り替え可能なシステムにおいて、周辺機能部がローカルメモリにアクセスする際に、複数のローカルメモリに対してアクセスするのか、一部のローカルメモリに対してアクセスするのかを制御可能な技術を提供することができる。 In other words, in a system that can be dynamically switched between the high-reliability mode and the high-performance mode, when the peripheral function unit accesses the local memory, whether to access a plurality of local memories or a part of the local memories It is possible to provide a technology capable of controlling whether access is performed.
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
1. First, an outline of a typical embodiment of the invention disclosed in the present application will be described. Reference numerals in the drawings referred to in parentheses in the outline description of the representative embodiments merely exemplify what are included in the concept of the components to which the reference numerals are attached.
〔1〕本発明の代表的な実施の形態に係る情報処理装置(100)は、第1CPU(11)と、上記第1CPUに結合された第1ローカルバス(12)と、上記第1ローカルバスに結合された第1ローカルメモリ(14)と、第2CPU(21)と、上記第2CPUに結合された第2ローカルバス(22)と、上記第2ローカルバスに結合された第2ローカルメモリ(24)とを含む。また、上記情報処理装置(100)は、上記第1ローカルメモリと上記第2ローカルメモリとに結合可能なシステムバス(32)と、上記システムバスに結合された周辺機能部(41)とを含む。さらに上記情報処理装置(100)は、CPUの動作モードとして、上記第1CPUと上記第2CPUとで互いに同一プログラムを実行させる高信頼モードと、上記第1CPUと上記第2CPUとで互いに異なるプログラムを実行可能な高性能モードとを有する。 [1] An information processing apparatus (100) according to a representative embodiment of the present invention includes a first CPU (11), a first local bus (12) coupled to the first CPU, and the first local bus. A first local memory (14) coupled to the second CPU (21), a second local bus (22) coupled to the second CPU, and a second local memory coupled to the second local bus ( 24). The information processing apparatus (100) includes a system bus (32) that can be coupled to the first local memory and the second local memory, and a peripheral function unit (41) coupled to the system bus. . Further, the information processing apparatus (100) executes, as CPU operation modes, a high-reliability mode in which the first CPU and the second CPU execute the same program, and different programs in the first CPU and the second CPU. With high performance mode possible.
このような情報処理装置(100)において、上記情報処理装置のアドレス空間における上記第1ローカルメモリ及び上記第2ローカルメモリについての定義情報と、上記CPUの動作モードとに基づいて、上記周辺機能部からの通信要求(アクセス要求)に対応する、上記システムバスから上記第1ローカルバス及び上記第2ローカルバスへのルーティングを制御可能なシステムバスコントローラ(33)を設ける。また上記情報処理装置において、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第1ローカルバスから上記第1ローカルメモリへのルーティングを制御可能な第1ローカルバスコントローラ(13)と、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第2ローカルバスから上記第2ローカルメモリへのルーティングを制御可能な第2ローカルバスコントローラ(23)とを設ける。ここで「ルーティング」とは、信号伝達のために最適な経路を選択することを指す。 In such an information processing device (100), the peripheral function unit is based on the definition information about the first local memory and the second local memory in the address space of the information processing device and the operation mode of the CPU. A system bus controller (33) capable of controlling routing from the system bus to the first local bus and the second local bus corresponding to a communication request (access request) from is provided. Further, in the information processing apparatus, a first local bus controller capable of controlling routing from the first local bus to the first local memory corresponding to a communication request from the peripheral function unit based on the definition information ( 13) and a second local bus controller (23) capable of controlling the routing from the second local bus to the second local memory, corresponding to the communication request from the peripheral function unit, based on the definition information. Is provided. Here, “routing” refers to selecting an optimum route for signal transmission.
情報処理装置の応用システムの動作中にCPUの動作モードが切り替わる場合、そのプログラムの動作前後においてCPUの動作モードが異なる可能性がある。従って情報処理装置の応用システムの動作中にCPUの動作モードが切り替わる応用システムを正常に動作させるには、周辺機能部からローカルメモリへのアクセスが生じた場合に、複数のローカルメモリにアクセスを行うのか、一部のローカルメモリにのみアクセスを行うのかを適切に制御する必要がある。 When the CPU operation mode is switched during the operation of the application system of the information processing apparatus, the CPU operation mode may be different before and after the operation of the program. Therefore, in order to operate the application system in which the CPU operation mode is switched during the operation of the application system of the information processing apparatus, when the peripheral function unit accesses the local memory, the plurality of local memories are accessed. It is necessary to appropriately control whether to access only a part of local memory.
本発明の代表的な実施の形態に係る情報処理装置によれば、上記システムバスコントローラは、上記情報処理装置のアドレス空間における上記第1ローカルメモリ及び上記第2ローカルメモリについての定義情報と、上記CPUの動作モードとに基づいて、上記周辺機能部からの通信要求に対応する、上記システムバスから上記第1ローカルバス及び上記第2ローカルバスへのルーティング制御を行う。また第1ローカルバスコントローラは、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第1ローカルバスから上記第1ローカルメモリへのルーティング制御を行う。さらに第2ローカルバスコントローラは、上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第2ローカルバスから上記第2ローカルメモリへのルーティング制御を行う。このような制御が行われることにより、周辺機能部からローカルメモリへのアクセスが生じた場合に、複数のローカルメモリにアクセスを行うのか、一部のローカルメモリにのみアクセスを行うのかを適切に制御することができるので、システムの動作中にCPUの動作モードが切り替わる応用システムを正常に動作させることができる。このような効果は、自動車におけるエンジン制御等の分野において、常に外部状態の監視及び制御が必要であるため周辺機能部を停止させることができない場合等に、特に顕著とされる。 According to the information processing apparatus according to the representative embodiment of the present invention, the system bus controller includes the definition information about the first local memory and the second local memory in the address space of the information processing apparatus, and the Based on the operation mode of the CPU, routing control from the system bus to the first local bus and the second local bus corresponding to the communication request from the peripheral function unit is performed. The first local bus controller performs routing control from the first local bus to the first local memory corresponding to the communication request from the peripheral function unit based on the definition information. Further, the second local bus controller performs routing control from the second local bus to the second local memory corresponding to the communication request from the peripheral function unit based on the definition information. By performing such control, when access to the local memory from the peripheral function unit occurs, it is appropriately controlled whether to access multiple local memories or only some local memories. Therefore, the application system in which the operation mode of the CPU is switched during the operation of the system can be operated normally. Such an effect is particularly noticeable in the field of engine control and the like in an automobile when the peripheral function unit cannot be stopped because it is necessary to constantly monitor and control the external state.
〔2〕上記〔1〕において、上記周辺機能部から上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのリードアクセスに対応して、上記第1ローカルメモリから出力されたデータと、上記第2ローカルメモリから出力されたデータとを比較し、その比較結果を上記周辺機能部に出力可能なシステムバスインタフェース(31)を設けることができる。上記システムバスインタフェースでデータ比較が行われることにより、不所望なリードデータが周辺機能部で使用されるのを回避することができるのでシステムの高信頼性の向上を図ることができる。 [2] In the above [1], in response to read access from the peripheral function unit to both the first local memory and the second local memory, the data output from the first local memory, and the first (2) A system bus interface (31) capable of comparing data output from the local memory and outputting the comparison result to the peripheral function unit can be provided. By performing the data comparison by the system bus interface, it is possible to avoid use of undesired read data in the peripheral function unit, so that the high reliability of the system can be improved.
〔3〕上記〔2〕において、上記第1ローカルバスコントローラは、上記高信頼モードにおいて、上記第2ローカルメモリにアクセス可能な領域にアクセスのあった場合に、上記第1ローカルメモリに対しては、当該メモリの内容変化を伴わないアクセスに置き換えるように構成することができる。また、上記第2ローカルバスコントローラは、上記高信頼モードにおいて、上記第1ローカルメモリにアクセス可能な領域にアクセスのあった場合に、上記第2ローカルメモリに対しては、当該メモリの内容変化を伴わないアクセスに置き換えるように構成することができる。 [3] In the above [2], when the first local bus controller accesses an area accessible to the second local memory in the high reliability mode, the first local bus controller The memory can be replaced with an access that does not involve a change in the contents of the memory. In addition, when the second local bus controller accesses an area accessible to the first local memory in the high reliability mode, the second local bus controller changes the contents of the memory to the second local memory. It can be configured to replace access without it.
高信頼モードにおいてCPUがローカルメモリにアクセスしている最中に、周辺機能部が特定CPUのローカルメモリにのみアクセスを行った場合には、そのローカルメモリにおいてアクセス競合が発生し、CPU間の同期が外れる虞れがあるが、上記のようにメモリの内容変化を伴わないアクセスへの置き換えが行われることにより、CPU間の同期外れを起こさずに動作を継続することができる。 When the peripheral function unit accesses only the local memory of the specific CPU while the CPU is accessing the local memory in the high reliability mode, an access conflict occurs in the local memory, and synchronization between the CPUs occurs. However, as described above, by replacing the access without changing the contents of the memory, the operation can be continued without causing the CPU to lose synchronization.
〔4〕上記〔3〕において、上記定義情報として、上記情報処理装置におけるアドレス空間に、第1ローカルメモリにアクセス可能な領域と、上記第2ローカルメモリメモリにアクセス可能な領域と、上記1ローカルメモリ及び上記第2ローカルメモリ共にアクセス可能な領域とを定義することができる。このような定義がなされることにより、上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラにおけるルーティング制御を的確に行うことができる。 [4] In the above [3], as the definition information, in the address space in the information processing apparatus, an area accessible to the first local memory, an area accessible to the second local memory, and the one local An area accessible to both the memory and the second local memory can be defined. With such a definition, routing control in the system bus controller, the first local bus controller, and the second local bus controller can be accurately performed.
〔5〕上記〔3〕において、上記定義情報として、上記情報処理装置におけるアドレス空間に、第1ローカルメモリにアクセス可能な領域と、上記第2ローカルメモリメモリにアクセス可能な領域とを定義し、上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのアクセスであるか否かを示す識別子を、上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義することができる。この場合において、上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラにおける上記ルーティング制御において、上記定義情報と上記識別子とが用いられる。このように上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのアクセスであるか否かを示す識別子が上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義される場合には、上記第1ローカルメモリ及び上記第2ローカルメモリ共にアクセス可能な領域については、上記情報処理装置におけるアドレス空間に定義する必要がない。 [5] In the above [3], as the definition information, an area accessible to the first local memory and an area accessible to the second local memory memory are defined in the address space in the information processing apparatus, An identifier indicating whether access is to both the first local memory and the second local memory can be defined in the first local bus, the second local bus, and the system bus. In this case, the definition information and the identifier are used in the routing control in the system bus controller, the first local bus controller, and the second local bus controller. Thus, when identifiers indicating whether or not the access is to both the first local memory and the second local memory are defined in the first local bus, the second local bus, and the system bus. The area accessible to both the first local memory and the second local memory need not be defined in the address space of the information processing apparatus.
〔6〕上記〔3〕において、上記情報処理装置におけるアドレス空間に、上記1ローカルメモリ及び上記第2ローカルメモリ共にアクセス可能な領域を定義する。また上記第1ローカルメモリへのアクセスであるか、上記第2ローカルメモリへのアクセスであるか、上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのアクセスであるかを識別可能な識別子を上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義する。この場合において、上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラによる上記ルーティング制御において、上記定義情報と上記識別子とが用いられる。このように上記識別子を上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義する場合には、第1ローカルメモリにアクセス可能な領域や第2ローカルメモリにアクセス可能な領域については、上記情報処理装置におけるアドレス空間に定義する必要がない。 [6] In the above [3], an area accessible to both the first local memory and the second local memory is defined in the address space of the information processing apparatus. An identifier for identifying whether the access is to the first local memory, to the second local memory, or to both the first local memory and the second local memory. The first local bus, the second local bus, and the system bus are defined. In this case, the definition information and the identifier are used in the routing control by the system bus controller, the first local bus controller, and the second local bus controller. As described above, when the identifier is defined in the first local bus, the second local bus, and the system bus, the area accessible to the first local memory and the area accessible to the second local memory are as follows. It is not necessary to define the address space in the information processing apparatus.
2.実施の形態の詳細
実施の形態について更に詳述する。
2. Details of Embodiments Embodiments will be further described in detail.
<実施の形態1>
図1には、本発明にかかる情報処理装置の構成例が示される。
<
FIG. 1 shows a configuration example of an information processing apparatus according to the present invention.
図1に示される情報処理装置100は、特に制限されないが、CPU11,21、ローカルバス12、22、ローカルバスコントローラ13、23、ローカルメモリ14,24、システムバスインタフェース31、システムバス32、システムバスコントローラ33、周辺機能部41を含む。
The
CPU11、12はそれぞれローカルバス12、22を介してローカルメモリ14,24に接続されており、各ローカルバスにおけるバスマスタ間のアクセス競合時の調停やルーティングなどの制御はローカルバスコントローラ13、23によって行われる。CPU11,21、ローカルバス12、22、ローカルバスコントローラ13、23、ローカルメモリ14,24は、高信頼モード及び高性能モードに対応可能に配置されており、システムバス32へ出力されるデータの比較及びシステムバス32との接続制御はシステムバスインタフェース31において行われる。
The
システムバス32におけるバスマスタ間のアクセス競合時の調停やルーティングなどの制御はシステムバスコントローラ33によって行われる。周辺機能部41はシステムバス32のバスマスタ機能を有しており、システムバス32、システムバスインタフェース31、ローカルバス12、22を介して、ローカルメモリ14,24にアクセス可能である。周辺機能部41の実装は多様なものが想定される。例えばDMA(Direct Memory Access)コントローラ、CAN(Controller Area Network)コントローラ、FlexRayコントローラ、PCI(Peripheral Component Interconnect)コントローラなどを周辺機能部41として実装することができる。また、周辺機能部41がバスマスタとして発行するアドレスは、CPU11,21が周辺機能部41に指示、ハードウェア固定、システム外部からの入力などの各種方法により決定される。
The
図2には、情報処理装置100におけるアドレス空間が示される。情報処理装置100のアドレス空間に、ローカルメモリ14にのみアクセス可能な領域a1、ローカルメモリ24にのみアクセス可能な領域a2、ローカルメモリ14,24共にアクセス可能な領域a3が定義されている。
FIG. 2 shows an address space in the
上記システムバスコントローラ33は、図2に示される定義情報とCPUの動作モードとに基づいて、上記周辺機能部41からの通信要求(アクセス要求)に対応する、上記システムバス32から上記ローカルバス12及び22へのルーティングを制御する。上記システムバスコントローラ33は、図4に示されるようなデコーダ401を含む。このデコーダ401は、CPUのモード信号、周辺機能部41からの通信要求信号req、システムバス32を介して伝達されたアドレス信号addをデコードする。上記システムバスコントローラ33では、このデコード結果に基づいてルーティング制御が行われる。
The
上記デコーダ401は、例えば図3のフローチャートに示されるような処理がハードウェアによって行われるようにデコード論理が構成される。上記デコーダ401がハードウェアで構成されることにより、図3のフローチャートに示されるような処理を高速に実行することができる。例えばCPUの動作モードが高信頼モードの場合には、領域a1へのアクセスであるか否か、領域a2へのアクセスであるか否か、領域a3へのアクセスであるか否か、他領域へのアクセスであるか否か、に応じてルーティング処理の内容が決定される(302〜304)。つまり、高信頼モードの場合、領域a1、領域a2、領域a3のアクセスの場合には、ローカルバス12,22にルーティングされ(302〜304,306)、他領域へのアクセスの場合には他領域にルーティングされる(305,307)。CPUの動作モードが高性能モードの場合には、領域a1へのアクセス、領域a2へのアクセス、領域a3へのアクセスで、ルーティング先が異なる。領域a1へのアクセスの場合にはローカルバス12にルーティングされ(308,312)、領域a2へのアクセスの場合にはローカルバス22にルーティングされ(309,313)、領域a3へのアクセスの場合にはローカルバス12,22の双方にルーティングされる(310,314)。他領域へのアクセスの場合には他領域にアクセスされる(311,315)。
In the
ローカルバスコントローラ13は、図6に示されるようなデコーダ601を含む。このデコーダ601は、リクエスト信号req、アドレス信号addをデコードする。ローカルバスコントローラ13では、このデコーダ601のデコード結果に基づいてルーティング制御が行われる。
The
上記デコーダ601は、例えば図5のフローチャートに示されるような処理がハードウェアによって行われるようにデコード論理が構成される。上記デコーダ601がハードウェアで構成されることにより、図5のフローチャートに示されるような処理を高速に実行することができる。例えば領域a1へのアクセス、及び領域a3へのアクセスの場合には、ローカルバス12からローカルメモリ14へルーティングされる(501,502,504)。また、領域a2へのアクセスの場合にはダミーアクセスに変換される(503,505)。ここで、「ダミーアクセス」とは、ローカルバスでは通常アクセスと同様の信号変化を行うが、ローカルメモリ14の記憶データを変更させないアクセスのことである。つまり、ダミーアクセスでは、例えばライトアクセスの場合でも、ローカルメモリ14へのデータ書き込みは行われない。このようなダミーアクセスを実現するには、例えばローカルバス12における1ビットをダミーアクセスビットとして定義し、上記ローカルバスコントローラ13によってダミーアクセスビットがアクティブにされた場合には、ライトサイクルが起動されても、当該サイクルではローカルメモリ14へのデータ書き込みが行われないような論理をローカルメモリ14に設ければ良い。
In the
尚、ローカルバスコントローラ23やローカルメモリ24については、上記ローカルバスコントローラ13や上記ローカルメモリ14と同様に構成される。
The
次に、上記構成の動作について説明する。 Next, the operation of the above configuration will be described.
図3には、システムバスコントローラ33によるルーティング処理の流れが示される。図5には、ローカルバスコントローラ13によるルーティング処理の流れが示される。
FIG. 3 shows the flow of routing processing by the
高信頼モードの実現は、一般にはCPU11,21を完全に同期した状態で動作させることにより行われる。しかし、複数CPUに同時にエラーを発生させる要因を回避するために、一定クロックサイクルだけずらして各CPUを動作させる方式を採用することも可能である。以下では説明を簡易化するために、各CPUが完全に同期した状態で動作するものとして説明を記載する。
The high reliability mode is generally realized by operating the
まず、CPU11,21が高信頼モードで動作しているときのシステム動作について説明する。
First, the system operation when the
周辺機能部41がシステムバス32に対してローカルメモリ14にのみアクセス可能な領域a1、ローカルメモリ24にのみアクセス可能な領域a2、ローカルメモリ14,24共にアクセス可能な領域a3のいずれかに向けてのアクセスを発行した場合、システムバスコントローラ33はローカルバス12、22の両方に対して、アクセスをルーティングする(302,303,304,306)。他領域へのアクセスの場合は他領域にルーティングされる(305,307)。ローカルバスコントローラ13は、ローカルメモリ14にのみアクセス可能な領域a1、ローカルメモリ14,24共にアクセス可能な領域a3にアクセスのあった場合はアクセスをそのままローカルメモリ14に対してルーティングする(501,502,504)が、ローカルメモリ24にのみアクセス可能な領域a2にアクセスのあった場合は、ローカルメモリ14に対するダミーアクセスに置き換える(505)。ローカルバスコントローラ23は同様に、ローカルメモリ24にのみアクセス可能な領域a2、ローカルメモリ14,24共にアクセス可能な領域a3にアクセスのあった場合はアクセスをそのままローカルメモリ24に対してルーティングするが、ローカルメモリ14にのみアクセス可能な領域a1にアクセスがあった場合は、ローカルメモリ24に対するダミーアクセスに置き換える。ローカルメモリ14,24共にアクセス可能な領域a3へのアクセスがリードであった場合、システムバスインタフェース31において、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの値が同一であるかおよびそれぞれの出力タイミングが同一であるかどうかが比較される。この比較において、読み出しデータの値が同一ではない場合、あるいは出力タイミングが同一ではない場合、当該読み出しデータは周辺機能部41での処理に使用されない。これにより高信頼性が維持される。
The peripheral function unit 41 is directed to either the area a1 accessible only to the
次に、CPU11,21が高性能モードで動作しているときの動作について説明する。
Next, the operation when the
周辺機能部41がシステムバス32に対してローカルメモリ14にのみアクセス可能な領域a1に向けてアクセスを発行した場合、システムバスコントローラ33はローカルバス12に対してのみアクセスをルーティングする(308,312)。周辺機能部41がシステムバス32に対してローカルメモリ24にのみアクセス可能な領域a2に向けてアクセスを発行した場合は同様に、システムバスコントローラ33はローカルバス22に対してのみアクセスをルーティングする(309,313)。周辺機能部41がシステムバス32に対してローカルメモリ14,24共にアクセス可能な領域a3に向けてアクセスを発行した場合は、システムバスコントローラ33はローカルバス12、22の両方に対してアクセスをルーティングする(310,314)。他領域へのアクセスの場合には、他領域にルーティングされる(311,315)。
When the peripheral function unit 41 issues access to the
ローカルメモリ14,24共にアクセス可能な領域a3へのアクセスがリードであった場合、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの出力タイミングはローカルバス12、23の使用状況により異なることがある。このため、システムバスインタフェース31において両読み出しデータが揃うまでシステムバス32への出力を抑止し、両読み出しデータが揃った後に、読み出しデータの値の比較およびシステムバス32への出力を行うようにする。
When the access to the area a3 accessible to both the
上記システムバスインタフェース31には、図19に示されるような処理を実行するためのハードウェアを設けることができる。図19に示されるような処理をハードウェアで実行することにより、高速に処理することができる。
The
先ず、システムバスコントローラ33において、周辺機能部41からのアクセスは、両ローカルメモリ14,24へのアクセスであるか否かの判別が行われる(1901)。周辺機能部41からのアクセスが、両ローカルメモリ14,24へのアクセスの場合は、メモリのリード中か否かの判別が行われる(1902)。メモリのリード中である場合、両ローカルメモリ14,24からのリード結果があるか否かの判別が行われ(1903)。両ローカルメモリ14,24からのリード結果がある場合、両ローカルメモリ14,24からのリード結果が互いに等しいか否かの判別が行われ(1904)。両ローカルメモリ14,24からのリード結果が互いに等しい場合には、リード要求元(周辺機能部41)にルーティングされることにより、リードデータが出力される(1905)。両ローカルメモリ14,24からのリード結果が互いに等しく無い場合はエラー信号がリード要求元(周辺機能部41)に伝達される(1906)。これにより、不所望なリードデータがリード要求元(周辺機能部41)で使用されるのを回避することができ、それにより高信頼性が維持される。
First, in the
また、周辺機能部41からのアクセスが、両ローカルメモリ14,24へのアクセスでない場合には、メモリのリード中か否かの判別が行われる(1907)。メモリのリード中であれば、システムバスコントローラ33において、メモリのリード結果があるか否かの判別が行われ、メモリのリード結果があれば、リード要求元(周辺機能部41)にルーティングされることによりデータが出力される(1909)。
If the access from the peripheral function unit 41 is not the access to both the
このように実施の形態1によれば、上記システムバスコントローラ33は、情報処理装置100のアドレス空間における上記第1ローカルメモリ及び上記第2ローカルメモリについての定義情報(a1,a2,a3)と、CPUの動作モードとに基づいて、上記周辺機能部41からの通信要求に対応する、上記システムバス32から上記ローカルバス12,22へのルーティング制御を行う。またローカルバスコントローラ13は、上記定義情報(a1,a2,a3)に基づいて、上記周辺機能部41からの通信要求に対応する、上記第1ローカルバスから上記第1ローカルメモリへのルーティング制御を行う。さらにローカルバスコントローラ23は、上記定義情報(a1,a2,a3)に基づいて、上記周辺機能部41からの通信要求に対応する、上記ローカルバス22から上記ローカルメモリ24へのルーティング制御を行う。このような制御が行われることにより、周辺機能部41からローカルメモリ14,24へのアクセスが生じた場合に、複数のローカルメモリ14,24にアクセスを行うのか、一部のローカルメモリ14又は24にのみアクセスを行うのかを適切に制御することができるので、システムの動作中にCPUの動作モードが切り替わる応用システムを正常に動作させることができる。
As described above, according to the first embodiment, the
<実施の形態2>
実施の形態1と同じ図1の構成のシステムにおいて、情報処理装置100のアドレス空間には、図7に示されるように、アクセス可能な領域a1、ローカルメモリ24にアクセス可能な領域a2が定義される。このとき、ローカルバス12、22およびシステムバス32には、図8に示されるように、アドレス信号add、データdata、通信要求信号req、通信許可信号gra、書き込み信号writeとともに、識別子idenが定義される。アドレス信号addは及びデータdataは、32ビット構成で、その他は1ビット構成とされる。識別子idenは、周辺機能部41からのアクセスが両ローカルメモリ14,24へのアクセスか否かを示している。識別子idenの論理値は、周辺機能部41によって決定される。例えば識別子idenが論理値“1”の場合には、周辺機能部41からのアクセスが両ローカルメモリ14,24へのアクセスであることを示し、識別子idenが論理値“0”の場合には、周辺機能部41からのアクセスが両ローカルメモリ14,24へのアクセスでないことを示す。
<
In the system having the same configuration of FIG. 1 as in the first embodiment, an accessible area a1 and an accessible area a2 are defined in the address space of the
システムバスコントローラ33は、図10に示されるようなデコーダ1001を含む。このデコーダ1001は、CPUのモード信号、通信要求信号req、アドレス信号add、及び識別子idenをデコードする。システムバスコントローラ33では、このデコード結果に基づいてルーティング制御が行われる。上記デコーダ1001は、例えば図9に示されるような処理がハードウェアによって行われるようにデコード論理が構成される。
The
ローカルバスコントローラ13は、図12に示されるようなデコーダ1201を含む。このデコーダ1201は、リクエスト信号req、アドレス信号add、及び識別子idenをデコードする。ローカルバスコントローラ13では、このデコーダ1201のデコード結果に基づいてルーティング制御が行われる。上記デコーダ1201は、例えば図11のフローチャートに示されるような処理がハードウェアによって行われるようにデコード論理が構成される。尚、ローカルバスコントローラ23も上記ローカルバスコントローラ13と同様に構成される。
The
図9には、システムバスコントローラ33によるルーティング処理の流れが示される。図11には、ローカルバスコントローラ13によるルーティング処理の流れが示される。
FIG. 9 shows the flow of routing processing by the
まず、CPU11,21が高信頼モードで動作しているときの、システムの動作について示す。周辺機能部41がシステムバス32に対してローカルメモリ14にアクセス可能な領域a1、ローカルメモリ24にアクセス可能な領域a2のいずれかに向けてのアクセスを発行した場合、そのアクセスにおける識別子の値に依らず、システムバスコントローラ33はローカルバス12、22の両方に対して、アクセスをルーティングする(902,903,905)。他領域へのアクセスの場合は他領域にルーティングされる(904,906)。ローカルバスコントローラ13は、ローカルメモリ14にのみアクセス可能な領域a1にアクセスがあったとき、アクセスをそのままローカルメモリ14に対してルーティングする(1101,1104)。ローカルメモリ24にアクセス可能な領域a2にアクセスがあり、かつ識別子が両ローカルメモリ14,24へのアクセスを示すときは、アドレスをローカルメモリ14を示すものに変更し、ローカルメモリ14に対してルーティングする(1102,1103,1104)。しかし、ローカルメモリ24にアクセス可能な領域a2にアクセスがあり、かつ識別子が両ローカルメモリ14,24へのアクセスを示さないときは、ローカルメモリ14に対するダミーアクセスに置き換える(1102,1103,1105)。ローカルバスコントローラ23は同様に、ローカルメモリ24にのみアクセス可能な領域a2にアクセスがあったとき、アクセスをそのままローカルメモリ24に対してルーティングする。ローカルメモリ14にアクセス可能な領域a1にアクセスがありかつ識別子が両ローカルメモリ14,24へのアクセスを示すときは、アドレスをローカルメモリ24を示すものに変更し、ローカルメモリ24に対してルーティングする。しかし、ローカルメモリ14にアクセス可能な領域a1にアクセスがありかつ識別子が両ローカルメモリ14,24へのアクセスを示さないときは、ローカルメモリ24に対するダミーアクセスに置き換える。ローカルメモリ14にアクセス可能な領域a1またはローカルメモリ24にアクセス可能な領域a2へのアクセスがリードであり、かつ識別子が両ローカルメモリ14,24へのアクセスを示すとき、システムバスインタフェース31において、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの値が同一であるかおよびそれぞれの出力タイミングが同一であるかどうかが比較される。つまり、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの出力タイミングはローカルバス12、23の使用状況により異なることがあるため、システムバスインタフェース31において両読み出しデータが揃うまでシステムバス32への出力を抑止し、両読み出しデータが揃った後に、読み出しテータの値の比較およびシステムバス32への出力を行う。ここでの具体的な処理は、実施の形態1の場合と同様に図19に示されるようになる。尚、他領域へのアクセスがあった場合は、他領域にルーティングされる(904,906)。
First, the operation of the system when the
次に、CPU11,21が高性能モードで動作しているときの、システムの動作について示す。周辺機能部41がシステムバス32に対してローカルメモリ14にアクセス可能な領域a1に向けて識別子を両ローカルメモリ14,24へのアクセスを示さない値としてアクセスを発行した場合、システムバスコントローラ33はローカルバス12に対してのみアクセスをルーティングする(907,911,912)。周辺機能部41がシステムバス32に対してローカルメモリ24にアクセス可能な領域a2に向けて識別子を両ローカルメモリ14,24へのアクセスを示さない値としてアクセスを発行した場合は同様に、システムバスコントローラ33はローカルバス22に対してのみアクセスをルーティングする(908,909,914)。周辺機能部41がシステムバス32に対してローカルメモリ14にアクセス可能な領域a1、ローカルメモリ24にアクセス可能な領域a2のいずれかに向けて識別子を両ローカルメモリ14,24へのアクセスを示す値としてアクセスを発行した場合は、ローカルバス12、22の両方に対して、アクセスをルーティングする(911,909,913)。ローカルメモリ14にアクセス可能な領域a1またはローカルメモリ24にアクセス可能な領域a2へのリードのアクセスにおいて識別子が両ローカルメモリ14,24へのアクセスを示す場合、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの出力タイミングはローカルバス12、23の使用状況により異なることがある。このため、システムバスインタフェース31において両読み出しデータが揃うまでシステムバス32への出力を抑止し、両読み出しデータが揃った後に、読み出しテータの値の比較およびシステムバス32への出力を行う。ここでの具体的な処理は、実施の形態1の場合と同様に図19に示されるようになる。尚、他領域へのアクセスがあった場合は、他領域にルーティングされる(910,915)。
Next, the operation of the system when the
<実施の形態3>
実施の形態1と同じ図1の構成のシステムにおいて、情報処理装置100のアドレス空間には、図13に示されるように、ローカルメモリ14,24にアクセス可能な領域a3が定義される。このとき、ローカルバス12、22およびシステムバス32には、図14に示されるように、2ビット構成の識別子idenが定義される。この2ビット構成の識別子idenによって、周辺機能部41からのアクセスがローカルメモリ14へのアクセスか、ローカルメモリ24へのアクセスか、両ローカルメモリ14,24へのアクセスかを識別することができる。例えば、2ビット構成の識別子idenが論理値“10”の場合には、周辺機能部41からのアクセスがローカルメモリ14へのアクセスであることを示し、2ビット構成の識別子idenが論理値“01”の場合には、周辺機能部41からのアクセスがローカルメモリ24へのアクセスであることを示す。また、2ビット構成の識別子idenが論理値“11”の場合には、周辺機能部41からのアクセスがローカルメモリ14,24へのアクセスであることを示す。識別子idenの論理値は周辺機能部41によって決定される。
<Embodiment 3>
In the system having the same configuration as that of the first embodiment shown in FIG. 1, an area a <b> 3 that can access the
システムバスコントローラ33は、図16に示されるようなデコーダ1601を含む。このデコーダ1601は、CPUのモード信号、通信要求信号req、アドレス信号add、及び識別子idenをデコードする。システムバスコントローラ33では、このデコード結果に基づいてルーティング制御が行われる。上記デコーダ1001は、例えば図15に示されるような処理がハードウェアによって行われるようにデコード論理が構成される。
The
ローカルバスコントローラ13は、図18に示されるようなデコーダ1801を含む。このデコーダ1801は、リクエスト信号req、アドレス信号add、及び識別子idenをデコードする。ローカルバスコントローラ13では、このデコーダ1801のデコード結果に基づいてルーティング制御が行われる。上記デコーダ1801は、例えば図17のフローチャートに示されるような処理がハードウェアによって行われるようにデコード論理が構成される。尚、ローカルバスコントローラ23も上記ローカルバスコントローラ13と同様に構成される。
The
図15には、上記情報処理装置に含まれるシステムバスコントローラ33によるルーティング処理の流れが示される。図17には、ローカルバスコントローラ13によるルーティング処理の流れが示される。
FIG. 15 shows the flow of routing processing by the
まず、CPU11,21が高信頼モードで動作しているときの、システムの動作について示す。周辺機能部41がシステムバス32に対してローカルメモリ14,24にアクセス可能な領域a3に向けてのアクセスを発行した場合、そのアクセスにおける識別子idenの値に依らず、システムバスコントローラ33はローカルバス12、22の両方に対して、アクセスをルーティングする(1502,1504)。ローカルバスコントローラ13は、識別子idenがローカルメモリ14へのアクセスを示す場合および、両ローカルメモリ14,24へのアクセスかを示す場合にアクセスをそのままローカルメモリ14に対してルーティングするが(1702,1703,1704)、識別子idenがローカルメモリ24へのアクセスを示す場合、ローカルメモリ14に対するダミーアクセスに置き換える(1705)。ローカルバスコントローラ23は同様に、識別子idenがローカルメモリ24へのアクセスを示す場合および、両ローカルメモリ14,24へのアクセスかを示す場合にアクセスをそのままローカルメモリ24に対してルーティングするが、識別子idenがローカルメモリ14へのアクセスを示す場合、ローカルメモリ24に対するダミーアクセスに置き換える。ローカルメモリ14,24にアクセス可能な領域a3へのアクセスがリードであり、かつ識別子idenが両ローカルメモリ14,24へのアクセスを示すとき、システムバスインタフェース31において、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの値が同一であるか、およびそれぞれの出力タイミングが同一であるかどうかが比較される。つまり、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの出力タイミングはローカルバス12、22の使用状況により異なることがあるため、システムバスインタフェース31において両読み出しデータが揃うまでシステムバス32への出力を抑止し、両読み出しデータが揃った後に、読み出しテータの値の比較およびシステムバス32への出力を行う。ここでの具体的な処理は、実施の形態1の場合と同様に図19に示されるようになる。尚、他領域へのアクセスがあった場合は、他領域にルーティングされる(1503,1505)。
First, the operation of the system when the
次に、CPU11,21が高性能モードで動作しているときの、システムの動作について示す。周辺機能部41がシステムバス32に対してローカルメモリ14,24にアクセス可能な領域a3に向けてのアクセスを発行した場合、そのアクセスにおける識別子idenの値に依らず、システムバスコントローラ33はローカルバス12、22の両方に対して、アクセスをルーティングする(1506,1507,1510)。ローカルバスコントローラ13は、識別子idenがローカルメモリ14へのアクセスを示す場合および、両ローカルメモリ14,24へのアクセスかを示す場合にアクセスをそのままローカルメモリ14に対してルーティングするが、識別子idenがローカルメモリ24へのアクセスを示す場合は、ローカルメモリ14に対してアクセスを発生させない(1507,1511)。ローカルバスコントローラ23は同様に、識別子idenがローカルメモリ24へのアクセスを示す場合および、両ローカルメモリ14,24へのアクセスかを示す場合にアクセスをそのままローカルメモリ24に対してルーティングするが、識別子idenがローカルメモリ14へのアクセスを示す場合は、ローカルメモリ24に対してアクセスを発生させない(1507,1509)。ローカルメモリ14,24にアクセス可能な領域a3へのリードのアクセスにおいて識別子idenが両ローカルメモリ14,24へのアクセスを示す場合、ローカルメモリ14からの読み出しデータとローカルメモリ24からの読み出しデータの出力タイミングはローカルバス12、23の使用状況により異なることがある。このため、システムバスインタフェース31において両読み出しデータが揃うまでシステムバス32への出力を抑止し、両読み出しデータが揃った後に、読み出しテータの値の比較およびシステムバス32への出力を行う。ここでの具体的な処理は、実施の形態1の場合と同様に図19に示されるようになる。尚、他領域へのアクセスがあった場合は、他領域にルーティングされる(1508,1512)。
Next, the operation of the system when the
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。 Although the invention made by the present inventor has been specifically described based on the embodiments, it is needless to say that the present invention is not limited thereto and can be variously modified without departing from the gist thereof.
例えば、上記の例では、CPU11,21を有するものについて説明したが、情報処理装置100に含まれるCPUの数は複数であれば良く、2個に限定されない。
For example, in the above example, the CPU having the
11,21 CPU
12,22 ローカルバス
13,23 ローカルバスコントローラ
14,24 ローカルメモリ
31 システムバスインタフェース
32 システムバス
33 システムバスコントローラ
41 周辺機能部
401,601,1001,1201,1601,1801 デコーダ
11,21 CPU
12, 22
Claims (6)
上記第1CPUに結合された第1ローカルバスと、
上記第1ローカルバスに結合された第1ローカルメモリと、
第2CPUと、
上記第2CPUに結合された第2ローカルバスと、
上記第2ローカルバスに結合された第2ローカルメモリと、
上記第1ローカルメモリと上記第2ローカルメモリとに結合可能なシステムバスと、
上記システムバスに結合された周辺機能部と、を備え、
CPUの動作モードとして、上記第1CPUと上記第2CPUとで互いに同一プログラムを実行させる高信頼モードと、上記第1CPUと上記第2CPUとで互いに異なるプログラムを実行可能な高性能モードとを有する情報処理装置であって、
上記情報処理装置のアドレス空間における上記第1ローカルメモリ及び上記第2ローカルメモリについての定義情報と、上記CPUの動作モードとに基づいて、上記周辺機能部からの通信要求に対応する、上記システムバスから上記第1ローカルバス及び上記第2ローカルバスへのルーティングを制御可能なシステムバスコントローラと、
上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第1ローカルバスから上記第1ローカルメモリへのルーティングを制御可能な第1ローカルバスコントローラと、
上記定義情報に基づいて、上記周辺機能部からの通信要求に対応する、上記第2ローカルバスから上記第2ローカルメモリへのルーティングを制御可能な第2ローカルバスコントローラと、を含むことを特徴とする情報処理装置。 A first CPU;
A first local bus coupled to the first CPU;
A first local memory coupled to the first local bus;
A second CPU;
A second local bus coupled to the second CPU;
A second local memory coupled to the second local bus;
A system bus connectable to the first local memory and the second local memory;
A peripheral function unit coupled to the system bus,
Information processing having a high-reliability mode in which the first CPU and the second CPU execute the same program as the operation mode of the CPU, and a high-performance mode in which the first CPU and the second CPU can execute different programs. A device,
The system bus corresponding to a communication request from the peripheral function unit based on definition information about the first local memory and the second local memory in the address space of the information processing apparatus and an operation mode of the CPU A system bus controller capable of controlling routing from the first local bus to the second local bus;
A first local bus controller capable of controlling routing from the first local bus to the first local memory corresponding to a communication request from the peripheral function unit based on the definition information;
A second local bus controller capable of controlling routing from the second local bus to the second local memory corresponding to a communication request from the peripheral function unit based on the definition information. Information processing apparatus.
上記第2ローカルバスコントローラは、上記高信頼モードにおいて、上記第1ローカルメモリにアクセス可能な領域にアクセスのあった場合に、上記第2ローカルメモリに対しては、当該メモリの内容変化を伴わないアクセスに置き換える請求項2記載の情報処理装置。 When the first local bus controller accesses an area accessible to the second local memory in the high-reliability mode, the first local memory does not change the contents of the memory. Replaced with access,
When the second local bus controller accesses an area accessible to the first local memory in the high-reliability mode, the second local memory does not change the contents of the memory. The information processing apparatus according to claim 2, wherein the information processing apparatus is replaced with access.
上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラにおける上記ルーティング制御において上記定義情報が用いられる請求項3記載の情報処理装置。 As the definition information, the address space in the information processing apparatus is accessed to an area accessible to the first local memory, an area accessible to the second local memory, and both the first local memory and the second local memory. Possible areas are defined,
The information processing apparatus according to claim 3, wherein the definition information is used in the routing control in the system bus controller, the first local bus controller, and the second local bus controller.
上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのアクセスであるか否かを示す識別子が、上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義され、
上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラにおける上記ルーティング制御において、上記定義情報と上記識別子とが用いられる請求項3記載の情報処理装置。 As the definition information, an area accessible to the first local memory and an area accessible to the second local memory memory are defined in the address space in the information processing apparatus,
An identifier indicating whether the access is to both the first local memory and the second local memory is defined in the first local bus, the second local bus, and the system bus,
The information processing apparatus according to claim 3, wherein the definition information and the identifier are used in the routing control in the system bus controller, the first local bus controller, and the second local bus controller.
上記第1ローカルメモリへのアクセスであるか、上記第2ローカルメモリへのアクセスであるか、上記第1ローカルメモリ及び上記第2ローカルメモリの双方へのアクセスであるかを識別可能な識別子が上記第1ローカルバス、上記第2ローカルバス、及び上記システムバスに定義され、
上記システムバスコントローラ、上記第1ローカルバスコントローラ、及び上記第2ローカルバスコントローラによる上記ルーティング制御において、上記定義情報と、上記識別子が用いられる請求項3記載の情報処理装置。 As the definition information, an area accessible to both the first local memory and the second local memory is defined in the address space in the information processing apparatus,
An identifier that can identify whether the access is to the first local memory, the second local memory, or both the first local memory and the second local memory. Defined in the first local bus, the second local bus, and the system bus;
The information processing apparatus according to claim 3, wherein the definition information and the identifier are used in the routing control by the system bus controller, the first local bus controller, and the second local bus controller.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010013254A JP2011150645A (en) | 2010-01-25 | 2010-01-25 | Information processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010013254A JP2011150645A (en) | 2010-01-25 | 2010-01-25 | Information processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011150645A true JP2011150645A (en) | 2011-08-04 |
Family
ID=44537539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010013254A Withdrawn JP2011150645A (en) | 2010-01-25 | 2010-01-25 | Information processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011150645A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662228A (en) * | 2023-06-16 | 2023-08-29 | 深圳市东方聚成科技有限公司 | Access method for time-division multiplexing local memory |
-
2010
- 2010-01-25 JP JP2010013254A patent/JP2011150645A/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662228A (en) * | 2023-06-16 | 2023-08-29 | 深圳市东方聚成科技有限公司 | Access method for time-division multiplexing local memory |
CN116662228B (en) * | 2023-06-16 | 2024-01-30 | 深圳市东方聚成科技有限公司 | Access method for time-division multiplexing local memory |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7512723B2 (en) | Queued interface devices, multi-core peripheral systems, and methods for sharing a peripheral in a multi-core system | |
JP5498505B2 (en) | Resolving contention between data bursts | |
JP5829890B2 (en) | Semiconductor data processing apparatus, time trigger communication system, and communication system | |
JP4182801B2 (en) | Multi-processor system | |
KR101380364B1 (en) | Sharing bandwidth of a single port sram between at least one dma peripheral and a cpu operating with a quadrature clock | |
JP5578713B2 (en) | Information processing device | |
US9170963B2 (en) | Apparatus and method for generating interrupt signal that supports multi-processor | |
JP2008033893A (en) | Multiprocessor system and access right setting method in multiprocessor system | |
TWI403955B (en) | Device,method and system for audio subsystem sharing in a virtualized environment | |
US9652299B2 (en) | Controlling the state of a process between a running and a stopped state by comparing identification information sent prior to execution | |
JP2008532167A (en) | Data processing system having interrupt controller and interrupt control method | |
WO2016041453A1 (en) | Remote resource access method and exchange device | |
JP4193746B2 (en) | Matrix bus connection system | |
JP2011150645A (en) | Information processor | |
US20150100759A1 (en) | Pipelined finite state machine | |
US20160140065A1 (en) | Register Access Control Among Multiple Devices | |
CN117009266A (en) | Handshake protocol bus arbitration module and system on chip | |
US20050135402A1 (en) | Data transfer apparatus | |
US10803007B1 (en) | Reconfigurable instruction | |
JP2005293596A (en) | Arbitration of data request | |
US7877533B2 (en) | Bus system, bus slave and bus control method | |
JP6416488B2 (en) | Semiconductor device | |
WO2011030498A1 (en) | Data processing device and data processing method | |
JP2020204877A (en) | Semiconductor device and method for operating the same | |
JP4788004B2 (en) | Information processing apparatus, PCI bus control method, and PCI bus control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130402 |