Verification Guild
A Community of Verification Professionals

 Create an AccountHome | Calendar | Downloads | FAQ | Links | Site Admin | Your Account  

Login
Nickname

Password

Security Code: Security Code
Type Security Code
BACKWARD

Don't have an account yet? You can create one. As a registered user you have some advantages like theme manager, comments configuration and post comments with your name.

Modules
· Home
· Downloads
· FAQ
· Feedback
· Recommend Us
· Web Links
· Your Account

Advertising

Who's Online
There are currently, 49 guest(s) and 1 member(s) that are online.

You are Anonymous user. You can register for free by clicking here

  
Verification Guild: Forums

 Forum FAQForum FAQ   SearchSearch   UsergroupsUsergroups   ProfileProfile  ProfileDigest    Log inLog in 

How to detect deadlock conditions in FSMs

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Verification Guild Forum Index -> Formal
View previous topic :: View next topic  
Author Message
Newsletter
Original Contribution


Joined: Dec 08, 2003
Posts: 1107

PostPosted: Mon Jun 23, 2003 11:00 pm    Post subject: How to detect deadlock conditions in FSMs Reply with quote

(Originally from Issue 4.11, Item 5.0)

From: oki Send e-mail

I want to know if there's a method to detect the deadlock in FSM (not
in OS, but in Hardware design), when the IPs are connected the FSMs
are also connected, and if there is good ways to detect the deadlock
in SoC?
Back to top
View user's profile
Newsletter
Original Contribution


Joined: Dec 08, 2003
Posts: 1107

PostPosted: Tue Jul 15, 2003 11:00 pm    Post subject: How to detect deadlock conditions in FSMs Reply with quote

(Originally from Issue 4.12, Item 6.0)

From: Michal Siwinski Send e-mail

Recently two relatively new approaches for addressing FSM deadlocks
have been provided: Assertion-Based Verification and Predefined
Property Checking. With Assertion-Based Verification, time bounded
assertions can be used to describe the expected FSM behaviors, and in
this way, increase observability. Such assertions would typically be
expressed in terms of individual FSM state transitions, instead of
specifying complex interactions. Nevertheless, the inability to
transition out of any given state would be observed.

For example, if we know that a particular state should always
transition to another within a finite number of cycles, we can write
an OVL assertion such as the example shown below to detect a deadlock
condition:

assert_next #(0,5) fsm_read_st_deadlock_chk
(clk, rst_n, state == read, state != read);

This assertion states that within five cycles, the FSM will transition
out of the "read" state. Such an assertion can now become a target
for both simulation and formal proof with property checking.

A more automated method for deadlock verification is also available.
Several property checking tools, including BlackTie PDC, provide
automatic FSM extraction and verification of conditions such as
deadlocks. Besides not having to manually write assertions, these
tools also provide diagnosis environments that depict interacting FSMs
via bubble diagrams. The downside is that property checking will run
into size limitations and will not always be exhaustive. However,
formal property checking is quite good at finding complex corner case
bugs, making it an ideal complementary solution to simulation.

- Michal Siwinski, Verplex Systems
Back to top
View user's profile
Newsletter
Original Contribution


Joined: Dec 08, 2003
Posts: 1107

PostPosted: Sat Aug 09, 2003 11:00 pm    Post subject: How to detect deadlock conditions in FSMs Reply with quote

(Originally from Issue 4.13, Item 5.0)

From: Jeff Koehler Send e-mail

I'd like to point out the existence of IBM's RuleBase Formal Logic
Verification tool. This is now a commercially available tool:

http://www.haifa.il.ibm.com/projects/verification/RB_Homepage/index.html

I've reviewed their web site and User's Manual for possible
introduction into our ASIC development strategy, but we aren't at a
point right now to execute an evaulation. Note: I don't work for IBM
nor do I receive any renumeration for this reply.

It appears that this is exactly what you are looking for -- automatic
identification of deadlock/livelock states. The problems arise from
the state space of most modern designs; it is too big for (our)
servers.

In order to reduce the state space, you usually:
1) run the tool on sub-sections of the full design (your designers
did perform logical partitioning, didn't they?)
2) introduce a modeling language (EDL) which restricts the tool
to only traversing paths of interest (i.e. valid situations).

Recognizing the tradeoff between complete state evaluation and useful
constraints appears to require some experience. How much experience
is what we are trying to weigh -- it will take time from functional
simulation. Note that the state of this art is not sufficient that it
can replace functional simulation.

- Jeff Koehler, Fabric Networks, Inc.
Back to top
View user's profile
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Verification Guild Forum Index -> Formal All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Verification Guild © 2006 Janick Bergeron
Web site engine's code is Copyright © 2003 by PHP-Nuke. All Rights Reserved. PHP-Nuke is Free Software released under the GNU/GPL license.
Page Generation: 0.786 Seconds