JP5900272B2 - アクセス制御回路、アクセス制御方法 - Google Patents
アクセス制御回路、アクセス制御方法 Download PDFInfo
- Publication number
- JP5900272B2 JP5900272B2 JP2012220125A JP2012220125A JP5900272B2 JP 5900272 B2 JP5900272 B2 JP 5900272B2 JP 2012220125 A JP2012220125 A JP 2012220125A JP 2012220125 A JP2012220125 A JP 2012220125A JP 5900272 B2 JP5900272 B2 JP 5900272B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- access
- shared resource
- processor
- bus
- 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
- Memory System (AREA)
Description
図1は、本実施の形態例におけるアクセス制御回路を有するマルチプロセッサシステム100の一例を示す図である。同図のマルチプロセッサシステム100は、例えば、複数のプロセッサA10、B20、アクセス制御回路30、プロセッサA10、プロセッサB20からアクセス可能な共有リソースA51〜共有リソースC53(以下、共有リソース51〜53)を有する。
本実施の形態例において、共有リソース51〜53とは、例えば、複数のプロセッサから共通にアクセスされる共有メモリや、回路マクロのレジスタ等を示す。共有リソース51〜53は、複数のプロセッサから同時にアクセスされる可能性を有する。共有リソース51〜53が複数のプロセッサから同時にアクセスされた場合、例えば、共有メモリに記憶された情報や回路マクロのレジスタが保持する情報の整合性が失われてしまう。これにより、システムが暴走してしまう可能性がある。
また、図1のアクセス制御回路30は、複数のプロセッサA、Bと共有バス40との間に配置され、各プロセッサからの共有リソース51〜53へのアクセスを制御する。アクセス制御回路30は、例えば、それぞれのプロセッサに対応するアドレス制御部31a、31bと、アクセス監視部32とを有する。
本実施の形態例におけるアクセス制御回路30は、共有リソース51〜53へのアクセス権の解放のための命令、及び、アクセス権の取得のための命令を不要にする。
まず、共有リソース51〜53のアクセス権の解放について、本実施の形態例におけるアクセス制御回路30は、プロセッサA10、B20からのアクセス対象アドレスが、非使用の領域を指すダミーアドレスである場合に、当該ダミーアドレスを対応する共有リソース51〜53の共有リソースアドレスにアドレス変換してバス40に出力すると共に、当該プロセッサによる共有リソース51〜53へのアクセス権を解放する。また、アクセス制御回路30は、アクセス対象アドレスがダミーアドレスではない場合に、アクセス対象アドレスをアドレス変換することなくバス40に出力する。
そして、共有リソース51〜53のアクセス権の取得について、本実施の形態例におけるアクセス制御回路30は、アクセス対象アドレスがダミーアドレスではない場合であって共有リソースアドレスである場合に、共有リソース51〜53へのアクセス権が当該プロセッサに取得されているときはアクセス対象アドレスをバス40に出力する。また、アクセス制御回路30は、共有リソース51〜53へのアクセス権がいずれのプロセッサによっても取得されていないときはアクセス権を当該プロセッサに取得させると共にアクセス対象アドレスをバス40に出力し、別のプロセッサによって取得されているときはアクセス対象アドレスをバス40に出力しない。
図2は、一般的な共有リソースのアクセス処理を指示するプログラムP1と、本実施の形態例のアクセス制御回路30を有するシステムにおいて、共有リソースへのアクセス処理を指示するプログラムP2の一例を表す図である。同図の左のプログラムP1は、共有リソースへのアクセス処理を記述した一般的なプログラムの具体例であり、右のプログラムP2は、本実施の形態例におけるプロセッサによって処理されるプログラムの具体例である。
まず、一般的なプログラムP1の具体例について説明する。一般的なプログラムP1例では、共有リソース51〜53へアクセスを行う場合、例えば、共有メモリへの書き込み処理を行うような場合、共有リソースへのアクセス処理c2を示す命令の前後に共有リソースのアクセス権の取得c1、及び、解放処理c3を示す命令が必要となる。このため、共有リソースへのアクセス処理c2が1つ命令で指示可能な些細な処理であったとしても、必ず、その前後に当該共有リソースへのアクセス権の取得命令c1、及び、解放命令c3が必要となる。
一方、本実施の形態例におけるプログラムP2では、共有リソースへのアクセス処理を示す命令c4の前後に共有リソースのアクセス権の取得、及び、解放処理を示す命令が不要である。ただし、共有リソースへの最終のアクセス命令において、アクセス対象のアドレスとして、アクセス対象の共有リソースのアドレスに対応するダミーアドレスが指定される。プログラムP2では、プロセッサが処理する命令量が増加しないことにより、プロセッサの性能が向上する。また、プログラムP2の記述がシンプルであるため、上述したような障害が回避される。
図3は、本実施の形態例におけるアクセス制御回路30の詳細な構成を表す例図である。本実施の形態例におけるアクセス制御回路30は、プロセッサA10、B20に対応するアドレス制御部A31a、31bと、アクセス監視部32とを有する。同図では、図1に対して、プロセッサB20、及び、プロセッサB20に対応するアドレス制御部B31bが省略されているが、アドレス制御部B31bの構成は、アドレス制御部A31aと同様である。
図4は、本実施の形態例におけるアクセス制御回路30の共有リソースへのアクセス処理の流れについて説明するフローチャート図である。同図のフローチャート図では、例えば、プロセッサA10による共有リソースA51へのアクセス処理について説明する。ただし、プロセッサB20による、別の共有リソースへのアクセス処理についても同様である。
本実施の形態例において、共有リソースに対応するダミーアドレスは、予め、アクセス制御回路30のアドレス制御部A31aによって認識されている。このため、ダミーアドレスへのアクセスが発生した場合、アドレス制御部A31aは、共有リソースへの最終アクセスであることを認識し、アドレス変換することができる。本実施の形態例におけるアドレス変換処理では、ダミーアドレスから所定の値が減算されることによって、当該ダミーアドレスに対応する共有リソースのアドレスが取得される。
図5は、本実施の形態例におけるアドレスマップAM1の具体例を説明する図である。ダミーアドレスは、それぞれの共有リソースのアドレスに対応して、アドレスマップAM1上に任意の領域に確保される。ダミーアドレスはメモリマップAM1上の使用されていないアドレスである。また、ダミーアドレスは、物理アドレスに対応している必要はない。ダミーアドレスの領域範囲のサイズは、対応する共有リソースのアドレスの領域範囲のサイズと同一である。
図6は、本実施の形態例におけるアドレス変換のための減算処理の仕様を説明する図である。同図の表H1において、共有リソースA51、共有リソースB52について、共有リソースのアドレス領域ra、rb、及び、対応するダミーアドレスの領域da、db、アドレス変換処理を行う減算処理の演算式が表されている。
第1の実施の形態例では、アドレスマップ上で、共有リソースのアドレス領域に対応するダミーアドレスの領域が、共有リソース毎に別々の領域に設定される場合を例示した。これに対し、第2の実施の形態例では、各共有リソースに対応するダミーアドレスの領域が、重複して設定される場合を例示する。即ち、複数の共有リソース間でダミーアドレス領域が重複する。これにより、ダミーアドレス領域の範囲を最小サイズに抑えることができ、アドレスマップが有効活用される。
図7は、第2の実施の形態例におけるアドレスマップAM2の具体例を説明する図である。同図のアドレスマップは、例えば、プロセッサA10のアドレスマップであり、共有リソースD〜Fのアドレス領域rd〜rfと、それぞれ対応するダミーアドレス領域dd〜dfが表されている。ただし、ダミーアドレス領域dd〜dfは、共有リソース毎に別々の領域に設定されていない。
図8は、第2の実施の形態例におけるアドレス変換のための減算処理を説明する図である。同図において、共有リソースD〜Fについて、アドレス領域、及び、対応するダミーアドレスの領域、アドレス変換処理を行う減算処理の演算式が表されている。
複数のプロセッサとバスに接続され、前記複数のプロセッサによって共通の前記バスを介してアクセスされる共有リソースへの制御を行うアクセス制御回路であって、
前記複数のプロセッサの内の第1のプロセッサからのアクセス対象アドレスが、非使用の領域を指すダミーアドレスである場合に、当該ダミーアドレスを対応する前記共有リソースの共有リソースアドレスにアドレス変換して前記バスに出力すると共に、前記第1のプロセッサによる前記共有リソースへのアクセス権を解放し、前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記アクセス対象アドレスを前記アドレス変換することなく前記バスに出力する管理手段、を有することを特徴とするアクセス制御回路。
付記1において、
前記ダミーアドレスの範囲は、前記共有リソースアドレスの範囲と同一サイズであって、
前記管理手段の前記アドレス変換は、前記ダミーアドレスに所定値を加算または減算することにより、前記共有リソースアドレスに変換することを特徴とするアクセス制御回路。
付記1乃至2のいずれか1項において、
前記管理手段は、さらに、
前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記共有リソースへのアクセス権が前記第1のプロセッサに取得されているときは前記アクセス対象アドレスを前記バスに出力し、前記アクセス権が前記複数のプロセッサのいずれによっても取得されていないときは前記アクセス権を前記第1のプロセッサに取得させると共に前記アクセス対象アドレスを前記バスに出力し、前記アクセス権が前記第1のプロセッサと異なるプロセッサによって取得されているときは前記アクセス対象アドレスを前記バスに出力しないことを特徴とするアクセス制御回路。
付記1乃至3のいずれか1項において、
前記複数のプロセッサと前記共通のバスとの間に設置されることを特徴とするアクセス制御回路。
付記1において、
前記共有リソースは第1の共有リソースと第2の共有リソースとを含み、
前記第1の共有リソースの共有リソースアドレスに対応する第1の前記ダミーアドレスの範囲と、前記第2の共有リソースの共有リソースアドレスに対応する第2の前記ダミーアドレスの範囲とが重複することを特徴とするアクセス制御回路。
複数のプロセッサとバスに接続され、前記複数のプロセッサによって共通の前記バスを介してアクセスされる共有リソースへの制御を行うアクセス制御方法であって、
前記複数のプロセッサの内の第1のプロセッサからのアクセス対象アドレスが、非使用の領域を指すダミーアドレスである場合に、当該ダミーアドレスを対応する前記共有リソースの共有リソースアドレスにアドレス変換して前記バスに出力すると共に、前記第1のプロセッサによる前記共有リソースへのアクセス権を解放し、前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記アクセス対象アドレスを前記アドレス変換することなく前記バスに出力する管理工程、を有することを特徴とするアクセス制御方法。
Claims (5)
- 複数のプロセッサとバスに接続され、前記複数のプロセッサによって共通の前記バスを介してアクセスされる共有リソースへの制御を行うアクセス制御回路であって、
前記複数のプロセッサの内の第1のプロセッサからのアクセス対象アドレスが、非使用の領域を指すダミーアドレスである場合に、当該ダミーアドレスを対応する前記共有リソースの共有リソースアドレスにアドレス変換して前記バスに出力すると共に、前記第1のプロセッサによる前記共有リソースへのアクセス権を解放し、前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記アクセス対象アドレスを前記アドレス変換することなく前記バスに出力する管理手段、を有することを特徴とするアクセス制御回路。 - 請求項1において、
前記ダミーアドレスの範囲は、前記共有リソースアドレスの範囲と同一サイズであって、
前記管理手段の前記アドレス変換は、前記ダミーアドレスに所定値を加算または減算することにより、前記共有リソースアドレスに変換することを特徴とするアクセス制御回路。 - 請求項1乃至2のいずれか1項において、
前記管理手段は、さらに、
前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記共有リソースへのアクセス権が前記第1のプロセッサに取得されているときは前記アクセス対象アドレスを前記バスに出力し、前記アクセス権が前記複数のプロセッサのいずれによっても取得されていないときは前記アクセス権を前記第1のプロセッサに取得させると共に前記アクセス対象アドレスを前記バスに出力し、前記アクセス権が前記第1のプロセッサと異なるプロセッサによって取得されているときは前記アクセス対象アドレスを前記バスに出力しないことを特徴とするアクセス制御回路。 - 請求項1乃至3のいずれか1項において、
前記複数のプロセッサと前記共通のバスとの間に設置されることを特徴とするアクセス制御回路。 - 複数のプロセッサとバスに接続され、前記複数のプロセッサによって共通の前記バスを介してアクセスされる共有リソースへの制御を行うアクセス制御方法であって、
前記複数のプロセッサの内の第1のプロセッサからのアクセス対象アドレスが、非使用の領域を指すダミーアドレスである場合に、当該ダミーアドレスを対応する前記共有リソースの共有リソースアドレスにアドレス変換して前記バスに出力すると共に、前記第1のプロセッサによる前記共有リソースへのアクセス権を解放し、前記アクセス対象アドレスが前記ダミーアドレスではない場合に、前記アクセス対象アドレスを前記アドレス変換することなく前記バスに出力する管理工程、を有することを特徴とするアクセス制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012220125A JP5900272B2 (ja) | 2012-10-02 | 2012-10-02 | アクセス制御回路、アクセス制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012220125A JP5900272B2 (ja) | 2012-10-02 | 2012-10-02 | アクセス制御回路、アクセス制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014071855A JP2014071855A (ja) | 2014-04-21 |
JP5900272B2 true JP5900272B2 (ja) | 2016-04-06 |
Family
ID=50746942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012220125A Expired - Fee Related JP5900272B2 (ja) | 2012-10-02 | 2012-10-02 | アクセス制御回路、アクセス制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5900272B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10862854B2 (en) * | 2019-05-07 | 2020-12-08 | Bitdefender IPR Management Ltd. | Systems and methods for using DNS messages to selectively collect computer forensic data |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH022449A (ja) * | 1988-06-15 | 1990-01-08 | Nec Corp | 情報処理装置 |
US5142676A (en) * | 1988-12-28 | 1992-08-25 | Gte Laboratories Incorporated | Separate content addressable memories for storing locked segment addresses and locking processor identifications for controlling access to shared memory |
JPH03154945A (ja) * | 1989-11-13 | 1991-07-02 | Hitachi Ltd | 共有メモリ管理方式 |
JPH05225117A (ja) * | 1992-02-14 | 1993-09-03 | Nec Corp | 主記憶装置の排他制御回路 |
JP3385091B2 (ja) * | 1994-05-13 | 2003-03-10 | 三菱電機株式会社 | 計算機間の排他制御装置 |
JPH09231124A (ja) * | 1996-02-20 | 1997-09-05 | Ricoh Co Ltd | メモリロック装置及びメモリロック方法 |
-
2012
- 2012-10-02 JP JP2012220125A patent/JP5900272B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014071855A (ja) | 2014-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11467981B2 (en) | Memory initialization in a protected region | |
TWI567558B (zh) | 用於虛擬機器的安全分享互連的處理系統、晶片上系統及方法 | |
EP3210123B1 (en) | Memory protection key architecture with independent user and supervisor domains | |
US10572395B2 (en) | Non-enclave access prevention | |
TWI639090B (zh) | 用於可在多種架構中初始化之控制公用程式之共同開機順序 | |
US9703720B2 (en) | Method and apparatus to allow secure guest access to extended page tables | |
EP3504629B1 (en) | Enhance memory access permission based on per-page current privilege level | |
EP3528130B1 (en) | Mechanism to prevent software side channels | |
US20150082002A1 (en) | Dynamic heterogeneous hashing functions in ranges of system memory addressing space | |
JP6005392B2 (ja) | ルーティングのための方法及び装置 | |
US10671744B2 (en) | Lightweight trusted execution for internet-of-things devices | |
JP2016516228A (ja) | システムオンチップ内のスレーブユニットへの、コントロール下でのアクセス方法および回路装置 | |
US20170187805A1 (en) | Systems, Methods, and Apparatuses for Range Protection | |
US20180088976A1 (en) | Processor extensions to identify and avoid tracking conflicts between virtual machine monitor and guest virtual machine | |
US10223312B2 (en) | Quality of service ordinal modification | |
JP2013536504A (ja) | アラインメント制御 | |
JP5920595B2 (ja) | 電子機器、オペレーティングシステム、アクセス管理方法 | |
RU2597506C2 (ru) | Неограниченная транзакционная память с гарантиями продвижения при пересылке, используя аппаратную глобальную блокировку | |
JP5900272B2 (ja) | アクセス制御回路、アクセス制御方法 | |
CN105335227A (zh) | 一种节点内的数据处理方法、装置和*** | |
US20160224252A1 (en) | Hybrid memory architecture | |
JP5676664B2 (ja) | リソース管理装置、リソースの管理方法、及びプログラム | |
JP5365840B2 (ja) | マルチプロセッサシステム、及びマルチプロセッサシステムの動作方法 | |
JP2008250386A (ja) | アクセス制御装置及びコンピュータシステム | |
KR102277110B1 (ko) | 사용자 단말의 정보 수신 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20150610 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150630 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160128 |
|
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: 20160209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5900272 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |