FPGA|CPLD|ASIC论坛
直播中

funbo

11年用户 15经验值
擅长:可编程逻辑
私信 关注
[问答]

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

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

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

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

困扰好久了,求解答,谢谢

回帖(3)

funbo

2014-3-7 10:22:59
来人帮忙啊,怎么没人捏
举报

小工兵

2014-3-13 23:06:08
第一个问题:就个人经验,都是设置一个全局复位的。
第二个:没有影响,最终都是以二进制表示,因为硬件描述语言最后生成的是一个数字电路。
第三个:在面向综合语句中,初始化是不必要,但最好初始化,而在面向仿真语句中,初始化是必要的。
举报

伴鸟高飞

2014-3-14 23:09:21
1.一般正规的大型FPGA设计,绝大部分的寄存器都是需要复位的,关心的是同步还是异步复位的问题。复位是高扇出没有错,但是高扇出并不意味着不能使用。可以用全局buf来解决高扇出的问题,另外保证高复位可以解决时序需求的问题。
2.在电路本质上,没有任何影响,只是在用十进制表示的时候,心里要清楚这个十进制是有多少位,这样才知道两个十进制的比较会不会影响逻辑电路时序。
3.初始化需要与否,不是由语言决定的,也不是由逻辑电路的需求决定的,而是由你的设计思路与设计严谨的思考方法决定的。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分