JP5568939B2 - 演算処理装置及び制御方法 - Google Patents
演算処理装置及び制御方法 Download PDFInfo
- Publication number
- JP5568939B2 JP5568939B2 JP2009234391A JP2009234391A JP5568939B2 JP 5568939 B2 JP5568939 B2 JP 5568939B2 JP 2009234391 A JP2009234391 A JP 2009234391A JP 2009234391 A JP2009234391 A JP 2009234391A JP 5568939 B2 JP5568939 B2 JP 5568939B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- arithmetic processing
- processing unit
- signal
- address
- 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
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/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Description
領域150A〜150Dは、2つのプロセッサコアとL2キャッシュコントローラとの間の信号線の密度が高くなる狭窄部である。狭窄部145A〜Bには、2つのプロセッサコアから信号線が配置される。そこで、狭窄部145A〜Bのデータ応答信号の入力側に多重化転送回路130を配置することで、2つのプロセッサコアから出力するバス幅を、半分にすることが出来る。そのため、多重化転送回路130により、狭窄部の配線密度を下げ、各機能部を効率的に配置することが出来る。
[付記1]
第1の記憶部を有し、演算処理を行う第1の演算処理部と、
演算処理を行う第2の演算処理部と、
前記第1の記憶部が保持するデータを包含すると共に、前記第1の記憶部に保持されたデータの状態を特定する状態情報を保持する第2の記憶部と、
前記第2の演算処理部から第1アドレスのデータに対する第1のアクセス要求を受け取ると、前記第1アドレスのデータの第1の状態情報が、前記第1アドレスのデータが前記第1の記憶部に排他又は所有状態で保持されることを示す場合、前記第1アドレスのデータの読み出しを要求する要求信号を前記第1の演算処理部に出力するとともに、前記第1の演算処理部から前記第1アドレスのデータが変更されていないことを示すデータ未変更通知信号を受け取ったとき、前記第2の記憶部に包含された前記第1アドレスのデータに対する前記第2の演算処理部からのアクセスを許可する制御部と、
を有することを特徴とする演算処理装置。
[付記2]
前記演算処理装置において、
前記第1の記憶部は、前記第1の記憶部に保持されたデータの状態を特定する第2の状態情報を保持し、
前記第1のアクセス要求が、前記第2の演算処理部による前記第1アドレスのデータの読み出し後に、前記第2の演算処理部が前記第1アドレスのデータを変更することを示す場合、
前記要求信号は、前記第1アドレスのデータの読み出しの要求に加えて、前記第1の記憶部に保持された前記第2の状態情報を無効状態にすることを要求することを特徴とする付記1に記載の演算処理装置。
[付記3]
前記演算処理装置において、
前記第2の演算処理部はさらに、第3の記憶部を有し、
前記制御部は、前記第1の演算処理部から前記第1アドレスのデータを読み出した後に、前記第3の記憶部に保持され、且つ前記第1アドレスのデータの状態を特定する第3の状態情報を排他状態にすることを要求する応答信号を、前記第2の演算処理部に出力することを特徴とする付記2に記載の演算処理装置。
[付記4]
前記制御部と、前記第1の演算処理部から入出力するデータ、又は、前記第2の演算処理部から入出力するデータ、を伝送する共通信号線と、
前記第1の演算処理部から入出力するデータ、又は、前記第2の演算処理部から入出力するデータを選択し、且つ選択したデータを前記共通信号線に出力する選択回路と、
前記選択回路により選択されないデータを一時的に記憶する記憶回路と、
を有することを特徴とする付記2又は3に記載の演算処理装置。
[付記5]
第1の記憶部を有し演算処理を行う第1の演算処理部と、演算処理を行う第2の演算処理部と、前記第1の記憶部が保持するデータを包含すると共に、前記第1の記憶部に保持されたデータの状態を特定する状態情報を保持する第2の記憶部と、前記第2の記憶部に包含された前記第1アドレスのデータに対する前記第2の演算処理部からのアクセスを制御する制御部を有することを特徴とする演算処理装置の制御方法において、
前記第1の演算処理部が、前記第2の演算処理部から第1アドレスのデータに対する第1のアクセス要求を受け取るステップと、
前記第1アドレスのデータの第1の状態情報が、前記第1アドレスのデータが前記第1の記憶部に排他又は所有状態で保持されることを示す場合、前記制御部が、前記第1アドレスのデータの読み出しを要求する要求信号を前記第1の演算処理部に出力するステップと、
前記第1の演算処理部が、前記制御部から前記要求信号を受け取るステップと、
前記第1アドレスのデータが前記第1の演算処理部により変更されていない場合、前記第1の演算処理部が、前記第1アドレスのデータが変更されていないことを示すデータ未変更通知信号を前記制御部に出力するステップと、
前記制御部が、前記第1の演算処理部から前記データ未変更通知信号を受け取った場合、前記第2の記憶部に包含された前記第1アドレスのデータに対する前記第2の演算処理部によるアクセスを許可するステップと、
を有することを特徴とする制御方法。
[付記6]
前記演算処理相違の制御方法において、
前記第1の記憶部は、前記第1の記憶部に保持されたデータの状態を特定する第2の状態情報を保持するとともに、
前記第1のアクセス要求が、前記第2の演算処理部による前記第1アドレスのデータの読み出し後に、前記第2の演算処理部が前記第1アドレスのデータを変更することを示す場合、前記要求信号は、前記第1アドレスのデータの読み出しの要求に加えて、前記第1の記憶部に保持され且つ前記第1アドレスのデータの状態を特定する前記第2の状態情報を無効状態にすることを要求することを特徴とする付記5に記載の制御方法。
[付記7]
前記演算処理装置の制御方法において、
前記第2の演算処理部は、さらに第3の記憶部を有し、
前記制御部は、前記第1の演算処理部から前記第1アドレスのデータを読み出した後に、前記第3の記憶部に保持され、且つ前記第1アドレスのデータの状態を特定する状態情報を排他状態にすることを要求する応答信号を、前記第2の演算処理部に出力することを特徴とする付記6に記載の制御方法。
10〜40 プロセッサコア
12 命令部
14 実行部
16 L1キャッシュコントローラ
17 コアデータ応答制御部
17b コアデータ応答制御部
18 L1キャッシュRAM
100 L2キャッシュ
120 L2キャッシュコントローラ
127 コアデータ応答制御部
130 多重化転送回路
131 要求判別回路
136 バスセレクタ
137 干渉制御バッファ
140 L2キャッシュRAM
160 メモリアクセス制御部
171 要求判別回路
240 メインメモリ
310 TLB
Claims (7)
- 1次キャッシュメモリを有し、演算処理を行う第1の演算処理部と、
演算処理を行う第2の演算処理部と、
前記第1の演算処理部と前記第2の演算処理部とに接続され、前記1次キャッシュメモリが保持するデータを包含して記憶するとともに、前記1次キャッシュメモリに保持されたデータの状態を特定する状態情報を保持する2次キャッシュメモリと、
前記第2の演算処理部から第1アドレスのデータに対する第1のアクセス要求を受け取ると、前記第1アドレスのデータの第1の状態情報が、前記第1アドレスのデータが前記1次キャッシュメモリに排他又は所有状態で保持されることを示す場合、前記第1アドレスのデータの読み出しを要求する読み出し要求を前記第1の演算処理部に出力するとともに、前記第1の演算処理部から前記第1アドレスのデータが変更されていないことを示すデータ未変更通知を受け取ったとき、前記1次キャッシュメモリから前記第1アドレスのデータを読み出させる代わりに、前記2次キャッシュメモリに記憶された前記第1アドレスのデータを前記第2の演算処理部に送信するとともに前記第1アドレスのデータの第1の状態情報の変更後の状態情報である第2の状態情報を共有状態に変更する制御部と、
を有することを特徴とする演算処理装置。 - 前記演算処理装置において、
前記第1のアクセス要求が、前記第2の演算処理部による前記第1アドレスのデータの読み出し後に、前記第2の演算処理部が前記第1アドレスのデータを変更することを示す場合、
前記要求信号は、前記第1アドレスのデータの読み出しの要求に加えて、前記1次キャッシュメモリに保持された前記第2の状態情報を共有状態から無効状態にすることを要求することを特徴とする請求項1に記載の演算処理装置。 - 前記演算処理装置において、
前記第2の演算処理部はさらに、第3の記憶部を有し、
前記制御部は、前記第1の演算処理部から前記第1アドレスのデータを読み出した後に、前記第3の記憶部に保持され、且つ前記第1アドレスのデータの状態を特定する第3の状態情報を排他状態にすることを要求する応答通知を、前記第2の演算処理部に出力することを特徴とする請求項2に記載の演算処理装置。 - 前記演算処理装置はさらに、
前記制御部と、前記第1の演算処理部から入出力するデータ、又は、前記第2の演算処理部から入出力するデータ、を伝送する共通信号線と、
前記第1の演算処理部から入出力するデータ、又は、前記第2の演算処理部から入出力するデータを選択し、且つ選択したデータを前記共通信号線に出力する選択回路と、
前記選択回路により選択されないデータを一時的に記憶する記憶回路と、
を有することを特徴とする請求項2又は3に記載の演算処理装置。 - 1次キャッシュメモリを有し、演算処理を行う第1の演算処理部と、演算処理を行う第2の演算処理部と、前記第1の演算処理部と前記第2の演算処理部とに接続され、前記1次キャッシュメモリが保持するデータを包含して記憶するとともに、前記1次キャッシュメモリに保持されたデータの状態を特定する状態情報を保持する2次キャッシュメモリと、を有する演算処理装置の制御方法において、
前記演算処理装置が有する制御部が、前記第2の演算処理部から第1アドレスのデータに対する第1のアクセス要求を受け取り、
前記第1アドレスのデータの第1の状態情報が、前記第1アドレスのデータが前記1次キャッシュメモリに排他又は所有状態で保持されることを示す場合、前記制御部が、前記第1アドレスのデータの読み出しを要求する読み出し要求を前記第1の演算処理部に出力するとともに、前記第1の演算処理部から前記第1アドレスのデータが変更されていないことを示すデータ未変更通知を受け取ったとき、前記1次キャッシュメモリから前記第1アドレスのデータを読み出させる代わりに、前記2次キャッシュメモリに記憶された前記第1アドレスのデータを前記第2の演算処理部に送信するとともに前記第1アドレスのデータの第1の状態情報の変更後の状態情報である第2の状態情報を共有状態に変更することを特徴とする演算処理装置の制御方法。 - 前記演算処理装置の制御方法において、
前記第1のアクセス要求が、前記第2の演算処理部による前記第1アドレスのデータの読み出し後に、前記第2の演算処理部が前記第1アドレスのデータを変更することを示す場合、前記要求信号は、前記第1アドレスのデータの読み出しの要求に加えて、前記1次キャッシュメモリに保持され且つ前記第1アドレスのデータの状態を特定する前記第2の状態情報を共有状態から無効状態にすることを要求することを特徴とする請求項5に記載の演算処理装置の制御方法。 - 前記演算処理装置の制御方法において、
前記第2の演算処理部は、さらに第3の記憶部を有し、
前記制御部は、前記第1の演算処理部から前記第1アドレスのデータを読み出した後に、前記第3の記憶部に保持され、且つ前記第1アドレスのデータの状態を特定する状態情報を排他状態にすることを要求する応答通知を、前記第2の演算処理部に出力することを特徴とする請求項6に記載の演算処理装置の制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009234391A JP5568939B2 (ja) | 2009-10-08 | 2009-10-08 | 演算処理装置及び制御方法 |
US12/899,186 US20110087841A1 (en) | 2009-10-08 | 2010-10-06 | Processor and control method |
EP10187024A EP2309394A3 (en) | 2009-10-08 | 2010-10-08 | Processor and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009234391A JP5568939B2 (ja) | 2009-10-08 | 2009-10-08 | 演算処理装置及び制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011081662A JP2011081662A (ja) | 2011-04-21 |
JP5568939B2 true JP5568939B2 (ja) | 2014-08-13 |
Family
ID=43500966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009234391A Expired - Fee Related JP5568939B2 (ja) | 2009-10-08 | 2009-10-08 | 演算処理装置及び制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20110087841A1 (ja) |
EP (1) | EP2309394A3 (ja) |
JP (1) | JP5568939B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8495091B2 (en) * | 2011-07-01 | 2013-07-23 | Intel Corporation | Dynamically routing data responses directly to requesting processor core |
US8966172B2 (en) | 2011-11-15 | 2015-02-24 | Pavilion Data Systems, Inc. | Processor agnostic data storage in a PCIE based shared storage enviroment |
US9652182B2 (en) | 2012-01-31 | 2017-05-16 | Pavilion Data Systems, Inc. | Shareable virtual non-volatile storage device for a server |
JP5971036B2 (ja) * | 2012-08-30 | 2016-08-17 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
KR102179385B1 (ko) | 2013-11-29 | 2020-11-16 | 삼성전자주식회사 | 명령어를 실행하는 방법 및 프로세서, 명령어를 부호화하는 방법 및 장치 및 기록매체 |
US9565269B2 (en) | 2014-11-04 | 2017-02-07 | Pavilion Data Systems, Inc. | Non-volatile memory express over ethernet |
US9712619B2 (en) | 2014-11-04 | 2017-07-18 | Pavilion Data Systems, Inc. | Virtual non-volatile memory express drive |
US11361813B2 (en) | 2016-09-16 | 2022-06-14 | Aspiring Sky Co. Limited | Nonvolatile memory structures with DRAM |
US10559344B2 (en) | 2016-09-16 | 2020-02-11 | Aspiring Sky Co. Limited | Hybrid non-volatile memory devices with static random access memory (SRAM) array and non-volatile memory (NVM) array |
US10402342B2 (en) | 2016-10-20 | 2019-09-03 | Aspiring Sky Co., Limited | Re-configurable non-volatile memory structures and systems |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69628493T2 (de) | 1995-03-31 | 2004-05-19 | Sun Microsystems, Inc., Santa Clara | Cache-kohärentes Computersystem, das Entwertungs- und Rückschreiboperationen minimiert |
US6094709A (en) * | 1997-07-01 | 2000-07-25 | International Business Machines Corporation | Cache coherence for lazy entry consistency in lockup-free caches |
US6324622B1 (en) * | 1998-08-24 | 2001-11-27 | International Business Machines Corporation | 6XX bus with exclusive intervention |
JP2002055881A (ja) * | 2000-08-08 | 2002-02-20 | Hitachi Ltd | キャッシュ一致制御の実現方法およびこれを用いたデータ処理装置 |
US6651145B1 (en) * | 2000-09-29 | 2003-11-18 | Intel Corporation | Method and apparatus for scalable disambiguated coherence in shared storage hierarchies |
JP4507563B2 (ja) * | 2003-11-10 | 2010-07-21 | 株式会社日立製作所 | マルチプロセッサシステム |
US20060053258A1 (en) * | 2004-09-08 | 2006-03-09 | Yen-Cheng Liu | Cache filtering using core indicators |
JP4851958B2 (ja) * | 2007-02-19 | 2012-01-11 | エヌイーシーコンピュータテクノ株式会社 | バスインタフェースアダプタ、データ転送方法、データ転送システム及び情報処理装置 |
US20080244189A1 (en) * | 2007-03-30 | 2008-10-02 | Allison Brian D | Method, Apparatus, System and Program Product Supporting Directory-Assisted Speculative Snoop Probe With Concurrent Memory Access |
US8122195B2 (en) * | 2007-12-12 | 2012-02-21 | International Business Machines Corporation | Instruction for pre-fetching data and releasing cache lines |
-
2009
- 2009-10-08 JP JP2009234391A patent/JP5568939B2/ja not_active Expired - Fee Related
-
2010
- 2010-10-06 US US12/899,186 patent/US20110087841A1/en not_active Abandoned
- 2010-10-08 EP EP10187024A patent/EP2309394A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2011081662A (ja) | 2011-04-21 |
US20110087841A1 (en) | 2011-04-14 |
EP2309394A2 (en) | 2011-04-13 |
EP2309394A3 (en) | 2011-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5568939B2 (ja) | 演算処理装置及び制御方法 | |
US6757784B2 (en) | Hiding refresh of memory and refresh-hidden memory | |
CN101097544B (zh) | 虚拟化事务存储器的全局溢出方法 | |
US7305522B2 (en) | Victim cache using direct intervention | |
US4484267A (en) | Cache sharing control in a multiprocessor | |
US9477600B2 (en) | Apparatus and method for shared cache control including cache lines selectively operable in inclusive or non-inclusive mode | |
US7305523B2 (en) | Cache memory direct intervention | |
JP2837804B2 (ja) | 完全統合型キャッシュ・アーキテクチャ | |
US8185695B2 (en) | Snoop filtering mechanism | |
US8131935B2 (en) | Virtual barrier synchronization cache | |
US8095733B2 (en) | Virtual barrier synchronization cache castout election | |
EP1399823B1 (en) | Using an l2 directory to facilitate speculative loads in a multiprocessor system | |
KR100228940B1 (ko) | 메모리 일관성 유지 방법 | |
US8918591B2 (en) | Data processing system having selective invalidation of snoop requests and method therefor | |
US8099557B2 (en) | Push for sharing instruction | |
US8117399B2 (en) | Processing of coherent and incoherent accesses at a uniform cache | |
US20060053258A1 (en) | Cache filtering using core indicators | |
US20070168620A1 (en) | System and method of multi-core cache coherency | |
US20090019306A1 (en) | Protecting tag information in a multi-level cache hierarchy | |
JP5319049B2 (ja) | キャッシュシステム | |
US10628312B2 (en) | Producer/consumer paced data transfer within a data processing system having a cache which implements different cache coherency protocols | |
US8473685B2 (en) | Cache memory device, processor, and control method for cache memory device to reduce power unnecessarily consumed by cache memory | |
US7464227B2 (en) | Method and apparatus for supporting opportunistic sharing in coherent multiprocessors | |
US6976130B2 (en) | Cache controller unit architecture and applied method | |
US20020042860A1 (en) | Cache system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120605 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130917 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131118 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140411 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140418 |
|
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: 20140527 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140609 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5568939 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |