Home

microops

Micro-ops, short for micro-operations, are the atomic steps that a CPU’s microarchitecture uses to realize machine instructions. They are produced by the instruction decoder from the architectural instruction stream and are the units that are scheduled and executed by the processor’s execution resources.

Most modern CPUs are out-of-order and superscalar, and they break down complex instructions into multiple micro-ops.

Once generated, micro-ops are placed into a micro-op queue or a reorder buffer, renamed to remove false

Origin and scope: The concept grew out of microprogramming in classic mainframe architectures, and in contemporary

See also: microcode, microinstruction, microarchitecture, x86, out-of-order execution.

An
x86
instruction,
for
example,
may
expand
into
several
micro-ops,
while
simpler
instructions
may
decode
into
a
single
micro-op.
Some
processors
use
hardwired
micro-ops,
while
others
rely
on
microcode
for
certain
instructions;
many
designs
also
employ
a
micro-op
cache
to
avoid
re-decoding
frequently
used
sequences.
dependencies,
and
dispatched
to
appropriate
execution
units
such
as
integer
ALUs,
floating-point
units,
load/store
units,
or
branch
units.
They
are
executed
in
parallel
where
possible,
and
their
results
are
written
back
and
retired
in
program
order
to
preserve
architectural
correctness.
CPUs
it
is
implemented
in
a
variety
of
ways.
In
many
designs,
the
term
micro-op
also
encompasses
a
broader
class
of
internal
micro-operations
used
by
the
pipeline
to
support
routing,
memory
addressing,
and
control
flow.