Assembler tool for processor-coprocessor computer systems

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C712S032000, C712S037000, C712S001000, C712S200000

Reexamination Certificate

active

06588008

ABSTRACT:

FIELD OF THE INVENTION
The invention relates to the field of a microprocessor—coprocessor architecture. More particularly, it relates to the development of a software assembler tool for use with network processors in interfacing central processors with coprocessors.
BACKGROUND OF THE INVENTION
The use of coprocessors with central processors in the design of a computer system processing complex architecture is well known. By assigning a task to a specific coprocessor, rather than requiring the central processor to perform the task, a processing complex designer may increase the efficiency and performance of a computer system. In order to add a coprocessor to a processor complex under prior art, a complex designer must program an assembler software tool that provides the hardware instructions required by the central processor to operate the coprocessor. However, a significant drawback to the efficient use of coprocessors is the need to rebuild the assembler software tool every time a coprocessor is changed or added. Accordingly, the finished design may not be changed to incorporate different or additional coprocessors without rebuilding the assembler software tool, where rebuilding involves reprogramming the assembler tool software.
SUMMARY OF THE INVENTION
The drawbacks of the prior art are solved by the development of a new assembler tool and associated processor—coprocessor architecture. This invention provides for a core language processor-coprocessor assembly comprising an assembler software tool for extending the base core language processor (CLP) tasks into at least one coprocessor. What is important is that the assembler software tool does not need to be rebuilt when changes are made to the coprocessor elements. The invention allows assembly time extension of a base core language processing (CLP) programming model, without the need to rebuild the assembler tool itself.
The addition of a coprocessor to a microprocessor or other central processor exposes the central processor programming model to a set of scalar registers, array registers and commands. The present invention provides for an assembler tool comprising a set of instructions within the microprocessor complex which manipulate the coprocessor registers, and a coprocessor execute command which initiates command processing on the coprocessor. The software component of the present invention is a special hardware command that executes among the coprocessors. The core language processor fetch's that command from its processor memory, decodes the fact that it is intended to be executed on the coprocessor, and gives it to one of the coprocessors. The hardware component of the present invention is a unique CLP-coprocessor architecture that incorporates and enables the software embodiment. The present invention simplifies the maintenance of the assembler tool through multiple hardware revisions by enabling programmer's to update their coprocessor definition files to reflect new or modified coprocessors. The assembler tool itself does not have to be rebuilt to track hardware changes associated with the addition of new coprocessors or modifications of existing ones.
The use of include files is standard prior art. What is new is the inclusion of a special assembler directive in the include files which describes a given coprocessor, the instructions available on the coprocessor, and the hardware registers that the coprocessor supports. The include file assembler directive describes to a core assembler the details of a specific coprocessor in such a way that the core assembler does not have to be rebuilt when the coprocessor is changed. The invention instructs the assembler program itself to recognize the new device. A programmer utilizing the invention supplies text input which specifies specific commands to be executed. The core assembler recognizes those commands and accordingly the correct syntax for those commands and generates the machine code for those commands.
The invention stabilizes the basic core language coprocessor instruction set and documentation associated with it. A further advantage is that the invention allows a hardware designer to test different “what if” scenarios when considering the addition of a new coprocessors or modifications of existing ones, through the use of software simulators.


REFERENCES:
patent: 5459854 (1995-10-01), Sherer et al.
patent: 5488714 (1996-01-01), Skidmore
patent: 5548769 (1996-08-01), Baum et al.
patent: 5604905 (1997-02-01), Tevanian et al.
patent: 5619713 (1997-04-01), Baum et al.
patent: 5724600 (1998-03-01), Ogi
patent: 6002881 (1999-12-01), York et al.
patent: 6247113 (2001-06-01), Jagger
patent: 6473897 (2002-10-01), Ansari et al.
patent: WO 97/22925 (1996-12-01), None
“Motorola MC68030 Enhanced 32-bit Microprocessor User's Manual: 3rd Edition,” 1992 (pp. 24-26, 35, and 361-435).*
“IBM System/370 Emulator Micro-Instruction Portion Implemented in Master-Slice (Gate Array) Logic”, IBM Technical Disclosure Bulletin, vol. 30, No. 4, Sep., 1987.
“Object-Oriented Assembler/Disassembler”, IBM Technical Disclosure Bulletin, vol. 38, No. 7, Jul. 1995.

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

Assembler tool for processor-coprocessor computer systems does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Assembler tool for processor-coprocessor computer systems, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Assembler tool for processor-coprocessor computer systems will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3107047

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