CN1275142C - 用于执行硬件环路的方法、装置和系统 - Google Patents
用于执行硬件环路的方法、装置和系统 Download PDFInfo
- Publication number
- CN1275142C CN1275142C CNB018184286A CN01818428A CN1275142C CN 1275142 C CN1275142 C CN 1275142C CN B018184286 A CNB018184286 A CN B018184286A CN 01818428 A CN01818428 A CN 01818428A CN 1275142 C CN1275142 C CN 1275142C
- Authority
- CN
- China
- Prior art keywords
- loop
- instruction
- group
- hardware
- subclass
- 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 title claims description 85
- 239000000872 buffer Substances 0.000 claims description 136
- 230000008878 coupling Effects 0.000 claims description 50
- 238000010168 coupling process Methods 0.000 claims description 50
- 238000005859 coupling reaction Methods 0.000 claims description 50
- 238000012545 processing Methods 0.000 claims description 16
- 230000004087 circulation Effects 0.000 claims description 4
- 230000003068 static effect Effects 0.000 claims description 2
- 230000010365 information processing Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 26
- 230000000875 corresponding effect Effects 0.000 description 16
- 238000009434 installation Methods 0.000 description 12
- 238000003860 storage Methods 0.000 description 11
- 230000009467 reduction Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000001105 regulatory effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006866 deterioration Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000004134 energy conservation Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000001839 systemic circulation Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation 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/38—Concurrent instruction execution, e.g. pipeline or 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/38—Concurrent instruction execution, e.g. pipeline or 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Power Sources (AREA)
Abstract
Description
Claims (92)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/705,088 | 2000-11-02 | ||
US09/705,088 US6898693B1 (en) | 2000-11-02 | 2000-11-02 | Hardware loops |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1503941A CN1503941A (zh) | 2004-06-09 |
CN1275142C true CN1275142C (zh) | 2006-09-13 |
Family
ID=24831986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018184286A Expired - Fee Related CN1275142C (zh) | 2000-11-02 | 2001-10-30 | 用于执行硬件环路的方法、装置和系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6898693B1 (zh) |
JP (1) | JP3787329B2 (zh) |
KR (1) | KR100580851B1 (zh) |
CN (1) | CN1275142C (zh) |
TW (1) | TWI236623B (zh) |
WO (1) | WO2002037271A2 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1346279A1 (en) * | 2000-12-07 | 2003-09-24 | Koninklijke Philips Electronics N.V. | Digital signal processing apparatus |
US20050102659A1 (en) * | 2003-11-06 | 2005-05-12 | Singh Ravi P. | Methods and apparatus for setting up hardware loops in a deeply pipelined processor |
JP4086885B2 (ja) * | 2004-11-25 | 2008-05-14 | 松下電器産業株式会社 | 命令供給装置 |
US7669042B2 (en) * | 2005-02-17 | 2010-02-23 | Samsung Electronics Co., Ltd. | Pipeline controller for context-based operation reconfigurable instruction set processor |
US7832257B2 (en) * | 2007-10-05 | 2010-11-16 | Halliburton Energy Services Inc. | Determining fluid rheological properties |
US8266414B2 (en) * | 2008-08-19 | 2012-09-11 | Freescale Semiconductor, Inc. | Method for executing an instruction loop and a device having instruction loop execution capabilities |
US9274794B2 (en) | 2011-09-23 | 2016-03-01 | Electronics And Telecommunications Research Institute | Processor and instruction processing method in processor |
KR101538425B1 (ko) * | 2011-09-23 | 2015-07-22 | 한국전자통신연구원 | 프로세서 및 프로세서에서의 명령 처리방법 |
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 |
US9063974B2 (en) * | 2012-10-02 | 2015-06-23 | Oracle International Corporation | Hardware for table scan acceleration |
US9471322B2 (en) | 2014-02-12 | 2016-10-18 | Apple Inc. | Early loop buffer mode entry upon number of mispredictions of exit condition exceeding threshold |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3466613A (en) | 1967-01-13 | 1969-09-09 | Ibm | Instruction buffering system |
US3593306A (en) | 1969-07-25 | 1971-07-13 | Bell Telephone Labor Inc | Apparatus for reducing memory fetches in program loops |
JP2690921B2 (ja) | 1987-12-25 | 1997-12-17 | 株式会社日立製作所 | 情報処理装置 |
JPH07160585A (ja) | 1993-12-13 | 1995-06-23 | Hitachi Ltd | 低電力データ処理装置 |
US5524223A (en) | 1994-01-31 | 1996-06-04 | Motorola, Inc. | Instruction accelerator for processing loop instructions with address generator using multiple stored increment values |
JPH0991136A (ja) | 1995-09-25 | 1997-04-04 | Toshiba Corp | 信号処理装置 |
-
2000
- 2000-11-02 US US09/705,088 patent/US6898693B1/en not_active Expired - Lifetime
-
2001
- 2001-10-30 KR KR1020037005947A patent/KR100580851B1/ko not_active IP Right Cessation
- 2001-10-30 WO PCT/US2001/045357 patent/WO2002037271A2/en active IP Right Grant
- 2001-10-30 JP JP2002539955A patent/JP3787329B2/ja not_active Expired - Fee Related
- 2001-10-30 CN CNB018184286A patent/CN1275142C/zh not_active Expired - Fee Related
- 2001-11-01 TW TW090127150A patent/TWI236623B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
WO2002037271A2 (en) | 2002-05-10 |
JP2004513427A (ja) | 2004-04-30 |
KR100580851B1 (ko) | 2006-05-17 |
TWI236623B (en) | 2005-07-21 |
KR20030048094A (ko) | 2003-06-18 |
WO2002037271A3 (en) | 2003-05-22 |
US6898693B1 (en) | 2005-05-24 |
JP3787329B2 (ja) | 2006-06-21 |
CN1503941A (zh) | 2004-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1275142C (zh) | 用于执行硬件环路的方法、装置和系统 | |
CN1262944C (zh) | 处理器结构 | |
KR101685247B1 (ko) | 조기 원거리 분기 예측을 위한 섀도우 캐시를 포함하는 단일 사이클 다중 분기 예측 | |
CN1129843C (zh) | 使用组合的数据处理器系统和指令系统 | |
CN1279442C (zh) | 选择性存取不同指令缓冲阶层的装置及方法 | |
CN1191524C (zh) | 预取指令的执行方法和设备 | |
US9519484B1 (en) | Picoengine instruction that controls an intelligent packet data register file prefetch function | |
CN1655118A (zh) | 处理器和编译器 | |
CN1877532A (zh) | 编译装置 | |
CN1717654A (zh) | 数据处理器的循环控制电路 | |
CN1892636A (zh) | 双模计算机处理器中索引式载入及储存操作的系统及方法 | |
CN1142485C (zh) | 流水线控制相关延迟消除方法 | |
CN1016383B (zh) | 基于操作数长度和对位的微码转移 | |
WO2017030674A1 (en) | Power efficient fetch adaptation | |
CN1105350C (zh) | 能够减少转移故障的具有小尺寸电路的流水线处理器 | |
CN1217261C (zh) | 用于处理器流水线分段法及再装配的方法以及装置 | |
CN1149472C (zh) | 更名装置及处理器 | |
CN1471667A (zh) | 硬件环路 | |
US8176297B2 (en) | Adaptive fetch advance control for a low power processor | |
CN1257450C (zh) | 节省资源的硬件环路 | |
CN1473294A (zh) | 硬件环路 | |
CN1289212A (zh) | 用于运动估计算法的分层可编程并行视频信号处理器结构 | |
CN1716182A (zh) | 地址创建器和算术电路 | |
CN1650257A (zh) | 互换地址寄存器所存内容的方法和设备 | |
CN1144124C (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: 20090109 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: 20090109 |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060913 Termination date: 20171030 |
|
CF01 | Termination of patent right due to non-payment of annual fee |