:PROPERTIES:
:ID: a25405e3-fd5b-4d13-a0bd-730d0833e89c
:mtime: 20231023032044
:ctime: 20231023032033
:END:
#+title: moore machine
#+filetags: :public:project:
* Definition
A moore machine is a type of [[id:29d52285-bccb-40dd-90f5-ac2e828c498b][finite state machine]]
Outputs from Moore machines come directly
from clocked FFs so:
– They have guaranteed timing characteristics
– They are glitch free
* architecture of a moore machine
#+BEGIN_SRC dot :file moore_machine.png :cmdline -Kdot -Tpng :exports both
digraph ntob {
node [shape=Mrecord]
rankdir=LR
nscl [label="{{<nscli>input|<nscls>current state}| Next State Combinational Logic|{<nsclo>output}}", group=0]
ff [label="{{<ffD>D|<ffC> clock}|Flip Flop|{<ffQ>Q|<ffQb> Qb}}", group=1]
ocl [label="{{<ocli>input}|Optional Combinational Logic|{<ocloutput>outputs}}", group=1]
nscl:nsclo -> ff:ffD [label="m"]
ff:ffQ -> nscl:nscls [label="current state"]
}
#+END_SRC
#+RESULTS:
[[file:moore_machine.png]]