CN109101276B - 在cpu中执行指令的方法 - Google Patents
在cpu中执行指令的方法 Download PDFInfo
- Publication number
- CN109101276B CN109101276B CN201810922723.5A CN201810922723A CN109101276B CN 109101276 B CN109101276 B CN 109101276B CN 201810922723 A CN201810922723 A CN 201810922723A CN 109101276 B CN109101276 B CN 109101276B
- Authority
- CN
- China
- Prior art keywords
- instruction
- thread queue
- instructions
- target
- cpu
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000001502 supplementing effect Effects 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims description 13
- 239000013589 supplement Substances 0.000 claims description 6
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 230000006872 improvement Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000013468 resource allocation Methods 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 101150071111 FADD gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
-
- 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/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- 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/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, look ahead
- G06F9/3818—Decoding for concurrent execution
-
- 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/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
- G06F9/384—Register renaming
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3856—Reordering of instructions, e.g. using queues or age tags
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
-
- 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/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/452—Instruction code
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
Description
Claims (8)
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810922723.5A CN109101276B (zh) | 2018-08-14 | 2018-08-14 | 在cpu中执行指令的方法 |
TW108120456A TWI719501B (zh) | 2018-08-14 | 2019-06-13 | 中央處理單元(cpu)、中央處理單元(cpu)控制器與在中央處理單元(cpu)中執行指令的方法 |
SG11202010825QA SG11202010825QA (en) | 2018-08-14 | 2019-06-21 | Method for executing instructions in cpu |
EP19849120.1A EP3779682A4 (en) | 2018-08-14 | 2019-06-21 | METHOD OF EXECUTING INSTRUCTIONS IN A CPU |
PCT/CN2019/092241 WO2020034753A1 (zh) | 2018-08-14 | 2019-06-21 | 在cpu中执行指令的方法 |
US17/082,509 US11579885B2 (en) | 2018-08-14 | 2020-10-28 | Method for replenishing a thread queue with a target instruction of a jump instruction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810922723.5A CN109101276B (zh) | 2018-08-14 | 2018-08-14 | 在cpu中执行指令的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109101276A CN109101276A (zh) | 2018-12-28 |
CN109101276B true CN109101276B (zh) | 2020-05-05 |
Family
ID=64849591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810922723.5A Active CN109101276B (zh) | 2018-08-14 | 2018-08-14 | 在cpu中执行指令的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11579885B2 (zh) |
EP (1) | EP3779682A4 (zh) |
CN (1) | CN109101276B (zh) |
SG (1) | SG11202010825QA (zh) |
TW (1) | TWI719501B (zh) |
WO (1) | WO2020034753A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109101276B (zh) | 2018-08-14 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 在cpu中执行指令的方法 |
CN109947564B (zh) * | 2019-03-07 | 2023-04-11 | 蚂蚁金服(杭州)网络技术有限公司 | 业务处理方法、装置、设备及存储介质 |
CN111538535B (zh) * | 2020-04-28 | 2021-09-21 | 支付宝(杭州)信息技术有限公司 | 一种cpu指令处理方法、控制器和中央处理单元 |
CN113900910A (zh) * | 2021-12-08 | 2022-01-07 | 北京新唐思创教育科技有限公司 | 应用程序监控方法、装置、存储介质和电子设备 |
CN117112033B (zh) * | 2023-08-28 | 2024-04-12 | 海光信息技术(成都)有限公司 | 随机指令生成方法、装置、设备以及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102520913A (zh) * | 2011-11-03 | 2012-06-27 | 浙江大学 | 基于分组更新历史信息的并行分支预测装置 |
CN104978282A (zh) * | 2014-04-04 | 2015-10-14 | 上海芯豪微电子有限公司 | 一种缓存系统和方法 |
CN107688468A (zh) * | 2016-12-23 | 2018-02-13 | 北京国睿中数科技股份有限公司 | 推测执行处理器中分支指令与分支预测功能的验证方法 |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5604909A (en) | 1993-12-15 | 1997-02-18 | Silicon Graphics Computer Systems, Inc. | Apparatus for processing instructions in a computing system |
US5956753A (en) * | 1993-12-30 | 1999-09-21 | Intel Corporation | Method and apparatus for handling speculative memory access operations |
US5870577A (en) * | 1996-11-27 | 1999-02-09 | International Business Machines, Corp. | System and method for dispatching two instructions to the same execution unit in a single cycle |
US6185675B1 (en) * | 1997-10-24 | 2001-02-06 | Advanced Micro Devices, Inc. | Basic block oriented trace cache utilizing a basic block sequence buffer to indicate program order of cached basic blocks |
US6742111B2 (en) * | 1998-08-31 | 2004-05-25 | Stmicroelectronics, Inc. | Reservation stations to increase instruction level parallelism |
US6339822B1 (en) * | 1998-10-02 | 2002-01-15 | Advanced Micro Devices, Inc. | Using padded instructions in a block-oriented cache |
US6647462B1 (en) * | 2000-06-29 | 2003-11-11 | Motorola, Inc. | Apparatus and a method for providing decoded information |
US7139898B1 (en) * | 2000-11-03 | 2006-11-21 | Mips Technologies, Inc. | Fetch and dispatch disassociation apparatus for multistreaming processors |
US7089557B2 (en) * | 2001-04-10 | 2006-08-08 | Rusty Shawn Lee | Data processing system and method for high-efficiency multitasking |
US7076640B2 (en) * | 2002-02-05 | 2006-07-11 | Sun Microsystems, Inc. | Processor that eliminates mis-steering instruction fetch resulting from incorrect resolution of mis-speculated branch instructions |
US7024663B2 (en) * | 2002-07-10 | 2006-04-04 | Micron Technology, Inc. | Method and system for generating object code to facilitate predictive memory retrieval |
US7000095B2 (en) * | 2002-09-06 | 2006-02-14 | Mips Technologies, Inc. | Method and apparatus for clearing hazards using jump instructions |
US7281120B2 (en) * | 2004-03-26 | 2007-10-09 | International Business Machines Corporation | Apparatus and method for decreasing the latency between an instruction cache and a pipeline processor |
US7890735B2 (en) | 2004-08-30 | 2011-02-15 | Texas Instruments Incorporated | Multi-threading processors, integrated circuit devices, systems, and processes of operation and manufacture |
KR100628573B1 (ko) * | 2004-09-08 | 2006-09-26 | 삼성전자주식회사 | 조건부실행명령어의 비순차적 수행이 가능한 하드웨어장치 및 그 수행방법 |
US7552318B2 (en) * | 2004-12-17 | 2009-06-23 | International Business Machines Corporation | Branch lookahead prefetch for microprocessors |
US7613904B2 (en) | 2005-02-04 | 2009-11-03 | Mips Technologies, Inc. | Interfacing external thread prioritizing policy enforcing logic with customer modifiable register to processor internal scheduler |
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 |
US7769983B2 (en) * | 2005-05-18 | 2010-08-03 | Qualcomm Incorporated | Caching instructions for a multiple-state processor |
US7761697B1 (en) * | 2005-07-13 | 2010-07-20 | Nvidia Corporation | Processing an indirect branch instruction in a SIMD architecture |
US7953933B1 (en) * | 2005-09-28 | 2011-05-31 | Oracle America, Inc. | Instruction cache, decoder circuit, basic block cache circuit and multi-block cache circuit |
US7475231B2 (en) | 2005-11-14 | 2009-01-06 | Texas Instruments Incorporated | Loop detection and capture in the instruction queue |
US8812822B2 (en) | 2006-02-09 | 2014-08-19 | International Business Machines Corporation | Scheduling instructions in a cascaded delayed execution pipeline to minimize pipeline stalls caused by a cache miss |
US7487340B2 (en) | 2006-06-08 | 2009-02-03 | International Business Machines Corporation | Local and global branch prediction information storage |
US9146745B2 (en) * | 2006-06-29 | 2015-09-29 | Intel Corporation | Method and apparatus for partitioned pipelined execution of multiple execution threads |
US7711929B2 (en) | 2007-08-30 | 2010-05-04 | International Business Machines Corporation | Method and system for tracking instruction dependency in an out-of-order processor |
CN102144222B (zh) | 2008-07-02 | 2014-11-05 | 国立大学法人东京工业大学 | 执行时间估计方法、执行时间估计程序以及执行时间估计装置 |
JP5471082B2 (ja) | 2009-06-30 | 2014-04-16 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
CN101770358B (zh) * | 2010-02-10 | 2013-01-30 | 龙芯中科技术有限公司 | 微处理器跳转指令分支预测处理系统和方法 |
CN102855121B (zh) * | 2011-06-29 | 2017-04-19 | 上海芯豪微电子有限公司 | 分支处理方法与系统 |
US9329869B2 (en) | 2011-10-03 | 2016-05-03 | International Business Machines Corporation | Prefix computer instruction for compatibily extending instruction functionality |
US9354874B2 (en) | 2011-10-03 | 2016-05-31 | International Business Machines Corporation | Scalable decode-time instruction sequence optimization of dependent instructions |
US9286072B2 (en) | 2011-10-03 | 2016-03-15 | International Business Machines Corporation | Using register last use infomation to perform decode-time computer instruction optimization |
US9298469B2 (en) | 2012-06-15 | 2016-03-29 | International Business Machines Corporation | Management of multiple nested transactions |
CN102968293B (zh) * | 2012-11-28 | 2014-12-10 | 中国人民解放军国防科学技术大学 | 基于指令队列的程序循环代码动态检测及执行方法 |
US9535695B2 (en) | 2013-01-25 | 2017-01-03 | Apple Inc. | Completing load and store instructions in a weakly-ordered memory model |
CN103984523B (zh) * | 2013-02-08 | 2017-06-09 | 上海芯豪微电子有限公司 | 多发射指令处理系统及方法 |
US9880842B2 (en) | 2013-03-15 | 2018-01-30 | Intel Corporation | Using control flow data structures to direct and track instruction execution |
GB2519103B (en) * | 2013-10-09 | 2020-05-06 | Advanced Risc Mach Ltd | Decoding a complex program instruction corresponding to multiple micro-operations |
EP3058457A4 (en) * | 2013-10-15 | 2017-07-12 | Mill Computing, Inc. | Computer processor with deferred operations |
CN103677965B (zh) * | 2014-01-03 | 2017-03-22 | 北京神舟航天软件技术有限公司 | 一种全数字快速仿真方法 |
WO2015165017A1 (zh) | 2014-04-28 | 2015-11-05 | 华为技术有限公司 | 一种数据处理装置及方法 |
US10503538B2 (en) | 2014-06-02 | 2019-12-10 | International Business Machines Corporation | Delaying branch prediction updates specified by a suspend branch prediction instruction until after a transaction is completed |
US9477469B2 (en) | 2014-06-02 | 2016-10-25 | International Business Machines Corporation | Branch predictor suppressing branch prediction of previously executed branch instructions in a transactional execution environment |
CN104156196B (zh) * | 2014-06-12 | 2017-10-27 | 龚伟峰 | 重命名预处理方法 |
CN104731557A (zh) * | 2014-12-10 | 2015-06-24 | 康烁 | 指令执行的控制方法及装置 |
CN105786448B (zh) * | 2014-12-26 | 2019-02-05 | 深圳市中兴微电子技术有限公司 | 一种指令调度方法及装置 |
CN104793921B (zh) * | 2015-04-29 | 2018-07-31 | 深圳芯邦科技股份有限公司 | 一种指令分支预测方法与系统 |
US20160378491A1 (en) | 2015-06-26 | 2016-12-29 | Microsoft Technology Licensing, Llc | Determination of target location for transfer of processor control |
US20160378488A1 (en) | 2015-06-26 | 2016-12-29 | Microsoft Technology Licensing, Llc | Access to target address |
US20170315812A1 (en) | 2016-04-28 | 2017-11-02 | Microsoft Technology Licensing, Llc | Parallel instruction scheduler for block isa processor |
US20180081690A1 (en) * | 2016-09-21 | 2018-03-22 | Qualcomm Incorporated | Performing distributed branch prediction using fused processor cores in processor-based systems |
US10331454B2 (en) * | 2016-09-29 | 2019-06-25 | Intel Corporation | System and method for load balancing in out-of-order clustered decoding |
US20180095766A1 (en) | 2016-10-05 | 2018-04-05 | Centipede Semi Ltd. | Flushing in a parallelized processor |
US10922087B2 (en) * | 2017-11-30 | 2021-02-16 | International Business Machines Corporation | Block based allocation and deallocation of issue queue entries |
CN109101276B (zh) * | 2018-08-14 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 在cpu中执行指令的方法 |
-
2018
- 2018-08-14 CN CN201810922723.5A patent/CN109101276B/zh active Active
-
2019
- 2019-06-13 TW TW108120456A patent/TWI719501B/zh active
- 2019-06-21 SG SG11202010825QA patent/SG11202010825QA/en unknown
- 2019-06-21 EP EP19849120.1A patent/EP3779682A4/en active Pending
- 2019-06-21 WO PCT/CN2019/092241 patent/WO2020034753A1/zh unknown
-
2020
- 2020-10-28 US US17/082,509 patent/US11579885B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102520913A (zh) * | 2011-11-03 | 2012-06-27 | 浙江大学 | 基于分组更新历史信息的并行分支预测装置 |
CN104978282A (zh) * | 2014-04-04 | 2015-10-14 | 上海芯豪微电子有限公司 | 一种缓存系统和方法 |
CN107688468A (zh) * | 2016-12-23 | 2018-02-13 | 北京国睿中数科技股份有限公司 | 推测执行处理器中分支指令与分支预测功能的验证方法 |
Also Published As
Publication number | Publication date |
---|---|
US11579885B2 (en) | 2023-02-14 |
WO2020034753A1 (zh) | 2020-02-20 |
US20210042122A1 (en) | 2021-02-11 |
CN109101276A (zh) | 2018-12-28 |
EP3779682A4 (en) | 2021-06-09 |
SG11202010825QA (en) | 2020-11-27 |
TW202009692A (zh) | 2020-03-01 |
EP3779682A1 (en) | 2021-02-17 |
TWI719501B (zh) | 2021-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109101276B (zh) | 在cpu中执行指令的方法 | |
US7725684B2 (en) | Speculative instruction issue in a simultaneously multithreaded processor | |
US8099586B2 (en) | Branch misprediction recovery mechanism for microprocessors | |
US9146745B2 (en) | Method and apparatus for partitioned pipelined execution of multiple execution threads | |
US7707391B2 (en) | Methods and apparatus for improving fetching and dispatch of instructions in multithreaded processors | |
EP0448499A2 (en) | Instruction prefetch method for branch-with-execute instructions | |
CN101501636A (zh) | 用于基于动态可改变延迟来执行处理器指令的方法和设备 | |
CN112214241B (zh) | 一种分布式指令执行单元的方法及系统 | |
EP1460532A2 (en) | Computer processor data fetch unit and related method | |
WO2021218633A1 (zh) | Cpu指令处理方法、控制器和中央处理单元 | |
CN101884025B (zh) | 用于使过程返回序列加速的方法和系统 | |
US7454596B2 (en) | Method and apparatus for partitioned pipelined fetching of multiple execution threads | |
CN114201219A (zh) | 指令调度方法、指令调度装置、处理器及存储介质 | |
CN114168202B (zh) | 指令调度方法、指令调度装置、处理器及存储介质 | |
US20100306504A1 (en) | Controlling issue and execution of instructions having multiple outcomes | |
CN116048627B (zh) | 指令缓冲方法、装置、处理器、电子设备及可读存储介质 | |
CN115617402B (zh) | 一种适用于通用处理器的解耦合分支预测方法及装置 | |
US20220100519A1 (en) | Processor with multiple fetch and decode pipelines | |
CN109614146B (zh) | 一种局部跳转指令取指方法及装置 | |
CN115080121A (zh) | 指令处理方法、装置、电子设备及计算机可读存储介质 | |
CN115525343A (zh) | 一种并行译码的方法、处理器、芯片及电子设备 | |
CN111026442A (zh) | 一种cpu中用于消除程序无条件跳转开销的方法及装置 | |
JP2001356904A (ja) | プロセッサ | |
JP2005516301A (ja) | 命令実行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40002154 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201009 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee after: Innovative advanced technology Co.,Ltd. Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee before: Advanced innovation technology Co.,Ltd. Effective date of registration: 20201009 Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands Patentee after: Advanced innovation technology Co.,Ltd. Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Patentee before: Alibaba Group Holding Ltd. |