In a Moore machine each state has a fixed output. The output gates read only the state flip-flops, never the inputs.
- In a state diagram, the output goes inside the circle: S3 / 1.
- In a state table, there is one output per row.
- The output equation uses only state bits, for example Z = .
Because the state only changes at clock edges, a Moore output only changes at clock edges too. It stays steady for the whole clock period, even if the input wiggles. That makes Moore outputs clean and safe to use elsewhere in a synchronous design.
The cost is time and states. A Moore machine reacts one clock cycle later than a mealy machine, because it has to move into a state before the output can show the result. And it often needs an extra state just to hold the output: a sequence detector for an n-bit pattern needs n + 1 Moore states, against n for Mealy.
When tracing a Moore machine, read the output of the state you arrive in.