Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Microarchitecture
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Relation to instruction set architecture == [[File:Single bus organization.jpg|thumb|upright=2|A microarchitecture organized around a single bus]] The [[Instruction set architecture|ISA]] is roughly the same as the programming model of a processor as seen by an [[assembly language]] programmer or compiler writer. The ISA includes the [[Instruction set architecture#Instructions|instructions]], [[execution model]], [[processor register]]s, address and data formats among other things. The microarchitecture includes the constituent parts of the processor and how these interconnect and interoperate to implement the ISA. The microarchitecture of a machine is usually represented as (more or less detailed) diagrams that describe the interconnections of the various microarchitectural elements of the machine, which may be anything from single gates and registers, to complete [[arithmetic logic unit]]s (ALUs) and even larger elements. These diagrams generally separate the [[datapath]] (where data is placed) and the [[control path]] (which can be said to steer the data).<ref name="hennessy">{{cite book |author1-link=John L. Hennessy |first1=John L. |last1=Hennessy |author2-link=David Patterson (computer scientist) |first2=David A. |last2=Patterson |title=Computer Architecture: A Quantitative Approach|edition=4th|publisher=Morgan Kaufmann |year=2006|isbn=0-12-370490-1}}</ref> The person designing a system usually draws the specific microarchitecture as a kind of [[data flow diagram]]. Like a [[block diagram]], the microarchitecture diagram shows microarchitectural elements such as the [[arithmetic and logic unit]] and the [[register file]] as a single schematic symbol. Typically, the diagram connects those elements with arrows, thick lines and thin lines to distinguish between three-state buses (which require a [[Three-state logic|three-state buffer]] for each device that drives the bus), [[simplex circuit|unidirectional buses]] (always driven by a single source, such as the way the address bus on simpler computers is always driven by the [[memory address register]]), and individual control lines. Very simple computers have a [[datapath#Single bus organization of datapath|single data bus organization]]{{snd}} they have a single [[three-state bus]]. The diagram of more complex computers usually shows multiple three-state buses, which help the machine do more operations simultaneously. Each microarchitectural element is in turn represented by a [[schematic]] describing the interconnections of [[logic gate]]s used to implement it. Each logic gate is in turn represented by a [[circuit diagram]] describing the connections of the transistors used to implement it in some particular [[logic family]]. Machines with different microarchitectures may have the same instruction set architecture, and thus be capable of executing the same programs. New microarchitectures and/or circuitry solutions, along with advances in semiconductor manufacturing, are what allows newer generations of processors to achieve higher performance while using the same ISA. In principle, a single microarchitecture could execute several different ISAs with only minor changes to the [[microcode#Writable control store|microcode]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)