JP5228938B2 - アクセスキー生成装置および情報処理装置 - Google Patents
アクセスキー生成装置および情報処理装置 Download PDFInfo
- Publication number
- JP5228938B2 JP5228938B2 JP2009010488A JP2009010488A JP5228938B2 JP 5228938 B2 JP5228938 B2 JP 5228938B2 JP 2009010488 A JP2009010488 A JP 2009010488A JP 2009010488 A JP2009010488 A JP 2009010488A JP 5228938 B2 JP5228938 B2 JP 5228938B2
- Authority
- JP
- Japan
- Prior art keywords
- access key
- bus number
- access
- shortened
- conversion
- 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
- 230000010365 information processing Effects 0.000 title description 15
- 238000006243 chemical reaction Methods 0.000 claims description 48
- 230000002093 peripheral effect Effects 0.000 claims description 45
- 230000006870 function Effects 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 9
- 238000000034 method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Description
1.第1の実施の形態(PCIデバイスおよびPCI−Expressデバイスが混在する情報処理システムにおける実現例)
2.第2の実施の形態(一般的な情報処理システムにおける実現例)
[情報処理システムの全体構成例]
図1は、本発明の第1の実施の形態における情報処理システムの全体構成例を示す図である。この情報処理システムでは、PCIデバイス321乃至328とPCI−Express(以下、PCIeと省略する。)デバイス311乃至316とが混在しており、ホストブリッジ装置100を介してプロセッサシステム200に接続している。プロセッサシステム200は、ホストプロセッサ210およびホストメモリ220などをプロセッサバス290により接続することにより構成される。ホストプロセッサ210は、この情報処理システムの全体を制御するプロセッサである。ホストメモリ220は、ホストプロセッサ210の動作に必要なプログラムや作業領域などを保持するメモリである。プロセッサバス290には、ホストブリッジ装置100が接続される。なお、ホストプロセッサ210は、特許請求の範囲に記載のメモリアクセス制御部の一例であり、ここではCellを想定している。
図2は、本発明の第1の実施の形態におけるホストブリッジ装置100の一構成例を示す図である。このホストブリッジ装置100は入出力インターフェースコントローラ101と、スイッチ102と、PCIeコントローラ103乃至105と、内部ブリッジ106と、周辺バス190とを備えている。
図3は、PCIデバイスおよびPCIeデバイスを識別するための入出力デバイス識別子710のフィールド構成を示す図である。この入出力デバイス識別子710は、8ビットのバス番号711、5ビットのデバイス番号712、および、3ビットの機能番号713の各フィールドから構成される。この入出力デバイス識別子710は、システム構成に応じて決定される値であり、一般ユーザのソフトウェアによって自由に設定することはできないようになっている。
図4は、プロセッサCellにおける入出力アドレスの変換機構を示す図である。ホストブリッジ装置100から供給された入出力アドレスは42ビット幅を有しており、上位14ビットがセグメント番号を示す。セグメント番号の下位にはページ番号が割り当てられ、そのさらに下位はオフセットとなる。ページサイズが4KBの場合、ページ番号は16ビット、オフセット番号は12ビットとなる。ページサイズが64KBの場合、ページ番号は12ビット、オフセットは16ビットとなる。ページサイズが1MBの場合、ページ番号は8ビット、オフセット番号は20ビットとなる。ページサイズが16MBの場合、ページ番号は4ビット、オフセットは24ビットとなる。
図6は、本発明の第1の実施の形態におけるアクセスキー生成部120の一構成例を示す図である。このアクセスキー生成部120は、PCIデバイスまたはPCIeデバイスから入出力デバイス識別子710を受け取ると、上位8ビットのバス番号711をバス番号テーブル121から検索する。バス番号テーブル121は、後述するように各エントリに保持されたバス番号の中からバス番号711に一致するエントリを検索する機能を有する。選択器122は、信号線125の内容に従って、信号線126または127の何れか一方の出力を選択して、アクセスインデックスとして信号線128に出力するものである。アクセスキーメモリ123は、11ビット幅のアクセスキーを「2の12乗」個分記憶するメモリである。
図7は、本発明の第1の実施の形態におけるバス番号テーブル121の一構成例を示す図である。このバス番号テーブル121は、8エントリのバス番号保持部1211と、8つの比較器1212と、エンコーダ1213と、論理和回路1214とを備えている。
図8は、本発明の第1の実施の形態におけるアクセスキーメモリ123の一構成例を示す図である。このアクセスキーメモリ123は、11ビット幅のアクセスキーを「2の12乗」個分記憶している。そのうち、前半の「2の11乗」個のアクセスキーはPCIeデバイス用のアクセスキーであり、後半の「2の11乗」個のアクセスキーはPCIデバイス用のアクセスキーである。
このように、本発明の第1の実施の形態によれば、16ビットの入出力デバイス識別子に基づいて11ビットのアクセスキーを生成することができる。この第1の実施の形態では、PCIバスおよびPCIeバスのそれぞれ特徴を利用することにより、周辺デバイスから使用可能なアドレスを不当に制限することなくアクセスキーを生成する。また、複数のデバイスを1つのグループとして、同じアクセスキーを割り当てることも可能となる。
上述の第1の実施の形態においては、PCIデバイスおよびPCI−Expressデバイスが混在する情報処理システムにおける実現例について示したが、本発明は一般的な情報処理システムにおいても適用可能である。ここでは、一般的な情報処理システムに適用した場合のアクセスキー生成部120の構成例について説明する。
図9は、本発明の第2の実施の形態におけるアクセスキー生成部520の一構成例を示す図である。このアクセスキー生成部520は、nビット(nは整数)の識別子810を入力とする。このnビットの識別子810は、上位naビット(naは整数)のデータa811と、続くnbビット(nbは整数)のデータb812と、下位ncビット(ncは整数)のデータc813とから構成される。nビットのデータが入力されると、データa811がテーブル521から検索される。テーブル521は、各エントリに保持されたデータの中からデータa811に一致するエントリを検索する機能を有する。選択器522は、信号線525の内容に従って、信号線526または527の何れか一方の出力を選択して、アクセスインデックスとして信号線528に出力するものである。アクセスキーメモリ523は、mビット幅(mは整数、m<n)のアクセスキーを「2の(na+nc+1)乗」個分記憶するメモリである。
101 入出力インターフェースコントローラ
102 スイッチ
103〜105 PCIeコントローラ
106 内部ブリッジ
120 アクセスキー生成部
121 バス番号テーブル
122 選択器
123 アクセスキーメモリ
190 周辺バス
191 タイマー
192 UART
193 PCIデバイス
200 プロセッサシステム
210 ホストプロセッサ
220 ホストメモリ
290 プロセッサバス
311〜316 PCIeデバイス
321〜328 PCIデバイス
401〜416 バス
421〜423 スイッチ
424、425 PCIブリッジ
520 アクセスキー生成部
521 テーブル
522 選択器
523 アクセスキーメモリ
600 入出力ページテーブル(IOPT)
610 IOPTエントリ
710 入出力デバイス識別子
711 バス番号
712 デバイス番号
713 機能番号
810 識別子
1211 バス番号保持部
1212 比較器
1213 エンコーダ
1214 論理和回路
Claims (7)
- 周辺デバイスのデバイス識別子を表すビットフィールドの一部である部分ビットフィールドを前記部分ビットフィールドよりもビット幅の短い短縮ビットフィールドに変換するビットフィールド変換部と、
前記周辺デバイスからメモリへのアクセスを制御するためのアクセスキーを前記周辺デバイスの各々に対応して複数保持するアクセスキー保持部と、
前記短縮ビットフィールドへの変換が成功した場合には前記短縮ビットフィールドを含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引し、前記短縮ビットフィールドへの変換が失敗した場合には前記部分ビットフィールドを含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引する索引部と
を具備するアクセスキー生成装置。 - 周辺デバイスのデバイス識別子を表すビットフィールドの一部であるバス番号を前記バス番号よりもビット幅の短い短縮バス番号に変換するバス番号変換部と、
前記周辺デバイスからメモリへのアクセスを制御するためのアクセスキーを前記周辺デバイスの各々に対応して複数保持するアクセスキー保持部と、
前記短縮バス番号への変換が成功した場合には前記短縮バス番号を含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引し、前記短縮バス番号への変換が失敗した場合には前記バス番号を含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引する索引部と
を具備するアクセスキー生成装置。 - 前記デバイス識別子は、前記バス番号とデバイス番号とを含み、
前記索引部は、前記短縮バス番号への変換が成功した場合には前記短縮バス番号と前記デバイス番号とを含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引し、前記短縮バス番号への変換が失敗した場合には前記バス番号を含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引する
請求項2記載のアクセスキー生成装置。 - 前記デバイス識別子は、前記バス番号とデバイス番号と機能番号とからなり、
前記索引部は、前記短縮バス番号への変換が成功した場合には前記短縮バス番号と前記デバイス番号と前記機能番号とから特定される前記アクセスキー保持部の領域から前記アクセスキーを索引し、前記短縮バス番号への変換が失敗した場合には前記バス番号と前記機能番号とから特定される前記アクセスキー保持部の領域から前記アクセスキーを索引する
請求項2記載のアクセスキー生成装置。 - 前記バス番号変換部は、前記バス番号を保持するエントリを複数備え、前記エントリの何れかに変換対象となるバス番号が保持されている場合には前記短縮バス番号への変換が成功したものとして当該エントリに固有に付与された番号を前記短縮バス番号として出力し、前記エントリの何れにも変換対象となるバス番号が保持されていない場合には前記短縮バス番号への変換が失敗したものとする
請求項2記載のアクセスキー生成装置。 - 周辺デバイスのデバイス識別子を表すビットフィールドの一部である部分ビットフィールドを前記部分ビットフィールドよりもビット幅の短い短縮ビットフィールドに変換するビットフィールド変換部と、
前記周辺デバイスからメモリへのアクセスを制御するためのアクセスキーを前記周辺デバイスの各々に対応して複数保持するアクセスキー保持部と、
前記短縮ビットフィールドへの変換が成功した場合には前記短縮ビットフィールドを含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引し、前記短縮ビットフィールドへの変換が失敗した場合には前記部分ビットフィールドを含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引する索引部と、
前記索引されたアクセスキーを用いて前記メモリへのアクセスを制御するメモリアクセス制御部と
を具備する情報処理装置。 - 周辺デバイスのデバイス識別子を表すビットフィールドの一部であるバス番号を前記バス番号よりもビット幅の短い短縮バス番号に変換するバス番号変換部と、
前記周辺デバイスからメモリへのアクセスを制御するためのアクセスキーを前記周辺デバイスの各々に対応して複数保持するアクセスキー保持部と、
前記短縮バス番号への変換が成功した場合には前記短縮バス番号を含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引し、前記短縮バス番号への変換が失敗した場合には前記バス番号を含むインデックスアドレスを用いて前記アクセスキー保持部から前記アクセスキーを索引する索引部と、
前記索引されたアクセスキーを用いて前記メモリへのアクセスを制御するメモリアクセス制御部と
を具備する情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009010488A JP5228938B2 (ja) | 2009-01-21 | 2009-01-21 | アクセスキー生成装置および情報処理装置 |
US12/690,505 US8312295B2 (en) | 2009-01-21 | 2010-01-20 | Access key generating apparatus and information processing apparatus |
CN2010100026395A CN101782874B (zh) | 2009-01-21 | 2010-01-20 | 访问密钥生成装置和信息处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009010488A JP5228938B2 (ja) | 2009-01-21 | 2009-01-21 | アクセスキー生成装置および情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010170237A JP2010170237A (ja) | 2010-08-05 |
JP5228938B2 true JP5228938B2 (ja) | 2013-07-03 |
Family
ID=42337867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009010488A Expired - Fee Related JP5228938B2 (ja) | 2009-01-21 | 2009-01-21 | アクセスキー生成装置および情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8312295B2 (ja) |
JP (1) | JP5228938B2 (ja) |
CN (1) | CN101782874B (ja) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6854032B2 (en) * | 2001-12-04 | 2005-02-08 | Sun Microsystems, Inc. | System for accessing a region of memory using remote address translation and using a memory window table and a memory region table |
WO2003090052A2 (en) | 2002-04-18 | 2003-10-30 | Advanced Micro Devices Inc. | A computer system including a secure execution mode - capable cpu and a security services processor connected via a secure communication path |
JP2009110032A (ja) * | 2006-01-16 | 2009-05-21 | Sony Computer Entertainment Inc | ブリッジ、情報処理装置、情報処理システムおよびグローバルアドレス管理方法 |
US8006000B2 (en) | 2006-04-06 | 2011-08-23 | Sony Corporation | Bridge, processor unit, information processing apparatus, and access control method |
JP2008250386A (ja) | 2007-03-29 | 2008-10-16 | Toshiba Corp | アクセス制御装置及びコンピュータシステム |
US8082405B2 (en) * | 2008-01-11 | 2011-12-20 | International Business Machines Corporation | Dynamic address translation with fetch protection |
-
2009
- 2009-01-21 JP JP2009010488A patent/JP5228938B2/ja not_active Expired - Fee Related
-
2010
- 2010-01-20 US US12/690,505 patent/US8312295B2/en not_active Expired - Fee Related
- 2010-01-20 CN CN2010100026395A patent/CN101782874B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100185826A1 (en) | 2010-07-22 |
CN101782874A (zh) | 2010-07-21 |
US8312295B2 (en) | 2012-11-13 |
CN101782874B (zh) | 2012-07-18 |
JP2010170237A (ja) | 2010-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4055851A (en) | Memory module with means for generating a control signal that inhibits a subsequent overlapped memory cycle during a reading operation portion of a reading memory cycle | |
KR920005280B1 (ko) | 고속 캐쉬 시스템 | |
US4045781A (en) | Memory module with selectable byte addressing for digital data processing system | |
CN1118027C (zh) | 存储器访问保护 | |
US5893930A (en) | Predictive translation of a data address utilizing sets of associative entries stored consecutively in a translation lookaside buffer | |
JPH0337218B2 (ja) | ||
EP3964967B1 (en) | Cache memory and method of using same | |
US11775445B2 (en) | Translation support for a virtual cache | |
US10810134B2 (en) | Sharing virtual and real translations in a virtual cache | |
US20210026771A1 (en) | Cache structure using a logical directory | |
JP2002073412A (ja) | メモリへのアクセス方法及びメモリ | |
JP2015515057A (ja) | ハイブリッド・アドレス変換のためのシステム、方法、およびコンピュータ・プログラム(ハイブリッド・アドレス変換) | |
TW201810046A (zh) | 用於存取快取記憶體的方法與裝置 | |
TWI300897B (en) | Use of a context identifier in cache memory | |
US4493033A (en) | Dual port cache with interleaved read accesses during alternate half-cycles and simultaneous writing | |
JPH11272676A (ja) | 分割検索方法及び装置 | |
CN115774683A (zh) | 用于超级用户模式中获取物理地址的方法及相应处理器 | |
US20050027960A1 (en) | Translation look-aside buffer sharing among logical partitions | |
JP5228938B2 (ja) | アクセスキー生成装置および情報処理装置 | |
JP2008512758A (ja) | 仮想アドレス・キャッシュに格納されたデータを共用する仮想アドレス・キャッシュ及び方法 | |
JP2846697B2 (ja) | キャッシュメモリ制御装置 | |
JP2004530962A (ja) | キャッシュメモリおよびアドレス指定方法 | |
JPS63132355A (ja) | メモリ制御装置 | |
US7200733B2 (en) | Virtual memory translator for real-time operating systems | |
US7996576B2 (en) | Generating an identifier for a SATA disk |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111125 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121225 |
|
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: 20130219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130304 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160329 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |