CN101044450A - Processor - Google Patents

Processor Download PDF

Info

Publication number
CN101044450A
CN101044450A CNA2005800358326A CN200580035832A CN101044450A CN 101044450 A CN101044450 A CN 101044450A CN A2005800358326 A CNA2005800358326 A CN A2005800358326A CN 200580035832 A CN200580035832 A CN 200580035832A CN 101044450 A CN101044450 A CN 101044450A
Authority
CN
China
Prior art keywords
data
processor
register
memory
circuit
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.)
Pending
Application number
CNA2005800358326A
Other languages
Chinese (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN101044450A publication Critical patent/CN101044450A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30192Instruction operation extension or modification according to data descriptor, e.g. dynamic data typing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

There is provided a processor capable of performing operation with a high operation frequency by reducing the delay generated between a memory and a register file. The processor (100) includes a register file (110) having a plurality of registers and a tag value generation circuit (102) for generating a tag value indicating the data attribute. Each of the registers has a data filed (112) for holding data and a tag field (111) for holding a tag value. When executing a load instruction for loading data into the register of the register file (110) from the memory (14), the tag generation circuit (102) generates a tag value according to the load instruction and stores it in the tag field (111).

Description

处理器processor

技术领域technical field

本发明涉及一种可在高动作频率下动作的处理器,尤其是涉及可提高动作频率的处理器。The present invention relates to a processor capable of operating at a high operating frequency, and more particularly to a processor capable of increasing the operating frequency.

背景技术Background technique

现在具有一种处理器,在执行加载指令时,根据由该加载指令确定的数据的属性,在对从存储器输出的数据执行了配置变更、代码扩展、零扩展等的数据变换后,将其存储在寄存器文件中(例如参照专利文献1)。There is now a processor that, when executing a load instruction, stores the data output from the memory after performing data transformation such as configuration change, code extension, zero extension, etc., according to the attributes of the data determined by the load instruction. in the register file (for example, refer to Patent Document 1).

图1是表示现有的处理器构成的图。FIG. 1 is a diagram showing the configuration of a conventional processor.

如图所示,处理器10具备指令译码电路11、存储器读出控制电路12、存储器写入控制电路13、存储器14、运算器15、数据转换电路20及寄存器文件30。并且,寄存器文件30具备多个仅由数据字段31构成的寄存器。另外,使用寄存器序号(Reg#0~Reg#N)管理数据字段31。As shown in the figure, the processor 10 includes an instruction decoding circuit 11 , a memory read control circuit 12 , a memory write control circuit 13 , a memory 14 , an arithmetic unit 15 , a data conversion circuit 20 and a register file 30 . In addition, the register file 30 includes a plurality of registers composed only of data fields 31 . In addition, the data field 31 is managed using a register number (Reg#0 to Reg#N).

指令译码电路11根据译码的指令输出信号。例如,(a)在译码的指令是加载指令时,生成由该加载指令附加了特征的信号(以下称为加载指令译码信号。),并输出到存储器读出控制电路12和数据转换电路20。(b)在译码的指令是运算指令时,生成由该运算指令附加了特征的信号(以下称为运算指令译码信号。),并输出到运算器1 5和数据转换电路20。(c)在译码的指令是存储指令时,生成由该存储指令附加了特征的信号(以下称为存储指令译码信号。),并输出到存储器写入控制电路13。The instruction decoding circuit 11 outputs a signal according to the decoded instruction. For example, (a) when the decoded command is a load command, a signal (hereinafter referred to as a load command decoding signal) characterized by the load command is generated and output to the memory read control circuit 12 and the data conversion circuit 20. (b) When the instruction to be decoded is an operation instruction, generate a signal (hereinafter referred to as an operation instruction decoding signal.) with a characteristic added by the operation instruction, and output it to the arithmetic unit 15 and the data conversion circuit 20. (c) When the decoded command is a store command, a signal characterized by the store command (hereinafter referred to as a store command decode signal) is generated and output to the memory write control circuit 13 .

所谓的「加载指令」是指从存储器加载数据的指令。The so-called "load instruction" refers to an instruction to load data from memory.

所谓的「存储指令」是指向存储器存储数据的指令。The so-called "store instruction" is an instruction to store data in the memory.

所谓的「运算指令」是指执行运算处理的指令。The so-called "computation command" refers to a command to execute calculation processing.

在加载指令译码信号中包含访问存储器14并读出数据所需的地址、数据大小、及数据类型等信息。The load command decoding signal includes information such as address, data size, and data type required for accessing the memory 14 and reading data.

在运算指令译码信号中包含确定运算处理内容的信息。Information for specifying the contents of arithmetic processing is included in the arithmetic instruction decode signal.

在存储指令译码信号中包含访问存储器14并写入数据所需的地址、数据大小、及数据类型等信息。The storage instruction decoding signal includes information such as address, data size, and data type required for accessing the memory 14 and writing data.

存储器读出控制电路12根据从指令译码电路11输出的加载指令译码信号,将由该加载指令译码信号附加了特征的信号(以下称为存储器读出控制信号。)输出到存储器14。The memory read control circuit 12 outputs a signal characterized by the load command decode signal (hereinafter referred to as a memory read control signal) to the memory 14 based on the load command decode signal output from the command decode circuit 11 .

存储器写入控制电路13根据从指令译码电路11输出的存储指令译码信号,将由该存储指令译码信号附加了特征的信号(以下称为存储器写入控制信号。)输出到存储器14。The memory write control circuit 13 outputs a signal characterized by the store command decode signal (hereinafter referred to as a memory write control signal) to the memory 14 based on the store command decode signal output from the command decode circuit 11 .

存储器14根据从存储器读出控制电路12输出的存储器读出控制信号,将由该存储器读出控制信号确定的数据存储到寄存器文件30。另外,根据从存储器写入控制电路13输出的存储器写入控制信号,从寄存器文件30中读出由该存储器写入控制信号确定的数据。The memory 14 stores data specified by the memory read control signal in the register file 30 based on the memory read control signal output from the memory read control circuit 12 . Also, based on the memory write control signal output from the memory write control circuit 13 , data specified by the memory write control signal is read from the register file 30 .

另外,从存储器14读出的数据,在数据转换电路20中被执行了配置变更、代码扩展、零扩展等的数据变换后,被存储在寄存器文件30中。Also, the data read from the memory 14 is stored in the register file 30 after undergoing data conversion such as configuration change, code extension, and zero extension in the data conversion circuit 20 .

运算器15根据从指令译码电路11输出的运算指令译码信号,从寄存器文件30中读出由该运算指令译码信号确定的数据,并对该数据执行由运算指令译码信号确定的运算处理。然后,将执行运算处理得到的数据存储到寄存器文件30。According to the operation instruction decoding signal output from the instruction decoding circuit 11, the arithmetic unit 15 reads out the data determined by the operation instruction decoding signal from the register file 30, and executes the operation determined by the operation instruction decoding signal on the data. deal with. Then, the data obtained by executing the arithmetic processing is stored in the register file 30 .

图2是表示数据变换电路的构成的图。FIG. 2 is a diagram showing the configuration of a data conversion circuit.

如图所示,这里,作为一例,数据变换电路20具备排序部21、零扩展部22、代码扩展部23、选择器24等。As shown in the figure, here, as an example, the data conversion circuit 20 includes a sorting unit 21 , a zero extension unit 22 , a code extension unit 23 , a selector 24 , and the like.

排序部21对从存储器14输出的数据施行排序处理,并将处理后的数据输出到零扩展部22和代码扩展部23。The sorting unit 21 performs sorting processing on the data output from the memory 14 , and outputs the processed data to the zero extension unit 22 and the code extension unit 23 .

所谓「排序处理」是指,使M(M为自然数。)位数据的部分位串与最低位的位一致地排列并输出。例如,在输入32位数据的第8位到第15位的部分位串时,输出从第0位排列至第7位的位串。The "sorting process" refers to arranging and outputting a partial bit string of M (M is a natural number) bit data in accordance with the lowest bit. For example, when a partial bit string of the 8th bit to the 15th bit of 32-bit data is input, a bit string arranged from the 0th bit to the 7th bit is output.

零扩展部22对从排序部21输出的数据施行零扩展处理,并将处理后的数据输出到选择器24。The zero extension unit 22 performs zero extension processing on the data output from the sorting unit 21 , and outputs the processed data to the selector 24 .

所谓「零扩展处理」是指,在将M(M是自然数。)位的数据扩展到N(N是比M大的自然数。)位的数据时,使从第M-1位到最高位的位为「0」并输出。The so-called "zero extension processing" means that when extending M (M is a natural number.) bit data to N (N is a natural number greater than M.) bit data, the data from the M-1th bit to the highest bit Bit is "0" and output.

代码扩展部23对从排序部21输出的数据施行代码扩展处理,并将处理后的数据输出到选择器24。The code expansion unit 23 performs code expansion processing on the data output from the sorting unit 21 , and outputs the processed data to the selector 24 .

所谓「代码扩展处理」是指,在将M(M是自然数。)位的数据扩展到N(N是比M大的自然数。)位的数据时,使从第M-1位到最高位的位为「M位数据的代码位的值」并输出。The so-called "code expansion processing" means that when expanding M (M is a natural number.) bit data to N (N is a natural number greater than M.) bit data, make the code from the M-1th bit to the highest bit The bit is "the value of the code bit of the M-bit data" and output.

选择器24根据从指令译码电路11输出的加载指令译码信号,选择从存储器14输出的数据、从零扩展部22输出的数据、从代码扩展部23输出的数据之一,并输出到寄存器文件30。The selector 24 selects one of the data output from the memory 14, the data output from the zero extension unit 22, and the data output from the code extension unit 23 based on the load instruction decoding signal output from the instruction decoding circuit 11, and outputs it to the register File 30.

专利文献1:特开平9-269895号公报Patent Document 1: Japanese Unexamined Patent Publication No. 9-269895

但是,在所述的现有的技术中,存在如下问题:当从存储器14将数据输出到寄存器文件30时,因需要通过数据转换电路20,所以在存储器14和寄存器文件30之间产生的延迟增加,在进行以高动作频率动作的处理器的开发上,该延迟成为弊病。However, in the prior art described above, there is a problem that when data is output from the memory 14 to the register file 30, it is necessary to pass through the data conversion circuit 20, so the delay generated between the memory 14 and the register file 30 This delay becomes a disadvantage in developing a processor that operates at a high operating frequency.

发明内容Contents of the invention

因此,本发明是鉴于上述问题而进行的,其目的在于提供一种处理器,削减在存储器和寄存器文件之间产生的延迟,可以高动作频率动作。Therefore, the present invention has been made in view of the above problems, and an object of the present invention is to provide a processor capable of reducing the delay generated between a memory and a register file and operating at a high operating frequency.

为了实现所述目的,本发明的处理器,具备:(a)具有多个寄存器的寄存器文件;(b)生成表示数据属性的标记值的生成单元,(c)所述各寄存器具有保持数据的数据字段和保持所述标记值的标记字段,(d)所述生成单元在执行从存储器加载到寄存器的加载指令时,根据所述加载指令生成所述标记值,并存储在所述标记字段中。In order to achieve the above object, the processor of the present invention has: (a) a register file having a plurality of registers; (b) a generation unit for generating a tag value representing a data attribute; (c) each of the registers has a A data field and a flag field holding the flag value, (d) when the generating unit executes a load instruction loaded from the memory to the register, the flag value is generated according to the load instruction and stored in the flag field .

由此,存储在数据字段中的数据,在执行进行运算处理的指令、从寄存器文件将数据存储到存储器的存储指令时,可根据表示数据属性的标记值执行数据转换,不必在存储器和寄存器文件之间执行配置变更、代码扩展、零扩展等的数据转换。As a result, the data stored in the data field can be converted according to the tag value indicating the attribute of the data when executing the instruction for arithmetic processing or the storage instruction for storing data from the register file to the memory, without having to store data in the memory and register file Perform data conversion between configuration changes, code extensions, zero extensions, etc.

另外,本发明不只是作为处理器被实现,也可以作为控制处理器的方法(以下称为控制方法)等来实现。另外,也可以作为组装了由处理器提供的功能(以下称为处理器功能。)的LSI、在FPGA、CPLD等可编程逻辑器件中形成处理器功能的IP核心程序(以下称为处理器核心程序。)、及记录了处理器核心程序的记录媒体等来实现。In addition, the present invention can be realized not only as a processor, but also as a method of controlling a processor (hereinafter referred to as a control method), or the like. In addition, it can also be used as an LSI that assembles functions provided by a processor (hereinafter referred to as processor functions), and an IP core program that forms processor functions in programmable logic devices such as FPGAs and CPLDs (hereinafter referred to as processor cores). program.), and a recording medium on which the processor core program is recorded.

发明效果Invention effect

如上所述,根据本发明的处理器,能够提供一种处理器,在从存储器将数据输出到寄存器文件时,因不需要通过数据转换电路,所以削减在存储器和寄存器文件之间产生的延迟,可以高动作频率动作。As described above, according to the processor of the present invention, it is possible to provide a processor that does not need to pass through a data conversion circuit when outputting data from the memory to the register file, thereby reducing the delay generated between the memory and the register file, High operating frequency operation is possible.

另外,还提供一种处理器,由于可容易处理比分配给一个寄存器序号的寄存器的大小大的数据,所以可提高数据处理能力。In addition, there is provided a processor capable of improving data processing capability because it can easily process data larger than the size of a register allocated to one register number.

附图说明Description of drawings

图1是表示现有的处理器的构成的图。FIG. 1 is a diagram showing the configuration of a conventional processor.

图2是表示数据转换电路的构成的图。FIG. 2 is a diagram showing the configuration of a data conversion circuit.

图3是表示实施方式1的处理器的构成的图。FIG. 3 is a diagram showing the configuration of a processor according to Embodiment 1. FIG.

图4是表示作为一例、实施方式1的寄存器文件的构成的图。FIG. 4 is a diagram showing the configuration of a register file according to Embodiment 1 as an example.

图5是表示作为一例、实施方式1的寄存器的数据结构的图。FIG. 5 is a diagram showing a data structure of a register according to Embodiment 1 as an example.

图6A是表示在实施方式1的数据转换电路中数据转换的实例的第1图。6A is a first diagram showing an example of data conversion in the data conversion circuit of Embodiment 1. FIG.

图6B是表示在实施方式1的数据转换电路中数据转换的实例的第2图。6B is a second diagram showing an example of data conversion in the data conversion circuit of the first embodiment.

图6C是表示在实施方式1的数据转换电路中数据转换的实例的第3图。FIG. 6C is a third diagram showing an example of data conversion in the data conversion circuit of Embodiment 1. FIG.

图7是表示实施方式1的处理器动作的第1图。FIG. 7 is a first diagram showing the operation of the processor according to the first embodiment.

图8A是表示实施方式1的处理器动作的第2图。8A is a second diagram showing the operation of the processor according to the first embodiment.

图8B是表示实施方式1的处理器动作的第3图。8B is a third diagram showing the operation of the processor according to the first embodiment.

图8C是表示实施方式1的处理器动作的第4图。8C is a fourth diagram showing the operation of the processor according to the first embodiment.

图9是表示实施方式2的处理器的构成的图。FIG. 9 is a diagram showing the configuration of a processor according to Embodiment 2. FIG.

图10是表示作为一例、实施方式2的寄存器文件的构成的图。FIG. 10 is a diagram showing the configuration of a register file according to Embodiment 2 as an example.

图11是表示实施方式2的处理器动作的第1图。FIG. 11 is a first diagram showing the operation of the processor according to the second embodiment.

图12A是表示实施方式2的处理器动作的第2图。12A is a second diagram showing the operation of the processor according to the second embodiment.

图12B是表示实施方式2的处理器动作的第3图。12B is a third diagram showing the operation of the processor according to the second embodiment.

图13是表示实施方式3的处理器的构成的图。FIG. 13 is a diagram showing the configuration of a processor according to Embodiment 3. FIG.

图14是表示作为一例、实施方式3的运算器的构成的图。FIG. 14 is a diagram showing a configuration of an arithmetic unit according to Embodiment 3 as an example.

图15A是表示实施方式3的处理器的动作的图。FIG. 15A is a diagram showing the operation of the processor according to Embodiment 3. FIG.

图15B是表示实施方式3的处理器的动作的图。FIG. 15B is a diagram showing the operation of the processor according to the third embodiment.

图16是表示实施方式4的处理器的构成的图。FIG. 16 is a diagram showing the configuration of a processor according to Embodiment 4. FIG.

图17是表示作为一例、实施方式4的运算器的构成的图。FIG. 17 is a diagram showing a configuration of an arithmetic unit according to Embodiment 4 as an example.

图18是表示实施方式4的处理器动作的第1图。FIG. 18 is a first diagram showing the operation of the processor according to the fourth embodiment.

图19是表示实施方式4的处理器动作的第2图。FIG. 19 is a second diagram showing the operation of the processor according to the fourth embodiment.

图20是表示实施方式5的处理器的构成的图。FIG. 20 is a diagram showing the configuration of a processor according to Embodiment 5. FIG.

图21是表示作为一例、实施方式5的运算器的构成的图。FIG. 21 is a diagram showing a configuration of an arithmetic unit according to Embodiment 5 as an example.

图22是表示作为一例、实施方式5的寄存器的数据结构的图。FIG. 22 is a diagram showing a data structure of a register according to Embodiment 5 as an example.

图23是表示实施方式5的处理器动作的第1图。FIG. 23 is a first diagram showing the operation of the processor according to Embodiment 5. FIG.

图24是表示实施方式5的处理器动作的第2图。FIG. 24 is a second diagram showing the operation of the processor according to Embodiment 5. FIG.

图25是表示实施方式5的处理器动作的第3图。FIG. 25 is a third diagram showing the operation of the processor according to Embodiment 5. FIG.

图26是表示实施方式6的处理器的构成的图。FIG. 26 is a diagram showing the configuration of a processor according to Embodiment 6. FIG.

图27是表示作为一例、实施方式6的运算器的构成的图。FIG. 27 is a diagram showing a configuration of an arithmetic unit according to Embodiment 6 as an example.

图28是表示实施方式6的处理器动作的第1图。FIG. 28 is a first diagram showing the operation of the processor according to the sixth embodiment.

图29是表示实施方式6的处理器动作的第2图。FIG. 29 is a second diagram showing the operation of the processor according to the sixth embodiment.

符号说明Symbol Description

10处理器10 processors

11指令译码电路11 instruction decoding circuit

12存储器读出控制电路12 memory read control circuit

13存储器写入控制电路13 memory write control circuit

14存储器14 memory

15运算器15 calculator

20数据转换电路20 data conversion circuit

21排序部21 Sorting Department

22零扩展部22 Zero Extension

23代码扩展部23 Code Extension

24选择器24 selectors

30寄存器文件30 register files

31数据字段31 data fields

Reg#0~Reg#N寄存器Reg#0~Reg#N registers

100,200处理器100, 200 processors

101指令译码电路101 instruction decoding circuit

102标记值生成电路102 tag value generating circuit

110,210寄存器文件110, 210 register files

111,211标记字段111, 211 tag field

112,212数据字段112, 212 data fields

113,213数据属性判断电路113, 213 data attribute judgment circuit

114,214数据转换电路114, 214 data conversion circuit

121,221排序部121, 221 Sorting Department

122,222零扩展部122, 222 Zero Extension

123,223代码扩展部123, 223 Code Extension Section

124,224选择器124, 224 selector

300,400处理器300, 400 processors

310,410寄存器文件310, 410 register files

311,411标记字段311, 411 tag field

312,412数据字段312, 412 data fields

320,420运算器320, 420 calculator

321,421数据属性判断电路321, 421 data attribute judgment circuit

322,422运算处理电路322, 422 operation processing circuit

330存储器写入控制电路330 memory write control circuit

331数据属性判断电路331 data attribute judgment circuit

332数据转换电路332 data conversion circuit

341,441排序部341, 441 Sorting Department

342,442零扩展部342, 442 Zero Extension

343,443代码扩展部343, 443 Code Extension Section

344,444选择器344, 444 selector

345,445加法器345, 445 Adder

401指令译码电路401 instruction decoding circuit

402标记值生成电路402 tag value generation circuit

500,600处理器500, 600 processors

510,610寄存器文件510, 610 register files

520,620运算器520, 620 calculator

530存储器写入控制电路530 memory write control circuit

531数据属性判断电路531 data attribute judgment circuit

532数据转换电路532 data conversion circuit

541,641选择器541, 641 selector

542,642加法器542, 642 adders

543,643选择器543, 643 selector

具体实施方式Detailed ways

(实施方式1)(Embodiment 1)

下面,参照附图说明本发明的实施方式1。Next, Embodiment 1 of the present invention will be described with reference to the drawings.

实施方式1的处理器的特征在于,在从寄存器文件将数据输出到运算器之前执行配置变更、代码扩展、零扩展等的数据转换,代替在存储器和寄存器文件之间执行。The processor according to Embodiment 1 is characterized in that data conversion such as configuration change, code extension, and zero extension is performed before data is output from the register file to the arithmetic unit, instead of being performed between the memory and the register file.

根据以上的观点,说明本发明实施方式1的处理器。Based on the above points of view, the processor according to Embodiment 1 of the present invention will be described.

图3是表示实施方式1的处理器的构成的图。FIG. 3 is a diagram showing the configuration of a processor according to Embodiment 1. FIG.

如图所示,处理器100具备存储器读出控制电路12、存储器写入控制电路13、存储器14、运算器15。并且,具备指令译码电路101、标记值生成电路102、寄存器文件110。As shown in the figure, the processor 100 includes a memory read control circuit 12 , a memory write control circuit 13 , a memory 14 , and an arithmetic unit 15 . Furthermore, an instruction decoding circuit 101 , a flag value generating circuit 102 , and a register file 110 are provided.

指令译码电路110根据译码的指令输出信号。例如,(a)在译码的指令是加载指令时,生成由该加载指令附加了特征的信号(下面称为加载指令译码信号。),并输出到存储器读出控制电路12和标记值生成电路102。(b)在译码的指令是运算指令时,生成由该运算指令附加了特征的信号(下面称为运算指令译码信号。),并输出到运算器15和标记值生成电路102。(c)在译码的指令是存储指令时,生成由该存储指令附加了特征的信号(下面称为存储指令译码信号),并输出到存储器写入控制电路13。The instruction decoding circuit 110 outputs a signal according to the decoded instruction. For example, (a) when the instruction to be decoded is a load instruction, a signal (hereinafter referred to as a load instruction decoding signal) characterized by the load instruction is generated and output to the memory read control circuit 12 and the flag value generation circuit 102. (b) When the instruction to be decoded is an operation instruction, a signal characterized by the operation instruction (hereinafter referred to as an operation instruction decoding signal) is generated and output to the arithmetic unit 15 and the flag value generation circuit 102 . (c) When the decoded command is a store command, a signal characterized by the store command (hereinafter referred to as a store command decoded signal) is generated and output to the memory write control circuit 13 .

所谓「加载指令」是指从存储器加载数据的指令。The so-called "load instruction" refers to an instruction to load data from memory.

所谓「存储指令」是指向存储器存储数据的指令。The so-called "storage instruction" refers to an instruction to store data in the memory.

所谓「运算指令」是指执行运算处理的指令。The term "computation instruction" refers to an instruction to execute arithmetic processing.

在加载指令译码信号中包含访问存储器14并读出数据所需的地址、数据大小、及数据类型等的信息。The load command decode signal includes information such as address, data size, and data type required for accessing the memory 14 and reading data.

在运算指令译码信号中包含确定运算处理的内容的信息。The operation command decode signal includes information specifying the content of the operation processing.

在存储指令译码信号中包含访问存储器14并写入数据所需的地址、数据大小、及数据类型等的信息。The memory command decode signal includes information such as an address, data size, and data type required to access the memory 14 and write data.

标记值生成电路102根据从指令译码电路101输出的加载指令译码信号,生成表示由该加载指令译码信号存储在寄存器文件110中的数据的属性的标记值,并将生成的标记值与该数据对应地存储在寄存器文件110中。另外,根据从指令译码电路101输出的运算指令译码信号,生成表示由该运算指令译码信号存储在寄存器文件110中的数据的属性的标记值,并将生成的标记值与该数据对应地存储在寄存器文件110中。The tag value generation circuit 102 generates a tag value indicating the attribute of the data stored in the register file 110 by the load command decode signal output from the command decode circuit 101, and compares the generated tag value with This data is correspondingly stored in register file 110 . In addition, based on the operation instruction decoding signal output from the instruction decoding circuit 101, a tag value indicating the attribute of the data stored in the register file 110 by the operation instruction decoding signal is generated, and the generated tag value is associated with the data. stored in register file 110.

另外,标记值显示与该标记值对应的数据的属性。另外,在属性中包含数据大小、数据类型、构成数据的各位的有效或无效的信息。In addition, the tag value shows the attribute of the data corresponding to the tag value. In addition, the attributes include data size, data type, and valid or invalid information of each bit constituting the data.

寄存器文件110具备多个由标记字段111和数据字段112构成的寄存器。并且,具备数据属性判断电路113和数据转换电路114。The register file 110 has a plurality of registers composed of a flag field 111 and a data field 112 . Furthermore, a data attribute judgment circuit 113 and a data conversion circuit 114 are provided.

在标记字段111中存储标记值,在数据字段112中存储与该标记值对应的数据。A tag value is stored in the tag field 111 , and data corresponding to the tag value is stored in the data field 112 .

另外,数据字段112和标记字段111具有1对1的对应关系,并通过寄存器序号(Reg#0~Reg#N)管理。In addition, the data field 112 and the flag field 111 have a one-to-one correspondence, and are managed by register numbers (Reg#0-Reg#N).

数据属性判断电路113在从数据字段112读出数据时,从标记字段111读出与该数据对应的标记值,并根据读出的标记值判断该数据的属性。然后,将判断结果作为数据属性判断信号输出到数据转换电路114。The data attribute judging circuit 113 reads the tag value corresponding to the data from the tag field 111 when reading data from the data field 112 , and judges the attribute of the data according to the read tag value. Then, the judgment result is output to the data conversion circuit 114 as a data attribute judgment signal.

数据转换电路114在从数据字段112读出数据时,根据数据属性判断信号判断是否转换该数据。在判断的结果为转换时,根据数据属性判断信号转换读出的数据,并输出转换后的数据。在为不转换时,不转换读出的数据地直接输出。The data conversion circuit 114 judges whether to convert the data according to the data attribute judgment signal when reading data from the data field 112 . When the judgment result is conversion, the read data is converted according to the data attribute judgment signal, and the converted data is output. When not converted, the read data is output without conversion.

存储器读出控制电路12根据从指令译码电路101输出的加载指令译码信号,将由该加载指令译码信号附加了特征的信号(以下称为存储器读出控制信号。)输出到存储器14。The memory read control circuit 12 outputs a signal characterized by the load command decode signal (hereinafter referred to as a memory read control signal) to the memory 14 based on the load command decode signal output from the command decode circuit 101 .

存储器写入控制电路13根据从指令译码电路101输出的存储指令译码信号,将由该存储指令译码信号附加了特征的信号(以下称为存储器写入控制信号。)输出到存储器14。The memory write control circuit 13 outputs a signal characterized by the store command decode signal (hereinafter referred to as a memory write control signal) to the memory 14 based on the store command decode signal output from the command decode circuit 101 .

存储器14根据从存储器读出控制电路12输出的存储器读出控制信号,将由该存储器读出控制信号确定的数据存储到寄存器文件110。另外,根据从存储器写入控制电路13输出的存储器写入控制信号,从寄存器文件110中读出由该存储器写入控制信号确定的数据。The memory 14 stores data specified by the memory read control signal in the register file 110 based on the memory read control signal output from the memory read control circuit 12 . Also, based on the memory write control signal output from the memory write control circuit 13 , data specified by the memory write control signal is read from the register file 110 .

另外,从存储器14读出的数据,不执行配置变更、代码扩展、零扩展等的数据转换地存储到寄存器文件110。In addition, the data read from the memory 14 is stored in the register file 110 without performing data conversion such as configuration change, code extension, and zero extension.

运算器15根据从指令译码电路101输出的运算指令译码信号,从寄存器文件110读出由该运算指令译码信号确定的数据,并对该数据执行由运算指令译码信号确定的运算处理。然后将执行运算处理得到的数据存储到寄存器文件110。The arithmetic unit 15 reads the data determined by the decoding signal of the calculation command from the register file 110 according to the decoding signal of the calculation command output from the command decoding circuit 101, and executes the calculation processing determined by the decoding signal of the calculation command on the data. . Then, the data obtained by executing the arithmetic processing is stored in the register file 110 .

下面,作为一例,说明实施方式1的寄存器文件的构成。Next, as an example, the configuration of the register file according to Embodiment 1 will be described.

这里,以如下情况为例进行说明:对从寄存器(Reg#0)读出的数据执行运算处理,并将执行运算处理得到的数据、即运算结果存储到寄存器(Reg#1)。Here, a case will be described taking, as an example, a case where arithmetic processing is performed on data read from the register (Reg#0), and the data obtained by performing the arithmetic processing, that is, an arithmetic result is stored in the register (Reg#1).

图4是表示作为一例、实施方式1的寄存器文件的构成的图。FIG. 4 is a diagram showing the configuration of a register file according to Embodiment 1 as an example.

如图所示,数据属性判断电路113从寄存器(Reg#0)的标记字段111读出标记值,并根据读出的标记值,判断从寄存器(Reg#0)的数据字段112读出的数据属性。然后,将判断结果作为数据属性判断信号输出到选择器124等。As shown in the figure, the data attribute judging circuit 113 reads the tag value from the tag field 111 of the register (Reg#0), and judges the data read from the data field 112 of the register (Reg#0) according to the tag value read out Attributes. Then, the judgment result is output to the selector 124 and the like as a data attribute judgment signal.

与此相对,排序部121对从寄存器(Reg#0)的数据字段112输出的数据施行排序处理,并将处理后的数据输出到零扩展部122和代码扩展部123。On the other hand, the sorting unit 121 sorts the data output from the data field 112 of the register (Reg#0), and outputs the processed data to the zero extension unit 122 and the code extension unit 123 .

所谓「排序处理」是指,使M(M是自然数。)位的数据的部分位串与最低位的位一致地排列并输出的处理。例如,在输入32位数据的第8位到第15位的部分位串时,输出从第0位排列至第7位的位串。The "sorting process" refers to a process of arranging and outputting a partial bit string of M (M is a natural number)-bit data in accordance with the lowest bit. For example, when a partial bit string of the 8th bit to the 15th bit of 32-bit data is input, a bit string arranged from the 0th bit to the 7th bit is output.

零扩展部122对从排序部121输出的数据施行零扩展处理,并将处理后的数据输出到选择器124。The zero extension unit 122 performs zero extension processing on the data output from the sorting unit 121 , and outputs the processed data to the selector 124 .

所谓「零扩展处理」是指,在将M(M是自然数。)位的数据扩展到N(N是比M大的自然数。)位的数据时,使从第M-1位到最高位的位为「0」并输出的处理。The so-called "zero extension processing" means that when extending M (M is a natural number.) bit data to N (N is a natural number greater than M.) bit data, the data from the M-1th bit to the highest bit Bit is "0" and output processing.

代码扩展部123对从排序部121输出的数据施行代码扩展处理,并将处理后的数据输出到选择器124。The code expansion unit 123 performs code expansion processing on the data output from the sorting unit 121 , and outputs the processed data to the selector 124 .

所谓「代码扩展处理」是指,在将M(M是自然数。)位的数据扩展到N(N是比M大的自然数。)位的数据时,使从第M-1位到最高位的位为「M位数据的代码位的值」并输出的处理。The so-called "code expansion processing" means that when expanding M (M is a natural number.) bit data to N (N is a natural number greater than M.) bit data, make the code from the M-1th bit to the highest bit Bit is "the value of the code bit of M-bit data" and output.

选择器124根据从数据属性判断电路113输出的数据属性判断信号,选择从寄存器(Reg#0)的数据字段112输出的数据、从零扩展部122输出的数据、从代码扩展部123输出的数据之一,并输出到运算器15。The selector 124 selects the data output from the data field 112 of the register (Reg#0), the data output from the zero extension section 122, and the data output from the code extension section 123 based on the data attribute judgment signal output from the data attribute judgment circuit 113. One of them is output to the arithmetic unit 15.

然后,运算器15对从选择器124输出的数据执行运算处理,并将执行运算处理得到的数据、即运算结果存储到寄存器(Reg#1)的数据字段112。Then, the arithmetic unit 15 executes arithmetic processing on the data output from the selector 124, and stores data obtained by performing the arithmetic processing, that is, an arithmetic result, in the data field 112 of the register (Reg#1).

下面,作为一例,说明实施方式1的寄存器的数据结构。Next, as an example, the data structure of the register in Embodiment 1 will be described.

图5是表示作为一例、实施方式1的寄存器的数据结构的图。FIG. 5 is a diagram showing a data structure of a register according to Embodiment 1 as an example.

如图所示,寄存器由8位的标记字段151和32位的数据字段构成。As shown, the register is composed of an 8-bit flag field 151 and a 32-bit data field.

标记字段151的第0位至第3位的低位4位表示有效位、即从数据字段152的何处开始存储有数据。例如,(a)在为「1000」时,表示从第3位串(第31位)开始存储。(b)在为「0100」时,表示从第2位串(第23位)开始存储。(c)在为「0010」时,表示从第1位串(第15位)开始存储。(d)在为「0001」时,表示从第0位串(第7位)开始存储。The lower 4 bits from the 0th bit to the 3rd bit of the flag field 151 indicate a valid bit, that is, from where in the data field 152 data is stored. For example, when (a) is "1000", it indicates that storage starts from the third bit string (31st bit). (b) When it is "0100", it indicates that storage starts from the second bit string (the 23rd bit). (c) When it is "0010", it means that the storage starts from the first bit string (15th bit). (d) When it is "0001", it indicates that storage starts from the 0th bit string (7th bit).

标记字段151的第4位至第5位的2位表示存储在数据字段152中的数据的大小。例如,(a)在为「00」时表示32位,(b)在为「01」时表示16位,(c)在为「10」时表示8位。另外,「11」为空。2 bits of the 4th to 5th bits of the flag field 151 indicate the size of data stored in the data field 152 . For example, (a) indicates 32 bits when it is "00", (b) indicates 16 bits when it is "01", and (c) indicates 8 bits when it is "10". Also, "11" is empty.

标记字段151的第6位表示存储在数据字段152中的数据是否是有代码的数据。例如,(a)在为「0」时,表示是无代码的数据,(b)在为「1」时,表示是有代码的数据。Bit 6 of the flag field 151 indicates whether or not the data stored in the data field 152 is coded data. For example, when (a) is "0", it indicates data without a code, and when (b) is "1", it indicates data with a code.

标记字段151的第7位表示存储在数据字段152中的数据是否是执行了配置变更、代码扩展、零扩展等的数据转换的数据。例如,(a)在为「0」时,表示是转换结束、即是转换后的数据,(b)在为「1」时,表示是转换未结束、即是转换前的数据。Bit 7 of the flag field 151 indicates whether or not the data stored in the data field 152 is data on which data conversion such as configuration change, code extension, zero extension, etc. has been performed. For example, when (a) is "0", it indicates that the conversion is completed, that is, the data after conversion, and when (b) is "1", it indicates that the conversion is not completed, that is, the data before conversion.

下面,说明在实施方式1的数据转换电路中数据转换的实例。Next, an example of data conversion in the data conversion circuit of Embodiment 1 will be described.

图6A~图6C是表示在实施方式1的数据转换电路中数据转换的实例的图。6A to 6C are diagrams showing examples of data conversion in the data conversion circuit according to the first embodiment.

如图所示,数据转换电路114根据下述(1)~(3)的情况不同,数据转换的内容不同。As shown in the figure, the data conversion circuit 114 differs according to the following (1) to (3), and the content of the data conversion is different.

(1)在执行指令161a(mov Reg,Mem)、并从存储器162b读出了32位的数据时,数据转换电路114不转换。即,将32位的数据存储到32位的寄存器163b中。(参照图6A。)。(1) When executing instruction 161a (mov Reg, Mem) and reading 32-bit data from memory 162b, data conversion circuit 114 does not convert. That is, 32-bit data is stored in the 32-bit register 163b. (See Figure 6A.).

(2)在执行指令161b(movb Reg,Mem)、并从存储器162b中读出了32位中从第1位串开始有效的8位数据时,数据转换电路114将其转换为与最低位的位一致地排列并进行了零扩展的数据。然后,将转换后的数据存储在32位的寄存器163b中。(参照图6B。)。(2) When executing the instruction 161b (movb Reg, Mem) and reading out the effective 8-bit data from the first bit string in the 32 bits from the memory 162b, the data conversion circuit 114 converts it to the lowest bit Bit-aligned and zero-extended data. Then, the converted data is stored in the 32-bit register 163b. (See Figure 6B.).

(3)在执行指令161c(movbex Reg,Mem)、并从存储器162b中读出了32位中从第1位串开始有效的8位数据时,数据转换电路114将其转换成与最低位的位一致地排列并进行了代码扩展的数据。然后,将转换后的数据存储在32位的寄存器163c中。(参照图6C。)。(3) When the instruction 161c (movbex Reg, Mem) is executed and the effective 8-bit data from the first bit string in the 32 bits is read from the memory 162b, the data conversion circuit 114 converts it into the lowest bit Bit-aligned and code-extended data. Then, the converted data is stored in the 32-bit register 163c. (See Figure 6C.).

下面,说明实施方式1的处理器的动作。Next, the operation of the processor according to Embodiment 1 will be described.

图7、图8A~图8C是表示实施方式1的处理器的动作的图。7 and 8A to 8C are diagrams showing operations of the processor according to the first embodiment.

如图7所示,指令译码电路101根据译码的指令,执行下述(1)~(3)之一(步骤S101)。As shown in FIG. 7 , the instruction decoding circuit 101 executes one of the following (1) to (3) according to the decoded instruction (step S101 ).

(1)指令译码电路101在译码的指令是加载指令时,将加载指令译码信号输出到存储器读出控制电路12和标记值生成电路102(步骤S111)。(1) When the decoded command is a load command, the command decoding circuit 101 outputs a load command decode signal to the memory read control circuit 12 and the flag value generating circuit 102 (step S111 ).

与之对应,存储器读出控制电路12将存储器读出控制信号输出到存储器14(步骤S112)。存储器14将由存储器读出控制信号确定的数据存储到寄存器文件110(步骤S113)。另一方面,标记值生成电路102将表示由加载指令译码信号存储在寄存器文件110中的数据的属性的标记值,与该数据相对应地存储到寄存器文件110(步骤S114)。Correspondingly, the memory read control circuit 12 outputs a memory read control signal to the memory 14 (step S112). The memory 14 stores the data specified by the memory read control signal in the register file 110 (step S113). On the other hand, flag value generating circuit 102 stores, in register file 110 , a flag value indicating an attribute of the data stored in register file 110 by the load instruction decode signal in association with the data (step S114 ).

这时,如图8所示,寄存器文件110将由加载指令译码信号确定的数据存储到数据字段112(步骤S121),并将与该数据对应的标记值存储到标记字段111(步骤S122)。At this time, as shown in FIG. 8, the register file 110 stores the data determined by the load instruction decoding signal in the data field 112 (step S121), and stores the tag value corresponding to the data in the tag field 111 (step S122).

(2)指令译码电路101在译码的指令是运算指令时,将运算指令译码信号输出到运算器15和标记值生成电路102(步骤S131)。(2) When the decoded instruction is an operation instruction, the instruction decoding circuit 101 outputs an operation instruction decoding signal to the arithmetic unit 15 and the flag value generation circuit 102 (step S131).

与之对应,运算器15从寄存器文件110读出由运算指令译码信号确定的数据(步骤S132),并对读出的数据执行由运算指令译码信号确定的运算处理(步骤S133)。然后,将执行运算处理得到的数据存储到寄存器文件110(步骤S134)。另一方面,标记值生成电路102将表示由运算指令译码信号存储在寄存器文件110中的数据的属性的标记值,与执行运算处理得到的数据相对应地存储到寄存器文件110(步骤S135)。Correspondingly, the arithmetic unit 15 reads the data determined by the decoding signal of the operation instruction from the register file 110 (step S132), and executes the operation processing determined by the decoding signal of the operation instruction on the read data (step S133). Then, the data obtained by executing the arithmetic processing is stored in the register file 110 (step S134). On the other hand, the flag value generating circuit 102 stores, in the register file 110, a flag value indicating an attribute of the data stored in the register file 110 from the operation instruction decoded signal in association with the data obtained by executing the arithmetic processing (step S135) .

这时,如图8B所示,寄存器文件110在数据属性判断电路113中,根据与由运算指令译码信号确定的数据相对应的标记值,判断该数据的属性(步骤S141),并将判断结果作为数据属性判断信号输出到数据转换电路114(步骤S142)。然后,在数据转换电路114中根据数据属性判断信号判断是否转换该数据(步骤S143)。在判断的结果为转换时(步骤S143:是),根据数据属性判断信号转换该数据(步骤S144),并将转换后的数据输出到运算器15(步骤S145)。At this time, as shown in FIG. 8B, in the data attribute judging circuit 113, the register file 110 judges the attribute of the data according to the tag value corresponding to the data determined by the operation instruction decoding signal (step S141), and judges The result is output to the data conversion circuit 114 as a data attribute judgment signal (step S142). Then, in the data conversion circuit 114, it is judged whether to convert the data according to the data attribute judgment signal (step S143). When the judgment result is conversion (step S143: Yes), the data is converted according to the data attribute judgment signal (step S144), and the converted data is output to the arithmetic unit 15 (step S145).

另外,在为不转换时(步骤S143:否),不转换由运算指令译码信号确定的数据地直接输出到运算器15。In addition, when it is not converted (step S143: NO), the data specified by the operation command decode signal is not converted and output to the arithmetic unit 15 as it is.

(3)指令译码电路101在译码的指令是存储指令时,将存储指令译码信号输出到存储器写入控制电路13(步骤S151)。(3) When the decoded command is a store command, the command decoding circuit 101 outputs a store command decode signal to the memory writing control circuit 13 (step S151).

与之对应,存储器写入控制电路13将存储器写入控制信号输出到存储器14(步骤S152)。存储器14从寄存器文件110读出由存储器写入控制信号确定的数据(步骤S153)。Correspondingly, the memory write control circuit 13 outputs a memory write control signal to the memory 14 (step S152). The memory 14 reads out the data specified by the memory write control signal from the register file 110 (step S153).

这时,如图8C所示,寄存器文件110在数据属性判断电路113中,根据与由存储指令译码信号确定的数据相对应的标记值,判断该数据的属性(步骤S161),并将判断结果作为数据属性判断信号输出到数据变换电路114(步骤S162)。然后,在数据转换电路114中,根据数据属性判断信号判断是否转换该数据(步骤S163)。在判断的结果为转换时(步骤S163:是),根据数据属性判断信号转换该数据(步骤S164),并将转换后的数据输出到存储器14(步骤S165)。At this time, as shown in FIG. 8C, in the data attribute judging circuit 113, the register file 110 judges the attribute of the data according to the tag value corresponding to the data determined by the store instruction decoding signal (step S161), and judges The result is output to the data conversion circuit 114 as a data attribute judgment signal (step S162). Then, in the data conversion circuit 114, it is judged whether to convert the data according to the data attribute judgment signal (step S163). When the judgment result is conversion (step S163: Yes), the data is converted according to the data attribute judgment signal (step S164), and the converted data is output to the memory 14 (step S165).

另外,在为不转换时(步骤S163:否),不转换由存储器写入控制信号确定的数据地输出到存储器14。In addition, when it is not converted (step S163: NO), the data determined by the memory write control signal are output to the memory 14 without conversion.

根据如上所述的实施方式1的处理器100,在寄存器文件110中具备标记字段111、数据字段112、数据属性判断电路113及数据转换电路114。According to the processor 100 of Embodiment 1 as described above, the register file 110 includes a flag field 111 , a data field 112 , a data attribute determination circuit 113 , and a data conversion circuit 114 .

由此,可在将数据从寄存器文件110输出到运算器15之前,进行配置变更、代码扩展、零扩展等的数据变换,代替在存储器14和寄存器文件110之间执行,并可削减在存储器14和寄存器文件110之间产生的延迟。并且,由于运算器15能够通用现有的运算器,所以设计也容易。As a result, before data is output from the register file 110 to the arithmetic unit 15, data conversion such as configuration changes, code extensions, and zero extensions can be performed instead of being performed between the memory 14 and the register file 110, and the number of conversions in the memory 14 can be reduced. and register file 110. Furthermore, since the arithmetic unit 15 can be used in common with existing arithmetic units, the design is also easy.

(实施方式2)(Embodiment 2)

下面,参照附图说明本发明的实施方式2。Next, Embodiment 2 of the present invention will be described with reference to the drawings.

实施方式2的处理器的特征在于,在将数据从寄存器文件输出到运算器之前,在寄存器文件的内部进行配置变更、代码扩展、零扩展等的数据转换,代替在存储器和寄存器文件之间进行。The processor according to Embodiment 2 is characterized in that before outputting data from the register file to the arithmetic unit, data conversion such as configuration change, code extension, and zero extension is performed inside the register file instead of between the memory and the register file. .

根据以上的观点,说明实施方式2的处理器。Based on the above points of view, the processor according to Embodiment 2 will be described.

另外,对与实施方式1相同的构成要素附加相同符号,并省略说明。In addition, the same code|symbol is attached|subjected to the same component as Embodiment 1, and description is abbreviate|omitted.

图9是表示实施方式2的处理器的构成的图。FIG. 9 is a diagram showing the configuration of a processor according to Embodiment 2. FIG.

如图所示,处理器200与实施方式1的处理器100相比,不同之处在于:具备寄存器文件210代替寄存器文件110(参照图3。)。As shown in the figure, the processor 200 differs from the processor 100 according to Embodiment 1 in that it includes a register file 210 instead of the register file 110 (see FIG. 3 ).

寄存器文件210与寄存器文件110相比,不同之处在于:具备标记字段211、数据字段212、数据属性判断电路213、数据转换电路214,代替标记字段111、数据字段112、数据属性判断电路113、数据转换电路114。Compared with the register file 110, the register file 210 is different in that it has a tag field 211, a data field 212, a data attribute judging circuit 213, and a data conversion circuit 214, instead of the tag field 111, the data field 112, the data attribute judging circuit 113, Data conversion circuit 114.

数据属性判断电路213,当重新将数据存储到数据字段212时,从标记字段211中读出与该数据相对应的标记值,并根据读出的标记值判断该数据的属性。然后,将判断结果作为数据属性判断信号输出到数据转换电路214。并且,根据该判断结果判断是否转换该标记值。在判断的结果为转换时,根据该判断结果转换该标记值,并将转换后的标记值存储到寄存器文件210,以将转换前的标记值置换为转换后的标记值。The data attribute judging circuit 213, when storing data in the data field 212 again, reads the tag value corresponding to the data from the tag field 211, and judges the attribute of the data according to the read tag value. Then, the judgment result is output to the data conversion circuit 214 as a data attribute judgment signal. And, according to the judgment result, it is judged whether to convert the flag value. When the judgment result is conversion, the tag value is converted according to the judgment result, and the converted tag value is stored in the register file 210 to replace the converted tag value with the converted tag value.

数据转换电路214,当重新将数据存储到数据字段212时,根据数据属性判断信号判断是否转换该数据。在判断的结果为转换时,根据数据属性判断信号转换该数据,并将转换后的数据存储到数据字段212。在为不转换时,不转换该数据。The data conversion circuit 214, when re-storing data into the data field 212, judges whether to convert the data according to the data attribute judgment signal. When the judgment result is conversion, the data is converted according to the data attribute judgment signal, and the converted data is stored in the data field 212 . When not converted, the data is not converted.

下面,作为一例,说明实施方式2的寄存器文件的构成。Next, as an example, the configuration of the register file according to Embodiment 2 will be described.

这里,以对从存储器(Reg#0)读出的数据进行数据转换,并将转换后的数据存储到寄存器(Reg#0)的情况为例进行说明。Here, the case where the data read from the memory (Reg#0) is converted into data and the converted data is stored in the register (Reg#0) will be described as an example.

图10是表示作为一例、实施方式2的寄存器文件的构成的图。FIG. 10 is a diagram showing the configuration of a register file according to Embodiment 2 as an example.

如图所示,数据属性判断电路213从寄存器(Reg#0)的标记字段211读出标记值,并根据读出的标记值判断从寄存器(Reg#0)的数据字段212读出的数据的属性。然后,将判断结果作为数据属性判断信号输出到选择器224。As shown in the figure, the data attribute judging circuit 213 reads out the tag value from the tag field 211 of the register (Reg#0), and judges the identity of the data read out from the data field 212 of the register (Reg#0) according to the tag value read out. Attributes. Then, the judgment result is output to the selector 224 as a data attribute judgment signal.

与此相对,排序部221对从寄存器(Reg#0)的数据字段212输出的数据施行排序处理,并将处理后的数据输出到零扩展部222和代码扩展部223。On the other hand, the sorting unit 221 sorts the data output from the data field 212 of the register (Reg#0), and outputs the processed data to the zero extension unit 222 and the code extension unit 223 .

另外,由于零扩展部222和代码扩展部223与实施方式1的零扩展部122和代码扩展部123构成相同,所以省略说明。In addition, since the zero extension unit 222 and the code extension unit 223 have the same configuration as the zero extension unit 122 and the code extension unit 123 in Embodiment 1, description thereof will be omitted.

选择器224根据从数据属性判断电路213输出的数据属性判断信号,选择从寄存器(Reg#0)的数据字段212输出的数据、从零扩展部222输出的数据、从代码扩展部223输出的数据之一,并存储到寄存器(Reg#0)的数据字段112。The selector 224 selects the data output from the data field 212 of the register (Reg#0), the data output from the zero extension part 222, and the data output from the code extension part 223 based on the data attribute judgment signal output from the data attribute judgment circuit 213. One of them, and store into the data field 112 of the register (Reg#0).

并且,数据属性判断电路213转换读出的标记值,并将转换后的标记值存储到寄存器(Reg#0)的标记字段212。And, the data attribute judging circuit 213 converts the read flag value, and stores the converted flag value in the flag field 212 of the register (Reg#0).

然后,运算器15对从寄存器(Reg#0)的数据字段212输出的转换后的数据进行运算处理,并将进行运算处理得到的数据、即运算结果存储到寄存器(Reg#1)等的数据字段212。Then, the arithmetic unit 15 performs arithmetic processing on the converted data output from the data field 212 of the register (Reg#0), and stores the data obtained by the arithmetic processing, that is, the arithmetic result, into data such as the register (Reg#1). Field 212.

下面说明实施方式2的处理器200的动作。Next, the operation of the processor 200 according to Embodiment 2 will be described.

图11、图12A、图12B是表示实施方式2的处理器的动作的图。11 , 12A, and 12B are diagrams showing operations of the processor according to the second embodiment.

如图11、图12A、图12B所示,处理器200与实施方式1的处理器100相比,存在下述(1)~(3)的不同点。As shown in FIG. 11 , FIG. 12A , and FIG. 12B , the processor 200 differs from the processor 100 according to Embodiment 1 in the following points (1) to (3).

(1)关于在加载指令实行时的动作,与实施方式1的动作(步骤S111~S114、S121~S122)相比,存在下述的不同点(参照图8A、图11。)。(1) The operation when the load command is executed differs from the operation in Embodiment 1 (steps S111 to S114 , S121 to S122 ) in the following points (see FIG. 8A and FIG. 11 ).

当代替实施方式1的寄存器文件110的动作(步骤S121~S122),寄存器文件210执行加载指令,将数据重新存储到数据字段212时(步骤S221),在数据属性判断电路213中,根据与该数据对应的标记值判断该数据的属性(步骤S222),并将判断结果作为数据属性信号输出到数据转换电路213(步骤S223)。并且,根据该判断结果判断是否转换该标记值(步骤S224)。在判断的结果为转换时(步骤S224:是),根据该判断结果转换该标记值(步骤S225),并将转换后的标记值存储到标记字段211,以将转换前的标记值置换为转换后的标记值(步骤S226)。然后,在数据转换电路213中根据数据属性判断信号判断是否转换该数据(步骤S227)。在判断的结果为转换时(步骤S227:是),根据数据属性判断信号转换该数据(步骤S228),并将转换后的数据存储到数据字段212,以将转换前的数据置换为转换后的数据(步骤S229)。When the register file 210 executes the load command instead of the operation of the register file 110 in Embodiment 1 (steps S121 to S122), and stores the data in the data field 212 again (step S221), in the data attribute judging circuit 213, according to the The tag value corresponding to the data judges the attribute of the data (step S222), and outputs the judgment result as a data attribute signal to the data conversion circuit 213 (step S223). And, it is judged whether to convert the flag value according to the judgment result (step S224). When the result of judging is conversion (step S224: Yes), convert the tag value (step S225) according to the judgment result, and store the tag value after conversion into the tag field 211, so as to replace the tag value before conversion with conversion After the mark value (step S226). Then, in the data conversion circuit 213, it is judged whether to convert the data according to the data attribute judgment signal (step S227). When the result of judging is conversion (step S227: Yes), the data is converted according to the data attribute judgment signal (step S228), and the converted data is stored in the data field 212 to replace the converted data with the converted data. data (step S229).

(2)关于运算指令执行时的动作,与实施方式1的动作(步骤S131~S135、S141~S144)相比,存在下述的不同点(参照图8B、图12A。)。(2) The operation when the operation command is executed differs from the operation in Embodiment 1 (steps S131 to S135 , S141 to S144 ) in the following points (see FIG. 8B and FIG. 12A ).

当寄存器文件210替代实施方式1的寄存器文件110的动作(步骤S141~S144)执行运算指令时,从数据字段212中读出数据(步骤S241)。When register file 210 replaces the operation of register file 110 in Embodiment 1 (steps S141 to S144) to execute an operation instruction, data is read from data field 212 (step S241).

(3)关于存储指令执行时的动作,与实施方式1的动作(步骤S151~S153、S161~S164)相比,存在下述的不同点(参照图8C、图12B。)。(3) The operation when the store command is executed differs from the operation in Embodiment 1 (steps S151 to S153 , S161 to S164 ) in the following points (see FIG. 8C and FIG. 12B ).

当替代实施方式1的寄存器文件110的动作(步骤S161~S164),寄存器文件210执行存储指令时,将存储在数据字段212中的数据输出到存储器14(步骤S261)。When register file 210 executes a store command instead of the operation of register file 110 in Embodiment 1 (steps S161 to S164), the data stored in data field 212 is output to memory 14 (step S261).

根据如上所述的实施方式2的处理器200,在寄存器文件210中具备标记字段211、数据字段212、数据属性判断电路213及数据转换电路214。According to the processor 200 of Embodiment 2 as described above, the register file 210 includes a flag field 211 , a data field 212 , a data attribute judgment circuit 213 , and a data conversion circuit 214 .

由此,可在将数据从寄存器文件210输出到运算器15之前,在寄存器文件210的内部进行配置变更、代码扩展、零扩展等的数据转换,代替在存储器14和寄存器文件210之间进行,并可以削减在存储器14和寄存器文件210之间产生的延迟。另外,因为在寄存器文件210的内部进行数据转换,所以对寄存器文件210和运算器15之间、寄存器文件210和存储器14之间不产生延迟增加的影响。并且,由于运算器15可通用现有的运算器所以设计容易。Therefore, data conversion such as configuration change, code extension, and zero extension can be performed inside the register file 210 before outputting the data from the register file 210 to the arithmetic unit 15, instead of being performed between the memory 14 and the register file 210, And the delay generated between the memory 14 and the register file 210 can be reduced. In addition, since data conversion is performed inside the register file 210 , there is no influence of increased delay between the register file 210 and the arithmetic unit 15 and between the register file 210 and the memory 14 . In addition, since the computing unit 15 can be used with existing computing units, the design is easy.

(实施方式3)(Embodiment 3)

下面,参照附图说明本发明的实施方式3。Next, Embodiment 3 of the present invention will be described with reference to the drawings.

实施方式3的处理器的特征在于,在运算器和存储器写入控制电路的各自的内部进行配置变更、代码扩展、零扩展等的数据转换,代替在存储器和寄存器文件之间进行。The processor according to Embodiment 3 is characterized in that data conversion such as configuration change, code extension, and zero extension is performed inside the arithmetic unit and the memory write control circuit, instead of between the memory and the register file.

根据以上的观点,说明实施方式3的处理器。Based on the above points of view, the processor according to Embodiment 3 will be described.

另外,对与实施方式1相同的构成要素附加相同符号,并省略说明。In addition, the same code|symbol is attached|subjected to the same component as Embodiment 1, and description is abbreviate|omitted.

图13是表示实施方式3的处理器的构成的图。FIG. 13 is a diagram showing the configuration of a processor according to Embodiment 3. FIG.

如图所示,处理器300与实施方式1的处理器100相比,存在下述(1)~(3)的不同点(参照图3。)。As shown in the figure, the processor 300 differs from the processor 100 according to Embodiment 1 in the following points (1) to (3) (see FIG. 3 ).

(1)具备寄存器文件310,来替代寄存器文件110。(1) The register file 310 is provided instead of the register file 110 .

寄存器文件310与寄存器文件110相比,不同之处在于:不具备数据属性判断电路113和数据转换电路114。The difference between the register file 310 and the register file 110 is that it does not have the data attribute judgment circuit 113 and the data conversion circuit 114 .

(2)具备运算器320来替代运算器15。(2) The arithmetic unit 320 is provided instead of the arithmetic unit 15 .

运算器320与运算器15相比,不同之处在于:新具备数据属性判断电路321和运算处理电路322。Compared with the arithmetic unit 15 , the arithmetic unit 320 is different in that it newly includes a data attribute judgment circuit 321 and an arithmetic processing circuit 322 .

数据属性判断电路321从寄存器文件310读出与由运算指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。然后,将判断结果作为数据属性判断信号输出到运算处理电路322。The data attribute judging circuit 321 reads out the flag value corresponding to the data determined by the operation instruction decoding signal from the register file 310, and judges the attribute of the data according to the read flag value. Then, the determination result is output to the arithmetic processing circuit 322 as a data attribute determination signal.

运算处理电路322从寄存器文件310读出由运算指令译码信号确定的数据。根据数据属性判断信号判断是否转换读出的数据。在判断的结果为转换时,根据数据属性判断信号转换读出的数据,并对转换后的数据进行运算处理。然后,将进行运算处理得到的数据存储到寄存器文件310的数据字段311。The arithmetic processing circuit 322 reads out data specified by the arithmetic instruction decode signal from the register file 310 . Whether to convert the read data is judged according to the data attribute judging signal. When the judging result is conversion, the read data is converted according to the data attribute judgment signal, and the converted data is processed. Then, the data obtained by performing the arithmetic processing is stored in the data field 311 of the register file 310 .

另外,在为不转换时,不转换读出的数据地直接进行运算处理。In addition, in the case of no conversion, the read data is not converted, and the arithmetic processing is performed as it is.

(3)具备存储器写入控制电路330,来替代存储器写入控制电路13。(3) A memory write control circuit 330 is provided instead of the memory write control circuit 13 .

存储器写入控制电路330与存储器写入控制电路13相比,不同之处在于:新具备数据属性判断电路331和数据转换电路332。Compared with the memory write control circuit 13 , the memory write control circuit 330 is different in that it newly includes a data attribute determination circuit 331 and a data conversion circuit 332 .

数据属性判断电路331从寄存器文件310读出与由存储指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。然后,将判断结果作为数据属性判断信号输出到数据转换电路332。并且,生成根据存储指令译码信号和标记值的存储器写入控制信号,并输出到存储器14。The data attribute judging circuit 331 reads out the flag value corresponding to the data determined by the store instruction decoding signal from the register file 310, and judges the attribute of the data according to the read flag value. Then, the judgment result is output to the data conversion circuit 332 as a data attribute judgment signal. Then, a memory write control signal based on the store command decode signal and the flag value is generated and output to the memory 14 .

数据转换电路332从寄存器文件310读出由存储指令译码信号确定的数据,并根据数据属性判断信号判断是否转换读出的数据。在判断的结果为转换时,根据数据属性判断信号转换读出的数据,并将转换后的数据输出到存储器14。The data conversion circuit 332 reads out the data determined by the store instruction decoding signal from the register file 310, and judges whether to convert the read data according to the data attribute judgment signal. When the judgment result is conversion, the read data is converted according to the data attribute judgment signal, and the converted data is output to the memory 14 .

另外,在为不转换时,不转换读出的数据地直接输出到存储器14。In addition, in the case of no conversion, the read data is directly output to the memory 14 without conversion.

下面,作为一例,说明实施方式3的运算器的构成。Next, as an example, the configuration of the arithmetic unit according to Embodiment 3 will be described.

这里,以对从寄存器(Reg#0)读出的数据进行加法处理,并将进行加法处理得到的数据、即加法的结果存储到寄存器(Reg#1)的情况为例进行说明。Here, a case where addition processing is performed on data read from the register (Reg#0) and the addition result is stored in the register (Reg#1) will be described as an example.

图14是表示作为一例、实施方式3的运算器的构成的图。FIG. 14 is a diagram showing a configuration of an arithmetic unit according to Embodiment 3 as an example.

如图所示,数据属性判断电路321从寄存器(Reg#0)的标记字段311读出标记值,并根据读出的标记值判断从寄存器(Reg#0)的数据字段312读出的数据的属性。然后,将判断结果作为数据属性判断信号输出到选择器344。As shown in the figure, the data attribute judging circuit 321 reads the tag value from the tag field 311 of the register (Reg#0), and judges the identity of the data read from the data field 312 of the register (Reg#0) according to the tag value read out. Attributes. Then, the judgment result is output to the selector 344 as a data attribute judgment signal.

与此相对,排序部341对从寄存器(Reg#0)的数据字段312输出的数据实施排序处理,并将处理后的数据输出到零扩展部342和代码扩展部343。On the other hand, the sorting unit 341 sorts the data output from the data field 312 of the register (Reg#0), and outputs the processed data to the zero extension unit 342 and the code extension unit 343 .

零扩展部342对从排序部341输出的数据实施零扩展处理,并将处理后的数据输出到选择器344。The zero extension unit 342 performs zero extension processing on the data output from the sorting unit 341 , and outputs the processed data to the selector 344 .

代码扩展部343对从排序部341输出的数据实施代码扩展处理,并将处理后的数据输出到选择器344。The code extension unit 343 performs code extension processing on the data output from the sorting unit 341 , and outputs the processed data to the selector 344 .

选择器344根据从数据属性判断电路321输出的数据属性判断信号,选择从寄存器(Reg#0)的数据字段312输出的数据、从零扩展部342输出的数据、从代码扩展部343输出的数据之一,并输出到加法器345。The selector 344 selects the data output from the data field 312 of the register (Reg#0), the data output from the zero extension part 342, and the data output from the code extension part 343 based on the data attribute judgment signal output from the data attribute judgment circuit 321. One, and output to the adder 345.

加法器345对从选择器344输出的数据执行加法处理,并将执行加法处理得到的数据、即运算结果存储在寄存器(Reg#1)的数据字段312中。The adder 345 performs addition processing on the data output from the selector 344, and stores the data obtained by performing the addition processing, that is, an operation result, in the data field 312 of the register (Reg#1).

接着,说明实施方式3的处理器300的动作。Next, the operation of the processor 300 according to Embodiment 3 will be described.

图15A、图15B是表示实施方式3的处理器的动作的图。15A and 15B are diagrams showing operations of the processor according to the third embodiment.

如图所示,处理器300与实施方式的处理器100相比,存在下述不同点。As shown in the figure, the processor 300 differs from the processor 100 of the embodiment in the following points.

(1)关于加载指令执行时的动作,因与实施方式1的动作(步骤S111~S114、S121~S122)相同而省略说明。(1) The operation when the load command is executed is the same as the operation (steps S111 to S114 , S121 to S122 ) in Embodiment 1, and description thereof will be omitted.

(2)关于运算指令执行时的动作,与实施方式1的动作(步骤S131~S135、S141~S145)相比,存在下述不同点(参照图8B、图15A)。(2) The operation when the operation command is executed differs from the operation in the first embodiment (steps S131 to S135 , S141 to S145 ) in the following points (see FIG. 8B and FIG. 15A ).

当代替实施方式1的寄存器文件110的动作(步骤S141~S144),运算器320执行运算指令时,在数据属性判断电路321中根据与由运算指令译码信号确定的数据相对应的标记值,判断该数据的属性(步骤S341),并将判断结果作为数据属性判断信号输出到运算处理电路322(步骤S342)。而且,在运算处理电路322中根据数据属性判断信号,判断是否转换该数据(步骤S343)。在判断的结果是转换时(步骤S343:是),根据数据属性判断信号转换该数据(步骤S344),并对转换后的数据执行运算处理(步骤S345)。将执行该运算处理得到的数据存储在寄存器文件310的数据字段312中(步骤S346)。When replacing the operation of the register file 110 of Embodiment 1 (steps S141 to S144), when the arithmetic unit 320 executes an arithmetic instruction, in the data attribute judging circuit 321, based on the flag value corresponding to the data determined by the arithmetic instruction decoding signal, The attribute of the data is judged (step S341), and the judgment result is output to the arithmetic processing circuit 322 as a data attribute judgment signal (step S342). Then, in the arithmetic processing circuit 322, it is judged whether to convert the data based on the data attribute judgment signal (step S343). When the judgment result is conversion (step S343: Yes), the data is converted according to the data attribute judgment signal (step S344), and arithmetic processing is performed on the converted data (step S345). The data obtained by executing the arithmetic processing is stored in the data field 312 of the register file 310 (step S346).

另外,在为不转换时(步骤S343:否),不转换由运算指令译码信号确定的数据地直接执行运算处理。In addition, when it is not converted (step S343: No), the calculation process is directly performed without converting the data specified by the calculation instruction decode signal.

(3)关于存储指令执行时的动作,与实施方式1的动作(步骤S151~S153、S161~S165)相比,存在下述不同点(参照图8C、图15B)。(3) The operation when the store command is executed differs from the operation in Embodiment 1 (steps S151 to S153 , S161 to S165 ) in the following points (see FIG. 8C and FIG. 15B ).

当代替实施方式1的寄存器文件110的动作(步骤S161~S164),存储器写入控制电路330执行存储指令时,在数据属性判断电路331中根据与由存储器写入控制信号确定的数据相对应的标记值,判断该数据的属性(步骤S361),并将判断结果作为数据属性判断信号输出到数据转换电路332(步骤S362)。而且,在数据转换电路332中根据数据属性判断信号判断是否转换该数据(步骤S363)。在判断的结果是转换时(步骤S363:是),根据数据属性判断信号转换该数据(步骤S364),并将转换后的数据输出到存储器(步骤S365)。When the memory write control circuit 330 executes a store instruction instead of the operation of the register file 110 in the first embodiment (steps S161 to S164), the data attribute judging circuit 331 uses the data corresponding to the data specified by the memory write control signal mark value, judge the attribute of the data (step S361), and output the judgment result as a data attribute judgment signal to the data conversion circuit 332 (step S362). And, it is judged whether to convert the data according to the data attribute judgment signal in the data conversion circuit 332 (step S363). When the judgment result is conversion (step S363: Yes), the data is converted according to the data attribute judgment signal (step S364), and the converted data is output to the memory (step S365).

另外,在为不转换时(步骤S363:否),不转换由存储器写入控制信号确定的数据地直接输出到存储器14。In addition, when it is not converted (step S363: NO), the data determined by the memory write control signal are output to the memory 14 as it is without conversion.

根据如上所述的实施方式3的处理器300,在寄存器文件310中具备标记字段311和数据字段312,在运算器320中具备数据属性判断电路321和运算处理电路322,在存储器写入控制部330中具备数据属性判断电路331和数据转换电路332。According to the processor 300 of Embodiment 3 as described above, the flag field 311 and the data field 312 are provided in the register file 310, the data attribute determination circuit 321 and the operation processing circuit 322 are provided in the arithmetic unit 320, and the memory write control unit 330 includes a data attribute judgment circuit 331 and a data conversion circuit 332 .

由此,可在运算器320和存储器写入控制电路330各自的内部进行配置变更、代码扩展、零扩展等数据转换,来代替在存储器14和寄存器文件310之间进行,并可削减在存储器14和寄存器文件310之间产生的延迟。As a result, data conversion such as configuration change, code extension, and zero extension can be performed inside the arithmetic unit 320 and the memory write control circuit 330 instead of between the memory 14 and the register file 310, and the memory 14 can be reduced. and register file 310.

(实施方式4)(Embodiment 4)

下面,参照附图说明本发明的实施方式4。Next, Embodiment 4 of the present invention will be described with reference to the drawings.

实施方式4的处理器的特征在于,在运算器和存储器写入控制电路各自的内部进行配置变更、代码扩展、零扩展等数据转换,来代替在存储器和寄存存储器之间进行。The processor according to Embodiment 4 is characterized in that data conversion such as configuration change, code extension, and zero extension is performed inside each of the arithmetic unit and the memory write control circuit instead of between the memory and the register memory.

根据上述方面,说明实施方式4的处理器。Based on the above points, a processor according to Embodiment 4 will be described.

另外,对与实施方式3相同的构成要素附加相同的符号,并省略说明。In addition, the same reference numerals are attached to the same constituent elements as those in Embodiment 3, and description thereof will be omitted.

图16是表示实施方式4的处理器的结构的图。FIG. 16 is a diagram showing the configuration of a processor according to Embodiment 4. FIG.

如图所示,处理器400与实施方式3的处理器300相比,存在下述(1)~(3)的不同点(参照图5。)。As shown in the figure, the processor 400 differs from the processor 300 of Embodiment 3 in the following points (1) to (3) (see FIG. 5 ).

(1)具备指令译码电路401,来代替指令译码电路101。(1) An instruction decoding circuit 401 is provided instead of the instruction decoding circuit 101 .

指令译码电路401与指令译码电路101相比,不同之处在于:在执行运算指令时,不将运算指令译码信号输出到标记值生成电路402。Compared with the instruction decoding circuit 101 , the instruction decoding circuit 401 is different in that: when executing an operation instruction, it does not output the operation instruction decoding signal to the flag value generation circuit 402 .

(2)具备标记值生成电路402,来代替标记值生成电路102。(2) A flag value generating circuit 402 is provided instead of the flag value generating circuit 102 .

标记值生成电路402与标记值生成电路102相比,不同之处在于:不生成表示执行由运算指令译码信号确定的运算处理得到的数据的属性的标记值。The flag value generation circuit 402 differs from the flag value generation circuit 102 in that it does not generate a flag value indicating the attribute of data obtained by executing the arithmetic processing determined by the arithmetic instruction decode signal.

(3)具备运算器420,来代替运算器320。(3) A computing unit 420 is provided instead of the computing unit 320 .

运算器420与运算器320相比,不同之处在于:具备数据属性判断电路421和运算处理电路422,来代替数据属性判断电路321和运算处理电路322。Compared with the arithmetic unit 320 , the arithmetic unit 420 is different in that it includes a data attribute judgment circuit 421 and an arithmetic processing circuit 422 instead of the data attribute judgment circuit 321 and the arithmetic processing circuit 322 .

数据属性判断电路421从寄存器文件410读出与由运算指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。而且,将判断结果作为数据属性判断信号输出到运算处理电路422。并且,生成表示执行由运算指令译码信号确定的运算处理得到的数据的属性的标记值,并将生成的标记值与执行运算处理得到的数据相对应地存储到寄存器文件410。The data attribute judging circuit 421 reads out the flag value corresponding to the data determined by the operation instruction decoding signal from the register file 410, and judges the attribute of the data according to the read flag value. And, the determination result is output to the arithmetic processing circuit 422 as a data attribute determination signal. Then, a tag value indicating the attribute of the data obtained by executing the arithmetic processing specified by the operation instruction decode signal is generated, and the generated tag value is stored in the register file 410 in association with the data obtained by executing the arithmetic processing.

运算处理电路422从寄存器文件410读出由运算指令译码信号确定的数据,并根据数据属性判断信号判断是否转换读出的数据。在判断的结果是转换时,根据数据属性判断信号转换读出的数据,并对转换后的数据执行由运算指令译码信号确定的运算处理。而且,将执行运算处理得到的数据存储在寄存器文件410中。The arithmetic processing circuit 422 reads the data determined by the decoding signal of the arithmetic instruction from the register file 410, and judges whether to convert the read data according to the data attribute judging signal. When the judgment result is conversion, the read data is converted according to the data attribute judgment signal, and the operation processing determined by the operation instruction decoding signal is performed on the converted data. Also, the data obtained by executing the arithmetic processing is stored in the register file 410 .

另外,在为不转换时,不转换读出的数据地直接执行运算处理。In addition, in the case of no conversion, the read data is not converted and the arithmetic processing is directly executed.

接着,作为一实例,说明实施方式4的运算器的构成。Next, as an example, the configuration of the arithmetic unit according to Embodiment 4 will be described.

这里,以对从寄存器(Reg#0)读出的数据执行运算处理,并将执行运算处理得到的数据、即运算的结果存储在寄存器(Reg#1)中的情况为例进行说明。Here, a case where arithmetic processing is performed on data read from the register (Reg#0) and the data obtained by performing the arithmetic processing, that is, the calculation result is stored in the register (Reg#1) will be described as an example.

图17是表示作为一例、实施方式4的运算器的构成的图。FIG. 17 is a diagram showing a configuration of an arithmetic unit according to Embodiment 4 as an example.

如图所示,数据属性判断电路421从寄存器(Reg#0)的标记字段411读出标记值,并根据读出的标记值判断从寄存器(Reg#0)的数据字段412读出的数据的属性。而且,将判断结果作为属性判断信号输出到选择器444等。As shown in the figure, the data attribute judging circuit 421 reads the tag value from the tag field 411 of the register (Reg#0), and judges the identity of the data read from the data field 412 of the register (Reg#0) according to the tag value read out. Attributes. Also, the judgment result is output to the selector 444 and the like as an attribute judgment signal.

与此相对,排序部441对从寄存器(Reg#0)的数据字段412输出的数据实施排序处理,并将处理后的数据输出到零扩展部442和代码扩展部443。On the other hand, the sorting unit 441 sorts the data output from the data field 412 of the register (Reg#0), and outputs the processed data to the zero extension unit 442 and the code extension unit 443 .

选择器444根据从数据属性判断电路421输出的数据属性判断信号,选择从寄存器(Reg#0)的数据字段412输出的数据、从零扩展部442输出的数据、从代码扩展部443输出的数据之一,并输出到加法器445。The selector 444 selects the data output from the data field 412 of the register (Reg#0), the data output from the zero extension part 442, and the data output from the code extension part 443 based on the data attribute judgment signal output from the data attribute judgment circuit 421. One of them, and output to adder 445.

加法器445对从选择器444输出的数据执行加法处理,并将执行加法处理得到的数据、即运算结果存储在寄存器(Reg#1)的数据字段412中。The adder 445 performs addition processing on the data output from the selector 444, and stores the data obtained by performing the addition processing, that is, an operation result, in the data field 412 of the register (Reg#1).

并且,数据属性判断电路421生成关于在加法器445中执行加法处理得到的数据、即运算结果的标记值,并将生成的标记值存储在寄存器(Reg#1)的标记字段411中。Then, the data attribute determination circuit 421 generates a flag value for the data obtained by the addition process performed by the adder 445 , that is, an operation result, and stores the generated flag value in the flag field 411 of the register (Reg#1).

另外,零扩展部442和代码扩展部443的构成与实施方式3的零扩展部342和代码扩展部343相同,省略说明。In addition, the configurations of the zero extension unit 442 and the code extension unit 443 are the same as those of the zero extension unit 342 and the code extension unit 343 in Embodiment 3, and description thereof will be omitted.

接着,说明实施方式4的动作。Next, the operation of Embodiment 4 will be described.

图18、图19是表示实施方式4的处理器的动作的图。18 and 19 are diagrams showing operations of the processor according to the fourth embodiment.

如图18、图19所示,处理器400与实施方式3的处理器300相比,存在下述(2)的不同点。As shown in FIGS. 18 and 19 , the processor 400 differs from the processor 300 according to Embodiment 3 in the following point (2).

(1)关于加载指令执行时的动作,与实施方式3的动作(步骤S111~S114、S121~S122)相同,因此省略说明。(1) The operation when the load command is executed is the same as the operation (steps S111 to S114 , S121 to S122 ) in Embodiment 3, and therefore description thereof will be omitted.

(2)关于运算指令执行时的动作,与实施方式3的动作相比,存在下述的不同点(参照图7、图15A、图18、图19)。(2) The operation when the operation instruction is executed differs from the operation in the third embodiment in the following points (see FIG. 7 , FIG. 15A , FIG. 18 , and FIG. 19 ).

代替实施方式3的指令译码电路101的动作(步骤S131),指令译码电路401,在译码的指令是运算指令时,将运算指令译码信号输出到运算器420(步骤S431)。Instead of the operation of the instruction decoding circuit 101 in the third embodiment (step S131), the instruction decoding circuit 401 outputs an operation instruction decoding signal to the arithmetic unit 420 when the decoded instruction is an operation instruction (step S431).

另外,代替实施方式3的标记值生成电路102的动作(步骤S135),运算器420在数据属性判断电路421中,将表示由运算指令译码信号存储在寄存器文件410中的数据的属性的标记值,与该数据相对应地存储在寄存器文件410的标记字段411中(步骤S441)。In addition, instead of the operation of the flag value generation circuit 102 in the third embodiment (step S135), the arithmetic unit 420 sets, in the data attribute judging circuit 421, a flag indicating the attribute of the data stored in the register file 410 from the operation instruction decoded signal. The value is stored in the flag field 411 of the register file 410 corresponding to the data (step S441).

(3)关于存储指令执行时的动作,与实施方式3的动作(步骤S151~S153、S361~S365)相同,因此省略说明。(3) The operation when the store command is executed is the same as the operation (steps S151 to S153 , S361 to S365 ) in Embodiment 3, and therefore description thereof will be omitted.

根据如上所述的实施方式4的处理器400,在寄存器文件410中具备标记字段411和数据字段412,在运算器420中具备数据属性判断电路421和运算处理电路422,在存储器写入控制部430中具备数据属性判断电路431和数据转换电路432。According to the processor 400 of Embodiment 4 as described above, the flag field 411 and the data field 412 are provided in the register file 410, the data attribute determination circuit 421 and the operation processing circuit 422 are provided in the arithmetic unit 420, and the memory write control unit 430 includes a data attribute judgment circuit 431 and a data conversion circuit 432 .

由此,可在运算器420和存储器写入控制电路330各自的内部执行配置变更、代码扩展、零扩展等数据转换,来代替在存储器14和寄存器文件410之间进行,可削减在存储器14和寄存器文件410之间产生的延迟。另外,由于将表示该数据的属性的标记值附加在执行运算处理得到的数据上,所以不必对执行运算处理的指令指定数据的属性,可实现指令数的削减、指令译码电路401的简化。As a result, data conversions such as configuration change, code extension, and zero extension can be performed inside the arithmetic unit 420 and the memory write control circuit 330 instead of between the memory 14 and the register file 410, and the number of data conversions between the memory 14 and the register file 410 can be reduced. Delays incurred between register files 410 . In addition, since the tag value indicating the attribute of the data is added to the data obtained by executing the arithmetic processing, it is not necessary to specify the attribute of the data for the instruction executing the arithmetic processing, and the number of instructions can be reduced and the instruction decoding circuit 401 can be simplified.

(实施方式5)(Embodiment 5)

下面,参照附图说明本发明的实施方式5。Next, Embodiment 5 of the present invention will be described with reference to the drawings.

实施方式5的处理器的特征在于,跨多个寄存器存储大小比数据字段大的数据。并且,从跨多个寄存器存储的数据还原数据,并对还原后的数据执行运算处理。The processor according to Embodiment 5 is characterized in that data having a size larger than a data field is stored across a plurality of registers. And, data is restored from data stored across a plurality of registers, and arithmetic processing is performed on the restored data.

根据上述方面,说明实施方式5的处理器。Based on the above points, a processor according to Embodiment 5 will be described.

另外,对与实施方式3相同的构成要素附加相同符号,并省略说明。In addition, the same code|symbol is attached|subjected to the same component as Embodiment 3, and description is abbreviate|omitted.

图20是表示实施方式5中的处理器的构成的图。FIG. 20 is a diagram showing the configuration of a processor in Embodiment 5. FIG.

如图所示,处理器500与实施方式3中的处理器300相同,存在下述(1)~(3)的不同点(参照图5。)。As shown in the figure, the processor 500 is the same as the processor 300 in Embodiment 3, except for the following differences (1) to (3) (see FIG. 5 ).

(1)具备寄存器文件510,来代替寄存器文件310。(1) A register file 510 is provided instead of the register file 310 .

寄存器文件510与寄存器文件310相比,不同之处在于:在存储大小比数据字段512大的数据时,跨多个寄存器存储该数据。Register file 510 differs from register file 310 in that when storing data larger in size than data field 512, the data is stored across multiple registers.

(2)具备运算器520,来代替运算器320。(2) A computing unit 520 is provided instead of the computing unit 320 .

运算器520与运算器320相比,不同之处在于:具备数据属性判断电路521和运算处理电路522,来代替数据属性判断电路321和运算处理电路322。Compared with the arithmetic unit 320 , the arithmetic unit 520 is different in that it includes a data attribute judgment circuit 521 and an arithmetic processing circuit 522 instead of the data attribute judgment circuit 321 and the arithmetic processing circuit 322 .

数据属性判断电路521从寄存器文件510读出与由运算指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。而且,将判断结果作为数据属性判断信号输出到运算处理电路522。并且,生成表示执行由运算指令译码信号确定的运算处理得到的数据的属性的标记值,并将生成的标记值与执行运算处理得到的数据相对应地存储在寄存器文件中。The data attribute judging circuit 521 reads out the flag value corresponding to the data determined by the operation instruction decoding signal from the register file 510, and judges the attribute of the data according to the read flag value. And, the determination result is output to the arithmetic processing circuit 522 as a data attribute determination signal. Then, a tag value representing the attribute of the data obtained by executing the arithmetic processing determined by the operation instruction decode signal is generated, and the generated tag value is stored in the register file in association with the data obtained by executing the arithmetic processing.

运算处理电路522从寄存器文件510读出由运算指令译码信号确定的数据,并根据数据属性判断信号判断是否转换读出的数据。在判断的结果是转换时,根据数据属性判断信号转换读出的数据。对转换后的数据执行由运算指令译码信号确定的运算处理。而且,将执行运算处理得到的数据存储在寄存器文件中。The arithmetic processing circuit 522 reads the data determined by the decoding signal of the arithmetic instruction from the register file 510, and judges whether to convert the read data according to the data attribute judging signal. When the result of the judgment is conversion, the read data is converted according to the data attribute judgment signal. The arithmetic processing determined by the arithmetic instruction decoding signal is performed on the converted data. Also, the data obtained by executing the arithmetic processing is stored in the register file.

另外,在为不转换时,不转换读出的数据地直接执行运算处理。In addition, in the case of no conversion, the read data is not converted and the arithmetic processing is directly executed.

另外,运算处理电路522,在数据跨多个寄存器存储在寄存器中时,根据从这些寄存器读出的数据还原数据,并对还原后的数据执行由运算指令译码信号确定的运算处理。而且,将执行运算处理得到的数据跨多个寄存器存储在寄存器文件510中。In addition, the operation processing circuit 522 restores the data from the data read from these registers when data is stored in the registers across a plurality of registers, and executes the operation processing determined by the operation command decode signal on the restored data. Also, the data obtained by executing the arithmetic processing is stored in the register file 510 across a plurality of registers.

(3)具备存储器写入控制电路530,来代替存储器写入控制电路330。(3) A memory write control circuit 530 is provided instead of the memory write control circuit 330 .

存储器写入控制电路530与存储器写入控制电路330相比,不同之处在于:具备数据属性判断电路531和数据转换电路532,来代替数据属性判断电路331和数据转换电路332。Compared with the memory write control circuit 330 , the memory write control circuit 530 is different in that it includes a data attribute judgment circuit 531 and a data conversion circuit 532 instead of the data attribute judgment circuit 331 and the data conversion circuit 332 .

数据属性判断电路531从寄存器文件510读出与由存储指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。而且,将判断结果作为数据属性判断信号输出到数据转换电路530。并且,将根据存储指令译码信号和标记值的存储器写入控制信号输出到存储器。The data attribute judging circuit 531 reads out the tag value corresponding to the data determined by the store instruction decoding signal from the register file 510, and judges the attribute of the data according to the read tag value. And, the judgment result is output to the data conversion circuit 530 as a data attribute judgment signal. And, a memory write control signal based on the store command decoding signal and the flag value is output to the memory.

数据转换电路532从寄存器文件510读出由存储指令译码信号确定的数据,并根据数据属性判断信号判断是否转换读出的数据。在判断的结果是转换时,根据数据属性判断信号转换读出的数据,并将转换后的数据输出到存储器。The data conversion circuit 532 reads out the data determined by the store command decoding signal from the register file 510, and judges whether to convert the read data according to the data attribute judgment signal. When the judgment result is conversion, the read data is converted according to the data attribute judgment signal, and the converted data is output to the memory.

另外,在为不转换时,不转换读出的数据地直接输出到存储器14。In addition, in the case of no conversion, the read data is directly output to the memory 14 without conversion.

另外,数据转换电路532,在数据跨多个寄存器存储在寄存器文件510中时,根据从这些寄存器读出的数据还原数据,并将还原后的数据输出到存储器14。In addition, the data conversion circuit 532 restores the data from the data read from these registers when data is stored in the register file 510 across a plurality of registers, and outputs the restored data to the memory 14 .

接着,作为一实例,说明实施方式5中的运算器的构成。Next, the configuration of the arithmetic unit in Embodiment 5 will be described as an example.

这里,以对跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据执行加法处理,并将执行加法处理得到的数据、即相加的结果分割地存储在寄存器(Reg#2)和寄存器(Reg#3)中的情况为例来说明。Here, the addition processing is performed on the data stored across the register (Reg#0) and the register (Reg#1), and the data obtained by performing the addition processing, that is, the result of the addition is stored in the register (Reg#2) and register (Reg#2) and Take the situation in the register (Reg#3) as an example to illustrate.

图21是表示作为一实例、实施方式5的运算器的构成的图。FIG. 21 is a diagram showing a configuration of an arithmetic unit according to Embodiment 5 as an example.

如图所示,数据属性判断电路521从寄存器(Reg#0)的标记字段511读出标记值,并根据读出的标记值,判断与读出的标记值相对应的数据是否是跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据。而且,将表示是跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据这一情况的数据属性判断信号,输出到选择器541、加法器542、选择器543。As shown in the figure, the data attribute judging circuit 521 reads the tag value from the tag field 511 of the register (Reg#0), and judges whether the data corresponding to the read tag value is across registers ( Reg#0) and the data stored in the register (Reg#1). Then, a data attribute judgment signal indicating that the data stored across the register (Reg#0) and the register (Reg#1) is output to the selector 541, the adder 542, and the selector 543.

与此相对,选择器541在从寄存器(Reg#0)的数据字段512输出的数据、和从寄存器(Reg#1)的数据字段512输出的数据中,选择从寄存器(Reg#1)的数据字段512输出的数据并输出到加法器542。In contrast, the selector 541 selects the data of the slave register (Reg#1) from the data output from the data field 512 of the register (Reg#0) and the data output from the data field 512 of the register (Reg#1). The data output by field 512 is output to adder 542 .

并且,加法器542使从寄存器(Reg#0)的数据字段512输出的数据为高位部分,使从选择器541输出的数据、即从寄存器(Reg#1)的数据字段512输出的数据为低位部分,并结合高位部分和低位部分,还原数据。而且,对还原后的数据执行加法处理,将执行加法处理得到的数据、即相加的结果分割为高位部分和低位部分,并分别输出到选择器543。另外,将低位部分存储在寄存器(Reg#3)的数据字段中。In addition, the adder 542 makes the data output from the data field 512 of the register (Reg#0) the high-order part, and makes the data output from the selector 541, that is, the data output from the data field 512 of the register (Reg#1) the low-order part. part, and combine the high part and low part to restore the data. Then, addition processing is performed on the restored data, and the data obtained by performing the addition processing, that is, the addition result is divided into an upper part and a lower part, and each is output to the selector 543 . In addition, the lower part is stored in the data field of the register (Reg#3).

而且,选择器543在从加法器542输出的高位部分和低位部分中,选择高位部分并存储在寄存器(Reg#2)的数据字段512中。Further, the selector 543 selects the high-order part from the high-order part and the low-order part output from the adder 542 and stores it in the data field 512 of the register (Reg#2).

接着,作为一实例,说明实施方式5的寄存器的数据结构。Next, the data structure of the register in Embodiment 5 will be described as an example.

图22是表示作为一实例、实施方式5的寄存器的数据结构的图。FIG. 22 is a diagram showing a data structure of a register in Embodiment 5 as an example.

如图所示,实施方式5的寄存器与实施方式1的寄存器存在下述(2)的不同点。As shown in the figure, the register according to Embodiment 5 differs from the register according to Embodiment 1 in the following point (2).

(1)标记字段551的第0位至第3位的低位4位,与标记字段151的第0位至第3位的低位4位相同,因此省略说明。(1) The lower 4 bits from bit 0 to bit 3 of the flag field 551 are the same as the lower 4 bits from bit 0 to bit 3 of the flag field 151 , so the description is omitted.

(2)标记字段551的第4位至第5位的2位,与标记字段151的第4位至第5位的2位相比,(d)在为「11」时,在是64位这一点上不同。这时,数据字段的大小保持32位,分配多个寄存器的数据字段553。(2) The 2 bits from the 4th to the 5th bits of the flag field 551 are compared with the 2 bits from the 4th to the 5th bits of the flag field 151, (d) when it is "11", it is 64 bits A little bit different. At this time, the size of the data field remains 32 bits, and the data field 553 of a plurality of registers is allocated.

(3)标记字段551的第6位至第7位的2位,与标记字段151的第6位至第7位的2位相同,因此省略说明。(3) The 6th to 7th two bits of the flag field 551 are the same as the 6th to 7th two bits of the flag field 151 , so description is omitted.

接着,说明实施方式5中的处理器的动作。Next, the operation of the processor in Embodiment 5 will be described.

图23~图25是表示实施方式5的处理器的动作的图。23 to 25 are diagrams showing operations of the processor according to the fifth embodiment.

如图23~图25所示,处理器500与实施方式3的处理器300相比,存在下述(1)~(3)的不同点。As shown in FIGS. 23 to 25 , the processor 500 differs from the processor 300 according to Embodiment 3 in the following points (1) to (3).

(1)关于加载指令执行时的动作,与实施方式3的动作(步骤S111~S114、S121~S122)相比,存在下述不同点(参照图8A、图23。)。(1) The operation when the load command is executed differs from the operation in Embodiment 3 (steps S111 to S114 , S121 to S122 ) in the following points (see FIG. 8A and FIG. 23 ).

寄存器文件510,在由存储器读出控制信号确定的数据比数据字段的大小大时(步骤S521:否),跨多个寄存器存储该数据(步骤S522)。The register file 510, when the data specified by the memory read control signal is larger than the size of the data field (step S521: No), stores the data across a plurality of registers (step S522).

(2)关于运算指令执行时的动作,与实施方式3中的动作(步骤S131~S135、S341~S346)相比,存在下述的不同点(参照图15A、图24。)。(2) The operation when the operation instruction is executed differs from the operation in Embodiment 3 (steps S131 to S135 , S341 to S346 ) in the following points (see FIG. 15A and FIG. 24 ).

运算器520,在跨多个寄存器存储由运算指令译码信号确定的数据时(步骤S541:否),根据从这些寄存器读出的数据还原该数据(步骤S254),并对还原后的数据执行运算处理(步骤S543)。将执行运算处理得到的数据跨多个寄存器存储在寄存器文件510中(步骤S544)。The arithmetic unit 520, when storing the data determined by the operation instruction decoding signal across multiple registers (step S541: No), restores the data according to the data read from these registers (step S254), and executes on the restored data. Operation processing (step S543). The data obtained by executing the arithmetic processing is stored in the register file 510 across multiple registers (step S544).

(3)关于存储指令执行时的动作,实施方式3中的动作(步骤S151~S153、S361~S365)相比,存在下述的不同点(参照图15A、图25)。(3) The operation when the store command is executed differs from the operation (steps S151 to S153 , S361 to S365 ) in Embodiment 3 in the following points (see FIG. 15A and FIG. 25 ).

存储器写入控制电路530,在跨多个寄存器存储由存储器写入控制信号确定的数据时(步骤561:否),根据从这些寄存器读出的数据还原数据(步骤S562),并将还原后的数据输出到存储器14(步骤S365)。The memory writing control circuit 530, when storing the data determined by the memory writing control signal across multiple registers (step 561: No), restores the data according to the data read from these registers (step S562), and stores the restored The data is output to the memory 14 (step S365).

根据如上所述的实施方式5的处理器,在寄存器文件510中具备标记字段511和数据字段512,在运算器520中具备数据属性判断电路521和运算处理电路522,在存储器写入控制部530中具备数据属性判断电路531和数据转换电路532。According to the processor according to Embodiment 5 as described above, the flag field 511 and the data field 512 are provided in the register file 510, the data attribute determination circuit 521 and the operation processing circuit 522 are provided in the arithmetic unit 520, and the memory write control unit 530 It includes a data attribute judgment circuit 531 and a data conversion circuit 532 .

由此,可容易地处理大小比数据字段512大的数据。Thus, data larger in size than the data field 512 can be easily handled.

(实施方式6)(Embodiment 6)

下面,参照附图说明本发明的实施方式6。Next, Embodiment 6 of the present invention will be described with reference to the drawings.

实施方式6的处理器的特征在于,跨多个寄存器存储大小比数据字段大的数据。并且,根据跨多个寄存器存储的数据还原数据,并对还原后的数据执行运算处理。The processor according to Embodiment 6 is characterized in that data having a size larger than a data field is stored across a plurality of registers. And, data is restored from data stored across a plurality of registers, and arithmetic processing is performed on the restored data.

根据上述方面,说明实施方式6中的处理器。Based on the above points, the processor in Embodiment 6 will be described.

另外,对与实施方式5相同的构成要素附加相同符号,并省略说明。In addition, the same code|symbol is attached|subjected to the same component as Embodiment 5, and description is abbreviate|omitted.

图26是表示实施方式6的处理器的构成的图。FIG. 26 is a diagram showing the configuration of a processor according to Embodiment 6. FIG.

如图所示,处理器600与实施方式5中的处理器500相比,存在下述(1)~(3)的不同点(参照图7。)。As shown in the figure, the processor 600 differs from the processor 500 in Embodiment 5 in the following points (1) to (3) (see FIG. 7 ).

(1)具备指令译码电路601,来代替指令译码电路101。(1) An instruction decoding circuit 601 is provided instead of the instruction decoding circuit 101 .

指令译码电路601与指令译码电路101相比,不同之处在于:在执行运算指令时,不将运算指令译码信号输出到标记值生成电路602。Compared with the instruction decoding circuit 101, the instruction decoding circuit 601 is different in that: when executing the operation instruction, the operation instruction decoding signal is not output to the flag value generating circuit 602.

(2)具备标记值生成电路602,来代替标记值生成电路102。(2) A flag value generating circuit 602 is provided instead of the flag value generating circuit 102 .

标记值生成电路602与标记值生成电路102相比,不同之处在于:不生成表示执行由运算指令译码信号确定的运算处理得到的数据属性的标记值。The flag value generation circuit 602 differs from the flag value generation circuit 102 in that it does not generate a flag value representing the attribute of data obtained by executing the arithmetic processing determined by the arithmetic instruction decode signal.

(3)具备运算器620,来代替运算器520。(3) A computing unit 620 is provided instead of the computing unit 520 .

运算器620与运算器520相比,不同之处在于:具备数据属性判断电路621和运算处理电路622,来代替数据属性判断电路521和运算处理电路522。Compared with the arithmetic unit 520 , the arithmetic unit 620 is different in that it includes a data attribute judgment circuit 621 and an arithmetic processing circuit 622 instead of the data attribute judgment circuit 521 and the arithmetic processing circuit 522 .

数据属性判断电路621从寄存器文件610读出与由运算指令译码信号确定的数据相对应的标记值,并根据读出的标记值判断该数据的属性。而且,将判断结果作为数据属性判断信号输出到运算处理电路622。并且,生成表示执行由运算指令译码信号确定的运算处理得到的数据的属性的标记值,并将生成的标记值与执行运算处理得到的数据相对应地存储到寄存器文件610。The data attribute judging circuit 621 reads out the flag value corresponding to the data determined by the operation instruction decoding signal from the register file 610, and judges the attribute of the data according to the read flag value. Then, the determination result is output to the arithmetic processing circuit 622 as a data attribute determination signal. Then, a tag value indicating the attribute of the data obtained by executing the arithmetic processing specified by the operation instruction decode signal is generated, and the generated tag value is stored in the register file 610 in association with the data obtained by executing the arithmetic processing.

运算处理电路622从寄存器文件610读出由运算指令译码信号确定的数据,并根据数据属性判断信号判断是否转换读出的数据。在判断的结果是转换时,根据数据属性判断信号转换读出的数据,并对转换后的数据执行由运算指令译码信号确定的运算处理。而且,将执行运算处理得到的数据存储在寄存器文件610中。The arithmetic processing circuit 622 reads the data determined by the decoding signal of the arithmetic instruction from the register file 610, and judges whether to convert the read data according to the data attribute judging signal. When the judgment result is conversion, the read data is converted according to the data attribute judgment signal, and the operation processing determined by the operation instruction decoding signal is performed on the converted data. Also, the data obtained by executing the arithmetic processing is stored in the register file 610 .

另外,在为不转换时,不转换读出的数据地直接执行运算处理。In addition, in the case of no conversion, the read data is not converted and the arithmetic processing is directly executed.

另外,运算处理电路622,在数据跨多个寄存器存储在寄存器文件610中时,根据从这些寄存器读出的数据还原数据,并对还原后的数据执行由运算指令译码信号确定的运算处理。而且,将执行运算处理得到的数据跨多个寄存器存储在寄存器文件610中。In addition, when data is stored in the register file 610 across a plurality of registers, the arithmetic processing circuit 622 restores the data from the data read from these registers, and executes arithmetic processing determined by the arithmetic instruction decode signal on the restored data. Also, the data obtained by executing the arithmetic processing is stored in the register file 610 across a plurality of registers.

接着,作为一实例,说明实施方式6中的运算器的构成。Next, the configuration of the arithmetic unit in Embodiment 6 will be described as an example.

这里,以对跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据执行加法处理,并对执行加法处理得到的数据、即相加的结果进行分割,并存储在寄存器(Reg#2)和寄存器(Reg#3)中的情况为例来进行说明。Here, the addition process is performed on the data stored across the register (Reg#0) and the register (Reg#1), and the data obtained by performing the addition process, that is, the result of the addition is divided and stored in the register (Reg#2 ) and register (Reg#3) as an example to illustrate.

图27是表示作为一实例、实施方式6中的运算器的构成的图。FIG. 27 is a diagram showing a configuration of an arithmetic unit in Embodiment 6 as an example.

如图所示,数据属性判断电路621从寄存器(Reg#0)的标记字段611读出标记值,并根据读出的标记值判断与读出的标记值相对应的数据是否是跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据。而且,将表示是跨寄存器(Reg#0)和寄存器(Reg#1)存储的数据这一情况的数据属性判断信号,输出到选择器641、加法器642、选择器643等。As shown in the figure, the data attribute judging circuit 621 reads the tag value from the tag field 611 of the register (Reg#0), and judges whether the data corresponding to the read tag value is across registers (Reg#0) according to the tag value read out. #0) and the data stored in the register (Reg#1). Then, a data attribute determination signal indicating that the data is stored across the register (Reg#0) and the register (Reg#1) is output to the selector 641, the adder 642, the selector 643, and the like.

与此相对,选择器641在从寄存器(Reg#0)的数据字段612输出的数据、和从寄存器(Reg#1)的数据字段612输出的数据中,选择从寄存器(Reg#1)的数据字段612输出的数据,并输出到加法器642。In contrast, the selector 641 selects the data of the slave register (Reg#1) from the data output from the data field 612 of the register (Reg#0) and the data output from the data field 612 of the register (Reg#1). field 612 and output to adder 642.

并且,加法器642使从寄存器(Reg#0)的数据字段612输出的数据为高位部分,使从选择器641输出的数据、即从寄存器(Reg#1)的数据字段612输出的数据为低位部分,并结合高位部分和低位部分,还原数据。而且,对还原后的数据执行加法处理,将执行加法处理得到的数据、即相加的结果分割为高位部分和低位部分,并分别输出到选择器643。另外,将低位部分存储在寄存器(Reg#3)的数据字段中。In addition, the adder 642 makes the data output from the data field 612 of the register (Reg#0) the high-order part, and makes the data output from the selector 641, that is, the data output from the data field 612 of the register (Reg#1) the low-order part. part, and combine the high part and low part to restore the data. Then, addition processing is performed on the restored data, and the data obtained by performing the addition processing, that is, the addition result is divided into an upper part and a lower part, and each is output to the selector 643 . In addition, the lower part is stored in the data field of the register (Reg#3).

而且,选择器643在从加法器642输出的高位部分和低位部分中,选择高位部分并存储在寄存器(Reg#2)的数据字段612中。Further, the selector 643 selects the high-order part from the high-order part and the low-order part output from the adder 642 and stores it in the data field 612 of the register (Reg#2).

并且,数据属性判断电路621生成关于在加法器642中相加的结果的标记值、即表示是跨寄存器(Reg#2)和寄存器(Reg#3)存储的数据这一情况的标记值,并将生成的标记值存储在寄存器(Reg#2)的标记字段611中。And, the data attribute judging circuit 621 generates a flag value about the result of addition in the adder 642, that is, a flag value indicating that it is data stored across the register (Reg#2) and the register (Reg#3), and The generated tag value is stored in the tag field 611 of the register (Reg#2).

接着,说明实施方式6中的处理器600的动作。Next, the operation of the processor 600 in Embodiment 6 will be described.

图28、图29是表示实施方式6的处理器的动作的图。28 and 29 are diagrams showing operations of the processor according to the sixth embodiment.

如图28、图29所示,处理器600与实施方式5中的处理器相比,存在下述(2)的不同点。As shown in FIGS. 28 and 29 , the processor 600 differs from the processor in Embodiment 5 in the following point (2).

(1)关于加载指令执行时的动作,与实施方式5的动作(步骤S111~S114、S121~S122、S521~S522)相同,因此省略说明。(1) The operation when the load command is executed is the same as the operation (steps S111 to S114 , S121 to S122 , S521 to S522 ) in Embodiment 5, and therefore description thereof will be omitted.

(2)关于运算指令执行时的动作,与实施方式5的动作(步骤S131~S135、S341~S346、S541~S544)相比,存在下述的不同点(参照图7、图24、图28、图29。)。(2) Regarding the operation when the operation command is executed, compared with the operation of Embodiment 5 (steps S131 to S135, S341 to S346, S541 to S544), there are the following differences (see FIG. 7, FIG. 24, and FIG. 28 , Figure 29.).

代替实施方式5的指令译码电路101的动作(步骤S131),指令译码电路601,在译码的指令是运算指令时,将运算指令译码信号输出到运算器620(步骤S631)。Instead of the operation of the instruction decoding circuit 101 in the fifth embodiment (step S131), the instruction decoding circuit 601 outputs an operation instruction decoding signal to the arithmetic unit 620 when the decoded instruction is an operation instruction (step S631).

另外,代替实施方式5的标记值生成电路102的动作(步骤S135),运算器620,在数据属性判断电路621中将表示进行运算处理得到的数据的属性的标记值,与该数据相对应地存储在寄存器文件610的标记字段611中(步骤S641)。In addition, instead of the operation of the flag value generation circuit 102 in Embodiment 5 (step S135), the arithmetic unit 620 associates the flag value indicating the attribute of the data obtained by performing the arithmetic processing in the data attribute judging circuit 621 with the data. stored in the flag field 611 of the register file 610 (step S641).

(3)关于存储指令执行时的动作,与实施方式5的动作(步骤S151~S153、S361~S365、S561~S562)相同,因此省略说明。(3) The operation when the store command is executed is the same as the operation (steps S151 to S153 , S361 to S365 , and S561 to S562 ) in Embodiment 5, and therefore description thereof will be omitted.

根据如上所述的实施方式6的处理器600,在寄存器文件610中具备标记字段611和数据字段612,在运算器620中具备数据属性判断电路621和运算处理电路622,在存储器写入控制部530中具备数据属性判断电路531和数据转换电路532。According to the above-mentioned processor 600 of Embodiment 6, the register file 610 is provided with the flag field 611 and the data field 612, the arithmetic unit 620 is provided with the data attribute determination circuit 621 and the operation processing circuit 622, and the memory write control unit 530 includes a data attribute judgment circuit 531 and a data conversion circuit 532 .

由此,可容易地处理大小比数据字段大的数据。另外,由于在执行运算处理得到的数据上附加表示该数据的属性的标记值,所以不必对执行运算处理的指令指定数据的属性,可实现指令数的削减、指令译码电路的简化。Thus, data larger in size than the data field can be easily handled. In addition, since the data obtained by executing the arithmetic processing is added with a tag value indicating the attribute of the data, it is not necessary to specify the attribute of the data for the instruction executing the arithmetic processing, and the number of instructions can be reduced and the instruction decoding circuit can be simplified.

(其他)(other)

另外,标记值生成电路,在跨多个寄存器存储从存储器读出的数据时,也可生成包含该数据所跨越存储的寄存器的数量、即数据的分割数的标记值,并存储在标记字段中。In addition, when the tag value generation circuit stores data read from the memory across a plurality of registers, it may generate a tag value including the number of registers the data is stored across, that is, the number of divisions of the data, and store it in the tag field. .

另外,处理器也可通过全定制(full custom)LSI(Large Scale Integration)来实现。另外,也可通过如ASIC(Application Specific Integrated Circuit)等的半定制(semi-custom)LSI来实现。另外,也可通过如FPGA(Fild Programmable GateArray)、CPLD(Complex Programmable Logic Device)等的可编程逻辑器件来实现。另外,也可实现为电路结构可动态地改写的动态重构器件。In addition, the processor can also be realized by full custom (full custom) LSI (Large Scale Integration). In addition, it can also be realized by a semi-custom (semi-custom) LSI such as ASIC (Application Specific Integrated Circuit). In addition, it can also be realized by programmable logic devices such as FPGA (Fild Programmable Gate Array) and CPLD (Complex Programmable Logic Device). In addition, it can also be implemented as a dynamic reconfigurable device whose circuit structure can be dynamically rewritten.

并且,在这些LSI中形成构成处理器的1个至2个以上的功能的设计数据,也可是由如VHDL(Very high speed integrated circuit Hardware DesciptionLanguage)、Verilog-HDL、SystemC等的硬件记述语言记述的程序(下面称为HDL程序)。另外,也可为逻辑合成HDL程序得到的门级(gate level)的网表(netlist)。另外,也可为在门级的网表中附加了配置信息、处理条件等的宏单元(macrocell)信息。另外,也可为规定了大小、定时等的掩码(mask)数据。In addition, the design data forming one to two or more functions constituting the processor in these LSIs may be described in a hardware description language such as VHDL (Very high speed integrated circuit Hardware Description Language), Verilog-HDL, SystemC, etc. program (hereinafter referred to as HDL program). In addition, it may also be a gate-level netlist (netlist) obtained by logic synthesis of an HDL program. In addition, macrocell (macrocell) information to which configuration information, processing conditions, and the like are added to a gate-level netlist may be used. In addition, mask (mask) data defining size, timing, etc. may be used.

并且,设计数据也可预先记录在光学记录媒体(例如,CD-ROM等。)、磁记录媒体(例如,硬盘等。)、光磁记录媒体(例如,MO等。)、半导体存储器(例如,RAM等。)等那样的计算机可读取的记录媒体中,以便可由计算机系统、内部系统等硬件系统读出。而且,经记录媒体被其他硬件系统读取的设计数据,也可经下载电缆下载到可编程逻辑器件。And, the design data can also be pre-recorded on an optical recording medium (for example, CD-ROM, etc.), a magnetic recording medium (for example, a hard disk, etc.), a magneto-optical recording medium (for example, MO, etc.), a semiconductor memory (for example, RAM, etc.) etc. in a computer-readable recording medium so that it can be read by hardware systems such as computer systems and internal systems. Moreover, the design data read by other hardware systems via the recording medium can also be downloaded to the programmable logic device via the download cable.

或者,设计数据也可预先保持在传送路径上的硬件系统中,以便可经由网络等传送路径并由其他硬件系统取得。并且,从硬件系统经传送路径被其他硬件系统取得的设计数据,也可经下载电缆下载到可编程逻辑器件。Alternatively, design data may be held in advance in a hardware system on a transmission path so that it can be acquired by another hardware system via a transmission path such as a network. Moreover, the design data obtained from the hardware system by other hardware systems through the transmission path can also be downloaded to the programmable logic device through the download cable.

或者,逻辑合成、配置、布线的设计数据也可预先记录在串行ROM中,以便可在通电时传送到FPGA。而且,记录在串行ROM中的设计数据也可在通电时直接下载到FPGA。Alternatively, design data for logic synthesis, configuration, and routing can also be pre-recorded in serial ROM so that it can be transferred to the FPGA at power-on. Furthermore, the design data recorded in the serial ROM can also be directly downloaded to the FPGA at power-on.

产业上的可利用性Industrial availability

本发明可利用为处理数据的处理器等,尤其是执行需要进行高速、庞大的运算处理的声音、图像处理等媒体处理的处理器。The present invention can be used as a processor for processing data, especially a processor for performing media processing such as audio and image processing that requires high-speed and huge calculation processing.

Claims (14)

1、一种处理器,其特征在于,具备:1. A processor, characterized in that it has: 具有多个寄存器的寄存器文件;和a register file with multiple registers; and 生成表示数据属性的标记值的生成单元,a generation unit that generates a tagged value representing a data attribute, 所述各寄存器具有保持数据的数据字段和保持所述标记值的标记字段,said registers have a data field holding data and a tag field holding said tag value, 在执行从存储器加载到寄存器的加载指令时,所述生成单元根据所述加载指令生成所述标记值,并存储到所述标记字段。When executing a load instruction for loading from a memory to a register, the generation unit generates the tag value according to the load instruction, and stores it in the tag field. 2、根据权利要求1所述的处理器,其特征在于:2. The processor according to claim 1, characterized in that: 通过执行将数据从所述存储器加载到所述寄存器的加载指令,所述数据字段原样保持从所述存储器输出的数据。The data field holds data output from the memory as it is by executing a load instruction that loads data from the memory into the register. 3、根据权利要求2所述的处理器,其特征在于:3. The processor of claim 2, wherein: 所述生成单元根据由所述加载指令指定的地址、数据大小和数据类型,生成所述标记值,the generation unit generates the tag value based on the address, data size and data type specified by the load instruction, 所述数据类型表示应传送的数据是带有代码的数据或是无代码的数据。The data type indicates whether the data to be transmitted is data with a code or data without a code. 4、根据权利要求3所述的处理器,其特征在于:4. The processor of claim 3, wherein: 所述处理器还具备转换单元,根据所述标记值转换保持在所述寄存器的数据字段中的数据。The processor is further provided with a conversion unit that converts the data held in the data field of the register according to the flag value. 5、根据权利要求4所述的处理器,其特征在于:5. The processor of claim 4, wherein: 所述转换单元根据所述标记值,对保持在所述寄存器的数据字段中的数据执行零扩展或代码扩展。The converting unit performs zero-extension or code-extension on the data held in the data field of the register according to the flag value. 6、根据权利要求5所述的处理器,其特征在于:6. The processor of claim 5, wherein: 在执行读出寄存器的指令时,所述转换单元执行所述转换。The conversion unit performs the conversion when an instruction to read a register is executed. 7、根据权利要求5所述的处理器,其特征在于:7. The processor of claim 5, wherein: 所述转换单元,在未发生按照指令的寄存器读写的空闲周期中执行所述转换,并根据转换结果更新标记字段及数据字段。The conversion unit executes the conversion in an idle cycle when no reading and writing of the register according to the instruction occurs, and updates the flag field and the data field according to the conversion result. 8、根据权利要求4所述的处理器,其特征在于:8. The processor of claim 4, wherein: 在执行将保持在所述寄存器的数据字段中的数据存储到存储器中的存储指令时,所述转换单元执行转换。The conversion unit performs conversion when executing a store instruction to store data held in a data field of the register into a memory. 9、根据权利要求8所述的处理器,其特征在于:9. The processor of claim 8, wherein: 所述处理器还具有写入处理部,通过对应于所述标记值的写入处理,将由所述转换单元转换的数据写入存储器。The processor further has a write processing section for writing the data converted by the conversion unit into a memory through a write process corresponding to the flag value. 10、根据权利要求2所述的处理器,其特征在于:10. The processor of claim 2, wherein: 所述处理器在执行从存储器读出大小比所述数据字段大的数据的加载指令时,分割从存储器读出的数据,并将分割的数据存储在2个以上数据字段中。When the processor executes a load instruction for reading data larger in size than the data field from the memory, the processor divides the data read from the memory and stores the divided data in two or more data fields. 11、根据权利要求10所述的处理器,其特征在于:11. The processor of claim 10, wherein: 所述生成单元将包含所述分割的数据的分割数的标记值存储在标记字段中。The generation unit stores a flag value including a division number of the divided data in a flag field. 12、根据权利要求11所述的处理器,其特征在于:12. The processor of claim 11, wherein: 所述处理器具备运算处理部,在执行读出存储在所述寄存器的数据字段中的数据、并执行进行运算处理的运算指令时,根据所述分割数,结合存储在2个以上数据字段中的数据,还原数据,并对还原后的数据执行运算处理。The processor includes an arithmetic processing unit, and when executing an arithmetic instruction that reads data stored in the data field of the register and performs arithmetic processing, combines and stores data in two or more data fields according to the number of divisions. data, restore the data, and perform operations on the restored data. 13、根据权利要求12所述的处理器,其特征在于:13. The processor of claim 12, wherein: 所述运算处理部,在运算处理结果的大小比数据字段大时,跨2个以上数据字段来存储运算处理结果,并将表示跨2个以上数据字段存储所述运算结果的标记值,与所述运算处理结果相对应,存储在所述标记字段中。The calculation processing unit stores the calculation processing result across two or more data fields when the size of the calculation processing result is larger than the data field, and associates a flag value indicating that the calculation result is stored across two or more data fields with the Corresponding to the above operation processing result, it is stored in the tag field. 14、根据权利要求11所述的处理器,其特征在于:14. The processor of claim 11, wherein: 所述处理器在执行将大小比所述数据字段大的数据写入存储器的存储指令时,还原跨2个以上数据字段存储的数据,并将还原后的数据写入存储器。When the processor executes a storage instruction for writing data larger in size than the data field into the memory, it restores the data stored across two or more data fields, and writes the restored data into the memory.
CNA2005800358326A 2004-10-19 2005-03-01 Processor Pending CN101044450A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004304400 2004-10-19
JP304400/2004 2004-10-19

Publications (1)

Publication Number Publication Date
CN101044450A true CN101044450A (en) 2007-09-26

Family

ID=36202771

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005800358326A Pending CN101044450A (en) 2004-10-19 2005-03-01 Processor

Country Status (5)

Country Link
US (1) US20070255928A1 (en)
JP (1) JPWO2006043345A1 (en)
CN (1) CN101044450A (en)
TW (1) TW200614074A (en)
WO (1) WO2006043345A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622206A (en) * 2011-01-28 2012-08-01 中兴通讯股份有限公司 Processor and data processing method thereof
CN105453030A (en) * 2013-06-28 2016-03-30 英特尔公司 Processor, method and system for mode dependent partial width loads to wider registers

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2006134693A1 (en) * 2005-06-15 2009-01-08 松下電器産業株式会社 Processor
CN101346695A (en) * 2005-12-27 2009-01-14 松下电器产业株式会社 Processor with reconfigurable arithmetic units
WO2007083421A1 (en) * 2006-01-20 2007-07-26 Matsushita Electric Industrial Co., Ltd. Processor
US20080270658A1 (en) * 2007-04-27 2008-10-30 Matsushita Electric Industrial Co., Ltd. Processor system, bus controlling method, and semiconductor device
US20090157334A1 (en) * 2007-12-14 2009-06-18 Kenneth Joseph Goodnow Measurement of power consumption within an integrated circuit
US7715995B2 (en) * 2007-12-14 2010-05-11 International Business Machines Corporation Design structure for measurement of power consumption within an integrated circuit
JP5263498B2 (en) * 2008-07-09 2013-08-14 セイコーエプソン株式会社 Signal processor and semiconductor device
JP5263497B2 (en) * 2008-07-09 2013-08-14 セイコーエプソン株式会社 Signal processor and semiconductor device
CN102609378B (en) * 2012-01-18 2016-03-30 中国科学院计算技术研究所 A kind of message type internal storage access device and access method thereof
WO2015089314A1 (en) * 2013-12-11 2015-06-18 Mill Computing, Inc. Computer processor employing operand data with associated meta-data
US9600194B1 (en) * 2015-11-25 2017-03-21 International Business Machines Corporation Integrating sign extensions for loads

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60134937A (en) * 1983-12-23 1985-07-18 Hitachi Ltd address extender
JPS63216129A (en) * 1987-03-04 1988-09-08 Mitsubishi Electric Corp Register constitution system
JPH0628034B2 (en) * 1988-10-24 1994-04-13 工業技術院長 Calculator with tag
JP3546980B2 (en) * 1996-03-29 2004-07-28 松下電器産業株式会社 Data processing device
US5978901A (en) * 1997-08-21 1999-11-02 Advanced Micro Devices, Inc. Floating point and multimedia unit with data type reclassification capability
JP3123047B2 (en) * 1998-10-02 2001-01-09 日本電気株式会社 Microprocessor
JP3805578B2 (en) * 1999-09-14 2006-08-02 松下電器産業株式会社 Processor
JP4158496B2 (en) * 2002-11-18 2008-10-01 松下電器産業株式会社 Image processing device
JP2004280924A (en) * 2003-03-14 2004-10-07 Oki Electric Ind Co Ltd Memory test circuit
EP1460519B1 (en) * 2003-03-18 2014-05-07 Panasonic Corporation Processor, driving method thereof, and information processing device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622206A (en) * 2011-01-28 2012-08-01 中兴通讯股份有限公司 Processor and data processing method thereof
CN105453030A (en) * 2013-06-28 2016-03-30 英特尔公司 Processor, method and system for mode dependent partial width loads to wider registers
CN105453030B (en) * 2013-06-28 2019-02-15 英特尔公司 Processor, method and system for mode-dependent partial width loads to wider registers

Also Published As

Publication number Publication date
US20070255928A1 (en) 2007-11-01
WO2006043345A1 (en) 2006-04-27
TW200614074A (en) 2006-05-01
JPWO2006043345A1 (en) 2008-05-22

Similar Documents

Publication Publication Date Title
CN1186714C (en) High radix divider and method
CN1097795C (en) Document processing method and device and computer readable recording medium
CN1875345A (en) Extensible type system for representing and checking consistency of program components during the process of compilation
CN1860441A (en) Efficient high performance data operation element for use in a reconfigurable logic environment
CN1469241A (en) Processor, program conversion device and conversion method, and computer program
CN1177482C (en) Encoding method, decoding method, encoding device, and decoding device
CN101044450A (en) Processor
CN1263042C (en) Fetch circuit, reference circuit and semiconductor storage device
CN101047390A (en) Decoding device, control method, and program
CN1453687A (en) Communication apparatus and system, insert module control method and recording media
CN1813252A (en) Information processing method, information processing program, information processing device, and remote controller
CN1977531A (en) Program creation device, program test device, program execution device, information processing system
CN1633749A (en) Obtaining cyclic redundancy code
CN101078994A (en) Compiler apparatus, compiler method, and compiler program
CN1106941A (en) Method, system, equipment and multiplier for automatic design of logic circuit
CN101040306A (en) Pseudo-random number generator
CN1296825C (en) Simulator and simulation method
CN1599445A (en) Data processing method,data processing device
CN1577266A (en) Program converting method, program and storage medium
CN1595807A (en) Semiconductor integrated circuit in which voltage down converter output can be observed as digital value
CN1529889A (en) Associative memory system, network equipment and network system
CN1492318A (en) Microprocessors supporting reduced program code length
CN1991798A (en) semiconductor storage device
CN1282920C (en) A processor that decodes and executes instructions
CN1776621A (en) Program Transformation Method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication