电子设备知识网-中国电子设备,国内最专业电子设备平台
电子设备知识网-中国电子设备,国内最专业电子设备平台

MyHDL“用python设计电路”

写代码:

下面的myhdl代码写了一个模块top,里面有两个计数器:cnt1从0计到9,当cnt1=9时,cnt2从0计到4。

MyHDL“用python设计电路”

从上面的代码可以看到其实与verilog非常接近,只是复位和时钟在python装饰器always和always_seq里实现了。另一个特殊点是,给一个信号赋值需要用xxx.next,这样就描述了DFF的功能,赋的值下一个时钟生效。

转Verilog:

我们用下面的方法来把myhdl转成verilog:

MyHDL“用python设计电路”

直接上效果,不解释了,大家自己看:

MyHDL“用python设计电路”

MyHDL“用python设计电路”

写验证环境,仿真:

MyHDL“用python设计电路”

与Verilog的验证环境没有太大区别,实例化、编写时钟、复位等激励,设置dump波形,仿真时间等。

看波形:

运行后目录下产生testbench.vcd。用Verdi打开如下图:

MyHDL“用python设计电路”

未经允许不得转载:电子设备知识网 » MyHDL“用python设计电路”

分享到: 生成海报