User: Password:
|
|
Subscribe / Log in / New account

On binary drivers and stable interfaces

On binary drivers and stable interfaces

Posted Nov 11, 2005 4:30 UTC (Fri) by Ross (guest, #4065)
In reply to: On binary drivers and stable interfaces by drag
Parent article: On binary drivers and stable interfaces

Microcode is actually something different -- it is the glue on top of the lowest levels of hardware to create the "native" machine language instruction set. Some firmware is microcode and some is not. In many cases, microcode can't be "uploaded" at all (though that isn't the case with Intel CPUs). Also, nothing actually limits firmware to "just" driving the hardware. Entire Linux distributions are loaded as firmware in some cases.


(Log in to post comments)

what is microcode?

Posted Nov 11, 2005 19:33 UTC (Fri) by giraffedata (subscriber, #1954) [Link]

Thanks for making a point that needed to be made.

We should clarify though, that people (IBM engineers are the only ones I've heard do it) do often use the term "microcode" to refer to any software built into a device. They're all wrong.

Also for the sake of precision, microcode isn't just for CPUs. Any machine can be driven by microcode -- it's really just a style of software; a class of instruction set. In days when CPUs were expensive, many machines were implemented with microcode. I don't know how much microcode is in use today, but I imagine communication processors (e.g. inside a network switch or TCP Offload Engine) get some use out of it go faster than any conventional CPU could go.

I found a pretty good definition at http://www.webopedia.com/TERM/M/microcode.html .

"firmware," unfortunately, isn't the right word either. That just means instructions that are somewhat permanent, as in a ROM chip. The permanence isn't really what we're talking about here; in fact, I think we're specifically talking about software that has to be loaded every time the device powers up. I'd just call it "the device control program."


Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds