verilog语言,假如A=B+C,B跟C是reg变量,在always@(clk)里面被赋值,a该定义成reg还是wire哪个更好

如题所述

让我来告诉你答案!定义为reg可以按时钟节拍输出。FPGA大把的reg,不在乎个别。有些软件在综合选项中可选择与输出寄存器合并与否。若定义为wire,理论上会在B或C任一个发生变化时立即输出,属于组合电路而不是时序电路。这样容易产生抖动、竞争、冒险...就看你A输出是干啥去啦。若用作中断显然不妥;若用作LED点亮可行;若属总线数据,更需要同步输出,否则时序不确定,很难发现潜在问题。
温馨提示:答案为网友推荐,仅供参考
相似回答