Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Hierarchical FSM?

Reply
Thread Tools

Hierarchical FSM?

 
 
Davy
Guest
Posts: n/a
 
      04-01-2006
Hi all,

I am new to hierarchical FSM design.
Is there any paper or guideline for design hierarchical FSM?

Any suggestions will be appreciated!
Best regards,
Davy

 
Reply With Quote
 
 
 
 
Ken Taylor
Guest
Posts: n/a
 
      04-01-2006
"Davy" <> wrote in message
news: ups.com...
> Hi all,
>
> I am new to hierarchical FSM design.
> Is there any paper or guideline for design hierarchical FSM?
>
> Any suggestions will be appreciated!
> Best regards,
> Davy
>


Google.

Ken


 
Reply With Quote
 
 
 
 
Mike Treseler
Guest
Posts: n/a
 
      04-02-2006
Davy wrote:

> I am new to hierarchical FSM design.
> Is there any paper or guideline for design hierarchical FSM?
> Any suggestions will be appreciated!


I would suggest that if your state machine
needs a hierarchy, there is likely a simpler
logic description possible, using multiple
process variables, not all of them enumerated.

-- Mike Treseler
 
Reply With Quote
 
radarman
Guest
Posts: n/a
 
      04-03-2006
Mike Treseler wrote:
> Davy wrote:
>
> > I am new to hierarchical FSM design.
> > Is there any paper or guideline for design hierarchical FSM?
> > Any suggestions will be appreciated!

>
> I would suggest that if your state machine
> needs a hierarchy, there is likely a simpler
> logic description possible, using multiple
> process variables, not all of them enumerated.
>
> -- Mike Treseler


It depends on the nature of the state machine (SM). Sometimes it is
helpful to take advantage of the inherent parallelism available in a
FPGAs and ASICs by having multiple state machines operating at once
while a "master" SM coordinates their activities. However, this
typically implies only two levels of hierarchy (the master machine, and
the servant machines)

That said, there are few circumstances that call for true hierarchy in
state machine design, and I would recommend also that you reexamine the
problem. Often, a problem can be more easily solved with an external
(to the SM) counter, pipeline register, or signal than by adding
additional states.

As a hint, try to limit the number of outputs each SM generates. This
will force you to partition the problem better, and should result in a
cleaner design. For example, rather than implement a full
microprocessor for a test application, I wrote two state machines that
were attached to an internal UART model. One state machine handled
incoming data, while the other acted as a message generator. By
partitioning in this way, each machine became much simpler, and
performance improved greatly.

Note, there are some graphical tools on the market (Mentor Graphics'
HDL Designer, and Xilinx' StateCAD) that allow you to implement
hierarchical state machines graphically - allowing them to be
understood more easily. However, if you examine the output, you will
find that the SM has almost invariably been flattened to just one (in
either two or three processes depending on what you specified in the
options)

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Hierarchical QoS with and without IPSec ovt@redcenter.ru Cisco 0 01-18-2006 09:43 AM
Hierarchical token bucket for Cisco (3640)?!? papi Cisco 1 01-25-2005 04:26 AM
Converting 'flat' gate level names to hierarchical names Paddy McCarthy VHDL 3 09-24-2004 05:34 PM
Hierarchical Credit-based Queuing (HCQ): QoS implementation feedback? Vicky Cisco 0 05-09-2004 07:07 AM
hierarchical design with structural VHDL question Neil Zanella VHDL 2 10-22-2003 11:01 AM



Advertisments
 



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57