Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16557 Discussions

StateMachine States in SignalTAP

Altera_Forum
Honored Contributor II
2,214 Views

I am not able (anymore) to observe the state machine's states in SignalTAP. I was trying to Import the states from the *.stp in order to get the Mnemonics as it once worked for one hot coded states, but this does not work. 

 

What could be done? 

 

I once managed to get a Mnemonic table and can still Import this from an old *.stp file, but the states are not shown the way I like it, although I assigned the statenames as the Radix for the state vector. 

 

 

Another issue: 

 

I once changed the state to Grey and then to automatic, and somehow am not able to get the one hot back. I commanded the explicitly in the Setting "one hot" but still see a 5 bit vector coding the states straight Forward up to 17... 

 

How can this by changed?
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
1,018 Views

Quartus defaults to one-hot encoding as long as it recognizes the state machine and there are more than two states, so it should not be hard to get it to do that. Maybe search your .qsf file for any settings that affect state machine encoding and remove them (that can sometimes be easier that finding settings in Quartus). 

 

As for SignalTap, when you use the node finder to add signals do you use post-fitting or pre-synthesis. I recommend pre-synthesis because the signals match your rtl code and state machines should be listed as one-hot with the state names matching the names you defined in your rtl.
0 Kudos
Altera_Forum
Honored Contributor II
1,018 Views

I think he's referring to the state machine tapping feature in SignalTap, allowing you to create a mnemonic table based off the coded states. If you've made a change to your machine that is preventing the tool from "recognizing" your state machine, you would have the issues mentioned. Check the state machine viewer debug tool to see if your state machine is being recognized. If it's not, you've changed something in your code that is preventing recognition.

0 Kudos
MWeng3
Beginner
1,018 Views

try in Compiler Setting -> Advanced Settings(Synthesis) "Extract State Machines "on".

0 Kudos
Reply