JP5068597B2 - プロセッサ及びプロセッサによるデータ読み出し方法 - Google Patents
プロセッサ及びプロセッサによるデータ読み出し方法 Download PDFInfo
- Publication number
- JP5068597B2 JP5068597B2 JP2007200606A JP2007200606A JP5068597B2 JP 5068597 B2 JP5068597 B2 JP 5068597B2 JP 2007200606 A JP2007200606 A JP 2007200606A JP 2007200606 A JP2007200606 A JP 2007200606A JP 5068597 B2 JP5068597 B2 JP 5068597B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- registers
- instruction
- shift
- 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.)
- Expired - Fee Related
Links
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/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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- 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
- G06F9/30134—Register stacks; shift registers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Description
MIPS64(R) Architecture For Programmers Volume II: The MIPS64(R) Instruction Set、[online]、2005年7月1日、205〜209及び222〜228頁、MIPS Technologies Inc.、[2007年7月20日検索]、インターネット<URL: http://www.mips.com/content/Documentation/MIPSDocumentation/ProcessorArchitecture/doclibrary>
10 命令バッファ
11 命令デコード部
12 制御部
13 レジスタファイル
14 命令実行部
40 レジスタ
41 シフト回路
42〜44 セレクタ
45 OR回路
50 命令メモリ
51 データメモリ
130 書き込みコマンド生成回路
131 読み出しデータ選択回路
132 AND回路
RE_#0〜RE_#31 レジスタエレメント
Claims (9)
- 命令をデコードする命令デコード部と、
前記命令デコード部によりデコードされた命令に対応する処理を実行する命令実行部と、
データメモリからのロードデータを格納可能であり、前記命令実行部に対して入力データを供給するレジスタファイルとを備え、
前記レジスタファイルは、各々が複数ビットのデータを保持可能な複数のレジスタを有し、前記レジスタファイルは前記複数のレジスタから選択された少なくとも3つの隣接したレジスタ間が直接的かつ電気的に接続できるように構成され、前記少なくとも3つの隣接したレジスタの保持データを前記少なくとも3つの隣接したレジスタの間でシフトさせることで前記少なくとも3つの隣接したレジスタの保持データを更新可能である、プロセッサ。 - 前記レジスタファイルは、前記複数のレジスタのうちでデータシフトの対象となる1つ以上の対象レジスタとこれらに隣接するレジスタとの間で選択的にデータシフト動作を行うことにより、前記対象レジスタの保持データを選択的に更新する請求項1に記載のプロセッサ。
- 前記レジスタファイルのデータシフト動作の実行を指示するシフト命令が前記命令デコード部によってデコードされた場合に、前記レジスタファイルに対してデータシフト動作の実行を指示する制御信号を出力する制御部をさらに備える請求項1又は2に記載のプロセッサ。
- 前記制御信号は、前記複数のレジスタのうちでデータシフトの対象となる1つ以上のレジスタの指定、データシフト方向の指定、及びデータシフト量の指定を含む請求項3に記載のプロセッサ。
- 前記シフト命令のオペランド部には、前記複数のレジスタのうちでデータシフトの対象となるレジスタの指定が含まれる請求項3又は4に記載のプロセッサ。
- 前記複数のレジスタの各々は、隣接する2つのレジスタのうち少なくとも一方の保持データと自身の保持データとを結合した結合データに対してシフト処理を行うシフト回路を有し、シフト処理後の結合データを用いて自身の保持データを更新可能である請求項1乃至5のいずれか1項に記載のプロセッサ。
- 請求項1に記載のプロセッサに接続されたデータメモリから、前記複数のレジスタの各々のレジスタ長の2倍以上のデータ長であって、かつ、データ境界が前記データメモリのワード境界と一致していない非整列データ・ブロックを前記レジスタファイルへ読み出すデータ読み出し方法であって、
整列データの読み出しを指示する整列ロード命令を繰り返し実行することで、前記非整列データ・ブロックを含む範囲の複数の整列データを前記データメモリから前記レジスタファイルに転送し、
前記レジスタファイルのデータシフト動作の実行を指示するシフト命令を実行することで、前記複数の整列データを保持しているレジスタの間で保持データをシフトさせ、前記非整列データ・ブロックを前記複数のレジスタに整列化された状態で格納する、データ読み出し方法。 - 前記レジスタファイルのデータシフトは、前記複数のレジスタのうちで前記非整列データ・ブロックを保持しているレジスタの間で選択的に行われる、請求項7に記載のデータ読み出し方法。
- 前記シフト命令のオペランド部には、前記複数のレジスタのうちでデータシフトの対象となる両端の2つのレジスタの指定が含まれ、前記レジスタファイルのデータシフトは、前記オペランド部に指定された2つのレジスタに挟まれているレジスタを選択的に連結して行われる、請求項7又は8に記載のデータ読み出し方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007200606A JP5068597B2 (ja) | 2007-08-01 | 2007-08-01 | プロセッサ及びプロセッサによるデータ読み出し方法 |
US12/216,956 US20090037702A1 (en) | 2007-08-01 | 2008-07-14 | Processor and data load method using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007200606A JP5068597B2 (ja) | 2007-08-01 | 2007-08-01 | プロセッサ及びプロセッサによるデータ読み出し方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009037386A JP2009037386A (ja) | 2009-02-19 |
JP5068597B2 true JP5068597B2 (ja) | 2012-11-07 |
Family
ID=40339259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007200606A Expired - Fee Related JP5068597B2 (ja) | 2007-08-01 | 2007-08-01 | プロセッサ及びプロセッサによるデータ読み出し方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090037702A1 (ja) |
JP (1) | JP5068597B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4837305B2 (ja) * | 2005-05-10 | 2011-12-14 | ルネサスエレクトロニクス株式会社 | マイクロプロセッサ及びマイクロプロセッサの制御方法 |
JP5569730B2 (ja) * | 2010-06-16 | 2014-08-13 | 横河電機株式会社 | フィールド通信システム |
US20130086366A1 (en) * | 2011-09-30 | 2013-04-04 | Qualcomm Incorporated | Register File with Embedded Shift and Parallel Write Capability |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5509129A (en) * | 1993-11-30 | 1996-04-16 | Guttag; Karl M. | Long instruction word controlling plural independent processor operations |
US5987561A (en) * | 1995-08-31 | 1999-11-16 | Advanced Micro Devices, Inc. | Superscalar microprocessor employing a data cache capable of performing store accesses in a single clock cycle |
US7085795B2 (en) * | 2001-10-29 | 2006-08-01 | Intel Corporation | Apparatus and method for efficient filtering and convolution of content data |
US6334176B1 (en) * | 1998-04-17 | 2001-12-25 | Motorola, Inc. | Method and apparatus for generating an alignment control vector |
JP3776732B2 (ja) * | 2001-02-02 | 2006-05-17 | 株式会社東芝 | プロセッサ装置 |
FI20010924A (fi) * | 2001-05-03 | 2002-11-04 | Nokia Corp | Mikroprosessorin muistinkäsittely |
US7370184B2 (en) * | 2001-08-20 | 2008-05-06 | The United States Of America As Represented By The Secretary Of The Navy | Shifter for alignment with bit formatter gating bits from shifted operand, shifted carry operand and most significant bit |
US7272622B2 (en) * | 2001-10-29 | 2007-09-18 | Intel Corporation | Method and apparatus for parallel shift right merge of data |
EP1508853A1 (en) * | 2003-08-19 | 2005-02-23 | STMicroelectronics Limited | Computer system and method for loading non-aligned words |
US7483420B1 (en) * | 2004-03-08 | 2009-01-27 | Altera Corporation | DSP circuitry for supporting multi-channel applications by selectively shifting data through registers |
JP2005267209A (ja) * | 2004-03-18 | 2005-09-29 | Sunplus Technology Co Ltd | プロセッサ中で未アライメントデータを読み取る装置及び方法 |
US7434040B2 (en) * | 2005-07-25 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Copying of unaligned data in a pipelined operation |
US20070083737A1 (en) * | 2005-08-16 | 2007-04-12 | Ibm Corporation | Processor with efficient shift/rotate instruction execution |
US20070106883A1 (en) * | 2005-11-07 | 2007-05-10 | Choquette Jack H | Efficient Streaming of Un-Aligned Load/Store Instructions that Save Unused Non-Aligned Data in a Scratch Register for the Next Instruction |
-
2007
- 2007-08-01 JP JP2007200606A patent/JP5068597B2/ja not_active Expired - Fee Related
-
2008
- 2008-07-14 US US12/216,956 patent/US20090037702A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20090037702A1 (en) | 2009-02-05 |
JP2009037386A (ja) | 2009-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4814976A (en) | RISC computer with unaligned reference handling and method for the same | |
US7941648B2 (en) | Methods and apparatus for dynamic instruction controlled reconfigurable register file | |
JP2816248B2 (ja) | データプロセッサ | |
JP2001256105A (ja) | 非整列循環アドレス指定を用いるマイクロプロセッサ | |
US8145804B2 (en) | Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor | |
US20230359462A1 (en) | Look-up table initialize | |
US20230325189A1 (en) | Forming Constant Extensions in the Same Execute Packet in a VLIW Processor | |
CN108139911B (zh) | 在vliw处理器的同一执行包中使用有条件扩展槽的指令的有条件执行规格 | |
US20150355906A1 (en) | Vector memory access instructions for big-endian element ordered and little-endian element ordered computer code and data | |
JP2009536774A (ja) | マイクロプロセッサ内において複数のレジスタユニットからの対応する半語ユニットを結合するための方法及びシステム | |
JP5068597B2 (ja) | プロセッサ及びプロセッサによるデータ読み出し方法 | |
US20200249955A1 (en) | Pair merge execution units for microinstructions | |
US6041387A (en) | Apparatus for read/write-access to registers having register file architecture in a central processing unit | |
US10437598B2 (en) | Method and apparatus for selecting among a plurality of instruction sets to a microprocessor | |
US7925862B2 (en) | Coprocessor forwarding load and store instructions with displacement to main processor for cache coherent execution when program counter value falls within predetermined ranges | |
KR20200028965A (ko) | 데이터 처리장치에서의 벡터 인터리빙 | |
US8452945B2 (en) | Indirect indexing instructions | |
JP5327432B2 (ja) | 信号処理プロセッサ及び半導体装置 | |
JP5145659B2 (ja) | ベクトルリネーミング方式およびベクトル型計算機 | |
JP4444305B2 (ja) | 半導体装置 | |
JP5380102B2 (ja) | マイクロプロセッサ | |
US8572147B2 (en) | Method for implementing a bit-reversed increment in a data processing system | |
JP6344022B2 (ja) | 演算処理装置および演算処理装置の制御方法 | |
JP2861560B2 (ja) | データ処理装置 | |
US11960897B2 (en) | Apparatus and methods employing a shared read post register file |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100512 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120214 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120412 |
|
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: 20120807 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120815 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150824 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5068597 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |