用verilog写代码的时候一定要做到:
心中有电路,代码有电路。至于想要做到心中无电路,代码无电路,那就是玄学了。
再者,做FPGA一定要设计当头,做FPGA设计或者是ASIC设计的最重要的就是设计。写代码不要光always,这样很浪费逻辑资源。寄存器多了,面积必然大,功耗也会大。不符合ic设计理念。
写verilog之前不光要做到心中有电路,还要做到心中有时序图。一个设计方案,不仅心中要有数,而且要写下来。再动手写代码之前,心中也有个普。
正确设计流程应该是确定设计模块的要求,划分硬件结构。同时也要区分数据通路和控制通路。
数据通路决定了数据流的走向。是用RAM存还是用REG存。数据通路中,乘法器单元的面积最大,一般都是通过时分复用的方式。
控制通路就是时序设计