CN100416495C - 硬件环路 - Google Patents
硬件环路 Download PDFInfo
- Publication number
- CN100416495C CN100416495C CNB018180892A CN01818089A CN100416495C CN 100416495 C CN100416495 C CN 100416495C CN B018180892 A CNB018180892 A CN B018180892A CN 01818089 A CN01818089 A CN 01818089A CN 100416495 C CN100416495 C CN 100416495C
- Authority
- CN
- China
- Prior art keywords
- loop
- instruction
- register
- hardware
- zero offset
- 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
- 238000000034 method Methods 0.000 claims description 67
- 230000008569 process Effects 0.000 claims description 38
- 230000005055 memory storage Effects 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 17
- 238000012856 packing Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims 4
- 238000010586 diagram Methods 0.000 description 30
- 230000013011 mating Effects 0.000 description 15
- 238000012545 processing Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 10
- 230000009183 running Effects 0.000 description 9
- 210000001503 joint Anatomy 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000005309 stochastic process Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 238000011144 upstream manufacturing 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/32—Address formation of the next instruction, e.g. by incrementing the instruction 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/3802—Instruction prefetching
- G06F9/3808—Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
- G06F9/381—Loop buffering
-
- 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/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30065—Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
-
- 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
Abstract
Description
Claims (34)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/705,217 | 2000-11-02 | ||
US09/705,217 US6748523B1 (en) | 2000-11-02 | 2000-11-02 | Hardware loops |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1471667A CN1471667A (zh) | 2004-01-28 |
CN100416495C true CN100416495C (zh) | 2008-09-03 |
Family
ID=24832533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018180892A Expired - Fee Related CN100416495C (zh) | 2000-11-02 | 2001-10-31 | 硬件环路 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6748523B1 (zh) |
JP (1) | JP3737802B2 (zh) |
KR (1) | KR100551544B1 (zh) |
CN (1) | CN100416495C (zh) |
TW (1) | TW586071B (zh) |
WO (1) | WO2002042905A2 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003019356A1 (en) * | 2001-08-22 | 2003-03-06 | Adelante Technologies B.V. | Pipelined processor and instruction loop execution method |
US20050102659A1 (en) * | 2003-11-06 | 2005-05-12 | Singh Ravi P. | Methods and apparatus for setting up hardware loops in a deeply pipelined processor |
US7406590B2 (en) * | 2004-02-25 | 2008-07-29 | Analog Devices, Inc. | Methods and apparatus for early loop bottom detection in digital signal processors |
WO2005110685A2 (en) * | 2004-05-11 | 2005-11-24 | Alliss George E | Vegetation trimmer apparatus |
TW200821923A (en) * | 2006-11-08 | 2008-05-16 | Ite Tech Inc | Data processing apparatus for loop operation and method thereof |
US9772851B2 (en) | 2007-10-25 | 2017-09-26 | International Business Machines Corporation | Retrieving instructions of a single branch, backwards short loop from a local loop buffer or virtual loop buffer |
US20100122066A1 (en) * | 2008-11-12 | 2010-05-13 | Freescale Semiconductor, Inc. | Instruction method for facilitating efficient coding and instruction fetch of loop construct |
US9557999B2 (en) * | 2012-06-15 | 2017-01-31 | Apple Inc. | Loop buffer learning |
US9753733B2 (en) | 2012-06-15 | 2017-09-05 | Apple Inc. | Methods, apparatus, and processors for packing multiple iterations of loop in a loop buffer |
WO2014047828A1 (en) * | 2012-09-27 | 2014-04-03 | Intel Corporation | Method and apparatus to schedule store instructions across atomic regions in binary translation |
US9471322B2 (en) | 2014-02-12 | 2016-10-18 | Apple Inc. | Early loop buffer mode entry upon number of mispredictions of exit condition exceeding threshold |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0511484A2 (en) * | 1991-03-20 | 1992-11-04 | Hitachi, Ltd. | Loop control in a data processor |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0221741A3 (en) | 1985-11-01 | 1991-01-16 | Advanced Micro Devices, Inc. | Computer microsequencers |
JP3102027B2 (ja) * | 1990-11-20 | 2000-10-23 | 日本電気株式会社 | ループ制御のネスティング管理機構 |
US5303355A (en) * | 1991-03-27 | 1994-04-12 | Motorola, Inc. | Pipelined data processor which conditionally executes a predetermined looping instruction in hardware |
US6016538A (en) * | 1993-11-30 | 2000-01-18 | Texas Instruments Incorporated | Method, apparatus and system forming the sum of data in plural equal sections of a single data word |
US5537606A (en) * | 1995-01-31 | 1996-07-16 | International Business Machines Corporation | Scalar pipeline replication for parallel vector element processing |
US5727194A (en) * | 1995-06-07 | 1998-03-10 | Hitachi America, Ltd. | Repeat-bit based, compact system and method for implementing zero-overhead loops |
US6003128A (en) * | 1997-05-01 | 1999-12-14 | Advanced Micro Devices, Inc. | Number of pipeline stages and loop length related counter differential based end-loop prediction |
US6076159A (en) * | 1997-09-12 | 2000-06-13 | Siemens Aktiengesellschaft | Execution of a loop instructing in a loop pipeline after detection of a first occurrence of the loop instruction in an integer pipeline |
FR2770659A1 (fr) | 1997-10-31 | 1999-05-07 | Sgs Thomson Microelectronics | Processeur de traitement perfectionne |
-
2000
- 2000-11-02 US US09/705,217 patent/US6748523B1/en not_active Expired - Lifetime
-
2001
- 2001-10-31 WO PCT/US2001/046337 patent/WO2002042905A2/en active IP Right Grant
- 2001-10-31 KR KR1020037005949A patent/KR100551544B1/ko active IP Right Grant
- 2001-10-31 CN CNB018180892A patent/CN100416495C/zh not_active Expired - Fee Related
- 2001-10-31 JP JP2002545362A patent/JP3737802B2/ja not_active Expired - Lifetime
- 2001-11-01 TW TW090127144A patent/TW586071B/zh not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0511484A2 (en) * | 1991-03-20 | 1992-11-04 | Hitachi, Ltd. | Loop control in a data processor |
Also Published As
Publication number | Publication date |
---|---|
JP2004514985A (ja) | 2004-05-20 |
WO2002042905A8 (en) | 2002-10-03 |
US6748523B1 (en) | 2004-06-08 |
CN1471667A (zh) | 2004-01-28 |
WO2002042905A3 (en) | 2003-05-01 |
KR20030048095A (ko) | 2003-06-18 |
WO2002042905A2 (en) | 2002-05-30 |
JP3737802B2 (ja) | 2006-01-25 |
TW586071B (en) | 2004-05-01 |
KR100551544B1 (ko) | 2006-02-13 |
WO2002042905A9 (en) | 2003-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100416495C (zh) | 硬件环路 | |
US11928512B2 (en) | Quiesce reconfigurable data processor | |
CN1104680C (zh) | 计算机系统内部处理指令的装置 | |
CN100447738C (zh) | 含有多级寄存器文件的数字数据处理设备 | |
CN101320360B (zh) | 用于并行集成电路结构的消息排队系统和相关操作方法 | |
CN100527089C (zh) | 信息处理装置中的功率控制装置 | |
CN104346223A (zh) | 基于类型的优先化指令 | |
CN101799750B (zh) | 一种数据处理的方法与装置 | |
CN101369224B (zh) | 超线程微处理器中经线程优先级提供服务质量的设备 | |
US7457970B2 (en) | VLIW processor with power saving | |
CN109697185A (zh) | 多瓦片处理阵列中的同步 | |
CN102855121A (zh) | 分支处理方法与系统 | |
CN101021779A (zh) | 一种针对流处理器的指令控制方法 | |
CN108052347A (zh) | 一种执行指令选择的装置、方法及指令映射方法 | |
CN101122851A (zh) | 一种数据处理方法及处理器 | |
CN102253919A (zh) | 基于gpu和cpu协同运算的并行数值模拟方法和系统 | |
CN101021832A (zh) | 支持局部寄存和条件执行的64位浮点整数融合运算群 | |
CN105808351B (zh) | 一种多模式自适应切换处理器 | |
CN1523496A (zh) | 终止处理器中非必要处理的条件指令的方法与系统 | |
CN103119555A (zh) | 下一指令类型字段 | |
US5966515A (en) | Parallel emulation system and method | |
CN100380316C (zh) | 硬件环路 | |
WO2017016590A1 (en) | Scheduling heterogenous processors | |
CN100432968C (zh) | 存储器直接存取装置及其数据传输方法 | |
CN103984525A (zh) | 指令处理系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20090220 Address after: Massachusetts, USA Patentee after: ANALOG DEVICES, Inc. Address before: California, USA Co-patentee before: ANALOG DEVICES, Inc. Patentee before: INTEL Corp. |
|
ASS | Succession or assignment of patent right |
Owner name: ANALOG DEVICES, INC. Free format text: FORMER OWNER: INTEL CORP Effective date: 20090220 |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080903 Termination date: 20201031 |
|
CF01 | Termination of patent right due to non-payment of annual fee |