KR970701880A - 다른 길이의 데이터를 수용하는 복수의 멀티포트 레지스터 파일(Plural multiport register file to accommodate data of differing lengths) - Google Patents
다른 길이의 데이터를 수용하는 복수의 멀티포트 레지스터 파일(Plural multiport register file to accommodate data of differing lengths)Info
- Publication number
- KR970701880A KR970701880A KR1019960704892A KR19960704892A KR970701880A KR 970701880 A KR970701880 A KR 970701880A KR 1019960704892 A KR1019960704892 A KR 1019960704892A KR 19960704892 A KR19960704892 A KR 19960704892A KR 970701880 A KR970701880 A KR 970701880A
- Authority
- KR
- South Korea
- Prior art keywords
- port
- register
- write
- read
- ports
- Prior art date
Links
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/30072—Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
-
- 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
-
- 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/30112—Register structure comprising data of variable length
-
- 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/30098—Register arrangements
- G06F9/30141—Implementation provisions of register files, e.g. ports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/16—Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
Abstract
멀티포트 레지스터 파일은 제1폭의 레지스터를 갖는 제1파일 유닛과 제2폭의 레지스터를 갖는 제2파일 유닛을 포함한다. 제2폭은 제1폭보다는 작다. 데이터는 하나의 기록 동작으로 제1 및 제2파일 유닛 모두에 기록되고, 독립적으로 제1 및 제2파일 유닛으로부터 개별적 판독이 가능하다. 제1파일 유닛은 VLIW 프로세서의 기능 유닛에 대한 피연산자가 되는 데이터, 또는 이들 기능 유닛으로부터의 결과 데이터를 수용한다. 제2파일 유닛은 이들 기능 유닛의 동작을 조건화하는 가드 비트를 수용한다.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제2도는 본 발명에 따른 멀티 포트 레지스터 파일을 나타내는 도면.
제3도는 레지스터 파일의 플로 평면을 나타내는 도면.
제4도는 종래의 플로 평면에 이용하는데 적합되는 레지스터 셀을 나타내는 도면.
Claims (10)
- 다수의 기능 유닛과; 각각 제1의 수의 비트(a first number of bit)를 가지는 제1의 수의 어드레스 가능한 제1레지스터(a first number of addressable first registers)와, 각각 제1의 수의 비트 보다는 적은 수의 제2의 수를 비트를 가지는 제2의 수의 어드레스 가능한 제2레지스터와, 각각 관련 기록 어드레스 포트를 가지는 다수의 기록 포트로서, 기능 유닛이 각각 관련 판독 어드레스 포트를 가지는 다수의 기록 포트로서, 기능 유닛이 각각의 기록 포트 및 관련 기록 어드레스 포트에 연결되는, 상기 다수의 기록 포트, 및 각각 관련 판독 어드레스 포트를 가지는 다수의 판독 포트로서, 기능 유닛이 각각의 판독 포트 및 관련 판독 어드레스 포트에 연결되는, 상기 다수의 판독 포트를 포함하는 레지스터 파일을 구비하는 프로세서에 있어서, 상기 프로세서는 특정의 제1레지스터와 특정의 제2레지스터 모두에 어드레스하는 기록 어드레스를 기록 포트중 적어도 한 포트와 관련하는 기록 어드레스 포트에 공급하고, 레지스터 파일은, 관련하는 기록 어드레스 포트상에 상기 기록 어드레스를 수신할 때 특정의 제1레지스터와 특정의 제2레지스터 모두에 기록 포트중 적어도 한 포트상의 데이터를 기록하기 위해 배치되며, 특정의 제1레지스터와 특정의 제2레지스터는 판독 어드레스 포트를 통하여 독립적으로 어드레스 가능하게 되는 것을 특징으로 하는 프로세서.
- 제1항에 있어서, 상기 제1레지스터가 기록 포트, 기록 어드레스 포트, 판독 포트 및 판독 어드레스 포트의 관련 포트와 함께 제1파일 유닛에 위치되고, 제2레지스터가 기록 포트, 기록 어드레스 포트, 판독 포트 및 판독 어드레스 포트의 관련 포트와 함께 제2파일 유닛에 위치되는 것을 특징으로 하는 프로세서.
- 제1항 또는 제2항에 있어서, 상기 레지스터 파일은 멀티포트 레지스터 파일이며, 제1 및/또는 제2레지스터중 적어도 한 레지스토는 하나 이상의 판독 포트로부터 액세스될 수 있는 것을 특징으로 하는 프로세서.
- 제1항 내지 제3항 중 어느 한 항에 있어서, 기능 유닛중 적어도 한 유닛이, 특정의 제2레지스터로부터 판독된 가드 비트에 따라 조건적으로 동작의 결과를 기록하기 위해 배치되는 것을 특징으로 하는 프로세서.
- 제1항 내지 제4항 중 어느 한 항에 있어서, 제2의 수의 비트는 한 비트인 것을 특징으로 하는 프로세서.
- 제1항 내지 제5항 중 어느 한 항에 있어서, 상기 프로세서는, 단일의 머신 사이클에서 동시에 개시하는 기능 유닛에 의해 병렬로 실행하기 위한 복수 동작 코드를 수용하는 명령 레지스터를 포함하는 VLIW 프로세서인 것을 특징으로 하는 프로세서.
- 다수의 기능 유닛과; 각각 제1의 수의 비트(a first number of bit)를 가지는 제1의 수의 어드레스 가능한 제1레지스터(a first number of addressable first registers)와, 각각 제1의 수의 비트 보다는 적은 수의 제2의 수를 비트를 가지는 제2의 수의 어드레스 가능한 제2레지스터와, 각각 관련 기록 어드레스 포트를 가지는 다수의 기록 포트로서, 가능 유닛이 각각의 기록 포트 및 관련 기록 어드레스 포트에 연결되는, 상기 다수의 기록포트, 및 각각 관련 판독 어드레스 포트를 가지는 다수의 판독 프로로서, 기능 유닛이 각각의 판독 포트 및관련 판독 어드레스 포트에 연결되는, 상기 다수의 판독 포트를 포함하는 레지스터 파일을 구비하는 프로세서에 있어서, 상기 레지스터 파일은 멀티포트 레지스터 파일이며, 제1 및/또는 제2지스터중 적어도 한 레지스터는 하나 이상의 판독 포트로부터 액세스가능한 것을 특징으로 하는 프로세서.
- 제7항에 있어서, 상기 제1레지스터가 기록 포트, 기록 어드레스 포트, 판독 포트 및 판독 어드레스 포트의 관련 포트와 함께 제1파일 유닛에 위치되고, 제2레지스터가 기록 포트, 기록 어드레스 포트, 판독 포트 및 판독 어드레스 포트의 관련 포트와 함께 제2파일 유닛에 위치되는 것을 특징으로 하는 프로세서.
- 제1항 내지 제8항 중 어느 한 항에 따른 프로세서에 사용되기 적합한 멀티포트 레지스터 파일.
- 프로세서를 동작하는 방법에 있어서, 제1기능 유닛으로부터의 데이터 및 기록 어드레스를 각각을 레지스터 파일의 기록 포트 및 상응하는 기록 어드레스 포트에 공급하는 단계와, 상기 기록 어드레스에 의해 어드레스된 제1레지스터에 상기 데이터를 기억하고, 역시 상기 기록 어드레스에 의해 어드레스된 제2레지스터에 상기 테이터의 단지 일부만을 기억하는 단계과, 제1 및 제2액세스 동작중 한 동작 또는 양쪽 모두에 상기 데이터 및/또는 상기 데이터의 일부를 사용하는 단계를 구비하며, 상기 제1액세스 동작은, 제2레지스터의 판독 어드레스를 레지스터 파일의 판독 어드레스 포트에 공급하는 단계와, 제2레지스터로부터 상기 데이터의 일부를 제2기능 유닛으로 판독하는 단계와, 상기 일부의 값에 따라 상기 제2기능 유닛으로부터의 결과를 조건부 기록하는 단계를 구비하며, 상기 제2액세스 동작은, 제1레지스터의 판독 어드레스를 레지스터 파일의 판독 어드레스 포트에 공급하는 단계와, 제1레지스터로부터의 상기 데이터를 제3기능 유닛으로 판독하는 단계와, 상기 제3기능 유닛으로 상기 데이터를 동작하는 단계를 구비하는 것을 특징으로 하는 프로세서 동작 방법.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US366,958 | 1994-12-30 | ||
US08/366,958 US6370623B1 (en) | 1988-12-28 | 1994-12-30 | Multiport register file to accommodate data of differing lengths |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970701880A true KR970701880A (ko) | 1997-04-12 |
KR100389220B1 KR100389220B1 (ko) | 2003-10-11 |
Family
ID=23445347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960704892A KR100389220B1 (ko) | 1994-12-30 | 1995-11-16 | 다른길이의데이터를수용하는복수의멀티포트레지스터파일 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6370623B1 (ko) |
EP (1) | EP0748477B1 (ko) |
JP (1) | JP3591842B2 (ko) |
KR (1) | KR100389220B1 (ko) |
DE (1) | DE69525527T2 (ko) |
TW (1) | TW296452B (ko) |
WO (1) | WO1996021186A2 (ko) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5931939A (en) * | 1996-09-25 | 1999-08-03 | Philips Electronics North America Corporation | Read crossbar elimination in a VLIW processor |
US5974537A (en) * | 1997-12-29 | 1999-10-26 | Philips Electronics North America Corporation | Guard bits in a VLIW instruction control routing of operations to functional units allowing two issue slots to specify the same functional unit |
WO2000079395A1 (en) * | 1999-06-21 | 2000-12-28 | Bops Incorporated | Methods and apparatus for establishing port priority functions in a vliw processor |
US6421744B1 (en) * | 1999-10-25 | 2002-07-16 | Motorola, Inc. | Direct memory access controller and method therefor |
US6851044B1 (en) | 2000-02-16 | 2005-02-01 | Koninklijke Philips Electronics N.V. | System and method for eliminating write backs with buffer for exception processing |
US6862677B1 (en) | 2000-02-16 | 2005-03-01 | Koninklijke Philips Electronics N.V. | System and method for eliminating write back to register using dead field indicator |
WO2002042897A2 (en) * | 2000-11-27 | 2002-05-30 | Koninklijke Philips Electronics N.V. | Data processing apparatus |
US6834024B2 (en) * | 2001-10-23 | 2004-12-21 | Ip-First, Llc | Reduced size multi-port register cell |
US20040128475A1 (en) * | 2002-12-31 | 2004-07-01 | Gad Sheaffer | Widely accessible processor register file and method for use |
US20050078693A1 (en) * | 2003-10-10 | 2005-04-14 | Landers Robert J. | Time division multiplexed switch core using multiple write ports |
EP1794672B1 (en) * | 2004-09-22 | 2010-01-27 | Koninklijke Philips Electronics N.V. | Data processing circuit wherein functional units share read ports |
TW200625097A (en) * | 2004-11-17 | 2006-07-16 | Sandbridge Technologies Inc | Data file storing multiple date types with controlled data access |
US7962731B2 (en) | 2005-10-20 | 2011-06-14 | Qualcomm Incorporated | Backing store buffer for the register save engine of a stacked register file |
US7844804B2 (en) * | 2005-11-10 | 2010-11-30 | Qualcomm Incorporated | Expansion of a stacked register file using shadow registers |
US7366032B1 (en) * | 2005-11-21 | 2008-04-29 | Advanced Micro Devices, Inc. | Multi-ported register cell with randomly accessible history |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4491937A (en) * | 1982-02-25 | 1985-01-01 | Trw Inc. | Multiport register file |
US4737933A (en) * | 1983-02-22 | 1988-04-12 | Storage Technology Partners | CMOS multiport general purpose register |
US5021945A (en) | 1985-10-31 | 1991-06-04 | Mcc Development, Ltd. | Parallel processor system for processing natural concurrencies and method therefor |
US4811296A (en) * | 1987-05-15 | 1989-03-07 | Analog Devices, Inc. | Multi-port register file with flow-through of data |
US5168573A (en) | 1987-08-31 | 1992-12-01 | Digital Equipment Corporation | Memory device for storing vector registers |
US5455926A (en) * | 1988-04-05 | 1995-10-03 | Data/Ware Development, Inc. | Virtual addressing of optical storage media as magnetic tape equivalents |
US5438674A (en) * | 1988-04-05 | 1995-08-01 | Data/Ware Development, Inc. | Optical disk system emulating magnetic tape units |
US5313551A (en) * | 1988-12-28 | 1994-05-17 | North American Philips Corporation | Multiport memory bypass under software control |
US5146577A (en) * | 1989-04-10 | 1992-09-08 | Motorola, Inc. | Serial data circuit with randomly-accessed registers of different bit length |
US5175863A (en) | 1989-10-23 | 1992-12-29 | International Business Machines Corporation | Signal data processing system having independently, simultaneously operable alu and macu |
US5212777A (en) * | 1989-11-17 | 1993-05-18 | Texas Instruments Incorporated | Multi-processor reconfigurable in single instruction multiple data (SIMD) and multiple instruction multiple data (MIMD) modes and method of operation |
DE69129569T2 (de) * | 1990-09-05 | 1999-02-04 | Philips Electronics Nv | Maschine mit sehr langem Befehlswort für leistungsfähige Durchführung von Programmen mit bedingten Verzweigungen |
EP0479390B1 (en) | 1990-10-05 | 1999-01-07 | Koninklijke Philips Electronics N.V. | Processing device including a memory circuit and a group of functional units |
JP2959104B2 (ja) | 1990-10-31 | 1999-10-06 | 日本電気株式会社 | 信号処理プロセッサ |
US5301340A (en) | 1990-10-31 | 1994-04-05 | International Business Machines Corporation | IC chips including ALUs and identical register files whereby a number of ALUs directly and concurrently write results to every register file per cycle |
US5649029A (en) * | 1991-03-15 | 1997-07-15 | Galbi; David E. | MPEG audio/video decoder |
US5500650A (en) * | 1992-12-15 | 1996-03-19 | Micron Technology, Inc. | Data communication method using identification protocol |
WO1993023816A1 (en) * | 1992-05-18 | 1993-11-25 | Silicon Engines Inc. | System and method for cross correlation with application to video motion vector estimation |
EP0594240B1 (en) * | 1992-10-19 | 2000-01-05 | Koninklijke Philips Electronics N.V. | Data processor with operation units sharing groups of register files |
EP0605927B1 (en) * | 1992-12-29 | 1999-07-28 | Koninklijke Philips Electronics N.V. | Improved very long instruction word processor architecture |
EP0651321B1 (en) * | 1993-10-29 | 2001-11-14 | Advanced Micro Devices, Inc. | Superscalar microprocessors |
US5631859A (en) * | 1994-10-27 | 1997-05-20 | Hewlett-Packard Company | Floating point arithmetic unit having logic for quad precision arithmetic |
-
1994
- 1994-12-30 US US08/366,958 patent/US6370623B1/en not_active Expired - Lifetime
-
1995
- 1995-11-16 JP JP52081896A patent/JP3591842B2/ja not_active Expired - Lifetime
- 1995-11-16 EP EP95936050A patent/EP0748477B1/en not_active Expired - Lifetime
- 1995-11-16 KR KR1019960704892A patent/KR100389220B1/ko not_active IP Right Cessation
- 1995-11-16 WO PCT/IB1995/001013 patent/WO1996021186A2/en active IP Right Grant
- 1995-11-16 DE DE69525527T patent/DE69525527T2/de not_active Expired - Lifetime
- 1995-12-11 TW TW084113177A patent/TW296452B/zh active
Also Published As
Publication number | Publication date |
---|---|
DE69525527D1 (de) | 2002-03-28 |
DE69525527T2 (de) | 2002-08-22 |
TW296452B (ko) | 1997-01-21 |
US6370623B1 (en) | 2002-04-09 |
EP0748477A1 (en) | 1996-12-18 |
EP0748477B1 (en) | 2002-02-20 |
WO1996021186A3 (en) | 1996-09-12 |
WO1996021186A2 (en) | 1996-07-11 |
JP3591842B2 (ja) | 2004-11-24 |
JPH09510038A (ja) | 1997-10-07 |
KR100389220B1 (ko) | 2003-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR970701880A (ko) | 다른 길이의 데이터를 수용하는 복수의 멀티포트 레지스터 파일(Plural multiport register file to accommodate data of differing lengths) | |
US6430677B2 (en) | Methods and apparatus for dynamic instruction controlled reconfigurable register file with extended precision | |
US5313551A (en) | Multiport memory bypass under software control | |
US6510510B1 (en) | Digital signal processor having distributed register file | |
JP3593346B2 (ja) | マルチポートメモリ及びそれをアクセスするデータ処理装置 | |
WO2000033184A1 (en) | Shared instruction cache for multiple processors | |
KR940015852A (ko) | 긴 명령 워드를 갖는 처리기 | |
KR960029967A (ko) | 디지탈 신호 처리 방법 및 장치, 및 메모리 셀 독출 방법 | |
EP0031840A1 (en) | Memory system | |
KR850004680A (ko) | 집적 프로세서 | |
KR840008849A (ko) | 버퍼 기억장치 제어 시스템 | |
US4085450A (en) | Performance invarient execution unit for non-communicative instructions | |
GB1150236A (en) | Improvements in Data Processing Systems. | |
KR19990013772A (ko) | 레지스터 화일 | |
KR900016881A (ko) | 마이크로 프로세서 및 이를 사용한 도형처리장치 및 도형처리 방법 | |
US6904510B1 (en) | Data processor having a respective multiplexer for each particular field | |
Bishop et al. | The design of a register renaming unit | |
US6442676B1 (en) | Processor with different width functional units ignoring extra bits of bus wider than instruction width | |
US5465334A (en) | Processor with a respective latch provided for each pipelined stage to transfer data to the pipeland stages | |
US6704858B1 (en) | Information processor and method for switching those register files | |
JPS6042966B2 (ja) | デ−タ処理システム | |
CA2026225C (en) | Apparatus for accelerating store operations in a risc computer | |
US6836837B2 (en) | Register addressing | |
CN100395700C (zh) | 限制指令宽度处理器中增加寄存器寻址空间的系统与方法 | |
JP3341662B2 (ja) | 情報処理装置及び多ポートレジスタファイル |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20090609 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |