microcode


Also found in: Dictionary, Thesaurus, Medical, Legal, Wikipedia.

microcode

[′mī·krō‚kōd]
(computer science)
A code that employs microinstructions; not ordinarily used in programming.

microcode

(programming)
A technique for implementing the instruction set of a processor as a sequence of microcode instructions ("microinstructions"), each of which typically consists of a (large) number of bit fields and the address of the next microinstruction to execute. Each bit field controls some specific part of the processor's operation, such as a gate which allows some functional unit to drive a value onto the bus or the operation to be performed by the ALU. Several microinstructions will usually be required to fetch, decode and execute each machine code instruction ("macroinstruction"). The microcode may also be responsible for polling for hardware interrupts between each macroinstruction. Writing microcode is known as "microprogramming".

Microcode may be classified as "horizontally encoded" or "vertically encoded". Horizontal microcode is as described above where there is a fairly direct correspondence between the bit fields in a microinstruction and the control signals sent to the various parts of the CPU. Not all combinations of bits will be valid (e.g. two units driving the bus at once). Vertical microcode is closer to machine code because a bit field value may pass through some intermediate combinatory logic which generates the actual control signals. This allows a few bits of a microinstruction to determine several control signals and ensure that only valid combinations of those signals are generated (e.g. a field may be decoded to determine which unit drives the bus). The disadvantage with vertical encoding is that the encoding is usually fixed and takes extra time compared with horizontal encoding which allows any combination of signals to be generated and takes no time to decode.

The alternative to a microcoded processor is a hard-wired one where the control signals are generated directly from the bits of the machine code instruction. This is more common in modern RISC architectures because it is faster.

Microcode is usually stored in ROM chips though some processors (e.g. the Orion) use fast RAM, making them dynamically microprogrammable.

microcode

A set of elementary instructions in a complex instruction set computer (CISC). The microcode resides in a separate high-speed memory and functions as a translation layer between the machine instructions and the circuit level of the computer. Microcode enables the computer designer to create machine instructions without having to design electronic circuits. Writing microcode is called "microprogramming," and the microcode for a given computer is called a "microprogram."

RISC computers do not use microcode, which is the reason why RISC compilers generate more instructions than CISC compilers.

Source Code to Machine Code to Microcode
When software is written, the source code is converted into machine instructions by assemblers and compilers. At execution time, the machine instructions are converted into microinstructions, and the microinstructions cause transistors to open and close in the circuits. See microinstruction, CISC and RISC.
References in periodicals archive ?
A command list is a collection of microcode functions and their parameters.
Though neither Microsoft nor Intel clarified exactly why Microsoft is providing Intel's microcode, the likely reason is to support smaller PC makers, and especially motherboard makers, who either lack the distribution network or the incentive to distribute patches as quickly as Intel and Microsoft would like.
There were a number of reasons for the court's conclusion, but of particular interest is the court's finding that the similarities which did exist between NEC's and Intel's microcode resulted from the constraints required by the hardware architecture and specifications of the microprocessor, and were thus not protectable by copyrights.
Given Microsoft's warning of post-patch performance slow-downs, Intel's firmware stability woes, and the optional nature of AMD's fix, you may want to wait until AMD's microcode update is tested and benchmark before deciding whether or not to apply it to your system.
GX applications are pre-compiled into a special microcode, providing maximum runtime performance and platform independence.
By Timothy Prickett Morgan Hoping to stimulate interest in the its S/390 G5 servers and attract attention away from the looming announcement from Hitachi Data Systems of its Skyline II mainframes, IBM yesterday divulged a complex set of tweaks to the microcode at the heart of the G5 servers that make them easier to upgrade and offer advanced features like hot pluggable I/O that are becoming common on both PC and Unix servers.
The researchers say the virus is the result of faulty programming in the microcode of a device used in computers.
The devices ship with standard microcodes, providing industry-proven firmware for existing protocols and downloadable RAM microcode packages that provide support for new functionality or protocols.
Intel recommends that partners maintain availability of existing microcode updates already released to end users," the company's security advisory says.
The report, published March 7, 2014, presented a number of specific findings, including: "Product differentiation is created primarily by differences in architecture, software functionality, data flows and microcode quality, rather than components and packaging," according to the report.
They're sticking with what they do best, making the switch hardware and microcode while the EMCs and Veritas' of the world write the software that goes above it.