TOP
|
特許
|
意匠
|
商標
特許ウォッチ
Twitter
他の特許を見る
10個以上の画像は省略されています。
公開番号
2025042544
公報種別
公開特許公報(A)
公開日
2025-03-27
出願番号
2023149635
出願日
2023-09-14
発明の名称
プロセッサ
出願人
富士通株式会社
代理人
弁理士法人フィールズ国際特許事務所
主分類
G06F
12/0811 20160101AFI20250319BHJP(計算;計数)
要約
【課題】メモリアクセスのレイテンシを抑制するプロセッサを提供する。
【解決手段】プロセッサは、複数のコア回路COREと、1次キャッシュL1$と、2次キャッシュL2$からN(Nは3以上の整数)次キャッシュまで複数のキャッシュを有するキャッシュユニット$_UNITを有し、1次キャッシュは、1次キャッシュでキャッシュミスになったメモリアクセス命令を格納する複数のエントリを有するムーブインバッファMIBを有し、ムーブインバッファは、キャッシュミスになったメモリアクセス命令のメモリアクセスを行うメモリリクエストRQを2次キャッシュへ発行したとき、メモリアクセスを行う擬似メモリリクエストP_RQを3次キャッシュからN次キャッシュにパラレルに発行し、擬似メモリリクエストがキャッシュヒットした何れかのキャッシュからコヒーレンシ未確保のデータを有する擬似データ応答を受信する。
【選択図】図9
特許請求の範囲
【請求項1】
発行された命令を実行する演算回路と、発行されたメモリアクセス命令を実行するロードストアユニットと、1次キャッシュと、前記演算回路及び前記ロードストアユニットの命令実行完了処理を制御するリオーダーバッファとをそれぞれ有する複数のコア回路と、
2次キャッシュからN(Nは3以上の整数)次キャッシュまで複数のキャッシュを有するキャッシュユニットを有し、
前記1次キャッシュは、前記1次キャッシュでキャッシュミスになったメモリアクセス命令を格納する複数のエントリを有するムーブインバッファを有し、
前記ムーブインバッファは、
前記キャッシュミスになったメモリアクセス命令のメモリアクセスを行う通常メモリリクエストを前記2次キャッシュに発行し、前記通常メモリリクエストは前記2次キャッシュから前記N次キャッシュに向かってシリアルに発行され、前記通常メモリリクエストがキャッシュヒットした前記2次キャッシュから前記N次キャッシュまでの何れかのキャッシュから、コヒーレンシ確保済みデータを有する通常データ応答を受信し、
前記通常メモリリクエストが前記2次キャッシュへ発行されたとき、前記メモリアクセスを行う擬似メモリリクエストが、Nが3の場合は3次キャッシュに発行され、Nが4以上の場合は前記3次キャッシュから前記N次キャッシュにパラレルに発行され、
前記ムーブインバッファは、
前記擬似メモリリクエストがキャッシュヒットしたいずれかのキャッシュから、コヒーレンシ未確保のデータを有する擬似データ応答を受信し、
前記リオーダーバッファは、
前記通常データ応答に基づいて、通常の命令実行完了処理を実行し、
前記擬似データ応答に基づいて、擬似の命令実行完了処理を実行し、
前記擬似データ応答が失敗だった場合、前記キャッシュミスになったメモリアクセス命令の後ろの命令を前記擬似の命令実行完了処理に基づいて投機実行した前記演算回路を投機実行前の状態に巻き戻す、プロセッサ。
続きを表示(約 970 文字)
【請求項2】
前記1次キャッシュは、
前記通常データ応答に基づいて、前記通常データ応答のデータを前記1次キャッシュ内のキャッシュメモリに格納し、
前記擬似データ応答に基づいて、前記擬似データ応答のデータを前記1次キャッシュ内のキャッシュメモリに格納しない、請求項1に記載のプロセッサ。
【請求項3】
前記通常データ応答に基づいて、前記通常データ応答のデータが前記コア回路内のレジスタに格納され、
前記擬似データ応答に基づいて、前記擬似データ応答のデータが前記コア回路内のレジスタに格納され、
前記擬似データ応答が失敗だった場合、前記通常データ応答のデータが前記コア回路内のレジスタに上書きされる、請求項2に記載のプロセッサ。
【請求項4】
前記ムーブインバッファは、
前記擬似データ応答を受信した後に前記通常データ応答を受信したとき、前記擬似データ応答のデータと前記通常データ応答のデータとが一致するか否か判定し、一致する場合は前記擬似データ応答が成功だったと判定し、不一致の場合は前記擬似データ応答が失敗だったと判定し、
前記擬似データ応答の成功または失敗が前記リオーダーバッファに通知される、請求項1に記載のプロセッサ。
【請求項5】
前記演算回路は、前記発行された命令をプログラム順とは異なるアウトオブオーダー順に実行し、
前記リオーダーバッファは、前記演算回路で実行された命令を前記プログラム順であるインオーダー順に前記通常の命令実行完了処理を実行し、
前記演算回路は、依存関係のある第1の命令及び前記第1の命令の後の第2の命令を実行し、前記第1の命令の前記通常の命令実行完了処理の後に前記第2の命令を実行し、更に、前記第1の命令の前記擬似の命令実行完了処理後に前記第2の命令を投機実行する、請求項1に記載のプロセッサ。
【請求項6】
前記擬似メモリリクエストは、前記ムーブインバッファが発行する、請求項1に記載のプロセッサ。
【請求項7】
前記擬似メモリリクエストは、前記通常メモリリクエストを発行されたとき、前記2次キャッシュが発行する、請求項1に記載のプロセッサ。
発明の詳細な説明
【技術分野】
【0001】
本発明は、プロセッサに関する。
続きを表示(約 2,100 文字)
【背景技術】
【0002】
演算処理装置は、プロセッサまたはCPU(Central Processing Unit)チップである。以下、演算処理装置をプロセッサと称する。近年のプロセッサは、多機能化や微細化に伴いメモリアクセスに対するレイテンシ(メモリリクエストからデータ応答までのクロック数)の増大という課題を有する。特に、微細化による回路の大規模化は、コア数の増大、キャッシュ階層の増大を可能にするが、それに伴うレイテンシの増大を抑制することが求められる。
【0003】
以下の特許文献には、投機実行の命令においてキャッシュへのデータ格納を投機的に行うことが記載される。
【先行技術文献】
【特許文献】
【0004】
特表2014-503929号公報
特開2009-64471号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方、マルチコア化やキャッシュの多階層化に伴い、キャッシュ内のデータの一貫性を意味するキャッシュコヒーレンシを確保することが必要になる。キャッシュは、データを格納するデータメモリと、データメモリ内の各キャッシュラインまたはキャッシュライン内のデータの状態等を格納するタグメモリを有し、その状態に基づいて、そのデータがコヒーレンシを確保されているか否かを判定する。この状態は、例えばMESIプロトコルでは、I(キャッシュラインが無効)、S(キャッシュラインの内容はメモリと同じで、他のコアのキャッシュが共有し得る)、E(キャッシュラインの内容はメモリと同じで且つ他のコアのキャッシュには存在しない)、M(キャッシュラインの内容は書き込みにより変更され、メモリとは一致しない)の4つの状態を利用する。
【0006】
キャッシュコヒーレンシを確保するための手続きの例を以下に説明する。あるコア0があるアドレスのメモリを読もうとしたが、そのキャッシュでキャッシュミスになった場合、他のコア1のキャッシュに書き換えられた最新のデータがあり、メモリの内容は古いままということがあり得る。そこで、コア0はコア1を含む他のコアのキャッシュにブロードキャストし、そのアドレスのM状態のキャッシュラインを持っている場合はメモリに書き戻す(Copy Back)ことを要求する。これに応答して、コア1のキャッシュはM状態のキャッシュラインの内容をメモリに書き戻し、M状態をS状態に変更し、コア0に「S状態のキャッシュラインを持っている」という応答をする。その後、コア0はそのアドレスの最新のデータをメモリから読み出し自分のキャッシュに格納しそのキャッシュラインをS状態にする。また、コア0からの書き戻す要求に対してコア1のキャッシュがそのアドレスのキャッシュラインを持っていない場合、コア0に「そのアドレスのキャッシュラインを持っていない」という応答をする。これに応答して、コア0は、そのアドレスのデータをメモリから読み出し自分のキャッシュに格納しそのキャッシュラインをE状態にする。
【0007】
このようにキャッシュコヒーレンシを確保する手続きは、複数のコアのキャッシュ間でデータの一貫性が取れていて、本来のデータ、即ち最新のデータを読み出すことができる手続きをいう。キャッシュコヒーレンシが確保できていない場合、上記のようなコヒーレンシ確保の手続きを実施する必要がある。
【0008】
したがって、キャッシュコヒーレンシを確保する手続きは、レイテンシの増大を招くことがある。そして、プロセッサは、コヒーレンシを確保する手続きが完了するまでそのメモリリクエストに依存する後続のメモリリクエストをロックする。そのため、レイテンシが長い場合、後続のメモリリクエストを開始できずプロセッサの処理効率が低下する。
【0009】
上記の処理効率の低下を回避するために、分岐命令の分岐予測機構や、プリフェッチ機構を利用して、次に実行されると予測されたアドレスへのメモリアクセスを投機実行することが行われる。しかし、投機実行では投機失敗時に投機実行前の状態に回路を巻き戻す必要がある。巻き戻しできる投機実行領域は、例えばデコーダから演算器及びレジスタファイルまでに限定され、キャッシュ領域に投機実行未確定のデータを格納することは禁止されている。そのため、投機実行対象の命令のメモリリクエストがコヒーレンシを確保する手続きの間、そのメモリリクエストに依存する後続のメモリリクエストの実行はロックされ、後続のメモリリクエストを投機的に実行することはできない。その結果、命令の投機実行によるプログラム実行効率の向上が抑制される。
【0010】
そこで、本実施の形態の一つの目的は、メモリアクセスのレイテンシを抑制できるプロセッサを提供することにある。
【課題を解決するための手段】
(【0011】以降は省略されています)
この特許をJ-PlatPatで参照する
関連特許
富士通株式会社
電源装置
17日前
富士通株式会社
画像生成方法
23日前
富士通株式会社
車線区分装置及び方法
3日前
富士通株式会社
評価プログラム、方法、及び装置
23日前
富士通株式会社
情報処理装置,プログラムおよび制御方法
3日前
富士通株式会社
予測プログラム、予測方法及び情報処理装置
18日前
富士通株式会社
分子動力学計算プログラム、方法、及び装置
3日前
富士通株式会社
プログラム、情報処理方法および情報処理装置
23日前
富士通株式会社
方策学習装置、方策学習方法及び通信システム
18日前
富士通株式会社
情報処理プログラム、情報処理方法及び情報処理システム
23日前
富士通株式会社
情報処理プログラム、情報処理方法、および情報処理装置
19日前
富士通株式会社
タスク制御プログラム、情報処理装置及びタスク制御方法
3日前
富士通株式会社
業務管理プログラム、業務管理方法、および情報処理装置
10日前
富士通株式会社
医薬品管理装置、医薬品管理方法、医薬品管理プログラム
4日前
富士通株式会社
情報処理プログラム、情報処理方法、および情報処理装置
4日前
富士通株式会社
期待値算出システム、期待値算出装置、及び期待値算出方法
19日前
富士通株式会社
量子計算支援プログラム、量子計算支援方法、および情報処理装置
11日前
富士通株式会社
歩行訓練支援プログラム、歩行訓練支援方法、および情報処理装置
5日前
富士通株式会社
エレベータ管理プログラム、エレベータ管理方法、エレベータ管理装置
20日前
富士通株式会社
リソース割当て装置、リソース割当て方法、およびリソース割当てプログラム
17日前
富士通株式会社
基底エネルギー算出プログラム、基底エネルギー算出装置、および基底エネルギー算出方法
12日前
富士通株式会社
サイドリンクリソースの再選択方法及び装置
4日前
富士通株式会社
基地局、移動局、通信システム、及び通信方法
16日前
富士通株式会社
ワイヤーハーネス製造図設計支援プログラム、ワイヤーハーネス製造図設計支援方法、および情報処理装置
3日前
個人
非正規コート
13日前
個人
人物再現システム
10日前
個人
AI飲食最適化プラグイン
3日前
有限会社ノア
データ読取装置
11日前
個人
電話管理システム及び管理方法
4日前
株式会社ザメディア
出席管理システム
18日前
個人
広告提供システムおよびその方法
13日前
個人
日誌作成支援システム
10日前
株式会社タクテック
商品取出集品システム
17日前
個人
ポイント還元付き配送システム
11日前
ミサワホーム株式会社
情報処理装置
17日前
トヨタ自動車株式会社
工程計画装置
18日前
続きを見る
他の特許を見る