JP5380322B2 - メモリマスタデバイス - Google Patents
メモリマスタデバイス Download PDFInfo
- Publication number
- JP5380322B2 JP5380322B2 JP2010032436A JP2010032436A JP5380322B2 JP 5380322 B2 JP5380322 B2 JP 5380322B2 JP 2010032436 A JP2010032436 A JP 2010032436A JP 2010032436 A JP2010032436 A JP 2010032436A JP 5380322 B2 JP5380322 B2 JP 5380322B2
- Authority
- JP
- Japan
- Prior art keywords
- memory access
- access request
- memory
- chip
- unit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Description
このようなシステムにおけるデバイス間の接続には、PCIバス(Peripheral Component Interconnect)などの汎用バスが広く用いられている(例えば、特許文献1参照)。
また、PCI接続では、一対一の接続状態で通信が行われるので、図7の(b)に示すように、一の上位デバイス(チップA)に複数のメモリマスタデバイス(チップB、チップC)を接続する場合は、スイッチを介在させることにより、上位デバイスの接続相手を動的に切換えている。
以下、その理由について説明する。
ここで、メモリマスタデバイスに優先度の高いメモリアクセス要求と優先度の低いメモリアクセス要求が存在する場合は、上位デバイス内で発生するメモリアクセス要求と同様、優先度に応じた調停を行うことが好ましい。
ところが、上位デバイスのバス調停部は、メモリマスタデバイスから受理したメモリアクセス要求の優先度を判別することができないので、精度の高い調停を行うことができず、優先度の高いメモリアクセス要求を効率良く通すことが困難になる。
このようにすると、上位デバイスのバス調停部は、メモリマスタデバイスから受理したメモリアクセス要求の優先度を優先度判別データにもとづいて判別することができるので、優先度の高いメモリアクセス要求を効率良く通すことが可能となる。
しかしながら、優先度判別データの付加は、メモリアクセスデータを冗長させ、メモリアクセス速度を低下させる一因にもなりうる。
そのため、他のメモリマスタデバイスにおいて優先度判別データの付加機能を実現しても、システム内に汎用チップが存在すると、汎用チップからのメモリアクセス要求が無制限に通り、他のデバイスからの優先度の高いメモリアクセス要求が遅滞してしまうという問題が発生する。
しかしながら、上位デバイスのみで構成されるシステムにおいては、外部要求用の受け付けバッファが不要なので、上位デバイスに搭載するコストが無駄になってしまうという問題が生じる。
なお、以下に示す本発明のメモリマスタデバイス及びメモリマスタデバイスにより構成されるシステムで実行される処理動作は、プログラム(ソフトウェア)の命令によりコンピュータで実行される処理,手段,機能によって実現される。
プログラムは、コンピュータの各構成要素に指令を送り、以下に示すような本発明の所定の処理、例えば、メモリマスタデバイスの内部で発生するメモリアクセス要求を優先度別に受け付ける複数の内部要求受け付け処理、メモリマスタデバイスに接続可能な下位デバイスからメモリアクセス要求を受け付ける外部要求受け付け処理、各受け付け部が受け付けたメモリアクセス要求を、各受け付け部に設定された優先度に応じて通過させるバス調停処理、バス調停部を通過したメモリアクセス要求を上位デバイスに送出する送出処理等の各処理・手順を行わせるようになっている。
なお、プログラムの全部又は一部は、例えば、磁気ディスク,光ディスク,半導体メモリ,その他任意のコンピュータで読取り可能な記録媒体により提供され、記録媒体から読み出されたプログラムがコンピュータにインストールされて実行される。また、プログラムは、記録媒体を介さず、通信回線を通じて直接にコンピュータにロードし実行することもできる。
具体的には、同図に示すシステムは、メモリコントローラ及びルートコンプレックスを備えた、CPU及びメモリに接続されるチップA(上位デバイス)と、エンドポイント及びルートコンプレックスを備えた、チップAの下位に接続されるチップB(メモリマスタデバイス)と、エンドポイントを有し、チップBの下位に接続されるチップC(下位デバイス)とを備えて構成されている。
このシステム構成では、チップAからはチップBしか見えず、チップCが見えない、いわゆる非透過ブリッジを構成している。
チップBでは、ルートコンプレックスB−RCが受理したチップCのメモリアクセス要求を、チップB内のメモリアクセス要求として、チップBのエンドポイントB−EPからチップAのルートコンプレックスA−RCに送信する。
また、チップB内で発生するメモリアクセス要求も同様に、チップBのエンドポイントB−EPからチップAのルートコンプレックスA−RCに送信される。
また、チップA内で発生するメモリアクセス要求も同様に、メモリコントローラに送信され、メモリアクセスを行なう構成となる。
具体的には、チップBは、当該チップBの内部で発生するメモリアクセス要求を優先度別に受け付ける複数の内部要求受け付け部B−MstH、B−MstLと、チップBの下位に接続されるチップCからメモリアクセス要求を受け付ける外部要求受け付け部(本実施形態ではルートコンプレックスB−RC)と、各受け付け部B−MstH、B−MstL、B−RCが受け付けたメモリアクセス要求を、各受け付け部B−MstH、B−MstL、B−RCに設定された優先度に応じて通過させるバス調停部1と、バス調停部1を通過したメモリアクセス要求をチップAに送出する送出部(本実施形態ではエンドポイントB−EP)とを備えている。
また、図4に示すように、優先度が低いメモリアクセス要求であっても、数回に一回の割合で要求を通す、いわゆるラウンドロビン式の調停を行うようにしてもよい。
受け付けバッファ2〜4は、各受け付け部B−MstH、B−MstL、B−RCとバス調停部1との間にそれぞれ設けられ、各受け付け部B−MstH、B−MstL、B−RCが受け付けたメモリアクセス要求を優先度別にバッファリングする。
また、送出しバッファ5は、バス調停部1と送出部B−EPとの間に設けられ、バス調停部1を通過したメモリアクセス要求をバッファリングする。
また、各バッファ2〜5は、バッファリングしているメモリアクセス要求の出力を制御するゲート機能を有しており、ゲート信号の入力に応じて、メモリアクセス要求の出力を規制することが可能となっている。
帯域制御部6は、バス調停部1を通過したメモリアクセス要求を監視するとともに、各受け付け部B−MstH、B−MstL、B−RCからのメモリアクセス要求が設定された帯域幅を超えないように、各受け付けバッファ2〜4の出力を制御する第一の帯域制御機能を備えている。
ここで、帯域の計算には、単位時間当たりのアクセス数やデータサイズを用い、設定された帯域を確保するものとする。例えば、図5に示すように、各受け付け部B−MstH、B−MstL、B−RC毎に、帯域測定期間内におけるアクセス許可回数を設定しておき、許可回数カウンタが設定値に達したら、対応する受け付けバッファ2〜4のゲートを閉じる。
なお、アクセス許可回数カウンタ及び帯域測定期間カウンタは、帯域測定期間カウンタが設定値に達する毎にクリアされる。
PCI接続によるシステム構成によっては、チップBと並列の関係になるチップが追加されたり、チップA内で発生するメモリアクセス要求がチップB内やチップC内で発生するメモリアクセス要求よりも最優先となる場合がある。このような場合には、チップBからチップAに無制限にメモリアクセス要求が送出されると、チップBとチップAとの間に設けられるバッファや、チップA内のバッファがチップBのメモリアクセス要求で占有されるなどの不都合が発生する可能性がある。
これに対して、上記第二の帯域制御機能によれば、送出部B−EPから送出されるメモリアクセス要求の帯域幅を任意に設定できるので、上記の不都合を回避できる。
図1に示すPCI接続構成において、チップC内で発生するメモリアクセス要求は、チップBに送信され、チップBの外部要求受け付け部B−RCで受け付けられる。
また、チップB内で発生するメモリアクセス要求は、優先度別に複数の内部要求受け付け部B−MstH、B−MstLで受け付けられる。
各受け付け部B−MstH、B−MstL、B−RCが受け付けたメモリアクセス要求は、バス調停部1において、各受け付け部B−MstH、B−MstL、B−RCに設定された優先度に応じて調停される。
そして、バス調停部1を通過したメモリアクセス要求は、送出部B−EPからチップAに送出される。
さらに、帯域制御部6は、送出部B−EPから送出されるメモリアクセス要求が設定された帯域幅を超えないように、送出しバッファ5の出力を制御する。
このとき、チップBからのメモリアクセス要求は、チップB内で優先度に応じて調停されるだけでなく、優先度毎に帯域幅が制御されているので、チップA内のバッファにおいて、優先度の低いメモリアクセス要求のバッファ数を減らし、優先度の高いマスタのアクセスのバッファ数を増やすことが可能となる。
これにより、チップBの優先度の高いメモリアクセス要求を効率良く通過させることができる。
また、チップBからの優先度の低いメモリアクセス要求も、チップA内の優先度の高いメモリアクセス要求と同等に扱われるが、チップB内の調停や帯域制御により、あらかじめアクセス回数などが制限されているので、他の優先度の高いメモリアクセス要求を遅滞させることはない。
例えば、図6の(a)に示すように、下位にチップCが接続されない構成では、チップCのメモリアクセス要求を制限するという効果は得られないが、チップBのメモリアクセス要求をあらかじめチップB内で調停したり帯域制御することにより、チップAにおいて優先度の高いメモリアクセス要求を効率良く通すことができるという効果は発揮される。
また、図6の(b)、(c)に示すように、チップAに対して、チップBと同等の機能を有するチップB1、B2が並列に接続される構成でも、チップB1、B2のメモリアクセス要求をあらかじめチップB1、B2内で調停したり帯域制御することにより、チップAにおいて優先度の高いメモリアクセス要求を効率良く通すことができるという効果は発揮される。
また、バッファの追加搭載などに伴うチップAのコストアップを回避できる。
しかも、チップBの下位に汎用チップなどのチップCを接続すれば、チップCからのメモリアクセス要求を容易に制限することができるので、汎用チップのメモリアクセス要求がチップAに無制限に通ってしまうような問題も解消することができる。
これにより、メモリアクセス要求の帯域幅を優先度毎に任意に設定することができる。
B チップ(メモリマスタデバイス)
C チップ(下位デバイス)
1 バス調停部
2〜4 受け付けバッファ
5 送出しバッファ
6 帯域制御部
Claims (2)
- メモリコントローラを有する上位デバイスに接続され、該上位デバイスを介してメモリにアクセスするメモリマスタデバイスであって、
前記メモリマスタデバイスの内部で発生するメモリアクセス要求を優先度別に受け付ける複数の内部要求受け付け部と、
前記メモリマスタデバイスに接続可能な下位デバイスからメモリアクセス要求を受け付ける外部要求受け付け部と、
前記バス調停部を通過したメモリアクセス要求を、前記各受け付け部に設定された優先度に応じて通過させるバス調停部と、
前記バス調停部を通過したメモリアクセス要求を前記上位デバイスに送出する送出部と、を備えるとともに、
前記各受け付け部と前記バス調停部との間にそれぞれ設けられ、前記各受け付け部が受け付けたメモリアクセス要求を優先度別にバッファリングする複数の受け付けバッファと、
前記バス調停部を通過したメモリアクセス要求を監視するとともに、前記各受け付け部からのメモリアクセス要求が設定された帯域幅を超えないように、前記各受け付けバッファの出力を制御する帯域制御部と、を備え、
前記帯域制御部は、
前記各受け付けバッファに入力されたメモリアクセス要求の回数を計数し、その計数値が、予め前記各受け付けバッファに設定された回数に達したときに出力されるゲート信号を検知すると前記メモリアクセス要求の出力を制限し、所定の周期に基づき前記ゲート信号の出力の停止を検知すると前記メモリアクセス要求の出力の制限を解除することで、前記各受け付け部からのメモリアクセス要求が設定された帯域幅を超えないように、前記各受け付けバッファの出力を制御する
ことを特徴とするメモリマスタデバイス。 - 前記バス調停部と前記送出部との間に設けられ、前記バス調停部を通過したメモリアクセス要求をバッファリングする送出しバッファを備え、
前記帯域制御部は、前記送出部から送出されるメモリアクセス要求が設定された帯域幅を超えないように、前記送出しバッファの出力を制御する請求項1記載のメモリマスタデバイス。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010032436A JP5380322B2 (ja) | 2010-02-17 | 2010-02-17 | メモリマスタデバイス |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010032436A JP5380322B2 (ja) | 2010-02-17 | 2010-02-17 | メモリマスタデバイス |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011170515A JP2011170515A (ja) | 2011-09-01 |
JP5380322B2 true JP5380322B2 (ja) | 2014-01-08 |
Family
ID=44684599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010032436A Expired - Fee Related JP5380322B2 (ja) | 2010-02-17 | 2010-02-17 | メモリマスタデバイス |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5380322B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5417305B2 (ja) * | 2010-11-25 | 2014-02-12 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置 |
JP2013088879A (ja) * | 2011-10-13 | 2013-05-13 | Kyocera Document Solutions Inc | 情報処理装置 |
JP5337890B2 (ja) * | 2012-02-29 | 2013-11-06 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004140538A (ja) * | 2002-10-17 | 2004-05-13 | Hitachi Ltd | 大容量化と低遅延化に対応したアービタおよびそれを用いたルータ |
JP4480427B2 (ja) * | 2004-03-12 | 2010-06-16 | パナソニック株式会社 | リソース管理装置 |
JP2006172256A (ja) * | 2004-12-17 | 2006-06-29 | Renesas Technology Corp | 情報処理装置 |
US7356631B2 (en) * | 2005-01-21 | 2008-04-08 | Himax Technologies, Inc. | Apparatus and method for scheduling requests to source device in a memory access system |
US7426621B2 (en) * | 2005-12-09 | 2008-09-16 | Advanced Micro Devices, Inc. | Memory access request arbitration |
JP4862593B2 (ja) * | 2006-10-04 | 2012-01-25 | 富士ゼロックス株式会社 | データ転送装置及び画像形成装置 |
JP4873557B2 (ja) * | 2007-01-12 | 2012-02-08 | ルネサスエレクトロニクス株式会社 | データ処理装置及び半導体集積回路 |
JP5145929B2 (ja) * | 2007-03-08 | 2013-02-20 | 株式会社リコー | 半導体集積回路及び画像処理装置 |
JP4881887B2 (ja) * | 2008-01-30 | 2012-02-22 | アラクサラネットワークス株式会社 | トラフィックシェーピング機能および装置 |
WO2009147731A1 (ja) * | 2008-06-03 | 2009-12-10 | 富士通株式会社 | データ転送装置、情報処理装置および制御方法 |
-
2010
- 2010-02-17 JP JP2010032436A patent/JP5380322B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011170515A (ja) | 2011-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7474670B2 (en) | Method and system for allocating bandwidth | |
WO2011089660A1 (ja) | バス調停装置 | |
EP2232376B1 (en) | Resource controlling | |
CN105260331B (zh) | 一种双总线内存控制器 | |
US7644207B2 (en) | High speed bus for isolated data acquisition applications | |
US8285903B2 (en) | Requests and data handling in a bus architecture | |
EP3213220B1 (en) | Methods and circuits for deadlock avoidance | |
US11481345B2 (en) | Split direct memory access (DMA) with streaming interconnect | |
US7328295B2 (en) | Interrupt controller and interrupt controlling method for prioritizing interrupt requests generated by a plurality of interrupt sources | |
JP5380322B2 (ja) | メモリマスタデバイス | |
US8949845B2 (en) | Systems and methods for resource controlling | |
US8468381B2 (en) | Integrated circuit package with multiple dies and a synchronizer | |
US9229895B2 (en) | Multi-core integrated circuit configurable to provide multiple logical domains | |
US8347258B2 (en) | Method and apparatus for interfacing multiple dies with mapping for source identifier allocation | |
JP2010271874A (ja) | 情報処理装置および画像形成装置 | |
KR100737904B1 (ko) | 마스터/슬레이브 디바이스간의 인터페이스 장치 및 그 방법 | |
JP5494925B2 (ja) | 半導体集積回路、情報処理装置およびプロセッサ性能保証方法 | |
JP2007108858A (ja) | ピン共有装置およびピン共有方法 | |
KR100604569B1 (ko) | 멀티 프로세서간 데이터 통신장치와 그 장치를 포함하는이동 통신 단말기 | |
JP2002041446A (ja) | データ処理装置 | |
KR20040045665A (ko) | 파이프라인형 직접 메모리 접근 컨트롤러 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130611 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130809 |
|
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: 20130903 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130930 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5380322 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |