1:门级描述和数据流描述
这两种描述的时候,使用默认的wire即可。
这两种描述方式,本质上都是直接使用逻辑门
门级描述是显式地使用了门级原语
数据流描述其实是隐式地使用门级原语,因为他是直接描述数据在寄存器直接的流动关系,本质上,还是在阐述逻辑门的使用
门级描述与数据流描述,就好比结绳记事和使用符号记事的区别,用一连串的符号标志,代替了绳子,减少了许多麻烦。
(1) 打开Modelsim软件,创建一个新的工程项目(Test_mux2to1.mpf),添加已经保在的源文件(mux2to1_df.v和test_mux2to1_df.v)。
(2) 在Project子窗口中,编译所有的源文件。如果编译成功,则代码文件Status栏显示为绿色的“✓”。如果编译出错,则会给出相关错误信息,修改代码,然后再重新编译,直到没有错误编译。
(3) 将设计载人仿真器,开始仿真。编译成功之后,仿真器通过调用 Verilog HDL 的顶层模块将设计载人到仿真器中,弹出与仿真相关的子窗口,且设置仿真时间从0时刻开始。
(4) 将需要观察的信号添加到 Wave 子窗口中。
(5) 执行仿真命令,得到如图四所示的输人、输出波形;同时,还得到图五以文本方式显示的仿真结果。可见,在0~20 ns 期间,由于 PS =0,所以输出 PY 与输人PD0相同;在20~40 ns 期间, PS =1,故输出 PY 与输人PD1相同。表明该设计块描述的逻辑功能是正确的。