In this lab, you'll be developing a VHDL model for ASM chart of the
DCT chip and explore several design alternatives.
In Lab 1, we have focused on the following issues:
- The timing protocol of the DCT chip - how the chip
communicates with the outside world.
- The test bench - how we verify the VHDL model.
- The behavioral model - what the DCT computes.
Note that in Lab 1 we only specified the behavior of the chip without any
commitment to chip implementation. In order for the chip to be implemented
in hardware, we have to add the notion of time, that is, we have to
specify when each operation is executed.
The ``WHEN'' information is derived from two constraints, namely, data
dependencies and resource constraints. Because of the data
dependencies inherent in the description, Operations must be performed
in series. Because of the resource constraints, the operations
that use the same resources must be serialized, that
is, they can never be executed at the same time. The determination of
the ``WHEN'' information is generally referred as scheduling.
After scheduling, we can construct an ASM chart, which you have
learned from ICS 151 and covered in more detail in ICS 152. For those
of you who are not familiar with ASM charts, we are giving a short
refreshment course below.
Figure 1: An ASM Chart Example
 |
There are 4 key constructs in ASM chart (Figure 1),
namely the state box, decision box, conditional box,
and block. RT operations can be specified in both the state
and conditional boxes. The decision boxes help to specify the
conditions under which state transitions and RT operations inside the
conditional boxes occur. Note that an ASM chart can be naturally
partitioned into a set of blocks, in which each block contains exactly one
state box, a tree of decision and conditional boxes, and
several exit paths which lead to other blocks.
In this lab, we will explore several design alternatives starting with
the most sequential design. The VHDL code for the sequential design is
also provided below in order to illustrate how to write VHDL models for
ASM charts. You are responsible for improving performance of the present
ASM chart, developing a new high-performance chart and its VHDL model.
|