A Method for Storing Both Programs and Data in a 32-Bit Wide Microprogram Controller Memory
Original Publication Date: 1987-Nov-01
Included in the Prior Art Database: 2005-Feb-02
In a 32-bit microprocessor system, including a microprogram controller, a single small, local random-access memory (RAM) serves a dual use as both microprogram storage and system data storage -- the RAM having a respective section for each use. If the microprocessor requires data during the execution of a microprogram, the controller takes an unconditional subroutine jump to an address in the data section of RAM and pushes a return address on a stack. Prior to the jump, the current microprocessor instruction is latched by the hardware. Following the jump, the hardware causes a return instruction to be issued to the controller, which pops the return address from the stack and resumes the microprogram. Additional means are provided to allow multiple words of data to be processed before returning to the program.