FPGA疑问关于“复位”“十进制”“状态机初始状态”

2019-07-16 00:55发布

随着FPGA学习深入,有以下问题求高手帮忙
1,复位信号往往高扇出,那复位越少越好,有的就不需要复位,比如分频器的计数,那哪些地方都可以不复位呢?

2,verilog中使用数值判断之类的,使用十进制和二进制表示有没有什么影响?

3,好的状态机写法是,在状态判断的组合逻辑always块中,最好先定义一个初始化状态,case中最好定义一个默认状态,初始化状态是不是必要,定义为全零好还是不定态“x“好呢。

困扰好久了,求解答,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
funbo
1楼-- · 2019-07-16 04:28
来人帮忙啊,怎么没人捏
小工兵
2楼-- · 2019-07-16 05:03
第一个问题:就个人经验,都是设置一个全局复位的。
第二个:没有影响,最终都是以二进制表示,因为硬件描述语言最后生成的是一个数字电路。
第三个:在面向综合语句中,初始化是不必要,但最好初始化,而在面向仿真语句中,初始化是必要的。
伴鸟高飞
3楼-- · 2019-07-16 09:49
1.一般正规的大型FPGA设计,绝大部分的寄存器都是需要复位的,关心的是同步还是异步复位的问题。复位是高扇出没有错,但是高扇出并不意味着不能使用。可以用全局buf来解决高扇出的问题,另外保证高复位可以解决时序需求的问题。
2.在电路本质上,没有任何影响,只是在用十进制表示的时候,心里要清楚这个十进制是有多少位,这样才知道两个十进制的比较会不会影响逻辑电路时序。
3.初始化需要与否,不是由语言决定的,也不是由逻辑电路的需求决定的,而是由你的设计思路与设计严谨的思考方法决定的。

一周热门 更多>