CN101344840A - 一种指令集的优化 - Google Patents

一种指令集的优化 Download PDF

Info

Publication number
CN101344840A
CN101344840A CNA2007101185876A CN200710118587A CN101344840A CN 101344840 A CN101344840 A CN 101344840A CN A2007101185876 A CNA2007101185876 A CN A2007101185876A CN 200710118587 A CN200710118587 A CN 200710118587A CN 101344840 A CN101344840 A CN 101344840A
Authority
CN
China
Prior art keywords
instruction
length
length instruction
bits
microprocessor
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.)
Granted
Application number
CNA2007101185876A
Other languages
English (en)
Other versions
CN101344840B (zh
Inventor
陈新中
卢佳文
梅思行
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Simplight Nanoelectronics Co ltd
Original Assignee
BEIJING SIMPLIGHT NANOELECTRONICS Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING SIMPLIGHT NANOELECTRONICS Co Ltd filed Critical BEIJING SIMPLIGHT NANOELECTRONICS Co Ltd
Priority to CN2007101185876A priority Critical patent/CN101344840B/zh
Publication of CN101344840A publication Critical patent/CN101344840A/zh
Application granted granted Critical
Publication of CN101344840B publication Critical patent/CN101344840B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

本发明提供一种指令集的优化。在第一方面,提供一种微处理器,包括指令存储器,混合存储具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分;指令抽取单元,从指令存储器中提取混合存储的指令,根据操作码从中分离出第一长度指令和第二长度指令;指令译码单元,将第一长度指令和第二长度指令分别译码;和,转移操作单元,当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。采用该优化的指令集,程序代码尺寸得以显著降低。

Description

一种指令集的优化
技术领域
本发明涉及微处理器,具体地说涉及对微处理器所采用的指令集的优化。
背景技术
如今,存储子系统的成本逐渐高于微处理器。压缩代码以适应受到成本或空间限制的存储子系统已经成为嵌入式系统开发的一项重要事务。节约存储成本,一方面需要编写紧凑的代码;另一方面,微处理器的指令集对存储器的消耗同样影响很大。通常,微处理器的指令为32比特,其中有些指令用足32比特,比如ADD Rd,Ra,Rb。有些指令不需要32比特,比如JUMP和PUSH指令。为此,有人设计了16比特的指令子集或者长度指令,以降低代码尺寸。
以ARM公司的代码压缩方案(Thumb)为例。Thumb实际上是添加到ARM的标准RISC指令集之上的独立指令集,由大约36条16位长度指令构成。通过一条模式切换指令在这两种指令集之间进行切换。通过使用这些较短的指令替换ARM标准的32位指令,可以将某些代码的规模减小。然而,Thumb代码和标准ARM代码不能混杂使用,必须显式地在两种模式间进行切换。这迫使程序员将所有的16位代码与32位代码分开并隔离到独立的模块中。图1是采用Thumb方案的代码存储示意图。另外,Thumb模式下不能使用全部寄存器。
还有些代码压缩方案能够实现任意地动态混合16比特和32比特。图2(a)是一种16比特和32比特混合存储的示意图。然而,这样的代码压缩方案需要复杂的硬件配置加以支撑。另外,当转移指令指向i1指令时,i1指令的存储位置受到限制。此时,i0和i1的存储位置如图2(b)所示。由图2(b)可见,存储空间存在一定的浪费。
因此,迫切地需要有一种能够克服以上问题的指令代码压缩方案。
发明内容
在第一方面,本发明提供一种微处理器。微处理器包括指令存储器,混合存储具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分;指令抽取单元,从指令存储器中提取混合存储的指令,根据操作码从中分离出第一长度指令和第二长度指令;指令译码单元,将第一长度指令和第二长度指令分别译码;和,转移操作单元,当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
在第二方面,本发明提供一种在微处理器中执行指令的方法,所述指令包括具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分,所述方法包括:从存储器中提取混合存储的指令;根据操作码从中分离出第一长度指令和第二长度指令;将第一长度指令和第二长度指令分别译码;当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
在第三方面,本发明提供一种计算机程序产品,包括计算机可读介质,其上混合存储具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分,以便在执行时微处理器根据操作码从混合存储的指令分离出第一长度指令和第二长度指令,并且当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
根据第四方面,提供一种供微处理器执行的指令集,包括具有不同长度的第一长度指令和第二长度指令,第一长度指令具有小于第二长度指令的长度,第一长度指令和第二长度指令采用操作码加以区分并且可以混合存储,以便在执行时微处理器根据操作码从混合存储的指令分离出第一长度指令和第二长度指令,并且当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
在第一、第二、第三和第四方面中,优选地,所述第一长度指令具有小于第二长度指令的长度。优选地,操作码在第一长度指令中。优选地,第一长度指令是16比特;第二长度指令是32比特。
本发明有效解决了32比特和16比特指令的混合存储问题,它可以任意混合16比特和32比特;可以分支到任何16比特指令边界。程序代码尺寸得以降低,可以达到20-30%。另外,16比特指令可以全面使用寄存器。
附图说明
下面将参照附图对本发明的优选实施方案进行更详细的说明,其中:
图1是采用Thumb方案的代码存储示意图;
图2(a)是一种现有技术的16比特和32比特指令混合存储的示意图;
图2(b)是现有技术的包含转移指令的混合指令存储的示意图;
图3是根据本发明的一个实施方案的指令格式图;
图4是实施本发明的一种微处理器结构图;以及
图5是指令抽取之后指令缓冲区的一种数据格式示意图。
具体实施方式
图3是根据本发明的一个实施方案的指令格式图。如图3所示,有一个32比特存储空间。该32比特存储空间可能存储一个32比特,也可能存储2个16比特指令。译码时首先将32比特的字当作为32比特指令,并且查看第27-31位。如果第27-31位不是16比特指令的操作码,则表明这是一个32比特指令。如果第27-31位存在16比特指令的操作码,则表明32位字的高16位(第16-31位)属于16比特指令。显然,32位字的低16位(第0-15位)也属于16比特指令,故此低16位译码为另一个16比特指令。
需要说明,该操作码并非仅仅设置在16比特的高5位。它可以设置在16比特的任意位置,也可以由一定数量的比特组合而成。
根据本发明,16比特指令可以全面使用寄存器,比如32个寄存器。通常的指令操作往往需要占用32比特的存储空间。例如add rd r1 r2。它实际进行的操作是rd=r1+r2。由于要全面使用32个寄存器,每个寄存器需要占据5个比特的空间。寄存器rd、r1、r2就要占据5×3=15比特空间。因此,一般意义下16比特存储空间不足以存储完成此类操作的指令。作为变通,一种常规的办法是限制指令所访问的寄存器范围,而将指令从32比特压缩为16比特。本发明针对这种情况作了相应的改变,允许16比特指令访问所有寄存器(32个寄存器)。在一个例子中,在执行add rd r1 r2加法操作时,用2个寄存器r1、r2来解决,也就是add r2 r1 r2,r1、r2仅占用5×2=10比特。这样,原本需要32比特的操作就可以用16比特指令来完成。因此,本发明利用类似的方法来充分利用16比特指令,使得16比特指令可以全面地使用寄存器。
根据本发明,转移指令可以任意转移到16比特边界和32比特边界。在通常的操作中,32比特指令要占4个字节,因此在取指令单元每执行完一次操作,程序计数器PC就要自动加4,在转移控制指令时会把32比特的地址写入PC,因此转移控制指令只能寻找32位边界。在本发明中,为了充分使用16比特指令,在取指令时会针对指令字节数判断指令计数器PC的增加量。在一个例子中,32比特指令加4,16比特指令加2。这样,在执行转移控制指令时,就可以转移到16位的边界。例如分支branch指令既可以寻找32位的地址边界,也可以寻找16位的地址边界。
包含这样的16比特指令和32比特指令的程序(例如c语言)由编译器编译成紧凑的二进制文件,存储在内存或指令高速缓冲存储器(简称指令缓存)中。
图4是实施本发明的微处理器结构图。如图4所示,微处理器包括指令抽取单元410,指令译码单元420和转移操作单元430。
指令抽取单元410从指令缓存提取例如4*32比特的数据。指令抽取单元410根据操作码将其分离为16比特和32比特指令。分离后的指令可以是4条32比特指令,或8条16比特指令,或者其之间的任何组合。
然后,为分离后的指令设置标志位。标志位的作用在于后续译码时确定指令的类型。在一个例子中,标志位包括高有效位V1,低有效位V2和模式位M。图5是指令抽取之后指令缓冲区的一种数据格式示意图。
如图5所示,模式位为1时,表明存在16位指令。此时,若高有效位V1为1,表明高16位是单条16位指令;低有效位V2为1,表明低16位是单条16位指令。若有效位为0,表明相应的位置不存在16位指令,为空。
模式位为0时,表明这是一条32位指令。此时,高、低有效位V1和V2均设定为1。
回到图4。在指令分离之后,指令译码单元420基于各标志位和指令的其它位对分离后的指令做译码。在一个例子中,对多个指令的译码平行进行。
转移操作单元430执行有关的转移操作,允许转移指令(包括分支BRANCH,调用CALL,跳转JUMP指令)转移到任意的16位边界和32位边界。在本发明中,无需单独设立一个模式切换指令。
本发明有效解决了32比特和16比特指令的混合存储问题,它可以任意混合16比特指令和32比特指令;可以转移到任何16比特指令边界。程序代码尺寸得以降低,可以达到20-30%。另外,16比特指令可以全面使用寄存器,32个寄存器均可使用。
需要说明,以上结合32比特和16比特指令对本发明进行了描述。但是,本发明并不仅仅限于32比特和16比特指令,而应当适用于不同长度指令的混合存储。
本发明可以适用于任何微处理器,尤其适用于嵌入式微处理器。
显而易见,在此描述的本发明可以有许多变化,这种变化不能认为偏离本发明的精神和范围。因此,所有对本领域技术人员显而易见的改变,都包括在本权利要求书的涵盖范围之内。

Claims (7)

1.一种微处理器,包括指令存储器,混合存储具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分;指令抽取单元,从指令存储器中提取混合存储的指令,根据操作码从中分离出第一长度指令和第二长度指令;指令译码单元,将第一长度指令和第二长度指令分别译码;和,转移操作单元,当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
2.如权利要求1所述的微处理器,其特征在于第一长度指令是16比特;第二长度指令是32比特。
3.如权利要求1所述的微处理器,其特征在于包括多个寄存器,所述第一长度指令和第二长度指令均全面访问所述多个寄存器。
4.一种在微处理器中执行指令的方法,所述指令包括具有不同长度的第一长度指令和第二长度指令,所述第一长度指令具有小于第二长度指令的长度,所述第一长度指令和第二长度指令采用操作码加以区分,所述方法包括:从存储器中提取混合存储的指令;根据操作码从中分离出第一长度指令和第二长度指令;将第一长度指令和第二长度指令分别译码;当进行转移操作时,转移指令指向第一和第二长度指令之任何一个的边界。
5.如权利要求4所述的方法,其特征在于对分离后的第一和第二长度指令并行译码。
6.如权利要求4所述的方法,其特征在于第一长度指令是16比特;第二长度指令是32比特。
7.如权利要求4所述的方法,其特征在于包括多个寄存器,所述第一长度指令和第二长度指令均全面访问所述多个寄存器。
CN2007101185876A 2007-07-10 2007-07-10 一种微处理器及在微处理器中执行指令的方法 Expired - Fee Related CN101344840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101185876A CN101344840B (zh) 2007-07-10 2007-07-10 一种微处理器及在微处理器中执行指令的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101185876A CN101344840B (zh) 2007-07-10 2007-07-10 一种微处理器及在微处理器中执行指令的方法

Publications (2)

Publication Number Publication Date
CN101344840A true CN101344840A (zh) 2009-01-14
CN101344840B CN101344840B (zh) 2011-08-31

Family

ID=40246851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101185876A Expired - Fee Related CN101344840B (zh) 2007-07-10 2007-07-10 一种微处理器及在微处理器中执行指令的方法

Country Status (1)

Country Link
CN (1) CN101344840B (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104025042A (zh) * 2011-12-30 2014-09-03 英特尔公司 编码以增加指令集密度
CN104040490A (zh) * 2011-11-22 2014-09-10 索夫特机械公司 用于多引擎微处理器的加速的代码优化器
US9766893B2 (en) 2011-03-25 2017-09-19 Intel Corporation Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines
US9811342B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for performing dual dispatch of blocks and half blocks
US9811377B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for executing multithreaded instructions grouped into blocks
US9823930B2 (en) 2013-03-15 2017-11-21 Intel Corporation Method for emulating a guest centralized flag architecture by using a native distributed flag architecture
US9842005B2 (en) 2011-03-25 2017-12-12 Intel Corporation Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9858080B2 (en) 2013-03-15 2018-01-02 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US9886416B2 (en) 2006-04-12 2018-02-06 Intel Corporation Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US9886279B2 (en) 2013-03-15 2018-02-06 Intel Corporation Method for populating and instruction view data structure by using register template snapshots
US9891924B2 (en) 2013-03-15 2018-02-13 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US9898412B2 (en) 2013-03-15 2018-02-20 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US9921845B2 (en) 2011-03-25 2018-03-20 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9934042B2 (en) 2013-03-15 2018-04-03 Intel Corporation Method for dependency broadcasting through a block organized source view data structure
US9940134B2 (en) 2011-05-20 2018-04-10 Intel Corporation Decentralized allocation of resources and interconnect structures to support the execution of instruction sequences by a plurality of engines
US9965281B2 (en) 2006-11-14 2018-05-08 Intel Corporation Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer
US10031784B2 (en) 2011-05-20 2018-07-24 Intel Corporation Interconnect system to support the execution of instruction sequences by a plurality of partitionable engines
US10140138B2 (en) 2013-03-15 2018-11-27 Intel Corporation Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation
US10146548B2 (en) 2013-03-15 2018-12-04 Intel Corporation Method for populating a source view data structure by using register template snapshots
US10169045B2 (en) 2013-03-15 2019-01-01 Intel Corporation Method for dependency broadcasting through a source organized source view data structure
US10198266B2 (en) 2013-03-15 2019-02-05 Intel Corporation Method for populating register view data structure by using register template snapshots
US10228949B2 (en) 2010-09-17 2019-03-12 Intel Corporation Single cycle multi-branch prediction including shadow cache for early far branch prediction
US10521239B2 (en) 2011-11-22 2019-12-31 Intel Corporation Microprocessor accelerated code optimizer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3658101B2 (ja) * 1996-09-13 2005-06-08 株式会社ルネサステクノロジ データ処理装置
WO2003065165A2 (en) * 2002-01-31 2003-08-07 Arc International Configurable data processor with multi-length instruction set architecture
CN1293462C (zh) * 2003-07-23 2007-01-03 凌阳科技股份有限公司 一种执行不同长度指令集的处理器及方法

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10289605B2 (en) 2006-04-12 2019-05-14 Intel Corporation Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US9886416B2 (en) 2006-04-12 2018-02-06 Intel Corporation Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US11163720B2 (en) 2006-04-12 2021-11-02 Intel Corporation Apparatus and method for processing an instruction matrix specifying parallel and dependent operations
US10585670B2 (en) 2006-11-14 2020-03-10 Intel Corporation Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer
US9965281B2 (en) 2006-11-14 2018-05-08 Intel Corporation Cache storing data fetched by address calculating load instruction with label used as associated name for consuming instruction to refer
US10228949B2 (en) 2010-09-17 2019-03-12 Intel Corporation Single cycle multi-branch prediction including shadow cache for early far branch prediction
US10564975B2 (en) 2011-03-25 2020-02-18 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
US11204769B2 (en) 2011-03-25 2021-12-21 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9842005B2 (en) 2011-03-25 2017-12-12 Intel Corporation Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9766893B2 (en) 2011-03-25 2017-09-19 Intel Corporation Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines
US9921845B2 (en) 2011-03-25 2018-03-20 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9934072B2 (en) 2011-03-25 2018-04-03 Intel Corporation Register file segments for supporting code block execution by using virtual cores instantiated by partitionable engines
US9990200B2 (en) 2011-03-25 2018-06-05 Intel Corporation Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines
US9940134B2 (en) 2011-05-20 2018-04-10 Intel Corporation Decentralized allocation of resources and interconnect structures to support the execution of instruction sequences by a plurality of engines
US10031784B2 (en) 2011-05-20 2018-07-24 Intel Corporation Interconnect system to support the execution of instruction sequences by a plurality of partitionable engines
US10372454B2 (en) 2011-05-20 2019-08-06 Intel Corporation Allocation of a segmented interconnect to support the execution of instruction sequences by a plurality of engines
US10521239B2 (en) 2011-11-22 2019-12-31 Intel Corporation Microprocessor accelerated code optimizer
CN104040490A (zh) * 2011-11-22 2014-09-10 索夫特机械公司 用于多引擎微处理器的加速的代码优化器
US10191746B2 (en) 2011-11-22 2019-01-29 Intel Corporation Accelerated code optimizer for a multiengine microprocessor
CN104025042A (zh) * 2011-12-30 2014-09-03 英特尔公司 编码以增加指令集密度
US9891924B2 (en) 2013-03-15 2018-02-13 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US10146576B2 (en) 2013-03-15 2018-12-04 Intel Corporation Method for executing multithreaded instructions grouped into blocks
US10146548B2 (en) 2013-03-15 2018-12-04 Intel Corporation Method for populating a source view data structure by using register template snapshots
US10169045B2 (en) 2013-03-15 2019-01-01 Intel Corporation Method for dependency broadcasting through a source organized source view data structure
US10140138B2 (en) 2013-03-15 2018-11-27 Intel Corporation Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation
US10198266B2 (en) 2013-03-15 2019-02-05 Intel Corporation Method for populating register view data structure by using register template snapshots
US9934042B2 (en) 2013-03-15 2018-04-03 Intel Corporation Method for dependency broadcasting through a block organized source view data structure
US10248570B2 (en) 2013-03-15 2019-04-02 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US10255076B2 (en) 2013-03-15 2019-04-09 Intel Corporation Method for performing dual dispatch of blocks and half blocks
US10275255B2 (en) 2013-03-15 2019-04-30 Intel Corporation Method for dependency broadcasting through a source organized source view data structure
US9904625B2 (en) 2013-03-15 2018-02-27 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US9898412B2 (en) 2013-03-15 2018-02-20 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US10503514B2 (en) 2013-03-15 2019-12-10 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US9886279B2 (en) 2013-03-15 2018-02-06 Intel Corporation Method for populating and instruction view data structure by using register template snapshots
US9858080B2 (en) 2013-03-15 2018-01-02 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
US9823930B2 (en) 2013-03-15 2017-11-21 Intel Corporation Method for emulating a guest centralized flag architecture by using a native distributed flag architecture
US10740126B2 (en) 2013-03-15 2020-08-11 Intel Corporation Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation
US9811377B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for executing multithreaded instructions grouped into blocks
US9811342B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for performing dual dispatch of blocks and half blocks
US11656875B2 (en) 2013-03-15 2023-05-23 Intel Corporation Method and system for instruction block to execution unit grouping

Also Published As

Publication number Publication date
CN101344840B (zh) 2011-08-31

Similar Documents

Publication Publication Date Title
CN101344840B (zh) 一种微处理器及在微处理器中执行指令的方法
EP2186001B1 (en) Implementation of variable length instruction encoding using alias addressing
CN101694613B (zh) 不对准存储器存取预测
CN103488464B (zh) 微处理器以及微处理器操作方法
CN101493762B (zh) 处理数据的方法和设备
CN102033734B (zh) 数据处理引擎
US7272701B2 (en) Method and apparatus for limiting ports in a register alias table having high-bandwidth and low-bandwidth structures
CN103748550B (zh) 用于存储熵编码指令序列及将其翻译成可执行形式的方法和设备
CN101646999A (zh) 以适当的预解码预载来自可变长度指令集的指令的系统、方法和软件
CN101189585A (zh) 字节可寻址存储器的提取索引寻址
Xie et al. A code decompression architecture for VLIW processors
EP2396723B1 (en) Microcontroller with special banking instructions and method therefor
CN100538623C (zh) 一种8位微控制器
CN101911011A (zh) 确定表内的元素的地址的系统和方法
CN101164035A (zh) 基于已知的处理器状态而选择性地启用内容可寻址存储器重命名寄存器文件中的比较器的功率节约方法和设备
JP2006313516A (ja) ローダーを備えた組込みメモリーユニット構造および組込みメモリー装置のシステム構造および作動方法
CN108920188B (zh) 一种扩展寄存器堆的方法及装置
CN100583030C (zh) 一种risc处理器及其数据访存方法
US9195259B1 (en) Method and apparatus for clock-gating registers
CN1306641A (zh) 并行数据处理
CN103327316A (zh) 视频宏块的上下文信息存取方法和系统
CN102566935A (zh) 应用于bios的虚拟磁盘实现方法
CN101601010A (zh) 用于将不常用短代码序列嵌入热代码中而无需分支绕行的方法
CN203057363U (zh) 视频宏块的上下文信息存取系统
CN102169466A (zh) 一种基于页操作的可编程Nandflash控制器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: SUZHOU JIANYUENA ELECTRONICS CO., LTD.

Free format text: FORMER OWNER: BEIJNG SIMPLE LIGHT ELECTRONICS CO., LTD.

Effective date: 20100604

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100088 ROOM 1001, BLOCK B, JINQIU INTERNATIONAL BUILDING, NO.6, ZHICHUN ROAD, HAIDIAN DISTRICT, BEIJING TO: 215021 ROOM A-0305, INTERNATIONAL SCIENCE PARK, NO.1355, JINJIHU AVENUE, SUZHOU CITY INDUSTRIAL PARK DISTRICT

TA01 Transfer of patent application right

Effective date of registration: 20100604

Address after: 215021 A-0305, international science and Technology Park, 1355 Jinji Lake Avenue, Suzhou Industrial Park

Applicant after: SUZHOU SIMPLIGHT NANOELECTRONICS CO.,LTD.

Address before: 100088 Beijing City, Haidian District Zhichun Road Jinqiu International Building No. 6 room 1001 building B

Applicant before: BEIJING SIMPLIGHT NANOELECTRONICS Co.,Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110831