CN105183429B - 解码被一个或多个其它指令修改的指令 - Google Patents
解码被一个或多个其它指令修改的指令 Download PDFInfo
- Publication number
- CN105183429B CN105183429B CN201510247606.XA CN201510247606A CN105183429B CN 105183429 B CN105183429 B CN 105183429B CN 201510247606 A CN201510247606 A CN 201510247606A CN 105183429 B CN105183429 B CN 105183429B
- Authority
- CN
- China
- Prior art keywords
- instruction
- elementary
- prefix
- program
- decoding unit
- 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
- 230000004048 modification Effects 0.000 title abstract description 52
- 238000012986 modification Methods 0.000 title abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 88
- 238000004590 computer program Methods 0.000 claims abstract description 26
- 238000003860 storage Methods 0.000 claims description 41
- 238000012545 processing Methods 0.000 claims description 36
- 230000004044 response Effects 0.000 claims description 22
- 238000004458 analytical method Methods 0.000 claims description 14
- 230000014759 maintenance of location Effects 0.000 claims description 2
- 230000009191 jumping Effects 0.000 abstract description 15
- 239000003607 modifier Substances 0.000 description 42
- 230000006870 function Effects 0.000 description 13
- 230000000694 effects Effects 0.000 description 6
- 210000003811 finger Anatomy 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000005856 abnormality Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000012369 In process control Methods 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011982 device technology Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000010965 in-process control Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
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/30181—Instruction operation extension or modification
- G06F9/30196—Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/30181—Instruction operation extension or modification
- G06F9/30185—Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
-
- 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/3818—Decoding for concurrent execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
Claims (8)
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1409326.4 | 2014-05-27 | ||
GB1409326.4A GB2521019B (en) | 2014-05-27 | 2014-05-27 | Decoding instructions that are modified by one or more other instructions |
GB1501619.9 | 2015-01-30 | ||
GB1501621.5A GB2526648B (en) | 2014-05-27 | 2015-01-30 | Storing a computer program in program memory |
GB1501620.7A GB2526647B (en) | 2014-05-27 | 2015-01-30 | Decoding base instructions that are modified by a postfix instruction |
GB1501620.7 | 2015-01-30 | ||
GB1501621.5 | 2015-01-30 | ||
GB1501619.9A GB2526646B (en) | 2014-05-27 | 2015-01-30 | Decoding base instructions modified by a prefix instruction using modifier bits |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105183429A CN105183429A (zh) | 2015-12-23 |
CN105183429B true CN105183429B (zh) | 2019-06-11 |
Family
ID=51177454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510247606.XA Active CN105183429B (zh) | 2014-05-27 | 2015-05-15 | 解码被一个或多个其它指令修改的指令 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9898293B2 (zh) |
CN (1) | CN105183429B (zh) |
DE (1) | DE102015107875A1 (zh) |
GB (4) | GB2521019B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10761852B2 (en) * | 2015-09-30 | 2020-09-01 | International Business Machines Corporation | Extending data range addressing |
US10394568B2 (en) * | 2015-09-30 | 2019-08-27 | International Business Machines Corporation | Exception handling for applications with prefix instructions |
US10877759B2 (en) | 2015-09-30 | 2020-12-29 | International Business Machines Corporation | Managing the capture of information in applications with prefix instructions |
GB2543304B (en) * | 2015-10-14 | 2020-10-28 | Advanced Risc Mach Ltd | Move prefix instruction |
US10061580B2 (en) | 2016-02-25 | 2018-08-28 | International Business Machines Corporation | Implementing a received add program counter immediate shift (ADDPCIS) instruction using a micro-coded or cracked sequence |
US10572259B2 (en) * | 2018-01-22 | 2020-02-25 | Arm Limited | Hints in a data processing apparatus |
US10884720B2 (en) * | 2018-10-04 | 2021-01-05 | Microsoft Technology Licensing, Llc | Memory ordering annotations for binary emulation |
US11520561B1 (en) * | 2018-11-28 | 2022-12-06 | Amazon Technologies, Inc. | Neural network accelerator with compact instruct set |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5819080A (en) * | 1996-01-02 | 1998-10-06 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to specify condition flags for use with branch instructions and a computer system employing the microprocessor |
CN1431585A (zh) * | 2002-08-22 | 2003-07-23 | 智慧第一公司 | 延伸微处理器地址模式的装置及方法 |
CN1434937A (zh) * | 1999-12-17 | 2003-08-06 | 英特尔公司 | 检测单字节前缀和分支的长度解码 |
CN101436122A (zh) * | 2008-11-25 | 2009-05-20 | 中国科学院微电子研究所 | 一种实现指令并行执行的优化方法和装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3711422B2 (ja) * | 1995-12-20 | 2005-11-02 | セイコーエプソン株式会社 | 情報処理回路 |
US6970998B1 (en) * | 2002-02-22 | 2005-11-29 | Redback Networks Inc. | Decoding suffix instruction specifying replacement destination for primary instruction |
JP3627725B2 (ja) * | 2002-06-24 | 2005-03-09 | セイコーエプソン株式会社 | 情報処理装置及び電子機器 |
US20090089564A1 (en) * | 2006-12-06 | 2009-04-02 | Brickell Ernie F | Protecting a Branch Instruction from Side Channel Vulnerabilities |
JP5471082B2 (ja) * | 2009-06-30 | 2014-04-16 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
GB2486737B (en) * | 2010-12-24 | 2018-09-19 | Qualcomm Technologies Int Ltd | Instruction execution |
US9329869B2 (en) * | 2011-10-03 | 2016-05-03 | International Business Machines Corporation | Prefix computer instruction for compatibily extending instruction functionality |
US9804852B2 (en) * | 2011-11-30 | 2017-10-31 | Intel Corporation | Conditional execution support for ISA instructions using prefixes |
-
2014
- 2014-05-27 GB GB1409326.4A patent/GB2521019B/en not_active Expired - Fee Related
-
2015
- 2015-01-30 GB GB1501620.7A patent/GB2526647B/en not_active Expired - Fee Related
- 2015-01-30 GB GB1501619.9A patent/GB2526646B/en not_active Expired - Fee Related
- 2015-01-30 GB GB1501621.5A patent/GB2526648B/en not_active Expired - Fee Related
- 2015-05-15 CN CN201510247606.XA patent/CN105183429B/zh active Active
- 2015-05-19 DE DE102015107875.9A patent/DE102015107875A1/de active Pending
- 2015-05-27 US US14/722,292 patent/US9898293B2/en active Active
-
2018
- 2018-01-18 US US15/874,724 patent/US10379861B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5819080A (en) * | 1996-01-02 | 1998-10-06 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to specify condition flags for use with branch instructions and a computer system employing the microprocessor |
CN1434937A (zh) * | 1999-12-17 | 2003-08-06 | 英特尔公司 | 检测单字节前缀和分支的长度解码 |
CN1431585A (zh) * | 2002-08-22 | 2003-07-23 | 智慧第一公司 | 延伸微处理器地址模式的装置及方法 |
CN101436122A (zh) * | 2008-11-25 | 2009-05-20 | 中国科学院微电子研究所 | 一种实现指令并行执行的优化方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
GB2526648A (en) | 2015-12-02 |
US10379861B2 (en) | 2019-08-13 |
GB201409326D0 (en) | 2014-07-09 |
GB201501619D0 (en) | 2015-03-18 |
GB2521019A (en) | 2015-06-10 |
GB2526646B (en) | 2016-05-25 |
GB2521019B (en) | 2016-05-25 |
GB2526647A (en) | 2015-12-02 |
US20150347144A1 (en) | 2015-12-03 |
GB2526647B (en) | 2016-05-25 |
GB2526648B (en) | 2018-09-26 |
GB201501620D0 (en) | 2015-03-18 |
DE102015107875A1 (de) | 2015-12-03 |
US9898293B2 (en) | 2018-02-20 |
CN105183429A (zh) | 2015-12-23 |
GB201501621D0 (en) | 2015-03-18 |
US20180143835A1 (en) | 2018-05-24 |
GB2526646A (en) | 2015-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105183429B (zh) | 解码被一个或多个其它指令修改的指令 | |
US10999214B2 (en) | Secure memory with restricted access by processors | |
CN100487642C (zh) | D缓存缺失预测和调度的方法和装置 | |
CN106062708B (zh) | 在具有地址空间布局随机化的系统中的二进制转化重用 | |
CN103383640B (zh) | 提高向量分解循环的性能 | |
KR101804908B1 (ko) | 캐시 점유도 결정 및 명령어 스케줄링을 위한 방법 및 장치 | |
TWI223195B (en) | Optimized branch predictions for strongly predicted compiler branches | |
CN104756090B (zh) | 提供扩展的缓存替换状态信息 | |
TWI506544B (zh) | 來自多指令集的指令解碼 | |
US20150227365A1 (en) | Processor Supporting Arithmetic Instructions with Branch on Overflow & Methods | |
CN102804135A (zh) | 用于处理向量指令的数据处理设备和方法 | |
CN101025681A (zh) | 最小化未调度d缓存缺失流水线停顿的方法和装置 | |
CN107735775A (zh) | 用于使用与指针相关联的范围信息来执行指令的装置和方法 | |
US10606600B2 (en) | Fetched data in an ultra-short piped load store unit | |
CN112905242B (zh) | 分支路径跳转方法、装置、存储介质及电子装置 | |
KR20160031503A (ko) | 마이크로프로세서에서의 선택적 리네이밍을 위한 방법 및 장치 | |
TW201732561A (zh) | 用於控制流向終止的模式特定結束分支 | |
TW202113592A (zh) | 用以在臆測執行期間認為安全時省略安全性檢查的硬體 | |
US20140250289A1 (en) | Branch Target Buffer With Efficient Return Prediction Capability | |
US20150227371A1 (en) | Processors with Support for Compact Branch Instructions & Methods | |
US9817763B2 (en) | Method of establishing pre-fetch control information from an executable code and an associated NVM controller, a device, a processor system and computer program products | |
CN112596792B (zh) | 分支预测方法、装置、介质及设备 | |
CN104615408B (zh) | 微处理器、集成电路与提供微码指令储存空间的方法 | |
US11144238B1 (en) | Background processing during remote memory access | |
CN102902548A (zh) | 汇编级内存复制标准库函数的生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Hertfordshire Applicant after: Mex Technology Co.,Ltd. Address before: Hertfordshire Applicant before: Hai Luo Software Co.,Ltd. |
|
TA01 | Transfer of patent application right |
Effective date of registration: 20180713 Address after: California, USA Applicant after: Imagination Technologies Ltd. Address before: Hertfordshire Applicant before: Mex Technology Co.,Ltd. Effective date of registration: 20180713 Address after: Hertfordshire Applicant after: Hai Luo Software Co.,Ltd. Address before: Hertfordshire Applicant before: Imagination Technologies Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |