Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Implicit FSM to explicit FSM conversion

Status
Not open for further replies.

ESD_UNIVR

Newbie level 6
Joined
Jan 21, 2009
Messages
13
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,368
Dear all,
does exist a procedure to convert implicit FSMDs (based on wait statements) to explicit FSMDs (based on switch-case statements)?

For example
Code:
i1
i2
i3
wait(clock = 1)
i4
i5
i6
wait(clock = 1)
i7
i8

has to be converted in
Code:
state := A 
if (clock = 1) then
  switch (state) 
    case A:
      i1
      i2
      i3
      state := B
    case B:
      i4
      i5
      i6
      state := C
    case C:
      i7
      i8
  end switch
end if

Or more complicate
Code:
i1
wait(clock = 1)
i2
if ( a ) then
  i3
  if ( b) then
    i4
    wait(clock = 1)
    i5 
  else
    i6
  end if
  i7
else 
  i8
end if
i9
wait(clock = 1)
i10

is converted in

Code:
state := A 
if (clock = 1) then
  switch (state) 
    case A:
      i1
      state := B
    case B:
      i2
      if ( a ) then
        i3
        if ( b ) then
          i4
          state := B’ 
        else
          i6
        end if
        i7
      else 
        i8
      end if
      i9
      state := C
    case B’:
      i5
      i7
      i9
      state := C
    case C:
      i10
  end switch
end if
 

Do you know Perl, Python, or Ruby?

Any of these scripting languages are great at parsing and manipulating text files. It seems like it wouldn't be too hard to write a script to do the conversion you're interested in doing.

Radix
 

Does exist any EDA tools to perform this transformation and check/guarantees the equivalence?
 

I don't think any EDA tools will do this!
Its entirely depend on the code written!

Please let me know if anybody knows that there is some EDA tool to do this
 

Does HDL Designer do this manipulation? For example: there is the button Convert HDL to Graphic >> FSM... but does it need a explicit FSM representation to extract the Graphical view of an FSM?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top