usb 发表于 2010-6-26 01:24:18

关于状态机的问题

本帖最后由 fpgaw 于 2010-11-19 09:43 编辑

要用VHDL做FFT。我用状态机来控制运算的不同阶段。我想请问当我用WHEN-CASE 语句时,如果在不同状态下要涉及不同的运算或操作,如WHEN STA0=>写RAM1;WHEN STA1=>写RAM2,那么在某个状态下没有涉及到应该怎么处理呢

HANG 发表于 2010-6-26 03:23:05

如果你的WHEN语句是在组合逻辑中,那么要给未设计的状态给一个default值,在语句的开始赋值就可以,如果是在时序逻辑中就不用管了,综合工具会认为是保持原来值不变的。

interi 发表于 2010-6-26 05:09:53

哦,明白了,谢谢。<br>
那我现在写的WHEN语句是直接处于PROCESS下,但是在WHEN语句内部却有时钟边沿检测,那是否应该认为还是处于时序逻辑中呢?这样在WHEN内部写边沿检测是不是不太好啊?

longtime 发表于 2010-6-26 05:59:06

VHDL不熟,感觉你这样写本身就不可综合。<br>
你区分要写组合逻辑还是时序逻辑,时序逻辑的话在process中列出时钟,然后用if判断

Sunlife 发表于 2015-6-17 10:54:15


哦,明白了,谢谢。<br>
那我现在写的WHEN语句是直接处于PROCESS下,但是在WHEN语句内部却有时钟边沿检测,那是否应该认为还是处于时序逻辑中呢?这样在WHEN内部写边沿检测是不是不太好
页: [1]
查看完整版本: 关于状态机的问题