Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Variable address length compiler and processor improved in address management

a compiler and address technology, applied in the field of program conversion, can solve the problems of hardware not fully utilized, performance efficiency significantly degraded, programming efficiency degraded, etc., and achieve the effect of reducing the number of instructions and reducing the overhead at the conditional branch

Inactive Publication Date: 2008-12-25
PANASONIC CORP
View PDF21 Cites 12 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

"The present invention provides a program converting unit that selects an operation code to generate an object program in accordance with a data bit-width and an application program's address space, without degrading operation efficiency caused by address calculation. The program converting unit includes a parameter holding unit for holding a data width and a pointer width designated by a user, a judging unit for analyzing the source program's syntax and determining the type of each variable, a table generating unit for generating a table for each variable in the intermediary language, a generating unit for generating the machine language instruction based on the source program, and a code generating unit for generating the machine language instruction. The program converting unit can be used for most applications that demand the data width and address space. The technical effects of the invention include reducing the program size, simplifying the operation code, and improving the efficiency of data transfer instructions."

Problems solved by technology

Consequently, the performance efficiency is significantly degraded compared with a 16-bit non-segment-address processor.
However, on the other hand, programming efficiency is degraded because it is a programmer that selects one of the two pointer variables by checking the segment boundary.
Thus, if the 32-bit processor and compiler are employed, the hardware is not fully utilized, wasting the cost and running electricity.
In addition, the 32-bit processor always designates a 32-bit address in a program, and thus increases a program code size undesirably.
Also, the performance is degraded when a 16-bit data bus is used to connect the 32-bit processor to a memory compared with a 32-bit data bus.
However, the second conventional processor demands the size field in each data-transfer instruction, which further demands a size-field decoding function and enlarges an instruction code, or increases the code size.
Some compilers, however, may not judge the effective 16-bit width when the program uses 16-bit data.
However, this method demands the 32-bit notation even when 16-bit data are designated, and thus extending the instruction size and object code unnecessarily.
Thus, a processor that can access to correct data in the address space efficiently using the immediate data shorter than the address register has not been realized yet.
However, the number of the instructions increases considerably in the above way, which demands larger and more sophisticated hardware for the instruction decoding and execution.
However, the RISC compiler compiles the program using the character or short-integer data variables with a considerable number of the compensation instructions, which increases the code size of the resulting machine language program, and hence prolonging the data processing time.
In addition, there is no advantage using the compensation instructions when a program does not have the overflow, or a programmer avoids the overflow by checking the available range for each data variable.
Further, an integer data variable, besides the character and short-integer data variables, causes the same problem in a system where the bit-width of the register exceeds that of the integer data variable.
Since the integer data variables are most frequently used, the problem becomes far more serious.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Variable address length compiler and processor improved in address management
  • Variable address length compiler and processor improved in address management
  • Variable address length compiler and processor improved in address management

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0144]A hardware structure of a data processing system including a computer and a program converting unit (compiler) is depicted in FIG. 13. The data processing system comprises a storage unit 1 for storing a C language program, a compiler 2 for translating the C language program into a machine language program, and a computer 3 for running an object code; the computer 3 includes a processor and a memory.

[0145]More precisely, the computer 3 includes a memory 130, an address bus 131, a data bus 132, an instruction control unit 134, an operation executing unit 135, and a bus control unit 136.

[0146]The memory 130 stores an object code and data used in a program.

[0147]The address bus 131 is of 24-bit wide and sends an address to the memory 130.

[0148]The data bus 132 is of 16-bit wide and transfers data to each component within the computer 3.

[0149]The instruction control unit 134 includes a fetching unit 139 and a decoding unit 140 to fetch an instruction via the bus control unit 136 an...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

The present invention discloses a program converting unit for generating a machine language instruction from a source program for a processor that manages an N-bit address while processing M-bit data, N being greater than M, and such a processor that runs the converted program. The program converting unit comprising: a parameter holding unit for holding a data width and a pointer width designated by a user; the data width representing the number of bits of data used in the source program while the pointer width representing the number of bits of an address; and a generating unit for generating an instruction to manage the data width when a variable operated by the instruction represents the data, and for generating an instruction to manage the pointer width when a variable operated by the instruction represents the address.

Description

RELATED APPLICATION[0001]This application is a divisional of application Ser. No. 09 / 662,484, filed Sep. 14, 2000, which is a reissue application of application Ser. No. 08 / 587,338, now U.S. Pat. No. 5,809,306, which claims priority to Japanese Patent Applications 5-126212, filed on May 27, 1993, 5-129529, filed on May 31, 1993, and 5-247154, filed on Oct. 1, 1993, which are all incorporated herein by reference.BACKGROUND OF THE INVENTION[0002](1) Field of the Invention[0003]The present invention relates to a program converting unit for converting a high level language program into a machine language program and a processor for running the converted program, and more particularly, to such a processor improved in address management with various types of register groups including address and data registers.[0004](2) Description of the Related Art[0005]With the recent advancement in the field of electronic technology, data processors such as a microprocessor and a microcomputer have be...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Applications(United States)
IPC IPC(8): G06F9/355G06F9/30G06F9/45G06F9/34G06F9/302G06F9/318
CPCG06F8/423G06F8/447G06F8/47G06F8/52G06F9/30014G06F9/30112G06F9/3013G06F9/30145G06F9/30167G06F9/34G06F9/342
Inventor SUZUKI, MASATOKAMIYAMA, HIROSHIMIYAJI, SHINYA
Owner PANASONIC CORP
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products