CN1490726A - 信息处理装置以及电子设备 - Google Patents
信息处理装置以及电子设备 Download PDFInfo
- Publication number
- CN1490726A CN1490726A CNA031477313A CN03147731A CN1490726A CN 1490726 A CN1490726 A CN 1490726A CN A031477313 A CNA031477313 A CN A031477313A CN 03147731 A CN03147731 A CN 03147731A CN 1490726 A CN1490726 A CN 1490726A
- Authority
- CN
- China
- Prior art keywords
- instruction
- target
- service
- target word
- decoding
- 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
Links
- 230000003750 conditioning effect Effects 0.000 claims description 57
- 238000005034 decoration Methods 0.000 claims description 49
- 238000006073 displacement reaction Methods 0.000 claims description 44
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 28
- 238000010586 diagram Methods 0.000 description 47
- 238000000034 method Methods 0.000 description 36
- 230000008569 process Effects 0.000 description 33
- 230000015572 biosynthetic process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 25
- 238000012856 packing Methods 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000012797 qualification 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/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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
-
- 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/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- 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
-
- 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
- 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
Abstract
本发明的目的在于提供一种信息处理装置以及电子设备,其在不增大电路规模的前提下可高速执行,并且价格性能比良好,其指令系统包括预处理指令。进行流水线控制的信息处理装置包括:读取电路(20),其将多个指令的指令码读取到指令队列(30);预处理指令专用译码电路(40),其输入译码前的指令码,判断是否为指定的预处理指令,当是指定的预处理指令时,将目标指令译码所必需的信息,存储到目标指令修饰信息寄存器(50);以及译码电路(60),其将预处理指令以外的指令码作为译码对象指令输入,并进行译码。当译码对象指令为目标指令时,根据目标指令修饰信息,对预处理指令修饰的目标指令进行译码。
Description
技术领域
本发明涉及一种信息处理装置以及电子设备。
背景技术
本申请人发明了一种微型计算机(广义上指信息处理装置),该计算机具有指令系统,该指令系统设置在目标指令前,包括修饰(扩展)目标指令功能的预处理指令。例如当目标指令包括即值时,该预处理指令可给出该即值的高位位,并具有对目标指令的即值进行扩展的ext指令等。
但是,以往在流水线控制的微型计算机中,为实现由预处理指令修饰目标指令的功能,需要执行预处理指令和目标指令两个指令,需要两个时钟脉冲。
在这里,影响微型计算机性能的最重要因素是其执行速度,所以,最好提供一种以尽可能低的成本,实现高速执行,并且价格性能比良好的微型计算机。
发明内容
本实施例是一种进行流水线控制的信息处理装置,包括:
读取电路,其将指定目标指令和多个指令的指令码读取到指令队列,该多个指令的指令码设置在该目标指令前,包括修饰目标指令功能的预处理指令;
预处理指令专用译码电路,其输入读取到指令队列的译码前的指令码,判断是否为指定的预处理指令,当是指定的预处理指令时,将预处理指令修饰的目标指令译码所必需的信息,存储到目标指令修饰信息寄存器,再进行预处理指令专用译码处理;以及
译码电路,其将读取到指令队列的预处理指令以外的指令码作为译码对象指令来输入,并进行译码,
该译码电路的特征是:
当译码对象指令为目标指令时,根据目标指令修饰信息保持寄存器中存储的目标指令修饰信息,对预处理指令修饰的目标指令进行译码。
另一个实施例是一种电子设备,其特征包括:
以上所述的信息处理装置;
接收输入信息的装置;
用于输出的装置,其根据输入信息,输出该信息处理装置的处理结果。
附图说明
图1是对现有的微型计算机(广义上指信息处理装置)中流水线控制的一个实例进行说明的示意图。
图2A和图2B是对本实施例的特征进行说明的示意图。
图3是对本实施例的微型计算机(广义上指信息处理装置)的构成进行说明的功能框图。
图4表示的是对读取电路中的指令队列的具体电路结构的一个实例进行说明的示意图。
图5A和图5B是对即值扩展预处理指令及其目标指令进行说明的示意图。
图6A~图6C表示的是类型1指令的操作式和执行该操作时使用的已扩展的即值字段图。
图7是当预处理指令为即值扩展预处理指令时,就预处理指令专用译码电路对指令队列的指令进行译码处理的流程进行说明的流程图。
图8是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有即值扩展预处理指令中的目标指令。
图9A、图9B和图9C是对移位预处理指令进行说明的示意图。
图10是当预处理指令为移位预处理指令时,就预处理指令专用译码电路对指令队列中的指令进行译码处理的流程进行说明的流程图。
图11是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有移位预处理指令中的目标指令。
图12A、图12B和图12C是对寄存器扩展预处理指令进行说明的示意图。
图13是当预处理指令为寄存器扩展预处理指令时,就预处理指令专用译码电路对指令队列中的指令进行译码处理的流程进行说明的流程图。
图14是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有寄存器扩张预处理指令中的目标指令。
图15A、图15B和图15C是对执行控制预处理指令进行说明的示意图。
图16是当预处理指令为执行控制预处理指令时,就预处理指令专用译码电路对指令队列中的指令进行译码处理的流程进行说明的流程图。
图17是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有执行控制预处理指令中的目标指令。
图18A、图18B和图18C示出了含有微型计算机的电子设备的一个实例的框图。
图19A、图19B和图19C示出了各种电子设备的实例外观图。
具体实施方式
以下,就本实施例进行说明。
另外,以下说明的本实施例,不是对权利要求书中描述的本发明内容的限定。而且本实施例中所描述的全部构件,不一定是本发明所必须的构成要件。
(1)本实施例是一种进行流水线控制的信息处理装置,包括:
读取电路,其将指定目标指令和多个指令的指令码读取到指令队列,该多个指令的指令码设置在该目标指令前,包括修饰目标指令功能的预处理指令;
预处理指令专用译码电路,其输入读取到指令队列的译码前的指令码,判断是否为指定的预处理指令,当是指定的预处理指令时,将预处理指令修饰的目标指令译码所必需的信息,存储到目标指令修饰信息寄存器,再进行预处理指令专用译码处理;以及,
译码电路,其将读取到指令队列的预处理指令以外的指令码作为译码对象指令来输入,并进行译码,
该译码电路的特征是:
当译码对象指令为目标指令时,根据目标指令修饰信息保持寄存器中存储的目标指令修饰信息,对预处理指令修饰的目标指令进行译码。
本实施例的信息处理装置,输入目标指令以及扩展该目标指令功能的预处理指令。在后续的目标指令得到执行时,预处理指令具有扩展其目标指令的功能。
这里所说的指令队列是指在译码之前,指令码的存储队列,也可以是读取队列或者预读取队列等。
译码对象指令是否为目标指令,也可以根据译码对象指令的指令码以及目标指令修饰信息寄存器两者中的至少一个来进行判断。
另外,译码对象指令不是目标指令时所进行的译码,实现的是该指令的通常功能。
预处理指令专用译码电路也可以在指令队列中存储的各指令移交到译码电路的至少大于等于1个时钟脉冲之前读出该指令,再进行预处理指令专用译码处理。另外,当读出的指令为预处理指令时,至少在修饰的目标指令译码前,把预处理指令修饰的目标指令译码所必需的信息,存储到目标指令修饰信息寄存器。
而且,当存储在指令队列的指令为预处理指令时,该指令控制译码电路不进行译码。
这样,可使预处理指令,在译码电路中不被译码,在提前执行的其他指令被译码电路译码期间,通过预处理指令专用译码电路进行译码后,将执行目标指令所必需的信息,存储到目标指令修饰信息寄存器。另外,在目标指令译码时,参照目标指令修饰信息寄存器,进行译码,因此,实质上在0时钟脉冲里就可以实现预处理指令,并可以实现信息处理装置的高速化。
而且,预处理指令专用译码电路的电路规模和通常的译码电路相比非常小,因此,不会导致电路规模的增大,可以实现信息处理装置的高速化。
(2)本实施例的信息处理装置的特征在于:
该指定的预处理指令,包括即值扩展预处理指令,其用于对目标指令执行时所必需的即值进行扩展,该目标指令是该预处理指令的功能扩展对象;
该预处理指令专用译码电路,
当输入的指令码为即值扩展预处理指令时,将所必需的即值扩展信息存储到目标指令修饰信息寄存器,以使在即值扩展预处理指令修饰的目标指令执行时扩展即值;
该译码电路,
当译码对象指令为即值扩展预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的该即值扩展信息,在执行即值扩展预处理指令修饰的目标指令时,扩展即值,然后译码,以执行目标指令。
所谓的在目标指令执行时扩展即值所必需的即值扩展信息,例如,包括执行时所必需的即值的部分位的值(相当于扩展部分的位值等)等。
这里所说的即值的扩展,例如,除了例如通常的立即扩展和符号扩展之外,还包括延长指令码中描述的即值的位的宽度,对已延长的部分,补充设定的位的情况。
根据本实施例,不会导致电路规模的增大,即值扩展预处理指令扩展执行目标指令时所必需的即值,实际上可在0时钟脉冲实现,并可以实现信息处理装置的高速化。
(3)本实施例的信息处理装置的特征在于:
该指定的预处理指令,包括移位预处理指令,其用于将目标指令的执行结果移位,该目标指令是该预处理指令的功能扩展对象;
该预处理指令专用译码电路,
当已输入的指令码为移位预处理指令时,将移位信息存储到目标指令修饰信息寄存器中,该移位信息是对移位预处理指令修饰的移位目标指令的执行结果进行移位所必需的;
该译码电路,
当译码对象指令为移位预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的该移位信息,对移位预处理指令修饰的目标指令的执行结果进行移位,然后译码,以执行目标指令。
所谓的移位目标指令的执行结果所必需的移位信息,包括:目标指令的实施结果例如作左移位还是作右移位的信息;作逻辑移位还是作算术移位的信息;移位数(移位值)等。
根据本实施例,不会导致电路规模的增大,移位预处理指令对目标指令的执行结果进行移位,实际上可在0时钟脉冲内实现,并能实现信息处理装置的高速化。
(4)本实施例的信息处理装置的特征在于:
该指定的预处理指令,包括寄存器扩展预处理指令,其对成为该预处理指令的功能扩展对象的目标指令的执行所必需的寄存器进行扩展;
该预处理指令专用译码电路,
当已输入的指令码为寄存器扩展预处理指令时,在执行用寄存器扩展预处理指令修饰的目标指令时,把扩展寄存器所必需的寄存器扩展信息,存储到目标指令修饰信息寄存器;
该译码电路,
当译码对象指令为寄存器扩展预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的该寄存器扩展信息,在执行用寄存器扩展预处理指令修饰的目标指令时,扩展寄存器,然后译码,以使目标指令得到执行。
所谓的目标指令执行时扩展寄存器所必需的寄存器扩展信息,包括例如执行目标指令时使用的通用寄存器号码的信息等。
根据本实施例,不会导致电路规模增大,寄存器扩展预处理指令在执行目标指令时扩展需要的寄存器,实际上可在0时钟脉冲内实现,并能实现信息处理装置的高速化。
(5)本实施例的信息处理装置的特征在于:
该指定的预处理指令,包括执行控制预处理指令,其用来控制成为该预处理指令的功能扩展对象的目标指令有无被执行;
该预处理指令专用译码电路,
当已输入的指令码为执行控制预处理指令时,把控制目标指令有无执行所必需的执行控制信息,存储到目标指令修饰信息寄存器,该目标指令是执行控制预处理指令所修饰的目标指令;
该译码电路,
当译码对象指令为执行控制预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的该执行控制信息,判断有无执行目标指令,然后译码,以使执行目标指令,该目标指令是被执行控制预处理指令修饰的目标指令。
所谓的控制目标指令的有无执行所必需的执行控制信息也可以是,例如,当根据执行控制预处理指令之前执行的比较指令的比较结果,控制目标指令有无执行时,与目标指令未执行或者目标指令执行相对应的比较结果等。
而且,当比较指令的比较结果与被定义的比较码一致时,也可以将目标指令设定成NOP指令。
根据本实施例,不会导致电路规模的增大,用于控制目标指令有无执行的执行控制预处理指令,实质上可在0时钟脉冲内实现,并能实现信息处理装置的高速化。
(6)本实施例的信息处理装置的特征在于:
该读取电路,
连接的总线带宽至少大于等于指令码两倍,通过该总线,在1个时钟脉冲里,将多个指令读取到指令队列。
(7)本实施例的信息处理装置的特征在于:
目标指令连续配置在修饰该目标指令的预处理指令之后;
该译码电路在第一指令的译码中,该预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
(8)本实施例描述了一种电子设备,其特征在于包括:
上述任一所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出该信息处理装置的处理结果。
根据本实施例,由于内装了低成本、且可以高速运行的信息处理装置,从而可以提供一种廉价而又高性能的电子设备。
以下参照附图对本发明的优选实施例进行详细说明。
1.信息处理装置
图1是对在以往的微型计算机(广义上指信息处理装置)中进行流水线控制的一个实例进行说明的示意图。
该图表示的是在进行Fetch(F),Decode(D),Execute(E),Access(A),Write(W)5段流水线控制的微型计算机中,处理①~④指令的时间表。
这里②ext和③ext均是修饰后续的④add的预处理指令。即④add是由②ext和③ext修饰的目标指令。
在进行流水线控制的微型计算机中,当执行包括预处理指令和目标指令的4个指令时,如该图时间表所示,需要4个时钟脉冲。
图2A和图2B是对本实施例的特征进行说明的示意图。图2A是对本实施例的信息处理装置的特征部分构成进行说明的示意图。本实施例的信息处理装置包括:读取电路20,其将多个指令的指令码读取到指令队列(预读取队列)30-0,30-1...;预处理指令专用译码电路40,其输入被读取到指令队列30的译码前的指令码(这里为存储在队列1(30-1)的指令码、存储在队列2(30-2)的指令码),再判断是否为指定的预处理指令,当为预处理指令时,其将预处理指令修饰的目标指令的译码所必需的信息,存储到目标指令修饰信息寄存器50,进行预处理指令专用译码处理;译码电路60,其对读取到指令队列30的预处理指令之外的指令码进行输入,并且进行译码;以及执行电路70,其执行被译码的指令。
图2B是对本实施例的信息处理装置的特征部分动作进行说明的示意图。
这里图1中的①~④指令(sub,ext,ext,add)存储到指令队列30-0、30-1...。
指令队列0(30-0)中存储的第一指令(这里为sub)在被传送到译码电路60的同时(s1),指令队列1(30-1)中存储的第二指令(这里为ext)、指令队列2(30-2)中存储的第三指令(这里为ext),被输入到预处理指令专用译码电路40(s2,s3),该译码电路60在第一指令(这里为sub)的译码中,该预处理指令专用译码电路40对续在第一指令后的第二指令(这里为ext)以及第三指令(这里为ext),进行预处理指令专用译码处理。
在这里,因为第二指令(在这里为ext)以及第三指令(在这里为ext)是预处理指令,所以,预处理指令修饰的目标指令的译码所必需的信息,被存储到目标指令修饰信息寄存器50(S4)。
接下来,指令队列1(30-1)中存储的第二指令(在这里为ext)、指令队列2(30-2)中存储的第三指令(在这里为ext),因为是预处理指令,所以,这些指令不向译码电路传送,指令队列3(30-0)中存储的第4指令(在这里为add)被传送到译码电路60(S5)。在译码电路中,输入目标指令修饰信息寄存器50中存储的信息(S6),对第4指令(在这里为add)进行译码处理,使其作为被预处理指令修饰的目标指令执行。
通过这种做法,实质上,预处理指令的执行为0时钟脉冲。
并且在这里,就该指令码译码电路在队列1中存储的指令码的第一指令译码中,该预处理指令专用译码电路对在队列1(30-1)中存储的指令码以及队列2(30-2)中存储的第二指令以及第三指令,进行预处理指令专用译码处理的情况做出了说明,但并不仅限于此。
例如,当修饰1个目标指令的预处理指令只有1个的情况时,该指令码译码电路在第一指令的译码中,该预处理指令专用译码电路对第二指令进行预处理指令专用译码处理。
另外,例如,当修饰1个目标指令的预处理指令有n个的情况时,该指令码译码电路在第一指令译码中,该预处理指令专用译码电路对第二~第n+1指令进行预处理指令专用译码处理。
图3是对本实施例的微型计算机(广义上指信息处理装置)的构成进行说明的功能块图。
本实施例的微型计算机包括:CPU(广义上是处理电路)10和BCU(总线控制单元)100。并且,微型计算机100除此以外还可包括ROM(Read Only Memory)、RAM(Random Access Memory)、MMU(Memory Management Unit)、DMAC(Direct Access MemoryController)、LCD(Liquid Crystal Disply)驱动器或者SIO(Serial InputOutput)等各种外围电路。
CPU 10按照ROM和RAM中存储的程序,对指令的读取、指令的译码、运算处理、向寄存器写入等进行流水线控制。CPU 10的构成是处理32位宽的数据,但处理16位的指令码。
BCU(总线控制单元)100对没有图示的32位的指令数据总线、用于指令数据存取的指令地址总线、32位数据总线、用于数据存取的数据地址总线和用于控制信号的控制总线等的各种总线进行总线控制处理。
而且,该CPU 10通过该各种总线与外部进行信号通信。
另外CPU 10的构成包括:读取电路20;预处理指令专用译码电路40;译码电路60;执行电路70;寄存器文件80(通用寄存器82、特殊寄存器84);以及指令地址生成器90等。
读取电路20,将指定的目标指令和放置在该目标指令之前、包括具有修饰目标指令功能的预处理指令的多个指令的指令码,预读取到指令队列(例如预读取队列)30-0,30-1...。
预处理指令专用译码电路40通过信号线与指定的指令队列(在这里为30-1,30-2)连接,输入读取到指定的指令队列的译码前的指令码,判断是否为指定的预处理指令,当是指定的预处理指令时,将预处理指令修饰的目标指令的译码所必需的信息,存储到目标指令修饰信息保持寄存器50。
译码电路60通过信号线连接到指令队列,对读取到指令队列中的预处理指令以外的指令码进行输入,并译码。
另外,该译码电路包括目标指令译码电路62通过信号线连接目标指令修饰信息寄存器50,输入目标指令修饰信息寄存器50中存储的目标指令修饰信息,对由预处理指令所修饰的目标指令进行译码。
执行电路70,根据该译码电路60译码的指令的操作内容,执行该指令。执行电路70包括进行数据运算的数据运算电路72和进行地址运算的地址运算电路74,根据需要,访问通用寄存器84和存储器(RAM等),执行由译码电路60译码的指令的功能。
寄存器文件90拥有通用寄存器R0~R15的16个通用寄存器、程序计数器(PC)、处理机状态寄存器(PSR)、顺序处理机(SP)、运算低位寄存器(ALR)、运算高位寄存器(AHR)等CPU使用的寄存器。
指令地址生成器90,根据没有图示的程序计数器等,生成在指令队列上读取的指令地址。
图4是对读取电路的指令队列的具体电路构成的一个实例进行说明的示意图。
读取电路通过没有图示的总线和信号线IRIN,输入存储在ROM和RAM中的指令码。在这里,对指令长度为16位、数据传送为32位的运行情况进行说明。
另外,可以这样构成:指令队列Q0~Q5具有6个指令队列,可以读取6个指令码。
读取电路将读入的32位数据分成位(31:16)部分和位(15:0)部分,按Q0~Q5顺序存储、按顺序译码,这样控制其执行。例如,还可以:检索是否可以按指令队列Q0~Q5的顺序使用,然后,存储可使用的队列中读入的指令。
另外,读取电路进行的控制是,各时钟脉冲都向译码电路输入指令队列Q0的输出,以相同的计时向预处理指令专用译码电路输入指令队列Q1和Q2的输出。
而且,预处理指令专用译码电路40,当判断指令队列Q1和Q2指令为指定的预处理指令时,控制这些个指令使之不能输入到译码电路。也进行这样控制:例如当指令队列Q1和Q2指令是指定的预处理指令时,不存储到指令队列Q0,而是将Q3存储到Q0,使这些个指令不向译码电路输入。
另外,存储在指令队列Q5~Q3的指令,控制经由指令队列Q1或者指令队列Q2的任一个,使其存储到指令队列Q0。通过这种做法,通过预处理指令专用译码电路40,可以判断出各指令是否是预处理指令,当是预处理指令时,可令其进行预处理指令专用的译码。
并且,在上例中,连接具有指令码2倍带宽的总线,1个时钟脉冲可读取2个指令,以这样的电路构成为例进行了说明,但并不仅限于此。
例如,也可以这样构成:连接的总线带宽至少大于等于指令码的3倍,通过该总线,将大于等于3个指令的指令,以1个时钟脉冲读取到指令队列。
2.即值扩展预处理指令
图5A是指令码210的位字段示意图,该指令码210是可能成为即值扩展预处理指令的目标指令的指令,图5B表示的是ext指令(即值扩展预处理指令)的指令码220的位字段。位字段的上的数字表示位的位置,如该图(A)和(B)所示,指令码有从位15到位0的16位宽的字段。
指令码210可能成为图5A所示的即值扩展预处理指令的目标指令的指令,其具有从位15到位10的6位操作码指定区域212、从位9到位4的6位即值指定区域216,以及从位3到位0的4位寄存器指定区域218。
操作码指定区域212中存储有用于特定操作内容的操作码。
该即值指定区域216中存储有6位即值(imm6)的值,寄存器指定区域218中存储有表示某一个通用寄存器(rd)的代码。
在这里可能成为即值扩展预处理指令的目标指令的指令,对该即值(imm6)和通用寄存器(rd)进行该操作码表示的运算,对通用寄存器(rd)进行写入结果的动作指令。
另外,如图5B所示,ext指令(即值扩展预处理指令)的指令码220具有从位15到位13的3位操作码指定区域222,以及指定从位12到位0的13位即值的区域224。
操作码指定区域212中,存储有表示其为即值扩展预处理指令的操作码。
在指定该即值的区域224中,存储有13位即值(imm13)的值。
由于ext指令是预处理指令,所以不单独在CPU的ALU进行任何运算等的执行,但在后续的目标指令得到执行时,对其目标指令执行中使用的即值,具有扩展功能。例如,如图5A的指令,指令码中包含即值的指令为ext指令的目标指令的情况下,在执行目标指令时,使用ext指令的6位即值(imm6),对目标指令的指令码中含有的即值,具有扩展功能。
在这里,首先就类型1指令被单独执行时的执行内容进行说明。图3中,首先,类型1指令从没有图示的ROM,通过没有图示的指令数据总线,由读取电路20存储到指令寄存器队列30。而且,通过预处理指令专用译码电路40,可判断出是否为预处理指令。
而且,由于不是预处理指令,所以被输入到译码电路60进行译码。此时由于译码对象指令不是目标指令,所以进行通常功能(不用预处理指令扩展的功能)的译码,执行通常的功能。
也就是说,指令码指定的通用寄存器(rd)中存储的数据由寄存器文件80输入到ALU(数据运算电路72)。另外,指令码指定的即值(imm6)由指令译码电路输出,在没有图示的即值生成电路170中,该即值(imm6)被立即扩展或者符号扩展为32位,该被扩展的即值被输入到ALU(数据运算电路72)。而且,ALU(数据运算电路72)进行类型1指令的操作码表示的运算,将运算结果存到寄存器文件80的通用寄存器(rd)。
这样,可能成为即值扩展预处理指令的目标指令的指令既可以单独执行,也可以和这之前的1个或者多个ext指令组合执行。当和ext指令组合执行的情况,首先,存储在指令队列的ext指令,在目标指令专用译码电路(参照图3的40)被译码,指令码指定的即值(图5B的imm13),由目标指令专用译码电路输出,被存储到目标指令修饰信息寄存器50。
然后,ext指令后续的目标指令被读入译码电路中,通过目标指令功能扩展电路(参见图3的62),使用目标指令修饰信息寄存器(参见图3的50)保持的先前的ext指令的即值,进行imm16扩展。
所以,根据可能成为即值扩展预处理指令的目标指令的指令是单独执行或和此之前的1个或者多个ext指令组合执行的情况的不同,生成的扩展的即值不同。
图6A~图6C表示的是类型1指令操作的方式和用于执行该操作的经扩展的即值的字段图。
图6A表示的是可能成为即值扩展预处理指令的目标指令的指令在单独执行时的操作方式,和用于执行的已扩展的即值230的位字段图。如该图所示,类型1指令的6位即值(imm6)采用以立即扩展或者符号扩展的某一方法进行扩展,成为32位的即值230。被立即扩展时,从位6到位31的区域232全部为零;被符号扩展时,从位6到位31的区域232全部为imm6的最高位的位,即和位5是相同的位。
图6B表示的是和此之前的1个ext指令组合执行时的操作方式,以及用于该操作执行的经扩展的即值240的位字段图。如该图所示,可能成为即值扩展预处理指令的目标指令的指令的6位即值(imm6)可置入位5到位0的字段246,在此之前的1个ext指令的13位即值(imm13)可置入位18到位6,生成19位的即值(imm19)。而且,该19位即值(imm19),采用立即扩展或者符号扩展的某一个扩展方法,变为32位的即值240。当采用立即扩展的方法时,从第19位到第31位的区域242全部为零,当用符号扩展的情况,从第19位到第31位区域242全部为imm19的最高位的位,即成为和第18位相同的位。
图6C表示的是和2个ext指令组合执行时的操作方式,和用于执行该操作时的经扩展的即值250的位字段图。如该图所示,可能成为即值扩展预处理指令的目标指令的指令的6位即值(imm6)置入位5到位0的字段256,第一次的ext指令的13位即值(imm13)置入位31到位19,第二次的ext指令的13位即值(imm13)置入位18到位6,生成32位的即值(imm32)250。
图7是当预处理指令为即值扩展预处理指令时,预处理指令专用译码电路对指令队列的指令进行译码的处理流程进行说明的流程图。
判断指令队列1中存储的指令是否是即值扩展预处理指令,当是即值扩展预处理指令时,进行以下处理(步骤S10)。
首先,将目标指令修饰信息寄存器的即值扩展状态位置于ON,将除此之外的状态位置于OFF(步骤S20)。
然后将指令码的imm13保持(hold)到目标指令修饰信息寄存器的即值扩展信息保持部分(步骤S30)。
而且,使指令队列1的指令无效(步骤S40)。这里所说的使指令队列1的指令无效,包括为了控制指令队列1指令不成为译码电路的译码对象而进行的必要的处理。
图8是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有即值扩展预处理指令中的目标指令。
判断译码对象指令是否可成为即值扩展预处理指令的目标指令的指令(步骤S50)。这里,因为可成为预处理指令的目标指令的指令是预先指定的,所以,也可以将译码对象指令的指令码和预先指定的可成为即值扩展预处理指令的目标指令的指令的指令码进行比较后再进行判断。
当译码对象指令为可能成为即值扩展预处理指令的目标指令的指令时,判断即值扩展状态位是否为ON(步骤S60)
而且,当即值扩展状态位为ON时,使用即值扩展信息保持部分保持的即值,扩展目标指令的即值,然后进行译码,使目标指令得到执行(步骤S70)。
另外,当译码对象指令是不可成为即值扩展预处理指令的目标指令的指令时,或者当即值扩展状态位不是ON时,进行译码,以使译码对象指令按通常功能进行译码(步骤S80)。
3.移位预处理指令
图9A、图9B和图9C是对移位预处理指令进行说明的示意图。
图9A表示的是移位预处理指令的指令码310的位字段的示意图。
如该图所示,移位预处理指令的指令码310具有:从位15到位4的操作码指定区域312;位3的左移位OR右移位信息314;位2的逻辑移位OR算术移位信息316;以及位1~位0的移位值信息318。对移位值信息318,可以在1~4的范围内指定移位值。
操作码指定区域312中存储的是表示移位预处理指令的操作码。
图9B是对可能成为移位预处理指令的目标指令的add指令单独执行时的操作进行说明的示意图。所谓add指令单独执行,是指add指令不能成为移位预处理指令的目标指令执行的情况。这种情况下,如该图所示,可进行这样的操作:把寄存器2加“3”的结果存入寄存器2。
图9C是对add指令作为移位预处理指令的目标指令执行时的操作进行说明的示意图。
在这里,提前执行的ext指令(移位预处理指令)是指示将目标指令的执行结果向右方作1位的逻辑移位的预处理指令。(操作数“srl”表示shift right logical,“1”表示移位1位)。
这种情况下,如该图所示,按照提前执行的ext指令(移位预处理指令)的指示,将寄存器2加“3”的结果,向右方作1位的逻辑移位,并进行存入寄存器2的操作。
图10是当预处理指令为移位预处理指令时,对预处理指令专用译码电路将指令队列中的指令进行译码处理的流程进行说明的流程图。
判断存储在指令队列1的指令是否为移位预处理指令,当是移位预处理指令时,进行以下处理(步骤S110)。
首先,将目标指令修饰信息寄存器的移位状态位置于ON,将除此之外的状态位置于OFF(步骤S120)。
然后,将指令码的右移位OR左移位信息、逻辑移位OR算术移位信息,以及移位值信息,保持到目标指令修饰信息寄存器的移位方向选择位、移位类型选择位和移位值指定部分(步骤S130)。
此外,使指令队列1的指令无效(步骤S140)。这里所说的使指令队列1的指令无效,包括为控制指令队列1的指令不成为译码电路的译码对象而进行的必要的处理。
图11是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有移位预处理指令中的目标指令。
判断译码对象指令是否为可能成为移位预处理指令的目标指令的指令(步骤S150)。这里因为可成为移位预处理指令的目标指令的指令是预先指定的,所以,也可以将译码对象指令的指令码和预先指定的可成为移位预处理指令的目标指令的指令码进行比较后再进行判断。
当译码对象指令是可能成为移位预处理指令的目标指令的指令时,判断移位状态位是否为ON(步骤S160)。
而且,当移位状态位为ON时,使用目标指令修饰信息寄存器的移位方向选择位、移位类型选择位、保持在移位值指定部分的右移位OR左移位信息、逻辑移位OR算术移位信息,以及移位值信息,执行目标指令,将运算结果移位(步骤S170)。
另外,当译码对象指令不可成为移位预处理指令的目标指令的指令时,或者移位状态位不是ON时,进行译码以使译码对象指令用通常功能译码(步骤S180)。
4.寄存器扩展预处理指令
图12A、图12B和图12C是对寄存器扩展预处理指令进行说明的示意图。
图12A表示的是寄存器扩展预处理指令的指令码的位字段的示意图。如该图所示,从寄存器扩展预处理指令的指令码320的位15到位4为操作码指定区域322;位3~位0为寄存器扩展信息324。
操作码指定区域332中存储操作码,该操作码表示的是寄存器扩展预处理指令。寄存器扩展信息324中存储的是目标指令执行时作为寄存器目的地而使用的寄存器号码。
图12B是对可能成为寄存器扩展预处理指令的目标指令add指令单独执行时的操作进行说明的示意图。所说的add指令单独执行是指add指令不成为寄存器扩展预处理指令的目标指令执行的情况。这种情况下,如该图所示,可进行这样的操作:把寄存器2加“3”的结果存储到寄存器2。
图12C是对add指令作为寄存器扩展预处理指令的目标指令执行时的操作进行说明的示意图。这种情况下,如该图所示,可进行这样的操作:把寄存器2加“3”的结果,存入由提前执行的ext指令(寄存器扩展预处理指令)指定的寄存器2。
图13是对预处理指令为寄存器扩展预处理指令时预处理指令专用译码电路对指令队列中的指令进行译码处理的流程进行说明的流程图。
判断指令队列1存储的指令是否为寄存器扩展预处理指令,当是寄存器扩展预处理指令时,进行以下处理(步骤S210)。
首先,将目标指令修饰信息寄存器的寄存器扩展状态位置于ON,将除此之外的状态位置于OFF(步骤S220)。
然后,根据指令码,将寄存器扩展信息,保持到目标指令修饰信息寄存器的寄存器扩展信息保持部分(步骤S230)。
而且,使指令队列1的指令无效(步骤S240)。这里所说的使指令队列1的指令无效,包括为了控制使指令队列1的指令不成为译码电路的译码对象而进行的必要处理。
图14是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有寄存器扩张预处理指令中的目标指令。
判断译码对象指令是否可能成为寄存器扩展预处理指令的目标指令的指令(步骤S250)。在这里,因为可能成为寄存器扩展预处理指令的目标指令的指令是预先指定的,所以,也可以将译码对象指令的指令码和可能成为预先指定的寄存器扩展预处理指令的目标指令的指令的指令码,进行比较后再判断。
当译码对象指令为可能成为寄存器扩展预处理指令的目标指令的指令时,判断寄存器扩展状态位是否为ON(步骤S260)。
并且,当寄存器扩展状态位为ON时,使用在目标指令修饰信息寄存器的扩展寄存器信息保持部分中保持的扩展寄存器信息,扩展目标指令执行时使用的寄存器并译码,以使目标指令得到执行(步骤S270)。
另外,当译码对象指令不会成为寄存器扩展预处理指令的目标指令的指令时,或者寄存器扩展状态位不是ON时,进行译码,以使译码对象指令可用通常功能译码(步骤S280)。
5.执行控制预处理指令
图15A、图15B和图15C是对执行控制预处理指令进行说明的示意图。
图15A表示的是执行控制预处理指令的指令码的位字段的示意图。如该图所示,执行控制预处理指令的指令码330的位15到位4为操作码指定区域332,位3~位0为执行控制条件判断码334。
操作码指定区域332中存有表示执行控制预处理指令的操作码。执行控制条件判断码334可存储“LT”“LE”“GT”“GE”“EQ”“NE”...等各种执行控制条件判断码。例如,当“LT”在“cmp%R1、%R2”,当“%R1比%R2小”时,表示将目标指令设定为NOP。
图15B表示的是执行控制预处理指令的使用例的示意图,图15C是对图15B的使用例的操作进行说明的示意图。
如图15C以及图15B所示,ext指令(执行控制预处理指令)具有这样的功能,其置于cmp指令(比较指令)之后,根据比较指令的比较结果,对继ext指令(执行控制预处理指令)之后的目标指令有无执行(在这里为add指令)进行控制。
图16是对当预处理指令为执行控制预处理指令时,对预处理指令专用译码电路将指令队列中的指令进行译码处理的流程进行说明的流程图。
判断储存在指令队列1中的指令是否为执行控制预处理指令,当是执行控制预处理指令时,进行以下处理(步骤S310)。
首先,将目标指令修饰信息寄存器的执行控制状态位置于ON,将除此之外的状态位置于OFF(步骤S320)。
然后,将指令码的执行控制判断码保持到目标指令修饰信息寄存器的执行控制判断码保持部分(步骤S330)。
另外,使指令队列1的指令无效(步骤S340)。这里所说的使指令队列1的指令无效,包括为了控制指令队列1的指令不成为译码电路的译码对象而进行的必要处理。
图17是对译码对象指令进行译码处理的流程进行说明的流程图,该译码对象指令含有执行控制预处理指令中的目标指令。
判断译码对象指令是否可能成为执行控制预处理指令的目标指令(步骤S350)。在这里,因为可成为执行控制预处理指令的目标指令的指令是预先指定的,所以,也可以将译码对象指令的指令码和可成为预先指定的执行控制预处理指令的目标指令的指令的指令码,进行比较后再判断。
当译码对象指令可成为执行控制预处理指令的目标指令的指令时,判断执行控制状态位是否为ON(步骤S360)。
而且,当执行控制状态位为ON时,使用目标指令修饰信息寄存器的执行控制条件判断码信息保持部分中保持的执行控制条件判断码,判断目标指令执行的有无后译码,以使目标指令得到执行(步骤S370)。
另外,当译码对象指令不会成为执行控制预处理指令的目标指令的指令时,或者执行控制状态位不是ON时,进行译码,以使译码对象指令能用通常功能进行译码(步骤S380)。
6.电子设备
接下来,对包括上述的微型计算机的电子设备做出说明。
例如,图18A表示的是电子设备之一的汽车导航系统的内部方框图,图19A表示的是其外观图。汽车导航系统的操作使用遥控器710来进行,根据来自GPS和陀螺仪的信息,位置检测部分720检测出车的位置。地图等的信息存储于CDROM 730(信息存储介质)。存储器740是作为图像处理和声音处理时的作业区的存储器,所生成的图像通过图像输出部分750显示给驾驶人员。另外,所生成的汽车导航用的导向声音通过声音输出部分735输出给驾驶人员。微型计算机700,输入来自遥控器710、位置检测部分720、CDROM730等的信息输入源的信息,进行各种处理,并将处理后的信息通过图像输出部分750、声音输出部分735等的输出装置输出。
图18B表示的是电子设备之一的游戏机的内部方框图,图19B表示的是其外观图。该游戏机根据游戏控制器760操作人员的操作信息、CDROM 770的游戏程序、IC卡780操作人员的信息等,把存储器790作为作业区域,生成游戏图像和游戏声音,并通过图像输出部分810、声音输出部分800输出。
图18C表示的是电子设备之一的打印机的内部方框图,图19C为其外观图。该打印机是根据操作面板820的操作信息、代码存储器830以及数字图形聚点式存储器840的字符信息,把位变换存储器850作为作业区,生成印刷图像,并通过印刷输出部分860输出。另外,将打印机的状态和方式,通过显示面板870传达给用户。
并且,作为可配置在微型计算机的电子设备,除了上文提到的以外,例如,还可以有:便携式电话(蜂窝电话)、PHS、寻呼机、便携式信息终端、数码相机、硬盘装置、光盘(CD、DVD)装置、光磁磁盘(MO)装置、音响设备、电子记事本、电子台式计算机、POS终端、配有触摸屏的装置、投影仪、文字处理器、个人电脑、电视机、反光镜式或者监控直视式带式录音机等各种产品。
并且,本发明并不仅限于本实施例,在本发明的主题范围之内可以采取各种实施方式。
另外,本发明的电子设备的构成,也并不仅限于图18A~图18C、图19A~图19C中说明的内容,可以采取各种实施方式。
尽管本发明已经参照附图和优选实施例进行了说明,但是,对于本领域的技术人员来说,本发明可以有各种更改和变化。本发明的各种更改、变化和等同物由权利要求书的内容涵盖。
Claims (19)
1.一种进行流水线控制的信息处理装置,其特征在于包括:
读取电路,其将指定的目标指令和多个指令的指令码读取到指令队列,所述多个指令的指令码设置在所述目标指令前,包括修饰目标指令功能的预处理指令;
预处理指令专用译码电路,其输入被读取到指令队列的译码前的指令码,判断是否为指定的预处理指令,当是指定的预处理指令时,将预处理指令修饰的目标指令译码所必需的信息,存储到目标指令修饰信息寄存器,进行预处理指令专用译码处理;以及
译码电路,其将读取到指令队列的预处理指令以外的指令码,作为译码对象指令输入,并进行译码,其中:
所述译码电路,
当译码对象指令为目标指令时,根据目标指令修饰信息保持寄存器中存储的目标指令修饰信息,对预处理指令修饰的目标指令进行译码。
2.根据权利要求1所述的信息处理装置,其特征在于:
所述指定的预处理指令,包括即值扩展预处理指令,其用于对目标指令执行时所必需的即值进行扩展,所述目标指令是所述预处理指令的功能扩展对象;
所述预处理指令专用译码电路,
当输入的指令码为即值扩展预处理指令时,将所必需的即值扩展信息存储到目标指令修饰信息寄存器,以使在执行即值扩展预处理指令修饰的目标指令时扩展即值;
所述译码电路,
当译码对象指令为即值扩展预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的所述即值扩展信息,在执行即值扩展预处理指令修饰的目标指令时,扩展即值,然后译码,以执行目标指令。
3.根据权利要求1所述的信息处理装置,其特征在于:
所述指定的预处理指令,包括移位预处理指令,其用于对目标指令的执行结果进行移位,所述目标指令是所述预处理指令的功能扩展对象;
所述预处理指令专用译码电路,
当输入的指令码为移位预处理指令时,将所必需的移位信息存储到目标指令修饰信息寄存器中,用于对移位预处理指令修饰的目标指令的执行结果进行移位;所述译码电路,
当译码对象指令为移位预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的所述移位信息,对移位预处理指令修饰的目标指令的执行结果进行移位,然后译码,以执行目标指令。
4.根据权利要求1所述的信息处理装置,其特征在于:
所述指定的预处理指令,包括寄存器扩展预处理指令,其对目标指令执行时所必需的寄存器进行扩展,所述目标指令是所述预处理指令的功能扩展对象;
所述预处理指令专用译码电路,
当输入的指令码为寄存器扩展预处理指令时,将所必需的寄存器扩展信息存储到目标指令修饰信息寄存器,用于在执行寄存器扩展预处理指令修饰的目标指令时扩展寄存器;
所述译码电路,
当译码对象指令为寄存器扩展预处理指令的目标指令时,根据目标指令修饰信息寄存器中存储的所述寄存器扩展信息,在执行寄存器扩展预处理指令修饰的目标指令时,扩展寄存器,然后译码,以执行目标指令。
5.根据权利要求1所述的信息处理装置,其特征在于:
所述指定的预处理指令,包括执行控制预处理指令,其用于控制作为所述预处理指令的功能扩展对象的目标指令有无执行;
所述预处理指令专用译码电路,
当输入的指令码为执行控制预处理指令时,将所必需的执行控制信息存储到目标指令修饰信息寄存器,用于控制预处理指令修饰的目标指令有无执行;
所述译码电路,
当译码对象指令为执行控制预处理指令的目标指令时,
根据目标指令修饰信息寄存器中存储的所述执行控制信息,判断执行控制预处理指令修饰的目标指令有无执行,然后译码,以执行目标指令。
6.根据权利要求1所述的信息处理装置,其特征在于:
所述读取电路,
连接的总线带宽至少大于等于指令码两倍,通过所述总线,在1个时钟脉冲里,将多个指令读取到指令队列。
7.根据权利要求1所述的信息处理装置,其特征在于:
目标指令连续配置在修饰所述目标指令的预处理指令之后;
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
8.根据权利要求2所述的信息处理装置,其特征在于:
目标指令连续配置在修饰所述目标指令的预处理指令之后;
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
9.根据权利要求3所述的信息处理装置,其特征在于:
目标指令被连续配置在修饰所述目标指令的预处理指令之后,
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
10.根据权利要求4所述的信息处理装置,其特征在于:
目标指令被连续配置在修饰所述目标指令的预处理指令之后,
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
11.根据权利要求5所述的信息处理装置,其特征在于:
目标指令被连续配置在修饰所述目标指令的预处理指令之后;
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
12.根据权利要求6所述的信息处理装置,其特征在于:
目标指令被连续配置在修饰该目标指令的预处理指令之后,
所述译码电路在第一指令的译码中,所述预处理指令专用译码电路对接在第一指令后的第二指令,进行预处理指令专用译码处理。
13.一种电子设备,其特征在于包括:
权利要求1所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
14.一种电子设备,其特征在于包括:
权利要求2所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
15.一种电子设备,其特征在于,包括:
权利要求3所述的信息处理装置;
接收输入信息的手段;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
16.一种电子设备,其特征在于,包括:
权利要求4所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
17.一种电子设备,其特征在于,包括:
权利要求5所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
18.一种电子设备,其特征在于,包括:
权利要求6所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
19.一种电子设备,其特征在于,包括:
权利要求7所述的信息处理装置;
接收输入信息的装置;以及
用于输出的装置,其根据输入信息,输出所述信息处理装置的处理结果。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002182766A JP3627725B2 (ja) | 2002-06-24 | 2002-06-24 | 情報処理装置及び電子機器 |
JP2002182766 | 2002-06-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1490726A true CN1490726A (zh) | 2004-04-21 |
CN1270232C CN1270232C (zh) | 2006-08-16 |
Family
ID=31179177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031477313A Expired - Fee Related CN1270232C (zh) | 2002-06-24 | 2003-06-23 | 信息处理装置以及电子设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7340589B2 (zh) |
JP (1) | JP3627725B2 (zh) |
CN (1) | CN1270232C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470599B (zh) * | 2007-12-28 | 2013-01-02 | 富士通株式会社 | 处理单元 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8486081B2 (en) * | 2007-07-23 | 2013-07-16 | DePuy Synthes Products, LLC | Implant insertion device and method |
JP5357475B2 (ja) | 2008-09-09 | 2013-12-04 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
JP5471082B2 (ja) * | 2009-06-30 | 2014-04-16 | 富士通株式会社 | 演算処理装置および演算処理装置の制御方法 |
JP5496602B2 (ja) | 2009-10-30 | 2014-05-21 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
WO2012144374A1 (ja) | 2011-04-21 | 2012-10-26 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
FR3021432B1 (fr) * | 2014-05-20 | 2017-11-10 | Bull Sas | Processeur a instructions conditionnelles |
GB2521019B (en) | 2014-05-27 | 2016-05-25 | Imagination Tech Ltd | Decoding instructions that are modified by one or more other instructions |
US9940242B2 (en) | 2014-11-17 | 2018-04-10 | International Business Machines Corporation | Techniques for identifying instructions for decode-time instruction optimization grouping in view of cache boundaries |
US9733940B2 (en) | 2014-11-17 | 2017-08-15 | International Business Machines Corporation | Techniques for instruction group formation for decode-time instruction optimization based on feedback |
US9875107B2 (en) | 2015-01-19 | 2018-01-23 | International Business Machines Corporation | Accelerated execution of execute instruction target |
US10620957B2 (en) * | 2015-10-22 | 2020-04-14 | Texas Instruments Incorporated | Method for forming constant extensions in the same execute packet in a VLIW processor |
US9785800B2 (en) | 2015-12-23 | 2017-10-10 | Intel Corporation | Non-tracked control transfers within control transfer enforcement |
US20170185400A1 (en) | 2015-12-23 | 2017-06-29 | Intel Corporation | Mode-specific endbranch for control flow termination |
US20170315807A1 (en) * | 2016-05-02 | 2017-11-02 | Oracle International Corporation | Hardware support for dynamic data types and operators |
US10761849B2 (en) * | 2016-09-22 | 2020-09-01 | Intel Corporation | Processors, methods, systems, and instruction conversion modules for instructions with compact instruction encodings due to use of context of a prior instruction |
US11061724B2 (en) * | 2017-06-05 | 2021-07-13 | Marvell Asia Pte, Ltd. | Programmable hardware scheduler for digital processing systems |
US11204768B2 (en) | 2019-11-06 | 2021-12-21 | Onnivation Llc | Instruction length based parallel instruction demarcator |
EP4278256A1 (en) * | 2022-01-26 | 2023-11-22 | Google LLC | Parallel decode instruction set computer architecture with variable-length instructions |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5630083A (en) * | 1994-03-01 | 1997-05-13 | Intel Corporation | Decoder for decoding multiple instructions in parallel |
US5875315A (en) * | 1995-06-07 | 1999-02-23 | Advanced Micro Devices, Inc. | Parallel and scalable instruction scanning unit |
US5809273A (en) * | 1996-01-26 | 1998-09-15 | Advanced Micro Devices, Inc. | Instruction predecode and multiple instruction decode |
JP3711422B2 (ja) | 1995-12-20 | 2005-11-02 | セイコーエプソン株式会社 | 情報処理回路 |
US5822559A (en) * | 1996-01-02 | 1998-10-13 | Advanced Micro Devices, Inc. | Apparatus and method for aligning variable byte-length instructions to a plurality of issue positions |
JPH1124929A (ja) | 1997-06-30 | 1999-01-29 | Sony Corp | 演算処理装置およびその方法 |
US6418527B1 (en) * | 1998-10-13 | 2002-07-09 | Motorola, Inc. | Data processor instruction system for grouping instructions with or without a common prefix and data processing system that uses two or more instruction grouping methods |
US6260134B1 (en) * | 1998-11-02 | 2001-07-10 | Advanced Micro Devices, Inc. | Fixed shift amount variable length instruction stream pre-decoding for start byte determination based on prefix indicating length vector presuming potential start byte |
JP3570287B2 (ja) | 1999-03-31 | 2004-09-29 | セイコーエプソン株式会社 | マイクロコンピュータ |
KR100379837B1 (ko) | 2000-06-30 | 2003-04-11 | 주식회사 에이디칩스 | 확장명령어 축약장치 |
CN1142485C (zh) | 2001-11-28 | 2004-03-17 | 中国人民解放军国防科学技术大学 | 流水线控制相关延迟消除方法 |
-
2002
- 2002-06-24 JP JP2002182766A patent/JP3627725B2/ja not_active Expired - Fee Related
-
2003
- 2003-06-20 US US10/601,136 patent/US7340589B2/en not_active Expired - Fee Related
- 2003-06-23 CN CNB031477313A patent/CN1270232C/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470599B (zh) * | 2007-12-28 | 2013-01-02 | 富士通株式会社 | 处理单元 |
Also Published As
Publication number | Publication date |
---|---|
US20040039897A1 (en) | 2004-02-26 |
JP3627725B2 (ja) | 2005-03-09 |
JP2004030015A (ja) | 2004-01-29 |
US7340589B2 (en) | 2008-03-04 |
CN1270232C (zh) | 2006-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1270232C (zh) | 信息处理装置以及电子设备 | |
CN1095116C (zh) | 执行两种指令长度代码的处理机及其指令码输入装置 | |
CN1094610C (zh) | 可以对复合操作数进行压缩操作和拆开操作的微处理器 | |
CN1227589C (zh) | 用于保存返回状态的数据处理设备和方法 | |
CN1153129C (zh) | 用于处理器定制操作的设备 | |
CN1523495A (zh) | 高效执行特长指令字的处理器 | |
CN1210647C (zh) | 适于作由正值处理及饱和运算处理组成的修整处理的处理器 | |
CN1121014C (zh) | 具有risc结构的八位微控制器 | |
CN1551048A (zh) | 图像再现装置和图像再现方法 | |
CN101046741A (zh) | 处理器装置和复合条件处理方法 | |
CN1586063A (zh) | 流数据处理器、流数据处理方法、程序和媒体 | |
CN1758213A (zh) | 带有共享内容的异构型并行多线程处理器(hpmt) | |
CN1517869A (zh) | 处理器、运算处理方法和优先度决定方法 | |
CN1898676A (zh) | 使用了点图案的信息输入输出方法 | |
CN1920825A (zh) | 在流设计工具中显示性能约束的方法和系统 | |
CN1637696A (zh) | 移动终端设备中支持输入确认的系统与方法 | |
CN1848097A (zh) | 存储器地址生成装置以及具有它的处理器、存储器地址生成方法 | |
CN1764881A (zh) | 协助处理密码消息的指令 | |
CN1485741A (zh) | 信息处理装置以及电子设备 | |
CN1115631C (zh) | 具有risc结构的八位微控制器 | |
CN1181550A (zh) | 微处理机及多处理机系统 | |
CN1035190A (zh) | 基于操作数长度和对位的微码转移 | |
CN101065725A (zh) | 命令供给装置 | |
CN101048739A (zh) | 多处理器系统、同步控制装置及同步控制方法 | |
CN1279435C (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060816 Termination date: 20150623 |
|
EXPY | Termination of patent right or utility model |