JP2005526322A - 制御ワード巻き上げ - Google Patents
制御ワード巻き上げ Download PDFInfo
- Publication number
- JP2005526322A JP2005526322A JP2004505874A JP2004505874A JP2005526322A JP 2005526322 A JP2005526322 A JP 2005526322A JP 2004505874 A JP2004505874 A JP 2004505874A JP 2004505874 A JP2004505874 A JP 2004505874A JP 2005526322 A JP2005526322 A JP 2005526322A
- Authority
- JP
- Japan
- Prior art keywords
- control
- sequence
- configuration
- data path
- control word
- 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
- 238000004804 winding Methods 0.000 title description 9
- 230000015654 memory Effects 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims abstract description 32
- 230000008859 change Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000000926 separation method 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
-
- 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/30181—Instruction operation extension or modification
-
- 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
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
- G06F9/322—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
- G06F9/325—Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
- G06F9/3895—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
- G06F9/3897—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros with adaptable data path
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)
- Logic Circuits (AREA)
Abstract
Description
レジスタファイルスペース内でアドレスを固定する、
機能ユニットのためのオプコードを固定する。
Claims (26)
- データ処理プログラムの少なくとも2つの命令のシーケンスを、データパスを制御するために使用されるコードワードのシーケンスに、復号する方法であって、前記方法は、
a)前記コードワードのシーケンスにおいて変化しない不変コードワード部分を分離する工程と、
b)前記不変コードワード部分を、前記コードワードのシーケンス中に固定される前記データパスの一部を構成するために使用する工程と、を備えることを特徴とする方法。 - 前記分離された不変コードワード部分を、専用メモリをアドレス指定するために使用する工程をさらに備えることを特徴とする請求項1に記載の方法。
- 前記専用メモリをルックアップテーブル又は内容参照可能メモリとして実現する工程をさらに備えることを特徴とする請求項2に記載の方法。
- 前記専用メモリを前記データパスの複数の機能ユニットの間で共有する工程をさらに備えることを特徴とする請求項2または請求項3に記載の方法。
- 前記データパスのそれぞれの前記機能ユニットに割り当てられた複数の前記専用メモリを提供する工程をさらに備えることを特徴とする請求項2乃至請求項4のいずれかに記載の方法。
- 前記不変コードワード部分を新しいコードワードに拡張する工程と、前記新しいコードワードを前記データパスを制御するために使用する工程を、さらに備えることを特徴とする請求項2乃至請求項5のいずれかに記載の方法。
- 前記コードワードのシーケンスと同一の接続を使用して、前記データパスを、前記新しいコードワードによって制御する工程をさらに備えることを特徴とする請求項6に記載の方法。
- 前記同一の接続をマルチプレクサ機能を介して選択する工程をさらに備えることを特徴とする請求項7に記載の方法。
- 制御ワードにおける前記不変コードワード部分のビット位置を特定するための構成マスクを使用する工程をさらに備えることを特徴とする請求項2乃至請求項8のいずれかに記載の方法。
- 前記構成マスクは符号化されることを特徴とする請求項9に記載の方法。
- 前記構成マスクに基づいて、前記コードワードのビットを制御レジスタの適切な位置に向けるように制御ワードロード機能を制御する工程をさらに備えることを特徴とする請求項10に記載の方法。
- 前記構成マスクはバイナリパターンであることを特徴とする請求項10または請求項11に記載の方法。
- 前記制御レジスタに接続するためのスイッチング信号を生成するために、前記構成マスクを使用する工程をさらに含むことを特徴とする請求項12に記載の方法。
- 前記専用メモリの大きさを命令レジスタの大きさに対応するように選択する工程をさらに備えることを特徴とする請求項2乃至請求項13のいずれかに記載の方法。
- 前記データパスの前記部分を、再構成可能なハードウェアを使用することにより構成する工程をさらに備えることを特徴とする請求項1に記載の方法。
- 前記不変コードワード部分に基づいて構成コンテキストを選択する工程をさらに備えることを特徴とする請求項15に記載の方法。
- 前記再構成可能なハードウェアを制御する制御ビットの数を、前記コードワードのシーケンスに必要な構成に基づいて、減少させる工程をさらに備えることを特徴とする請求項15または請求項16に記載の方法。
- 前記少なくとも2つの命令のシーケンスを、最も大きい不変コードワード部分を持つ命令から選択し、前記選択された命令を前記再構成可能なハードウェアにマッピングする工程をさらに備えることを特徴とする請求項15乃至請求項17のいずれかに記載の方法。
- 前記少なくとも2つの命令のシーケンスは、前記データ処理プログラムのループ本体を形成することを特徴とする請求項1乃至請求項18のいずれかに記載の方法。
- データ処理プログラムの少なくとも2つの命令のシーケンスを、データパスを制御するために使用されるコードワードのシーケンスに復号する装置であって、前記装置は、
a)前記コードワードにおいて変化しない不変コードワード部分を分離して生成する生成手段と、
b)前記不変コードワード部分を受け取り、前記コードワードのシーケンス中に固定される前記データパスの一部を構成する構成手段、とを備えることを特徴とする装置。 - 前記構成手段は、前記不変コードワード部分に対応する新しい制御ワードを格納するための専用メモリ手段を備えることを特徴とする請求項20に記載の装置。
- 前記構成手段は、前記専用メモリ手段からの新しい制御ワードを前記データパスを制御する制御信号に復号するための復号手段をさらに備えることを特徴とする請求項21に記載の装置。
- 制御ワードロード手段を制御して、前記コードワードのシーケンスの可変コード部分におけるビットを、制御レジスタの適切なビット位置にロードする、構成マスクレジスタを、さらに備えることを特徴とする請求項20に記載の装置。
- 前記制御ワードロード手段は、プログラム可能なクロスポイントスイッチを備えることを特徴とする請求項23に記載の装置。
- 前記制御ワードロード手段は、前記プログラム可能なクロスポイントスイッチと前記構成マスクレジスタとに接続される、マスク解釈ロジックをさらに備えることを特徴とする請求項24に記載の装置。
- 前記構成手段は、前記不変コードワード部分に基づく再構成可能なハードウェア手段を備えることを特徴とする請求項20に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02077020 | 2002-05-22 | ||
PCT/IB2003/001849 WO2003098431A2 (en) | 2002-05-22 | 2003-04-25 | Method and apparatus for decoding instruction sequences |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005526322A true JP2005526322A (ja) | 2005-09-02 |
JP3924577B2 JP3924577B2 (ja) | 2007-06-06 |
Family
ID=29433173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004505874A Expired - Fee Related JP3924577B2 (ja) | 2002-05-22 | 2003-04-25 | 制御ワード巻き上げ |
Country Status (8)
Country | Link |
---|---|
US (1) | US20060059475A1 (ja) |
EP (1) | EP1509840B1 (ja) |
JP (1) | JP3924577B2 (ja) |
KR (1) | KR20040111650A (ja) |
CN (1) | CN1324458C (ja) |
AU (1) | AU2003223057A1 (ja) |
TW (1) | TW200404256A (ja) |
WO (1) | WO2003098431A2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602005018736D1 (de) * | 2004-12-22 | 2010-02-25 | Ericsson Telefon Ab L M | Wasserzeichenmarkierung eines Computerprogrammcodes mittels äquivalenter mathematischer Ausdrücke |
US9477467B2 (en) | 2013-03-30 | 2016-10-25 | Intel Corporation | Processors, methods, and systems to implement partial register accesses with masked full register accesses |
US9904549B2 (en) * | 2015-12-26 | 2018-02-27 | Intel Corporation | Method and apparatus for loop-invariant instruction detection and elimination |
US10229470B2 (en) * | 2016-08-05 | 2019-03-12 | Intel IP Corporation | Mechanism to accelerate graphics workloads in a multi-core computing architecture |
US11044099B2 (en) * | 2018-12-28 | 2021-06-22 | Intel Corporation | Technologies for providing certified telemetry data indicative of resources utilizations |
CN114489792B (zh) * | 2021-03-25 | 2022-10-11 | 沐曦集成电路(上海)有限公司 | 处理器装置及其指令执行方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01284926A (ja) * | 1988-05-12 | 1989-11-16 | Fujitsu Ltd | 演算装置の命令読出方式 |
US5941986A (en) * | 1993-04-30 | 1999-08-24 | Intel Corporation | Micro-code sequencer with branch-taken and branch-not-taken micro-code vectors sharing common address to eliminate taken branch penalties |
JPH09198254A (ja) * | 1996-01-17 | 1997-07-31 | Nec Ic Microcomput Syst Ltd | コンパイラの最適化装置及びその方法 |
US5812856A (en) * | 1997-06-23 | 1998-09-22 | Motorola, Inc. | Efficient ROM and PLA recoding to save chip area |
US6198691B1 (en) * | 1997-07-03 | 2001-03-06 | Microchip Technology Incorporated | Force page paging scheme for microcontrollers of various sizes using data random access memory |
US6044429A (en) * | 1997-07-10 | 2000-03-28 | Micron Technology, Inc. | Method and apparatus for collision-free data transfers in a memory device with selectable data or address paths |
GB2359641B (en) * | 2000-02-25 | 2002-02-13 | Siroyan Ltd | Mapping circuitry and method |
-
2003
- 2003-04-25 KR KR10-2004-7018661A patent/KR20040111650A/ko not_active Application Discontinuation
- 2003-04-25 WO PCT/IB2003/001849 patent/WO2003098431A2/en active Application Filing
- 2003-04-25 US US10/515,162 patent/US20060059475A1/en not_active Abandoned
- 2003-04-25 AU AU2003223057A patent/AU2003223057A1/en not_active Abandoned
- 2003-04-25 CN CNB038114135A patent/CN1324458C/zh not_active Expired - Lifetime
- 2003-04-25 JP JP2004505874A patent/JP3924577B2/ja not_active Expired - Fee Related
- 2003-04-25 EP EP03719027.9A patent/EP1509840B1/en not_active Expired - Lifetime
- 2003-05-19 TW TW092113478A patent/TW200404256A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
CN1656444A (zh) | 2005-08-17 |
AU2003223057A8 (en) | 2003-12-02 |
WO2003098431A3 (en) | 2004-03-11 |
WO2003098431A2 (en) | 2003-11-27 |
CN1324458C (zh) | 2007-07-04 |
TW200404256A (en) | 2004-03-16 |
KR20040111650A (ko) | 2004-12-31 |
EP1509840A2 (en) | 2005-03-02 |
AU2003223057A1 (en) | 2003-12-02 |
US20060059475A1 (en) | 2006-03-16 |
EP1509840B1 (en) | 2018-08-08 |
JP3924577B2 (ja) | 2007-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100300001B1 (ko) | 명령어요소들의재조합에의한서로다른명령어코드들사이의동적변환 | |
US7249351B1 (en) | System and method for preparing software for execution in a dynamically configurable hardware environment | |
JP3762841B2 (ja) | 処理デバイスに命令ストリームを供給する方法及び装置 | |
US6948158B2 (en) | Retargetable compiling system and method | |
CN1148647C (zh) | 数据处理系统及其控制方法 | |
US7120903B2 (en) | Data processing apparatus and method for generating the data of an object program for a parallel operation apparatus | |
US7313671B2 (en) | Processing apparatus, processing method and compiler | |
JPH09128238A (ja) | Cpuデータ経路における同時入出力動作のための複数レジスタバンクシステム | |
US7574583B2 (en) | Processing apparatus including dedicated issue slot for loading immediate value, and processing method therefor | |
US5964861A (en) | Method for writing a program to control processors using any instructions selected from original instructions and defining the instructions used as a new instruction set | |
US20060265571A1 (en) | Processor with different types of control units for jointly used resources | |
WO2002003592A2 (en) | System and method for executing hybridized code on a dynamically configurable hardware environment | |
JP3924577B2 (ja) | 制御ワード巻き上げ | |
JP3805314B2 (ja) | プロセッサ | |
JP2006236106A (ja) | データ処理装置及びデータ処理方法 | |
US7340591B1 (en) | Providing parallel operand functions using register file and extra path storage | |
KR100308211B1 (ko) | 압축 명령을 갖는 마이크로 컴퓨터 시스템 | |
US8549466B2 (en) | Tiered register allocation | |
JP2002333976A (ja) | マイクロプロセッサ | |
US20070169022A1 (en) | Processor having multiple instruction sources and execution modes | |
WO2005036384A2 (en) | Instruction encoding for vliw processors | |
US6038659A (en) | Method for using read-only memory to generate controls for microprocessor | |
EP0862111B1 (en) | Dynamic conversion between different instruction codes by recombination of instruction elements | |
JP2004302827A (ja) | マイクロコントローラ | |
JPH11306015A (ja) | 演算処理方法及びそれを用いたマイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060915 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061212 |
|
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: 20070119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3924577 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110302 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120302 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120302 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130302 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130302 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140302 Year of fee payment: 7 |
|
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 |
|
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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |