BRPI0713434A2 - métodos e equipamento para gerenciamento pró-ativo de cache de endereço alvo de ramificação - Google Patents
métodos e equipamento para gerenciamento pró-ativo de cache de endereço alvo de ramificação Download PDFInfo
- Publication number
- BRPI0713434A2 BRPI0713434A2 BRPI0713434-7A BRPI0713434A BRPI0713434A2 BR PI0713434 A2 BRPI0713434 A2 BR PI0713434A2 BR PI0713434 A BRPI0713434 A BR PI0713434A BR PI0713434 A2 BRPI0713434 A2 BR PI0713434A2
- Authority
- BR
- Brazil
- Prior art keywords
- bypass
- target address
- address cache
- proactive
- equipment
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3848—Speculative instruction execution using hybrid branch prediction, e.g. selection between prediction techniques
-
- 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/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 or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
- G06F9/3806—Instruction prefetching for branches, e.g. hedging, branch folding using address prediction, e.g. return stack, branch history buffer
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3844—Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
-
- 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/3861—Recovery, e.g. branch miss-prediction, exception handling
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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
MéTODOS E EQUIPAMENTO PARA GERENCIAMENTO PRó-ATIVO DE CACHE DE ENDEREçO ALVO DE RAMIFICAçãO. é revelado um sistema de predição de desvio de vários estágios que inclui um cache de endereço alvo de ramificação (BTAC) e um circuito de preditor de desvio. O BTAC é configurado para armazenar uma entrada de BTAC. O circuito de preditor de desvio é configurado para armazenar informações sobre estado(s). o circuito de preditor de desvio utiliza as informações sobre estado(s) para predizer a direção de uma instrução de desvio e para gerenciar a entrada de BTAC com base nas informações sobre estado(s) armazenadas em resposta à resolução atual da instrução de desvio.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/427,349 | 2006-06-29 | ||
US11/427,349 US8935517B2 (en) | 2006-06-29 | 2006-06-29 | System and method for selectively managing a branch target address cache of a multiple-stage predictor |
PCT/US2007/072317 WO2008003019A2 (en) | 2006-06-29 | 2007-06-28 | Methods and apparatus for proactive branch target address cache management |
Publications (1)
Publication Number | Publication Date |
---|---|
BRPI0713434A2 true BRPI0713434A2 (pt) | 2012-03-13 |
Family
ID=38846531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0713434-7A BRPI0713434A2 (pt) | 2006-06-29 | 2007-06-28 | métodos e equipamento para gerenciamento pró-ativo de cache de endereço alvo de ramificação |
Country Status (12)
Country | Link |
---|---|
US (2) | US8935517B2 (pt) |
EP (2) | EP2035921B1 (pt) |
JP (4) | JP5558814B2 (pt) |
KR (1) | KR101074621B1 (pt) |
CN (1) | CN101479700B (pt) |
BR (1) | BRPI0713434A2 (pt) |
CA (1) | CA2654231A1 (pt) |
ES (1) | ES2386478T3 (pt) |
MX (1) | MX2008016116A (pt) |
RU (1) | RU2421783C2 (pt) |
TW (1) | TWI386850B (pt) |
WO (1) | WO2008003019A2 (pt) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3798998B2 (ja) * | 2002-06-28 | 2006-07-19 | 富士通株式会社 | 分岐予測装置および分岐予測方法 |
US8935517B2 (en) * | 2006-06-29 | 2015-01-13 | Qualcomm Incorporated | System and method for selectively managing a branch target address cache of a multiple-stage predictor |
JP5145809B2 (ja) * | 2007-07-31 | 2013-02-20 | 日本電気株式会社 | 分岐予測装置、ハイブリッド分岐予測装置、プロセッサ、分岐予測方法、及び分岐予測制御プログラム |
WO2010081942A1 (fr) | 2008-12-05 | 2010-07-22 | Alex Hr Roustaei | Piles ou micro piles a hydrogene avec un generateur d ' hydrogene |
FR2956869B1 (fr) | 2010-03-01 | 2014-05-16 | Alex Hr Roustaei | Systeme de production de film flexible a haute capacite destine a des cellules photovoltaiques et oled par deposition cyclique des couches |
JP2011209774A (ja) * | 2010-03-26 | 2011-10-20 | Fujitsu Ltd | 分岐予測方法及びその方法を実行する分岐予測回路 |
US8375565B2 (en) | 2010-05-28 | 2013-02-19 | Western Digital (Fremont), Llc | Method for providing an electronic lapping guide corresponding to a near-field transducer of an energy assisted magnetic recording transducer |
US8351307B1 (en) | 2010-06-04 | 2013-01-08 | Western Digital (Fremont), Llc | Trailing edge optimized near field transducer having non-rectangular pin cross section |
US8320219B1 (en) | 2010-06-15 | 2012-11-27 | Western Digital (Fremont), Llc | Trailing edge optimized near field transducer |
JP5656074B2 (ja) * | 2011-02-21 | 2015-01-21 | 日本電気株式会社 | 分岐予測装置、プロセッサ及び分岐予測方法 |
US9201654B2 (en) * | 2011-06-28 | 2015-12-01 | International Business Machines Corporation | Processor and data processing method incorporating an instruction pipeline with conditional branch direction prediction for fast access to branch target instructions |
US8749790B1 (en) | 2011-12-08 | 2014-06-10 | Western Digital (Fremont), Llc | Structure and method to measure waveguide power absorption by surface plasmon element |
CN104220980B (zh) | 2011-12-29 | 2018-01-19 | 英特尔公司 | 经管理的指令缓存预取 |
US9280351B2 (en) | 2012-06-15 | 2016-03-08 | International Business Machines Corporation | Second-level branch target buffer bulk transfer filtering |
US9298465B2 (en) | 2012-06-15 | 2016-03-29 | International Business Machines Corporation | Asynchronous lookahead hierarchical branch prediction |
US9430241B2 (en) | 2012-06-15 | 2016-08-30 | International Business Machines Corporation | Semi-exclusive second-level branch target buffer |
US20140006752A1 (en) * | 2012-06-27 | 2014-01-02 | Qualcomm Incorporated | Qualifying Software Branch-Target Hints with Hardware-Based Predictions |
US10042776B2 (en) * | 2012-11-20 | 2018-08-07 | Arm Limited | Prefetching based upon return addresses |
US9441938B1 (en) | 2013-10-08 | 2016-09-13 | Western Digital (Fremont), Llc | Test structures for measuring near field transducer disc length |
JP6393590B2 (ja) * | 2013-11-22 | 2018-09-19 | 株式会社半導体エネルギー研究所 | 半導体装置 |
US9563430B2 (en) | 2014-03-19 | 2017-02-07 | International Business Machines Corporation | Dynamic thread sharing in branch prediction structures |
US20170371669A1 (en) * | 2016-06-24 | 2017-12-28 | Qualcomm Incorporated | Branch target predictor |
US10353819B2 (en) * | 2016-06-24 | 2019-07-16 | Qualcomm Incorporated | Next line prefetchers employing initial high prefetch prediction confidence states for throttling next line prefetches in a processor-based system |
GB2553582B (en) * | 2016-09-13 | 2020-07-08 | Advanced Risc Mach Ltd | An apparatus and method for generating and processing a trace stream indicative of instruction execution by processing circuitry |
US10613869B2 (en) * | 2018-03-29 | 2020-04-07 | Arm Limited | Branch target address provision |
US20210149676A1 (en) * | 2019-11-14 | 2021-05-20 | Higon Austin R&D Center Corporation | Branch Prediction Method, Branch Prediction Unit and Processor Core |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2018A (en) * | 1841-03-26 | Joseph francis | ||
US4018A (en) * | 1845-05-01 | Closing and opening the- entrances to beehives | ||
JP2560889B2 (ja) * | 1990-05-22 | 1996-12-04 | 日本電気株式会社 | マイクロプロセッサ |
TW345637B (en) | 1994-02-04 | 1998-11-21 | Motorola Inc | Data processor with branch target address cache and method of operation a data processor has a BTAC storing a number of recently encountered fetch address-target address pairs. |
JP3494484B2 (ja) * | 1994-10-12 | 2004-02-09 | 株式会社ルネサステクノロジ | 命令処理装置 |
JP3765111B2 (ja) | 1995-08-29 | 2006-04-12 | 株式会社日立製作所 | 分岐登録命令を有するプロセッサ |
JPH10105401A (ja) * | 1996-09-30 | 1998-04-24 | Fujitsu Ltd | プロセッサの分岐命令予測装置 |
US7103794B2 (en) * | 1998-06-08 | 2006-09-05 | Cacheflow, Inc. | Network object cache engine |
US5890008A (en) * | 1997-06-25 | 1999-03-30 | Sun Microsystems, Inc. | Method for dynamically reconfiguring a processor |
US5964870A (en) * | 1997-09-22 | 1999-10-12 | Intel Corporation | Method and apparatus for using function context to improve branch |
US6263427B1 (en) * | 1998-09-04 | 2001-07-17 | Rise Technology Company | Branch prediction mechanism |
US6553488B2 (en) * | 1998-09-08 | 2003-04-22 | Intel Corporation | Method and apparatus for branch prediction using first and second level branch prediction tables |
US6601161B2 (en) * | 1998-12-30 | 2003-07-29 | Intel Corporation | Method and system for branch target prediction using path information |
US6357016B1 (en) | 1999-12-09 | 2002-03-12 | Intel Corporation | Method and apparatus for disabling a clock signal within a multithreaded processor |
US6732260B1 (en) * | 2000-03-06 | 2004-05-04 | Intel Corporation | Presbyopic branch target prefetch method and apparatus |
US7000096B1 (en) * | 2000-08-03 | 2006-02-14 | International Business Machines Corporation | Branch prediction circuits and methods and systems using the same |
US7200740B2 (en) | 2001-05-04 | 2007-04-03 | Ip-First, Llc | Apparatus and method for speculatively performing a return instruction in a microprocessor |
KR20040014988A (ko) * | 2001-06-29 | 2004-02-18 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 간접 브랜치 타겟 어드레스 예측을 위한 방법, 장치 및컴파일러 |
US7082520B2 (en) * | 2002-05-09 | 2006-07-25 | International Business Machines Corporation | Branch prediction utilizing both a branch target buffer and a multiple target table |
US6965983B2 (en) | 2003-02-16 | 2005-11-15 | Faraday Technology Corp. | Simultaneously setting prefetch address and fetch address pipelined stages upon branch |
US7266676B2 (en) * | 2003-03-21 | 2007-09-04 | Analog Devices, Inc. | Method and apparatus for branch prediction based on branch targets utilizing tag and data arrays |
US7831817B2 (en) * | 2003-04-15 | 2010-11-09 | Arm Limited | Two-level branch prediction apparatus |
KR100528479B1 (ko) * | 2003-09-24 | 2005-11-15 | 삼성전자주식회사 | 전력 소모를 감소시키기 위한 분기 예측기 및 구현방법 |
DE602005027338D1 (de) * | 2004-04-21 | 2011-05-19 | Fujitsu Ltd | Abzweigungsvorhersageeinrichtung, verfahren dafür und prozessor |
US7437543B2 (en) * | 2005-04-19 | 2008-10-14 | International Business Machines Corporation | Reducing the fetch time of target instructions of a predicted taken branch instruction |
US8935517B2 (en) * | 2006-06-29 | 2015-01-13 | Qualcomm Incorporated | System and method for selectively managing a branch target address cache of a multiple-stage predictor |
-
2006
- 2006-06-29 US US11/427,349 patent/US8935517B2/en active Active
-
2007
- 2007-06-28 KR KR1020097001907A patent/KR101074621B1/ko not_active IP Right Cessation
- 2007-06-28 CA CA002654231A patent/CA2654231A1/en not_active Abandoned
- 2007-06-28 ES ES07840305T patent/ES2386478T3/es active Active
- 2007-06-28 CN CN200780023873.2A patent/CN101479700B/zh not_active Expired - Fee Related
- 2007-06-28 EP EP07840305A patent/EP2035921B1/en not_active Not-in-force
- 2007-06-28 BR BRPI0713434-7A patent/BRPI0713434A2/pt not_active IP Right Cessation
- 2007-06-28 MX MX2008016116A patent/MX2008016116A/es active IP Right Grant
- 2007-06-28 JP JP2009518553A patent/JP5558814B2/ja not_active Expired - Fee Related
- 2007-06-28 RU RU2009102809/08A patent/RU2421783C2/ru not_active IP Right Cessation
- 2007-06-28 WO PCT/US2007/072317 patent/WO2008003019A2/en active Application Filing
- 2007-06-28 EP EP11195677.7A patent/EP2434393B1/en not_active Not-in-force
- 2007-06-29 TW TW096123816A patent/TWI386850B/zh not_active IP Right Cessation
-
2011
- 2011-10-26 US US13/281,913 patent/US8782383B2/en not_active Expired - Fee Related
-
2013
- 2013-06-05 JP JP2013119018A patent/JP2013229038A/ja not_active Withdrawn
-
2015
- 2015-03-03 JP JP2015041619A patent/JP2015144001A/ja active Pending
-
2017
- 2017-01-19 JP JP2017007265A patent/JP2017107578A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
CN101479700A (zh) | 2009-07-08 |
KR20090031751A (ko) | 2009-03-27 |
EP2434393B1 (en) | 2017-12-20 |
CN101479700B (zh) | 2015-06-03 |
US8782383B2 (en) | 2014-07-15 |
EP2035921A2 (en) | 2009-03-18 |
JP2017107578A (ja) | 2017-06-15 |
CA2654231A1 (en) | 2008-01-03 |
JP2009543223A (ja) | 2009-12-03 |
RU2009102809A (ru) | 2010-08-10 |
JP2015144001A (ja) | 2015-08-06 |
WO2008003019A3 (en) | 2008-05-02 |
TW200816046A (en) | 2008-04-01 |
RU2421783C2 (ru) | 2011-06-20 |
US8935517B2 (en) | 2015-01-13 |
MX2008016116A (es) | 2009-01-20 |
EP2035921B1 (en) | 2012-06-06 |
EP2434393A1 (en) | 2012-03-28 |
WO2008003019A2 (en) | 2008-01-03 |
KR101074621B1 (ko) | 2011-10-17 |
ES2386478T3 (es) | 2012-08-21 |
US20080005543A1 (en) | 2008-01-03 |
TWI386850B (zh) | 2013-02-21 |
US20120042155A1 (en) | 2012-02-16 |
JP2013229038A (ja) | 2013-11-07 |
JP5558814B2 (ja) | 2014-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI0713434A2 (pt) | métodos e equipamento para gerenciamento pró-ativo de cache de endereço alvo de ramificação | |
BR112012008098A8 (pt) | sistema e método para acessar informação de diagnóstico | |
WO2009120453A3 (en) | Computing environment representation | |
ATE535862T1 (de) | Schiebefenster, blockbasierter sprungzieladressenzwischenspeicher | |
BRPI0500357A (pt) | Navegação na rede e predição de alteração em páginas da rede por decisão teórica | |
BRPI0916437A2 (pt) | dispositivo de gerenciamento remoto e sistema de gerenciamento remoto | |
BRPI0906426A2 (pt) | tradução de endereço dinâmico com gerenciamento de quadro | |
BR112013017025A2 (pt) | gerenciamento de privacidade online | |
BRPI0504255A (pt) | sistema e método para determinar failback de alvo e prioridade de alvo para um sistema de arquivo distribuìdo | |
BRPI0822735A2 (pt) | Aparelho de navegação e método de detecção de que uma instalação de estacionamento está sendo procurada | |
JP2013229038A5 (pt) | ||
NO20085196L (no) | Lampe til informasjonsskilt samt lysstyringssystem | |
BR112014018088A2 (pt) | Sistema para gerenciar, identificar ou rastrear objetos móveis que são usados por um período de tempo temporário por pelo menos um usuário, método para gerenciamento, identificação ou rastreamento de objetos móveis que são usados por período de tempo temporário por usuários e sistema para gerenciamento, identificação ou rastreamento de objetos móveis que são usados por período de tempo temporário por usuários | |
GB201216776D0 (en) | Method and system for managing the lifetime of semantically-identified data | |
BRPI0500970A (pt) | Método e sistema para exibição e gerenciamento de informação de segurança | |
BR112015019392A2 (pt) | gerenciamento de latência de memória | |
BR112015013917A2 (pt) | método, unidade de computação, e sistema | |
BRPI0519751A2 (pt) | sistema e mÉtodo para selecionar uma entrada de sinal | |
BRPI0603648A (pt) | sistema operacional de gerenciamento de estacionamento público | |
BR112012025671A2 (pt) | sistema executado em computador e método para armazenar uma localização de usuário em um ambiente virtual | |
BR112015022144A8 (pt) | Módulo de luz de freio para um veículo, e, método para iluminar um dispositivo de luz | |
BRPI0702964A (pt) | instrumento de reserva para o painel de instrumentos de uma aeronave | |
BR0309149A (pt) | Fonte de energia para célula combustìvel | |
BR112015031803A2 (pt) | método de gravação de dados e sistema de memória | |
ATE555431T1 (de) | Taktschaltungen und verfahren |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B08F | Application fees: application dismissed [chapter 8.6 patent gazette] |
Free format text: REFERENTE A 9A ANUIDADE. |
|
B08K | Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette] |
Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2385 DE 20-09-2016 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013. |