JP6058806B2 - ベクトルレジスタファイルの素子バンクに対するアドレスラインの選択的な結合 - Google Patents
ベクトルレジスタファイルの素子バンクに対するアドレスラインの選択的な結合 Download PDFInfo
- Publication number
- JP6058806B2 JP6058806B2 JP2015537735A JP2015537735A JP6058806B2 JP 6058806 B2 JP6058806 B2 JP 6058806B2 JP 2015537735 A JP2015537735 A JP 2015537735A JP 2015537735 A JP2015537735 A JP 2015537735A JP 6058806 B2 JP6058806 B2 JP 6058806B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- hardware element
- address line
- address lines
- lines
- 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
- 238000000034 method Methods 0.000 claims description 34
- 230000008878 coupling Effects 0.000 claims description 25
- 238000010168 coupling process Methods 0.000 claims description 25
- 238000005859 coupling reaction Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000005022 packaging material Substances 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30141—Implementation provisions of register files, e.g. ports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30109—Register structure having multiple operands in a single register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Static Random-Access Memory (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
102 ベクトルレジスタファイル(VRF)
104 読取りポート
106 マルチプレクサ(MUX)
108 マルチプレクサ(MUX)
110 マルチプレクサ(MUX)
112 マルチプレクサ(MUX)
114 マルチプレクサ(MUX)
116 マルチプレクサ(MUX)
118 マルチプレクサ(MUX)
120 マルチプレクサ(MUX)
122 素子バンク
124 素子バンク
126 素子バンク
128 素子バンク
130 素子バンク
132 素子バンク
134 素子バンク
136 素子バンク
138 読取りデータライン
140 読取りデータライン
142 読取りデータライン
144 読取りデータライン
146 読取りデータライン
148 読取りデータライン
150 読取りデータライン
152 読取りデータライン
154 結線
156 結線
158 結線
160 結線
162 結線
164 結線
166 結線
168 結線
170 第1のアドレスライン
172 第2のアドレスライン
174 共通データセレクタ
176 選択パターン
200 システム
202 書込みポート
204 書込みデータライン
206 書込みデータライン
208 書込みデータライン
210 書込みデータライン
212 書込みデータライン
214 書込みデータライン
216 書込みデータライン
218 書込みデータライン
300 図1のVRF102内の素子に関するマージ読取り動作の特定の実施形態を示す図
302 ベクトル
304 ベクトル
306 第1のサブベクトル
308 第2のサブベクトル
310 第3のサブベクトル
312 第4のサブベクトル
314 ベクトル
316 第1の素子
318 第2の素子
400 図1のベクトルレジスタファイル102内の素子に関する分割書込み動作の特定の実施形態を示す図
402 ベクトル
404 ベクトル
406 ベクトル
408 第1のサブベクトル
410 第2のサブベクトル
412 第3のサブベクトル
414 第4のサブベクトル
416 第5のサブベクトル
418 第6のサブベクトル
500 図1のシステム100における動作方法
600 図2のシステム200における動作方法
700 通信デバイス
702 VRF
704 プロセッサ
706 メモリ
708 ワイヤレスコントローラ
710 送受信機
712 アンテナ
714 コーダ/デコーダ(コーデック)
716 ディスプレイコントローラ
718 ディスプレイデバイス
720 入力デバイス
722 スピーカ
724 マイクロフォン
726 電源
728 システムオンチップデバイス
730 命令
732 MUX
Claims (32)
- 複数のハードウェア素子バンクを含むベクトルレジスタファイルと、
アドレスラインの複数のセットであって、アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、
第1のアドレスを受信するように構成された第1のアドレスラインと、
第2のアドレスを受信するように構成された第2のアドレスラインとを含む、アドレスラインの複数のセットと、
複数のアドレスラインセレクタであって、前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成される、複数のアドレスラインセレクタと、
前記複数のハードウェア素子バンクの中に記憶されたデータにアクセスするように構成された単一の読取りポートであって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクのうちの第1のハードウェア素子バンクが、第1のアドレスラインセレクタに結合されたアドレスラインの第1のセットのうちの特定の第1のアドレスラインに、前記第1のアドレスラインセレクタの第1の出力を介して、選択パターンに従って選択的に結合されるように構成される、単一の読取りポートと
を備える、装置。 - アドレスラインの前記第1のセットが、前記第1のアドレスラインセレクタに結合された前記特定の第1のアドレスラインと特定の第2のアドレスラインとを備え、アドレスラインの第2のセットが、第2のアドレスラインセレクタに結合された第3のアドレスラインと、前記第2のアドレスラインセレクタに結合された第4のアドレスラインとを備え、前記特定の第1のアドレスラインと前記特定の第2のアドレスラインの各々が、前記第1のハードウェア素子バンクに、前記第1のアドレスラインセレクタの前記第1の出力を介して、選択的に結合されるように構成され、前記第3のアドレスラインと前記第4のアドレスラインの各々が、前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクに、前記第2のアドレスラインセレクタの第2の出力を介して、選択的に結合されるように構成される、請求項1に記載の装置。
- 前記複数のアドレスラインセレクタが、複数のマルチプレクサを備え、
前記複数のマルチプレクサのうちのいくつかのマルチプレクサが、前記複数のハードウェア素子バンクのうちのいくつかのハードウェア素子バンクに対応する、請求項1に記載の装置。 - 前記複数のマルチプレクサのうちの特定のマルチプレクサが、前記複数のハードウェア素子バンクのうちの特定のハードウェア素子バンクに結合され、複数のデータラインが、前記複数のハードウェア素子バンクを前記単一の読取りポートに結合し、
前記複数のハードウェア素子バンクのうちの各ハードウェア素子バンクが、前記複数のデータラインのうちの個別のデータラインを介して前記単一の読取りポートに結合される、請求項3に記載の装置。 - アドレスラインの前記第1のセットが、前記特定の第1のアドレスラインと特定の第2のアドレスラインとを備え、アドレスラインの第2のセットが、第3のアドレスラインと第4のアドレスラインとを備え、
前記第1のハードウェア素子バンクが、前記特定の第1のアドレスラインまたは前記特定の第2のアドレスラインのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクが、前記第3のアドレスラインまたは前記第4のアドレスラインのうちの1つによって選択的にアドレス指定されるように構成される、請求項1に記載の装置。 - 前記複数のアドレスラインセレクタが、複数のマルチプレクサを備えるとともに、前記複数のマルチプレクサに前記複数のハードウェア素子バンクを結合する複数の接続をさらに備え、
前記複数のマルチプレクサが共通データセレクタに接続され、
前記共通データセレクタが、前記複数のハードウェア素子バンクのうちの各ハードウェア素子バンクに対応する選択パターンを受信するように構成される、請求項1に記載の装置。 - 前記複数のハードウェア素子バンクのうちの各ハードウェア素子バンクの中にデータを記憶するように構成された単一の書込みポートをさらに備え、前記ベクトルレジスタファイルがプロセッサに統合され、前記プロセッサが、単一の命令の間、
読取りデータとして前記データにアクセスするように、前記単一の読取りポートに命令することと、
前記読取りデータを修正することと、
前記修正された読取りデータで前記ベクトルレジスタファイルを更新するように、前記単一の書込みポートに命令することと
を行うように構成される、請求項1に記載の装置。 - 複数のアドレスラインセレクタを使用して、ベクトルレジスタファイルの複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するステップであって、
アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、
第1のアドレスを受信するように構成された第1のアドレスラインと、
第2のアドレスを受信するように構成された第2のアドレスラインとを含み、
前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成され、
アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの前記第1のアドレスラインと、アドレスラインの前記第1のセットの前記第2のアドレスラインとが、前記複数のハードウェア素子バンクの第1のハードウェア素子バンクに選択的に結合され、
アドレスラインの前記第1のセットの前記第1のアドレスラインと、アドレスラインの前記第1のセットの前記第2のアドレスラインとが、選択パターンに従って選択的に結合され、
前記ベクトルレジスタファイルが、単一の読取りポートに結合される、ステップと、
特定の選択パターンに従って、アドレスラインの前記第1のセットのうちの前記第1のアドレスラインを前記第1のハードウェア素子バンクに結合するステップと、
アドレスラインの前記第1のセットのうちの前記第1のアドレスラインを使用して、前記第1のハードウェア素子バンクを選択的にアドレス指定するステップと、
前記単一の読取りポートを介して、前記第1のハードウェア素子バンクの中に記憶されたデータにアクセスするステップと
を含む、方法。 - 前記選択パターンに従って、前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクに、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第1のアドレスラインを結合するステップをさらに含み、前記第1のハードウェア素子バンクと前記第2のハードウェア素子バンクが共通のアドレスラインに結合された、請求項8に記載の方法。
- 前記選択パターンに従って、前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクに、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインを結合するステップをさらに含み、前記第1のハードウェア素子バンクと前記第2のハードウェア素子バンクが異なるアドレスラインに結合された、請求項8に記載の方法。
- 単一の読取りポートに結合されるとともに複数のハードウェア素子バンクを含む、ベクトルデータを記憶するための手段と、
前記複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するための手段であって、アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、第1のアドレスを受信するように構成された第1のアドレスラインと、第2のアドレスを受信するように構成された第2のアドレスラインとを含み、選択的に結合するための前記手段が、
複数のアドレスラインセレクタを備え、前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成される、手段と、
単一の読取りポートを介して、前記複数のハードウェア素子バンクの中に記憶されたデータにアクセスするための手段であって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクの第1のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの第1のアドレスラインに、第1のアドレスラインセレクタの第1の出力を介して、選択パターンに従って選択的に結合されるように構成され、アドレスラインの前記第1のセットが前記第1のアドレスラインセレクタに結合され、
前記複数のハードウェア素子バンクの第2のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインに、第2のアドレスラインセレクタの第2の出力を介して、前記選択パターンに従って選択的に結合されるように構成され、アドレスラインの前記第2のセットが前記第2のアドレスラインセレクタに結合される、手段と
を備える、装置。 - プロセッサによって実行されたとき、
複数のアドレスラインセレクタを使用して、ベクトルレジスタファイルの複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するために、選択パターンを生成することであって、
アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、
第1のアドレスを受信するように構成された第1のアドレスラインと、
第2のアドレスを受信するように構成された第2のアドレスラインとを含み、
前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成され、
前記ベクトルレジスタファイルが単一の読取りポートに結合される、生成することと、
前記複数のハードウェア素子バンクの中に記憶されたデータにアクセスすることであって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記単一の読取りポートを介して前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクの第1のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの第1のアドレスラインに、第1のアドレスラインセレクタの第1の出力を介して、選択的に結合されるように構成され、アドレスラインの前記第1のセットが前記第1のアドレスラインセレクタに結合され、
前記複数のハードウェア素子バンクの第2のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインに、第2のアドレスラインセレクタの第2の出力を介して、選択的に結合されるように構成され、アドレスラインの前記第2のセットが前記第2のアドレスラインセレクタに結合される、アクセスすることと
を前記プロセッサに行わせるプロセッサ実行可能命令を含む、非一時的コンピュータ可読記録媒体。 - アドレスラインの前記複数のセットのうちの特定の第1のアドレスラインと、アドレスラインの前記複数のセットのうちの特定の第2のアドレスラインとが、複数のマルチプレクサのうちのそれぞれのマルチプレクサを介して、前記複数のハードウェア素子バンクに選択的に結合されるように構成される、請求項12に記載の非一時的コンピュータ可読記録媒体。
- 複数のハードウェア素子バンクを含むベクトルレジスタファイルと、
アドレスラインの複数のセットであって、アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、
第1のアドレスを受信するように構成された第1のアドレスラインと、
第2のアドレスを受信するように構成された第2のアドレスラインとを含む、アドレスラインの複数のセットと、
複数のアドレスラインセレクタであって、前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成される、複数のアドレスラインセレクタと、
前記複数のハードウェア素子バンクの中にデータを記憶するように構成された単一の書込みポートであって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクの第1のハードウェア素子バンクが、第1のアドレスラインセレクタに結合されたアドレスラインの第1のセットのうちの前記第1のアドレスラインに、前記第1のアドレスラインセレクタの第1の出力を介して、選択パターンに従って選択的に結合されるように構成される、単一の書込みポートと
を備える、装置。 - 前記ベクトルレジスタファイルが複数のベクトルレジスタを含み、
前記複数のベクトルレジスタの各ベクトルレジスタが、それぞれのベクトルレジスタ名を参照する命令によってアクセス可能である、請求項14に記載の装置。 - 前記複数のハードウェア素子バンクのうちの2つの隣接するハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの2つの対応するセットの中の2つの第2のアドレスラインに選択的に結合される、請求項14に記載の装置。
- 前記複数のハードウェア素子バンクの各ハードウェア素子バンクの中に記憶されたデータにアクセスするように構成された単一の読取りポートをさらに備え、前記ベクトルレジスタファイルがプロセッサに統合され、前記プロセッサが、単一の命令を実行する間、
読取りデータとして前記データにアクセスするように、前記単一の読取りポートに命令することと、
前記読取りデータを修正することと、
前記修正された読取りデータで前記ベクトルレジスタファイルを更新するように、前記単一の書込みポートに命令することと
を行うように構成される、請求項14に記載の装置。 - 前記複数のハードウェア素子バンクのうちの特定のハードウェア素子バンクが、アドレスラインの前記第1のセットの前記第1のアドレスラインまたは前記第2のアドレスラインのうちの1つを選択するための制御を受信するように構成される、複数のマルチプレクサのうちの1つのマルチプレクサに結合され、前記特定のハードウェア素子バンクが書込みデータラインを有する、請求項14に記載の装置。
- 前記複数のマルチプレクサが共通データセレクタに接続され、
前記共通データセレクタが、前記複数のハードウェア素子バンクの各ハードウェア素子バンクに対応する選択パターンを受信するように構成される、請求項18に記載の装置。 - 複数のアドレスラインセレクタを使用して、ベクトルレジスタファイルの複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するステップであって、
アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、
第1のアドレスを受信するように構成された第1のアドレスラインと、
第2のアドレスを受信するように構成された第2のアドレスラインとを含み、
前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成され、
アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの前記第1のアドレスラインと、アドレスラインの前記第1のセットの前記第2のアドレスラインとが、前記複数のハードウェア素子バンクの第1のハードウェア素子バンクに選択的に結合され、
前記ベクトルレジスタファイルが、単一の書込みポートに結合される、ステップと、
特定の選択パターンに従って、アドレスラインの前記第1のセットのうちの前記第1のアドレスラインを前記第1のハードウェア素子バンクに結合するステップと、
アドレスラインの前記第1のセットの前記第1のアドレスラインを使用して、前記第1のハードウェア素子バンクを選択的にアドレス指定するステップと、
前記単一の書込みポートを介して、前記第1のハードウェア素子バンクの中にデータを記憶するステップと
を含む、方法。 - 前記特定の選択パターンに従って、前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクに、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第1のアドレスラインを結合するステップをさらに含み、前記第1のハードウェア素子バンクと前記第2のハードウェア素子バンクが共通のアドレスラインに結合された、請求項20に記載の方法。
- 前記特定の選択パターンに従って、前記複数のハードウェア素子バンクのうちの第2のハードウェア素子バンクに、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインを結合するステップをさらに含み、前記第1のハードウェア素子バンクと前記第2のハードウェア素子バンクが異なるアドレスラインに結合された、請求項20に記載の方法。
- 単一の書込みポートに結合されるとともに複数のハードウェア素子バンクを含む、ベクトルデータを記憶するための手段と、
前記複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するための手段であって、アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、第1のアドレスを受信するように構成された第1のアドレスラインと、第2のアドレスを受信するように構成された第2のアドレスラインとを含み、選択的に結合するための前記手段が、
複数のアドレスラインセレクタを備え、前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成される、手段と、
前記単一の書込みポートを介して、前記複数のハードウェア素子バンクにデータを書き込むための手段であって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクの第1のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの第1のアドレスラインに、第1のアドレスラインセレクタの第1の出力を介して、選択パターンに従って選択的に結合されるように構成され、アドレスラインの前記第1のセットが前記第1のアドレスラインセレクタに結合され、
前記複数のハードウェア素子バンクの第2のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインに、第2のアドレスラインセレクタの第2の出力を介して、前記選択パターンに従って選択的に結合されるように構成され、アドレスラインの前記第2のセットが前記第2のアドレスラインセレクタに結合される、手段と
を備える、装置。 - 前記選択的に結合するための手段が選択パターンに応答する、請求項23に記載の装置。
- プロセッサによって実行されたとき、
複数のアドレスラインセレクタを使用して、ベクトルレジスタファイルの複数のハードウェア素子バンクに、アドレスラインの複数のセットのうちのアドレスラインを選択的に結合するために、選択パターンを生成することであって、
アドレスラインの前記複数のセットのうちのアドレスラインの各セットが、第1のアドレスを受信するように構成された第1のアドレスラインと、第2のアドレスを受信するように構成された第2のアドレスラインとを含み、
前記複数のアドレスラインセレクタの各アドレスラインセレクタが、アドレスラインの前記複数のセットのうちのアドレスラインの対応するセットに結合されるとともに、前記アドレスラインセレクタに結合されたアドレスラインの前記セットのうちの前記第1のアドレスラインまたは前記第2のアドレスラインを選択することによって、出力を生成するように構成され、
前記ベクトルレジスタファイルが単一の書込みポートに結合される、生成することと、
前記複数のハードウェア素子バンクの中にデータを記憶することであって、
前記複数のハードウェア素子バンクの各ハードウェア素子バンクが、前記単一の書込みポートを介して、前記第1のアドレスまたは前記第2のアドレスのうちの1つによって選択的にアドレス指定されるように構成され、
前記複数のハードウェア素子バンクの第1のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第1のセットの第1のアドレスラインに、第1のアドレスラインセレクタの第1の出力を介して、選択的に結合されるように構成され、アドレスラインの前記第1のセットが前記第1のアドレスラインセレクタに結合され、
前記複数のハードウェア素子バンクの第2のハードウェア素子バンクが、アドレスラインの前記複数のセットのうちのアドレスラインの第2のセットの第2のアドレスラインに、第2のアドレスラインセレクタの第2の出力を介して、選択的に結合されるように構成され、アドレスラインの前記第2のセットが前記第2のアドレスラインセレクタに結合される、記憶することと
を前記プロセッサに行わせるプロセッサ実行可能命令を含む、非一時的コンピュータ可読記録媒体。 - アドレスラインの前記複数のセットのうちの特定の第1のアドレスラインと、アドレスラインの前記複数のセットのうちの特定の第2のアドレスラインとが、複数のマルチプレクサのうちのそれぞれのマルチプレクサを介して、前記複数のハードウェア素子バンクに選択的に結合されるように構成される、請求項25に記載の非一時的コンピュータ可読記録媒体。
- 前記複数のハードウェア素子バンクのうちのすべてのハードウェア素子バンクが、選択パターンに従って選択的にアドレス指定されるように構成される、請求項1に記載の装置。
- 前記複数のアドレスラインセレクタが、複数のマルチプレクサを備え、前記複数のマルチプレクサの各マルチプレクサが、前記複数のハードウェア素子バンクのうちのそれぞれのハードウェア素子バンクに、アドレスラインの前記複数のセットのうちのアドレスラインの1つのセットを選択的に結合するように構成されるとともに、前記複数のハードウェア素子バンクのうちのすべてのハードウェア素子バンクが、選択パターンに基づいて前記複数のマルチプレクサを介して、選択的にアドレス指定される、請求項1に記載の装置。
- 前記第1のアドレスラインセレクタが、第1のマルチプレクサを備え、前記第1のマルチプレクサの入力が、アドレスラインの前記第1のセットのうちの対応するアドレスラインに結合される、請求項1に記載の装置。
- 前記特定の選択パターンに従って、前記複数のハードウェア素子バンクのすべてのハードウェア素子バンクを選択的にアドレス指定するステップをさらに含む、請求項8に記載の方法。
- 前記複数のハードウェア素子バンクのうちのすべてのハードウェア素子バンクが、選択パターンに従って選択的にアドレス指定されるように構成される、請求項14に記載の装置。
- 前記特定の選択パターンに従って、前記複数のハードウェア素子バンクのすべてのハードウェア素子バンクを選択的にアドレス指定するステップとさらに含む、請求項20に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/654,730 | 2012-10-18 | ||
US13/654,730 US9268571B2 (en) | 2012-10-18 | 2012-10-18 | Selective coupling of an address line to an element bank of a vector register file |
PCT/US2013/064063 WO2014062445A1 (en) | 2012-10-18 | 2013-10-09 | Selective coupling of an address line to an element bank of a vector register file |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016500877A JP2016500877A (ja) | 2016-01-14 |
JP2016500877A5 JP2016500877A5 (ja) | 2016-06-02 |
JP6058806B2 true JP6058806B2 (ja) | 2017-01-11 |
Family
ID=49484456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015537735A Expired - Fee Related JP6058806B2 (ja) | 2012-10-18 | 2013-10-09 | ベクトルレジスタファイルの素子バンクに対するアドレスラインの選択的な結合 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9268571B2 (ja) |
EP (1) | EP2909713B1 (ja) |
JP (1) | JP6058806B2 (ja) |
KR (1) | KR101635116B1 (ja) |
CN (1) | CN104685465B (ja) |
WO (1) | WO2014062445A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9136842B2 (en) | 2013-06-07 | 2015-09-15 | Altera Corporation | Integrated circuit device with embedded programmable logic |
US10236043B2 (en) * | 2016-06-06 | 2019-03-19 | Altera Corporation | Emulated multiport memory element circuitry with exclusive-OR based control circuitry |
GB2552154B (en) * | 2016-07-08 | 2019-03-06 | Advanced Risc Mach Ltd | Vector register access |
US10162752B2 (en) * | 2016-09-22 | 2018-12-25 | Qualcomm Incorporated | Data storage at contiguous memory addresses |
US11048509B2 (en) * | 2018-06-05 | 2021-06-29 | Qualcomm Incorporated | Providing multi-element multi-vector (MEMV) register file access in vector-processor-based devices |
US10930366B2 (en) | 2019-07-17 | 2021-02-23 | Micron Technology, Inc. | Storage device with test interface |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61241870A (ja) * | 1985-04-19 | 1986-10-28 | Hitachi Ltd | ベクトルプロセツサ |
US4980817A (en) | 1987-08-31 | 1990-12-25 | Digital Equipment | Vector register system for executing plural read/write commands concurrently and independently routing data to plural read/write ports |
EP0814411A3 (en) * | 1988-06-07 | 1998-03-04 | Fujitsu Limited | Vector data processing apparatus |
JP2941817B2 (ja) | 1988-09-14 | 1999-08-30 | 株式会社日立製作所 | ベクトル処理装置 |
JPH0452760A (ja) * | 1990-06-14 | 1992-02-20 | Koufu Nippon Denki Kk | ベクトル処理装置 |
JP2625277B2 (ja) * | 1991-05-20 | 1997-07-02 | 富士通株式会社 | メモリアクセス装置 |
JPH06274528A (ja) * | 1993-03-18 | 1994-09-30 | Fujitsu Ltd | ベクトル演算処理装置 |
US5832290A (en) * | 1994-06-13 | 1998-11-03 | Hewlett-Packard Co. | Apparatus, systems and method for improving memory bandwidth utilization in vector processing systems |
US5922066A (en) * | 1997-02-24 | 1999-07-13 | Samsung Electronics Co., Ltd. | Multifunction data aligner in wide data width processor |
JPH11184674A (ja) | 1997-12-24 | 1999-07-09 | Fujitsu Ltd | レジスタファイル |
US6665790B1 (en) * | 2000-02-29 | 2003-12-16 | International Business Machines Corporation | Vector register file with arbitrary vector addressing |
JP3779540B2 (ja) | 2000-11-08 | 2006-05-31 | 株式会社ルネサステクノロジ | 複数レジスタ指定が可能なsimd演算方式 |
US20110087859A1 (en) * | 2002-02-04 | 2011-04-14 | Mimar Tibet | System cycle loading and storing of misaligned vector elements in a simd processor |
US7937559B1 (en) | 2002-05-13 | 2011-05-03 | Tensilica, Inc. | System and method for generating a configurable processor supporting a user-defined plurality of instruction sizes |
US7284113B2 (en) * | 2003-01-29 | 2007-10-16 | Via Technologies, Inc. | Synchronous periodical orthogonal data converter |
GB2409065B (en) * | 2003-12-09 | 2006-10-25 | Advanced Risc Mach Ltd | Multiplexing operations in SIMD processing |
US9557994B2 (en) * | 2004-07-13 | 2017-01-31 | Arm Limited | Data processing apparatus and method for performing N-way interleaving and de-interleaving operations where N is an odd plural number |
US20060259737A1 (en) * | 2005-05-10 | 2006-11-16 | Telairity Semiconductor, Inc. | Vector processor with special purpose registers and high speed memory access |
US20070150697A1 (en) * | 2005-05-10 | 2007-06-28 | Telairity Semiconductor, Inc. | Vector processor with multi-pipe vector block matching |
US7750915B1 (en) | 2005-12-19 | 2010-07-06 | Nvidia Corporation | Concurrent access of data elements stored across multiple banks in a shared memory resource |
WO2007135615A2 (en) | 2006-05-16 | 2007-11-29 | Nxp B.V. | Memory architecture |
US20080291208A1 (en) | 2007-05-24 | 2008-11-27 | Gary Keall | Method and system for processing data via a 3d pipeline coupled to a generic video processing unit |
US8108652B1 (en) * | 2007-09-13 | 2012-01-31 | Ronald Chi-Chun Hui | Vector processing with high execution throughput |
US20110320765A1 (en) | 2010-06-28 | 2011-12-29 | International Business Machines Corporation | Variable width vector instruction processor |
US20120110037A1 (en) | 2010-11-01 | 2012-05-03 | Qualcomm Incorporated | Methods and Apparatus for a Read, Merge and Write Register File |
-
2012
- 2012-10-18 US US13/654,730 patent/US9268571B2/en active Active
-
2013
- 2013-10-09 WO PCT/US2013/064063 patent/WO2014062445A1/en active Application Filing
- 2013-10-09 KR KR1020157012568A patent/KR101635116B1/ko active IP Right Grant
- 2013-10-09 EP EP13780470.4A patent/EP2909713B1/en not_active Not-in-force
- 2013-10-09 JP JP2015537735A patent/JP6058806B2/ja not_active Expired - Fee Related
- 2013-10-09 CN CN201380051548.2A patent/CN104685465B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016500877A (ja) | 2016-01-14 |
KR101635116B1 (ko) | 2016-06-30 |
CN104685465A (zh) | 2015-06-03 |
EP2909713A1 (en) | 2015-08-26 |
KR20150070302A (ko) | 2015-06-24 |
EP2909713B1 (en) | 2017-07-05 |
US20140115227A1 (en) | 2014-04-24 |
CN104685465B (zh) | 2018-05-01 |
WO2014062445A1 (en) | 2014-04-24 |
US9268571B2 (en) | 2016-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6058806B2 (ja) | ベクトルレジスタファイルの素子バンクに対するアドレスラインの選択的な結合 | |
CN104583938B (zh) | 向量处理器中的数据提取系统和方法 | |
US10311127B2 (en) | Sparse matrix vector multiplication | |
EP3033670B1 (en) | Vector accumulation method and apparatus | |
EP2962187B1 (en) | Vector register addressing and functions based on a scalar register data value | |
JP2024521099A (ja) | 情報表示方法、装置、電子機器及び記憶媒体 | |
EP3629184A1 (en) | Method and apparatus for cache access mode selection | |
JP2024529256A (ja) | テキスト入力方法、装置、電子機器及び記憶媒体 | |
KR20240112980A (ko) | 벡터 셔플 방법, 프로세서 및 전자기기 | |
US20180365198A1 (en) | Method and apparatus for providing web browsing interface | |
JP2016522936A (ja) | データアクセスの前のメモリ内の不完全データエントリから冗長データエントリへのデータのリダイレクトならびに関連するシステムおよび方法 | |
CN102713868A (zh) | 存取二级存储器的一部分及一级存储器的系统及方法 | |
US9575759B2 (en) | Memory system and electronic device including memory system | |
US20110179242A1 (en) | Multi-Stage Multiplexing Operation Including Combined Selection and Data Alignment or Data Replication | |
US9721625B2 (en) | Time-constrained data copying between storage media | |
KR100710626B1 (ko) | 데이터 버스 확장 구조를 갖는 디지털 처리 장치 및 그방법 | |
US11243649B2 (en) | Method and apparatus for providing web browsing interface including dividing the content display region into at least two spaces, and allowing selection of different modes for loading web pages ot the at elast two spaces | |
US20230350640A1 (en) | System and method of rotating vector input | |
US9501584B2 (en) | Apparatus and method for distributing a search key in a ternary memory array | |
CN107636611A (zh) | 用于临时加载指令的系统、设备和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160406 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160406 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20160406 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20160630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160711 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161011 |
|
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: 20161107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6058806 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |