Sei sulla pagina 1di 43

Chapter 04

Tutorial Using StateCAD

Objective

This tutorial will give you exposure to


using StateCAD and VHDL
Using HDL Bencher and Modelsim for
simulating the functional design
This tutorial shows you how to create,
using StateCAD and VHDL, a simple
sequence generator

Sequence Generator State


Table
Current State Next State
Output
M
A
B
A
B DOUT<1> DOUT<0>
0
0
0
1
0
1
0
0
0
1
1
1
1
1
0
1
0
0
1
0
1
0
1
1
0
0
0
0
1
0
0
0
1
0
1
1
0
1
0
0
0
0
1
1
0
0
0
0
0
1
1
1
0
0
0
0

Sequence Generator State


Diagram

Create a New Project

Enter a Name and Location for


the Project

Select the Device and Design


Flow for the Project

Create a New Source

Select State Diagram and


Enter File Name

New Source Information

New Source Information

Next Step

Finish

Create a Blank StateCAD

State Machine Wizard:


Draw State Machines

Select the Appearance of the


State Machine

Reset the State Machine

Setup Transitions

Placed Template State


Diagram

Edit Conditions in the transition


arrow State0State1

Left-Click

Output Wizard

Enter Constraint Value

Completed Transition

Modified State Diagram

Insert a New Transition

Enter Constraint Value

State2State1

Final State Diagram

Generate HDL

Optimize Outputs for Speed

Result Windows

StateCAD HDL

Create Test Bench (State Bench)

State Bench

Reset

Input CLK

Review Sequence Generator


State Table
Current State Next State
Output
M
A
B
A
B DOUT<1> DOUT<0>
0
0
0
1
0
1
0
0
0
1
1
1
1
1
0
1
0
0
1
0
1
0
1
1
0
0
0
0
1
0
0
0
1
0
1
1
0
1
0
0
0
0
1
1
0
0
0
0
0
1
1
1
0
0
0
0

Summary Sequence Generator


State Table

M=0, then
State 02130
M=1, then
State 01 0 ,
State 20, and State 30.

Check M=0 Then DOUT 0,2,1,3


(State 0,2,1,3)

Check M=1 Then DOUT 0, 1


(State 0,1)

Check M=1 Then State2 State0


and State3State0

Questions and Answers

Potrebbero piacerti anche