JP2006509288A - マイクロプロセッサおよび補助演算ユニットを有するデータ処理デバイスおよび関連方法 - Google Patents
マイクロプロセッサおよび補助演算ユニットを有するデータ処理デバイスおよび関連方法 Download PDFInfo
- Publication number
- JP2006509288A JP2006509288A JP2004556646A JP2004556646A JP2006509288A JP 2006509288 A JP2006509288 A JP 2006509288A JP 2004556646 A JP2004556646 A JP 2004556646A JP 2004556646 A JP2004556646 A JP 2004556646A JP 2006509288 A JP2006509288 A JP 2006509288A
- Authority
- JP
- Japan
- Prior art keywords
- register
- registers
- data processing
- processing device
- arithmetic unit
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000015654 memory Effects 0.000 claims abstract description 63
- 238000004364 calculation method Methods 0.000 claims abstract description 49
- 230000002093 peripheral effect Effects 0.000 claims abstract description 11
- 238000012546 transfer Methods 0.000 claims description 7
- 239000004065 semiconductor Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design 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/3012—Organisation of register space, e.g. banked or distributed register file
-
- 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, look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
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)
- Advance Control (AREA)
- Complex Calculations (AREA)
Abstract
Description
(i)最初に、2つの補助レジスタ、即ち、アドレス・レジスタ70およびカウンティング・レジスタ72がマイクロプロセッサ90によって初期化される。
(ii)次に、計算は制御ビットのアサーションによって開始される。
(iii)レジスタによって表示された開始アドレスから始まって、データは、周辺メモリ10から内部データ・バス120を介してテンポラリレジスタ20、22、24、26、28のセットへロードされる。
(iv)ここで、アドレス・レジスタ70は、メモリ10がアクセスされる度に1だけ増分される。
(v.a)もしテンポラリレジスタ20、22、24、26、28のセットが満杯になり(完了)、また
(vi.b)もし演算ユニット40が非アクティブであれば、
(vii)テンポラリレジスタ20、22、24、26、28のセットは、メイン・レジスタ30、32、34、36、38のセットへ転送されて、
(viii)次に、カウンティング・レジスタ72が1だけ減らされ、
(ix)補助演算ユニット40が実際の計算を開始する。この計算の間に、次のレジスタ・セットが、メモリ10からテンポラリレジスタ20、22、24、26、28のセットへ保存される。一度、現在の計算が終了すると、テンポラリレジスタ20、22、24、26、28のセットがメイン・レジスタ30、32、34、36、38のセットへ保存され、カウンティング・レジスタ72が1だけ減らされ、マイクロプロセッサ90は全く介入することなく、次の計算が直ちに始まる。
(x)このプロセスは、カウンティング・レジスタ72が0へ減分されるまで反復される。
(xi)次に、プロセスは終了する。
−マイクロプロセッサ90は、更なるアドレス・レジスタ14を介して揮発性メモリ16へ結合され、
−周辺メモリ10は、更なるレジスタ12を介して演算ユニット40へ結合される。
−演算ユニット40を制御する演算コードを含むため、
−第1オペランドの開始アドレスを記述するため、
−第2オペランドの開始アドレスを含むため、
−更なるオペランドのアドレスを含むため。更なるオペランドは、演算ユニット40で実行される演算に応じて、演算ユニット40の中で、様々な様式で処理される。たとえば、このアドレスによって記述されるオペランドは、モジュロ演算のモジュラスを構成する。
−演算ユニット40の演算結果のアドレスを含むため、
−第1オペランドの長さを記述するため、および/または
−第2オペランドの長さを記述するため。
100’ データ処理デバイス(実施形態の第2の例、図4)
10 メモリ、具体的には、周辺メモリ
12 更なるレジスタ
14 更なるアドレス・レジスタ
16 揮発性メモリ
18 メモリ・レジスタ
20 第1のテンポラリレジスタ
22 第2のテンポラリレジスタ
24 第3のテンポラリレジスタ
26 第4のテンポラリレジスタ
28 第5のテンポラリレジスタ
30 第1のメイン・レジスタ
32 第2のメイン・レジスタ
34 第3のメイン・レジスタ
36 第4のメイン・レジスタ
38 第5のメイン・レジスタ
40 (補助)演算ユニット
42 第1のオペランド・レジスタ
44 第2のオペランド・レジスタ
46 第3のオペランド・レジスタ
48 結果レジスタ
50 制御レジスタ
51 制御レジスタ50の第1のビット位置
52 制御レジスタ50の第2のビット位置
53 制御レジスタ50の第3のビット位置
54 制御レジスタ50の第4のビット位置
55 制御レジスタ50の第5のビット位置
56 制御レジスタ50の第6のビット位置
57 制御レジスタ50の第7のビット位置
58 制御レジスタ50の第8のビット位置
59 制御レジスタ50の第9のビット位置
60 制御論理回路
62 内部(オペランド)バス
70 アドレス・レジスタ
72 カウンティング・レジスタ
74 選択回路
76 第1の書き込み/読み出しメモリ
78 第2の書き込み/読み出しメモリ
80 マイクロプロセッサ90へ割り当てられた第1のレジスタ
82 マイクロプロセッサ90へ割り当てられた第2のレジスタ
84 マイクロプロセッサ90へ割り当てられた第3のレジスタ
86 マイクロプロセッサ90へ割り当てられた第4のレジスタ
88 マイクロプロセッサ90へ割り当てられた第5のレジスタ
90 マイクロプロセッサ
120 メモリ10からテンポラリレジスタ20、22、24、26、28へのデータ・バス
170 メモリ10に対するアドレス・レジスタ70の作用
230 第1のテンポラリレジスタ20と第1のメイン・レジスタ30との間の接続 232 第2のテンポラリレジスタ22と第2のメイン・レジスタ32との間の接続
234 第3のテンポラリレジスタ24と第3のメイン・レジスタ34との間の接続
236 第4のテンポラリレジスタ26と第4のメイン・レジスタ36との間の接続
238 第5のテンポラリレジスタ28と第5のメイン・レジスタ38との間の接続
460 演算ユニット40と制御論理回路60との間の接続
560 制御レジスタ50と制御論理回路60との間の接続
670 制御論理回路60とアドレス・レジスタ70との間の接続
672 制御論理回路60とカウンティング・レジスタ72との間の接続
980 マイクロプロセッサ90からレジスタ80、82、84、86、88への内部データ・バス
C 従来技術に従った演算ユニット
D 従来技術に従ったデータ処理デバイス
K 従来技術に従った制御レジスタ
R1 従来技術に従った第1のレジスタ
R2 従来技術に従った第2のレジスタ
R3 従来技術に従った第3のレジスタ
R4 従来技術に従った第4のレジスタ
R5 従来技術に従った第5のレジスタ
S 従来技術に従った選択回路
Claims (10)
- 少なくとも1つの特定の計算を実行するため少なくとも1つのマイクロプロセッサおよび少なくとも1つの補助演算ユニットを有し、前記補助演算ユニットが多数のレジスタを介してマイクロプロセッサへ結合され、前記レジスタの中の第1のレジスタがデータ転送を制御するために設けられ、第2のレジスタがコマンドを伝送するために設けられるデータ処理デバイスであって、レジスタが、少なくとも1つの周辺メモリ、たとえば、
−少なくとも1つのRAM(ランダム・アクセス・メモリ)、
−少なくとも1つのROM(読み出し専用メモリ)、または
−少なくとも1つのEEPROM(電気的に消去可能およびプログラム可能な読み出し専用メモリ)
からロードされる、データ処理デバイス。 - テンポラリレジスタの少なくとも1つのセットがメモリへ割り当てられ、前記テンポラリレジスタのセットが、前記補助演算ユニットに割り当てられたメイン・レジスタの少なくとも1つのセットへ接続されかつアクティブ計算のためにレジスタを記憶する、請求項1に記載のデータ処理デバイス。
- メモリが、ロードされるデータの開始アドレスを指す少なくとも1つのアドレス・レジスタに従って動作し、アドレス・レジスタが少なくとも1つの制御論理回路へ接続される、請求項1または2に記載のデータ処理デバイス。
- 少なくとも1つの制御レジスタが演算ユニットへ割り当てられ、前記制御レジスタが制御論理回路へ接続される、請求項3に記載のデータ処理デバイス。
- 順次にロードされるレジスタ・セットを表示する少なくとも1つのカウンティング・レジスタが、制御論理回路へ割り当てられる、請求項3または4に記載のデータ処理デバイス。
- 少なくとも1つの選択回路が、前記マイクロプロセッサへ割り当てられたレジスタの少なくとも1つのセットと組み合わせて、前記テンポラリレジスタのセットと、前記メイン・レジスタのセットとの間に接続される、請求項1から5のいずれか一項に記載のデータ処理デバイス。
- 前記選択回路が、前記制御レジスタの少なくとも1つのビット位置に従って動作する、請求項6に記載のデータ処理デバイス。
- 請求項1から7のいずれか一項に記載のデータ処理デバイスの少なくとも1つを有する、携帯データキャリア。
- 請求項1から7のいずれか一項に記載の集積データ処理デバイスの少なくとも1つを含む、半導体チップ。
- 少なくとも1つのマイクロプロセッサおよび少なくとも1つの補助演算ユニットを有する少なくとも1つのデータ処理デバイスによって少なくとも1つの特定の計算を実行する方法であって、
(i)前記マイクロプロセッサによって少なくとも1つのアドレス・レジスタおよび少なくとも1つのカウンティング・レジスタを初期化し、
(ii)少なくとも1つの制御ビットのアサーションによって前記計算を開始し、
(iii)少なくとも1つの周辺メモリからテンポラリレジスタの少なくとも1つのセットへ開始アドレスで始まるデータをコピーまたはロードし、
(iv)前記メモリがアクセスされる度に、前記アドレス・レジスタを増分し、
(v)前記テンポラリレジスタのセットが完了したかどうかをチェックし、
(v.a)もし前記テンポラリレジスタのセットが完了していれば、ステップ(vi)へ進み、
(v.b)もし前記テンポラリレジスタのセットが完了していなければ、ステップ(iii)へ進み、
(vi)前記補助演算ユニットがアクティブであるかどうかをチェックし、
(vi.a)もし前記補助演算ユニットがアクティブであれば、ステップ(vi)へ進み、
(vi.b)もし前記補助演算ユニットがアクティブでなければ、ステップ(vii)へ進み、
(vii)前記テンポラリレジスタのセットからメイン・レジスタの少なくとも1つのセットへデータをコピーまたは転送し、
(viii)前記カウンティング・レジスタを減分し、
(ix)前記補助演算ユニットにおいて計算を開始し、
(x)前記カウンティング・レジスタが0へ減分されたかどうかをチェックし、
(x.a)もし前記カウンティング・レジスタが0へ減分されていれば、ステップ(xi)へ進み、
(x.b)もし前記カウンティング・レジスタが0へ減分されていなければ、ステップ(iii)へ進み、
(xi)終了する、
方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10256586A DE10256586A1 (de) | 2002-12-04 | 2002-12-04 | Datenverarbeitungseinrichtung mit Mikroprozessor und mit zusätzlicher Recheneinheit sowie zugeordnetes Verfahren |
PCT/IB2003/005436 WO2004051465A2 (en) | 2002-12-04 | 2003-11-25 | Data processing device with microprocessor and with additional arithmetic unit and associated method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006509288A true JP2006509288A (ja) | 2006-03-16 |
Family
ID=32318928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004556646A Pending JP2006509288A (ja) | 2002-12-04 | 2003-11-25 | マイクロプロセッサおよび補助演算ユニットを有するデータ処理デバイスおよび関連方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20060136539A1 (ja) |
EP (1) | EP1573513A2 (ja) |
JP (1) | JP2006509288A (ja) |
CN (1) | CN100371887C (ja) |
AU (1) | AU2003280178A1 (ja) |
DE (1) | DE10256586A1 (ja) |
WO (1) | WO2004051465A2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101482903B (zh) * | 2008-01-09 | 2010-09-29 | 联想(北京)有限公司 | 硬件安全单元 |
CN110245096B (zh) * | 2019-06-24 | 2023-07-25 | 苏州暴雪电子科技有限公司 | 一种实现处理器直接连接扩展计算模块的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5960209A (en) * | 1996-03-11 | 1999-09-28 | Mitel Corporation | Scaleable digital signal processor with parallel architecture |
DE19630861A1 (de) * | 1996-07-31 | 1998-02-05 | Philips Patentverwaltung | Datenverarbeitungseinrichtung mit einem Mikroprozessor und einer zusätzlichen Recheneinheit |
US5835788A (en) * | 1996-09-18 | 1998-11-10 | Electronics For Imaging | System for transferring input/output data independently through an input/output bus interface in response to programmable instructions stored in a program memory |
US6292888B1 (en) * | 1999-01-27 | 2001-09-18 | Clearwater Networks, Inc. | Register transfer unit for electronic processor |
US6832296B2 (en) * | 2002-04-09 | 2004-12-14 | Ip-First, Llc | Microprocessor with repeat prefetch instruction |
-
2002
- 2002-12-04 DE DE10256586A patent/DE10256586A1/de not_active Withdrawn
-
2003
- 2003-11-25 EP EP03772548A patent/EP1573513A2/en not_active Withdrawn
- 2003-11-25 WO PCT/IB2003/005436 patent/WO2004051465A2/en active Application Filing
- 2003-11-25 JP JP2004556646A patent/JP2006509288A/ja active Pending
- 2003-11-25 CN CNB2003801050262A patent/CN100371887C/zh not_active Expired - Fee Related
- 2003-11-25 US US10/537,742 patent/US20060136539A1/en not_active Abandoned
- 2003-11-25 AU AU2003280178A patent/AU2003280178A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
WO2004051465A2 (en) | 2004-06-17 |
WO2004051465A3 (en) | 2005-04-07 |
CN100371887C (zh) | 2008-02-27 |
AU2003280178A1 (en) | 2004-06-23 |
EP1573513A2 (en) | 2005-09-14 |
DE10256586A1 (de) | 2004-06-17 |
CN1720502A (zh) | 2006-01-11 |
US20060136539A1 (en) | 2006-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100843280B1 (ko) | 메모리 시스템 및 그것의 데이터 전송 방법 | |
US7233541B2 (en) | Storage device | |
US5163154A (en) | Microcontroller for the rapid execution of a large number of operations which can be broken down into sequences of operations of the same kind | |
JPS6122828B2 (ja) | ||
TWI461910B (zh) | 用於依照組態資訊執行原子記憶體操作之記憶體及方法 | |
KR100462951B1 (ko) | Risc 구조를 갖는 8 비트 마이크로콘트롤러 | |
EP2962187B1 (en) | Vector register addressing and functions based on a scalar register data value | |
US9448926B2 (en) | Bidirectional counter in a flash memory | |
WO2006130285A1 (en) | Extracted-index addressing of byte-addressable memories | |
CN101501639A (zh) | 快闪存储器存取电路 | |
JP2008154432A (ja) | インバータ装置のパラメータ転送システム,インバータ装置及びパラメータ転送装置 | |
US6691179B2 (en) | Direct memory access controller for converting a transfer mode flexibly in accordance with a data transfer counter value | |
US20060265571A1 (en) | Processor with different types of control units for jointly used resources | |
GB2374704A (en) | Serial data input to a non-volatile memory | |
US6578139B1 (en) | Processor architecture scheme which uses virtual address registers to implement different addressing modes and method therefor | |
KR19990037572A (ko) | 뱅크 어드레스 값을 공급하는 다중 소스를 구비하는 프로세서구조 설계 및 그 설계방법 | |
EP0478149B1 (en) | Workstation and method of configuring same | |
US5889622A (en) | Data processing device including a microprocessor and an additional arithmetic unit | |
WO2012008068A1 (ja) | マイクロコントローラ及びその制御方法 | |
JP2006509288A (ja) | マイクロプロセッサおよび補助演算ユニットを有するデータ処理デバイスおよび関連方法 | |
KR20090120675A (ko) | 불휘발성 메모리 소자의 어드레스 입력 방법 및 동작 방법 | |
US6934819B2 (en) | Method for memory addressing in micro controller and device using the same | |
JP2007141257A (ja) | Icカードおよびリーダ・ライタ | |
US9892089B2 (en) | Arithmetic logical unit array, microprocessor, and method for driving an arithmetic logical unit array | |
JP2000105758A (ja) | マイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080618 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080801 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081104 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081111 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081201 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081216 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090313 |