Method for optimally encoding a set of instruction codes for...

Electrical computers and digital processing systems: processing – Instruction decoding – Decoding instruction to accommodate variable length...

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C712S220000

Reexamination Certificate

active

06801995

ABSTRACT:

TECHNICAL FIELD
This invention relates to a method of encoding instructions for a processor to realize the maximum number of encoded instructions.
BACKGROUND OF THE INVENTION
One aspect of designing processors, such as digital signal processors, is selection of the particular instructions to be encoded from the entire set of instructions which is supported by the hardware. In a typical selection process, instructions are grouped according to the type of function performed, i.e., multiply accumulates, barrel shifts, etc. For each group, a certain number of instruction bits are set aside to be used to identify the registers affected by the instruction.
For example, in a processor with 16 general purpose registers, four bits are required to identify each register. A particular type of command function that can be executed using either one or two registers will conventionally have eight bits in the instruction op-code reserved to identify the registers. Commands in this group which utilize only a single register use only four of the reserved eight bits. In these commands, the four other bits are unused and are therefore wasted.
SUMMARY OF THE INVENTION
According to the invention, instructions for a computer processor are encoded to minimize the number of wasted bits and maximize the number of encoded instructions. Rather than group instructions according to function, they are arranged in “resource groups” according to the resources used by the instruction. All instructions in a particular resource group therefore require the same number of available bits in order to identify the designated resources, regardless of the particular function performed. In a particular example, the designated resources are the classes and number of registers used by a particular instruction.
In a preferred embodiment, instructions are encoded so that the highest order active bits identify the resource grouping of the instruction. The remaining low order bits are then available to encode a given number of instructions from the specific group. This encoding scheme eliminates wasted bits in instructions and thereby increases the number of instructions which can be implemented.
Increasing the size of the instruction space in this manner allows the formation of an orthogonal instruction set and the definition of special purpose instructions for specific applications. An increase in functionality per instruction also leads to performance improvements. In addition, encoding instructions in this manner can reduce the amount of decoding logic required, because once the resource group for a particular instruction is identified, connections to the specifically identified resources can be established independently of the determination of the specific function of the instruction.


REFERENCES:
patent: 4042914 (1977-08-01), Curley et al.
patent: 5073855 (1991-12-01), Staplin et al.
patent: 5640582 (1997-06-01), Hays et al.
patent: 5664156 (1997-09-01), Wang et al.
patent: 5832273 (1998-11-01), Mizuse
patent: 5881307 (1999-03-01), Park et al.
patent: 5901301 (1999-05-01), Matsuo et al.
Intel(iAPX 86/88, 186/188 User's Manual) 1985, Intel 1-41 to 1-34, 1-45, 1-46, 1-48, 1-49.*
Peter Song, “M. Core for the Portable Millennium”, 4 pages., MicroDesign Resources, Feb. 16, 1998, Microprocessor Report.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method for optimally encoding a set of instruction codes for... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method for optimally encoding a set of instruction codes for..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for optimally encoding a set of instruction codes for... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3262206

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.