JP2014215624A - 演算処理装置 - Google Patents
演算処理装置 Download PDFInfo
- Publication number
- JP2014215624A JP2014215624A JP2013089479A JP2013089479A JP2014215624A JP 2014215624 A JP2014215624 A JP 2014215624A JP 2013089479 A JP2013089479 A JP 2013089479A JP 2013089479 A JP2013089479 A JP 2013089479A JP 2014215624 A JP2014215624 A JP 2014215624A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- unit
- stream
- arithmetic processing
- register
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 187
- 230000015654 memory Effects 0.000 claims description 97
- 238000000034 method Methods 0.000 claims description 66
- 230000008569 process Effects 0.000 claims description 66
- 238000010586 diagram Methods 0.000 description 38
- 239000000872 buffer Substances 0.000 description 18
- 238000004891 communication Methods 0.000 description 16
- 238000012546 transfer Methods 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
Abstract
Description
(付記1)
演算を実行する演算器、および、ストリーム処理を実行するストリームエンジンを含み、前記演算器のデータパスと前記ストリームエンジンのデータパスを密結合した、
ことを特徴とする演算処理装置。
さらに、
命令を発行する命令発行部を有し、
前記命令発行部は、前記演算器に対する命令を発行すると共に、前記ストリームエンジンに対する命令も発行する、
ことを特徴とする付記1に記載の演算処理装置。
前記ストリームエンジンは、
メモリからデータを読み出す読出回路と、
前記読み出したデータに対してストリーム処理を実行する実行回路と、
前記ストリーム処理された演算結果を前記メモリに書き込む書込回路と、を含む、
ことを特徴とする付記2に記載の演算処理装置。
前記読出回路は、POP部および第1レジスタを含み、
前記POP部は、前記メモリにおける、先頭アドレスおよびストリーム長で示された第1メモリ部からデータを読み出して前記第1レジスタに格納する、
ことを特徴とする付記3に記載の演算処理装置。
前記実行回路は、EXEC部および第2レジスタを含み、
前記EXEC部は、前記第1レジスタに格納されたデータに対してストリーム処理を実行し、前記ストリーム処理された演算結果を前記第2レジスタに格納する、
ことを特徴とする付記4に記載の演算処理装置。
前記実行回路は、階層化された複数のEXEC部および各階層の前記EXEC部間に設けられた複数の第3レジスタを含む、
ことを特徴とする付記5に記載の演算処理装置。
前記書込回路は、PUSH部を含み、
前記PUSH部は、前記第2レジスタに格納された演算結果を、前記メモリにおける、先頭アドレスおよびストリーム長で示された第2メモリ部に書き込む、
ことを特徴とする付記5または付記6に記載の演算処理装置。
前記命令発行部が前記ストリームエンジンに発行する命令は、ステップ命令であり、
前記ストリームエンジンの各パイプラインステージは、1つの前記ステップ命令に従ってそれぞれ1つの処理を実行する、
ことを特徴とする付記2乃至付記7のいずれか1項に記載の演算処理装置。
前記ストリーム処理に使用するパラメータ情報は、単一かつ長ビット長のセット命令で表現される、
ことを特徴とする付記8に記載の演算処理装置。
前記ストリーム処理に使用するパラメータ情報は、各ストリームの先頭アドレス,ストリーム長および演算モードを含む、
ことを特徴とする付記9に記載の演算処理装置。
さらに、
前記ストリーム処理に使用するパラメータ情報を一括してセットするパラメータレジスタを含み、
前記ストリームエンジンの各パイプラインステージは、前記パラメータレジスタからパラメータ情報を参照してパイプライン実行する、
ことを特徴とする付記8に記載の演算処理装置。
前記命令発行部が前記ストリームエンジンに発行する命令は、ステップ命令を分解して、前記ストリームエンジンの各パイプラインステージの操作を制御する短ビット長のマイクロ命令であり、
前記各パイプラインステージは、それぞれ対応する前記マイクロ命令に従って独立して処理を実行する、
ことを特徴とする付記2乃至付記7のいずれか1項に記載の演算処理装置。
さらに、
前記メモリと前記読出回路の間に設けられた第1FIFOバッファを有し、
前記メモリはDMA制御され、前記メモリからデータを読み出す読出回路の処理を制御する第1マイクロ命令を停止することで、前記第1FIFOバッファを満状態として、前記ストリームエンジンのパイプライン処理を停止する、
ことを特徴とする付記12に記載の演算処理装置。
さらに、
前記書込回路と前記メモリの間に設けられた第2FIFOバッファを有し、
前記メモリはDMA制御され、前記メモリへデータを書き込む書込回路の処理を制御する第2マイクロ命令を停止することで、前記第2FIFOバッファを空状態として、前記ストリームエンジンのパイプライン処理を停止する、
ことを特徴とする付記12に記載の演算処理装置。
前記演算器がVLIW命令により制御されるとき、
前記ストリームエンジンの各パイプラインステージの操作を制御するマイクロ命令をVLIW命令に埋め込む、
ことを特徴とする付記12乃至付記14のいずれか1項に記載の演算処理装置。
2,200 ストリームエンジン
4,400 データメモリ
5,8 DMA
7,61,62 FIFOバッファ
10,110,310 レジスタ
11,101,301 命令読出部
12,102,302 命令解釈部
13,103,303 レジスタ読出部
14,104,304 命令発行部
15,105 演算器
16,106 メモリアクセス部
17,107 レジスタ書込部
18,108 命令メモリ
19,109 データメモリ
21 POP部
23 EXEC部
24,221,222,221a,221b,222a,222b,241〜243 レジスタ
25 PUSH部
41〜43 メモリ部
100 ベースプロセッサ
140 パラメータレジスタ
210 読出回路
230 実行回路
250 書込回路
300 コプロセッサ
Claims (10)
- 演算を実行する演算器、および、ストリーム処理を実行するストリームエンジンを含み、前記演算器のデータパスと前記ストリームエンジンのデータパスを密結合した、
ことを特徴とする演算処理装置。 - さらに、
命令を発行する命令発行部を有し、
前記命令発行部は、前記演算器に対する命令を発行すると共に、前記ストリームエンジンに対する命令も発行する、
ことを特徴とする請求項1に記載の演算処理装置。 - 前記ストリームエンジンは、
メモリからデータを読み出す読出回路と、
前記読み出したデータに対してストリーム処理を実行する実行回路と、
前記ストリーム処理された演算結果を前記メモリに書き込む書込回路と、を含む、
ことを特徴とする請求項2に記載の演算処理装置。 - 前記読出回路は、POP部および第1レジスタを含み、
前記POP部は、前記メモリにおける、先頭アドレスおよびストリーム長で示された第1メモリ部からデータを読み出して前記第1レジスタに格納する、
ことを特徴とする請求項3に記載の演算処理装置。 - 前記実行回路は、EXEC部および第2レジスタを含み、
前記EXEC部は、前記第1レジスタに格納されたデータに対してストリーム処理を実行し、前記ストリーム処理された演算結果を前記第2レジスタに格納する、
ことを特徴とする請求項4に記載の演算処理装置。 - 前記書込回路は、PUSH部を含み、
前記PUSH部は、前記第2レジスタに格納された演算結果を、前記メモリにおける、先頭アドレスおよびストリーム長で示された第2メモリ部に書き込む、
ことを特徴とする請求項5に記載の演算処理装置。 - 前記命令発行部が前記ストリームエンジンに発行する命令は、ステップ命令であり、
前記ストリームエンジンの各パイプラインステージは、1つのステップ命令に従ってそれぞれ1つの処理を実行する、
ことを特徴とする請求項2乃至請求項6のいずれか1項に記載の演算処理装置。 - さらに、
前記ストリーム処理に使用するパラメータ情報を一括してセットするパラメータレジスタを含み、
前記ストリームエンジンの各パイプラインステージは、前記パラメータレジスタからパラメータ情報を参照してパイプライン実行する、
ことを特徴とする請求項7に記載の演算処理装置。 - 前記命令発行部が前記ストリームエンジンに発行する命令は、ステップ命令を分解して、前記ストリームエンジンの各パイプラインステージの操作を制御する短ビット長のマイクロ命令であり、
前記各パイプラインステージは、それぞれ対応する前記マイクロ命令に従って独立して処理を実行する、
ことを特徴とする請求項2乃至請求項6のいずれか1項に記載の演算処理装置。 - 前記演算器がVLIW命令により制御されるとき、
前記ストリームエンジンの各パイプラインステージの操作を制御するマイクロ命令をVLIW命令に埋め込む、
ことを特徴とする請求項9に記載の演算処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013089479A JP6094356B2 (ja) | 2013-04-22 | 2013-04-22 | 演算処理装置 |
US14/186,095 US9501282B2 (en) | 2013-04-22 | 2014-02-21 | Arithmetic processing device |
CN201410100282.2A CN104111817B (zh) | 2013-04-22 | 2014-03-18 | 算术处理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013089479A JP6094356B2 (ja) | 2013-04-22 | 2013-04-22 | 演算処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017000742A Division JP6292324B2 (ja) | 2017-01-05 | 2017-01-05 | 演算処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014215624A true JP2014215624A (ja) | 2014-11-17 |
JP6094356B2 JP6094356B2 (ja) | 2017-03-15 |
Family
ID=51708618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013089479A Active JP6094356B2 (ja) | 2013-04-22 | 2013-04-22 | 演算処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9501282B2 (ja) |
JP (1) | JP6094356B2 (ja) |
CN (1) | CN104111817B (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6094356B2 (ja) * | 2013-04-22 | 2017-03-15 | 富士通株式会社 | 演算処理装置 |
CN106484362B (zh) * | 2015-10-08 | 2020-06-12 | 上海兆芯集成电路有限公司 | 利用使用者指定二维定点算术运算的装置 |
CN107315715B (zh) * | 2016-04-26 | 2020-11-03 | 中科寒武纪科技股份有限公司 | 一种用于执行矩阵加/减运算的装置和方法 |
CN112306558A (zh) * | 2019-08-01 | 2021-02-02 | 杭州中天微系统有限公司 | 处理单元、处理器、处理系统、电子设备和处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11510291A (ja) * | 1995-10-06 | 1999-09-07 | アドバンスト・マイクロ・デバイシズ・インコーポレイテッド | スーパースケーラープロセッサにおけるout−of−order実行のための統一化された機能オペレーションスケジューラ |
JP2000207202A (ja) * | 1998-10-29 | 2000-07-28 | Pacific Design Kk | 制御装置およびデ―タ処理装置 |
US20100325188A1 (en) * | 2009-06-19 | 2010-12-23 | Olson Christopher H | Processor and method for implementing instruction support for multiplication of large operands |
JP2011034189A (ja) * | 2009-07-30 | 2011-02-17 | Renesas Electronics Corp | ストリームプロセッサ及びそのタスク管理方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2719926B1 (fr) | 1994-05-10 | 1996-06-07 | Sgs Thomson Microelectronics | Circuit électronique et procédé d'utilisation d'un coprocesseur. |
US6526430B1 (en) * | 1999-10-04 | 2003-02-25 | Texas Instruments Incorporated | Reconfigurable SIMD coprocessor architecture for sum of absolute differences and symmetric filtering (scalable MAC engine for image processing) |
JP2008503827A (ja) * | 2004-06-25 | 2008-02-07 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 命令処理回路 |
US7685409B2 (en) * | 2007-02-21 | 2010-03-23 | Qualcomm Incorporated | On-demand multi-thread multimedia processor |
JP5555514B2 (ja) | 2010-03-17 | 2014-07-23 | ルネサスエレクトロニクス株式会社 | プロセッサシステム |
US9317482B2 (en) * | 2012-10-14 | 2016-04-19 | Microsoft Technology Licensing, Llc | Universal FPGA/ASIC matrix-vector multiplication architecture |
JP6094356B2 (ja) * | 2013-04-22 | 2017-03-15 | 富士通株式会社 | 演算処理装置 |
-
2013
- 2013-04-22 JP JP2013089479A patent/JP6094356B2/ja active Active
-
2014
- 2014-02-21 US US14/186,095 patent/US9501282B2/en active Active
- 2014-03-18 CN CN201410100282.2A patent/CN104111817B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11510291A (ja) * | 1995-10-06 | 1999-09-07 | アドバンスト・マイクロ・デバイシズ・インコーポレイテッド | スーパースケーラープロセッサにおけるout−of−order実行のための統一化された機能オペレーションスケジューラ |
JP2000207202A (ja) * | 1998-10-29 | 2000-07-28 | Pacific Design Kk | 制御装置およびデ―タ処理装置 |
US20100325188A1 (en) * | 2009-06-19 | 2010-12-23 | Olson Christopher H | Processor and method for implementing instruction support for multiplication of large operands |
JP2011034189A (ja) * | 2009-07-30 | 2011-02-17 | Renesas Electronics Corp | ストリームプロセッサ及びそのタスク管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104111817B (zh) | 2017-05-10 |
US20140317164A1 (en) | 2014-10-23 |
CN104111817A (zh) | 2014-10-22 |
JP6094356B2 (ja) | 2017-03-15 |
US9501282B2 (en) | 2016-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10140251B2 (en) | Processor and method for executing matrix multiplication operation on processor | |
JP6124463B2 (ja) | 一方のアーキテクチャのコードモジュールが他方のアーキテクチャのライブラリモジュールを用いることを可能にするインターアーキテクチャ互換性モジュール | |
EP3274816B1 (en) | User-level fork and join processors, methods, systems, and instructions | |
WO2017185396A1 (zh) | 一种用于执行矩阵加/减运算的装置和方法 | |
US10778815B2 (en) | Methods and systems for parsing and executing instructions to retrieve data using autonomous memory | |
CN107766079B (zh) | 处理器以及用于在处理器上执行指令的方法 | |
KR20140113580A (ko) | 연산 마스크들의 마스킹되지 않는 요소들을 통합하기 위한 프로세서들, 방법들, 시스템들, 및 명령어들 | |
CN110427337B (zh) | 基于现场可编程门阵列的处理器内核及其运行方法 | |
JP5985526B2 (ja) | システムコールのためのロバスト且つ高性能な命令 | |
TWI515653B (zh) | 指令順序執行之指令對、處理器、方法及系統 | |
JP6094356B2 (ja) | 演算処理装置 | |
CN103714026A (zh) | 一种支持原址数据交换的存储器访问方法及装置 | |
KR102152735B1 (ko) | 그래픽 처리 장치 및 이의 동작 방법 | |
JP7507304B2 (ja) | レジスタデータの消去 | |
JP6292324B2 (ja) | 演算処理装置 | |
JP5630798B1 (ja) | プロセッサーおよび方法 | |
CN101539849B (zh) | 一种处理器以及一种寄存器选通方法 | |
US20240192994A1 (en) | Accelerated draw indirect fetching | |
JPH01255036A (ja) | マイクロプロセッサ | |
JP2006515446A (ja) | 関連アプリケーションを相互参照するカルテシアンコントローラを有するデータ処理システム | |
JP5993687B2 (ja) | ワンチッププロセッサ | |
JP2022546785A (ja) | 迅速かつ広範な結果生成のための隣接simdユニットの再利用 | |
CN114115092A (zh) | 一种异构双核plc协同执行方法与装置 | |
CN102053821B (zh) | 一种多线程流分支控制方法及其控制装置 | |
JP2014063510A (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160823 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170105 |
|
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: 20170117 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170130 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6094356 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |