Hardware Reference
In-Depth Information
states are of the form
.s F ;n S /
and
.n F ;s S /
cannot transition to any of them because
n F cannot transition to
s F . These states can be lumped into one state, an accepting
don't care state. In conclusion, if u ยค u ,
X sim will transition into an accepting don't
care state and thus there are many don't care transitions created by exposing u as a
pseudo output of
S
.
13.3
Example with Latch Splitting
In this section we discuss an example that starts with a sequential network
representing FSM
, which may already be a sub-network of a larger FSM as
discussed in Chap. 11. We use the BALM's command latch split to divide the
latches (and combinational logic feeding them) of the network
S
S
into two parts. The
first part is called
F
and the second part is called
A
. Next, the complete sequential
flexibility
X
is computed for the
A
part using
S
as the specification and
F
as the
fixed part.
A
is a particular solution contained in the most general FSM solution
Xfsm .
The equation
F X S
can be solved in two different ways:
1. Normal use of latch split where an FSM is divided into two parts, say
F
and
A
,wherethe
A
part is considered as unknown. Solving the language equation
for
provides the most general solution, which represents the complete set of
flexibilities possible for replacing
X
. This was the topic of Sect. 11.2.
2. Solving a restricted problem, which is obtained by setting up a relation between
the states of
A
F X
and
S
(instead of language containment), i.e., solving
F X sim S
. Finding the largest solution of this restricted problem yields
a restricted solution of the language equation problem.
The running example, planet.blif 3 , will demonstrate how the solution by the
second method can be found and then minimized using command dcmin , specifi-
cally targeted for this situation, where the states are constrained (see Sect. 14.3 for
an in-depth presentation of dcmin ).
Example 13.3. In an initial FSM (which is planet.blif in this example), the
latches are (v7,v8,v9,v10,v11,v12) . Using the command, latch split
0-3 , the first four latches are moved to the
A
part le av ing the latches of
F
as (v11,v12) . When we compute the product of
F S
, in order to solve for
X
, the state space variables of the product are (v11,v12,v7,v8,v9,v10,
v11,v12) , i.e.,
.s F ;s S /
. Although
X
is obtained from this by complementation,
its states can be labeled with
. In general, values in the first two slots,
(v11,v12) , need not agree with those in the last two slots, because v11 and
.s F ;s S /
3 To save space, we do not include here the description of planet.blif , which can be found
in the standard MCNC/ISCAS benchmarks for FSMs [87], and also can be retrieved from the
examples provided in the on-line directory of BALM.
 
Search WWH ::




Custom Search