实验六 数字电路行为模型建立和仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六数字电路行为模型建立和仿真
目录
1.实验目的
2.创建一个2选1数据选择器的行为模型
3.创建一个4选1数据选择器的结构模型
4.四选一数据选择器的行为模型
1.实验目的
与实验五紧密结合,继续在更高层面对数字逻辑电路进行仿真。本实验通过使用Verilog-Editor 创建一个4选1数据选择器的行为模型学会使用Verilog-XL仿真器对数字电路行为模型进行仿真的过程和方法。包括学会层次化、模块化的设计方法、Verilog语言的初步接触以及创建自定义数字器件库的方法。
2.创建一个2选1数据选择器的行为模型
本次实验我们通过先创建一个2选1的数据选择器的行为模型,再调用它构建一个4选1的数据选择器行为模型,以此学习行为级层次化、模块化的设计方法。
要创建2选1数据选择器的行为模型,我们再次复习一下它的布尔逻辑表达式。
+
⋅
Out⋅
=,即数选信号Sel=0 输出为A,Sel=1 输出为B。
B
A
Sel
Sel
首先启动计算机,打开终端,进入到实验五的子文件夹,执行下列命令,
$ c d vloglabs
$ icfb&
在打开的CIW窗口中点击Tools-->Library Manager..., 将打开库管理器。
点击库管理器中的File-->New-->Library..., 将打开New Library 对话窗口, 现创建一个新库取名为my_digital_lib。点击OK弹出关联工艺库对话框,选择Don’t need a techfile,OK。在新创建的my_digital_lib库中,创建一个mux2_1行为模型,见图1。
图1. 创建一个行为模型Cell View
点击OK,在弹出的gedit编辑器中,按图2所示内容进行修改。
图2. 修改默认mux2_1行为模型内容
保存,退出,弹出一对话框,如图3所示,要求创建行为模型的图标,点击Yes。
图3. 创建行为模型的图标对话框
返回到Library Manager界面,Library选my_digital_lib,Cell选mux2_1,将鼠标移至View栏目下的behavioral处,按住鼠标中键,在弹出的菜单中选择Open (Read-Only)会打开Verilog编辑器,其中内容为我们刚创建的行为模型(图4)。
图4. Verilog-Editor操作界面
点击菜单Tools-->Verilog-XL弹出仿真环境选项对话框,见图5所示。
图5. Verilog仿真环境选项对话框
为了不破坏实验五的仿真数据,这次我们选择mux2_1.run2作为运行文件夹。见图5所示,点击OK。
其余剩余步骤与实验五相同,你需要创建testfixture.new文件,其内容见图6.
图6. mux2_1行为模型测试文件
最后得到的仿真输出波形如图7所示。
图7. mux2_1行为模型仿真结果波形
自定义行为模型的最大优点之一就是设计者能控制所创建的模型中输入到输出之间的延迟时间,我们创建的第一个2选1数选器模型只能实现特定的逻辑功能而不含任何延迟信息,我们可以很容易的增加这个信息,只需在原来创建的模型中修改一条语句即可,具体修改的内容如图8所示,见红圈中的#1,延迟1ns。
图8. mux2_1带延迟的行为模型
对mux2_1延迟行为模型进行仿真,结果你会得到如图9波形。
图9. mux2_1带延迟的行为模型仿真结果
3.创建一个4选1数据选择器的结构模型
确认mux2_1延迟行为模型工作正常后我们可以用它来创建4选1数据选择器。实验五是在原理图编辑器中进行的,本次实验将用行为描述的方式将3个2选1数选器连接起来。具体操作步骤如下:
回到Library Manager界面,在my_digital_lib库中新建一个Cell View(图10),仍然用Verilog编辑器进行编辑,View Name 处键入structural。
图10. 创建mux4_1结构描述
点击OK,在打开的gedit编辑器中按图11所示内容键入语句。
图11. mux4_1结构描述模型
保存,退出。再对此mux4_1结构模型进行仿真,其结果应该与实验五的mux4_1原理图模型相同,只是多了延时。因为mux4_1数选器由两级mux2_1数选器构建,而每一个mux2_1数选器的延时为1ns,所以你会看到输出比输入要延迟2ns。输入D2在320ns有一个下跳沿,而输出y在322ns处有一个下跳沿,在此期间数选信号s 为2,正好选中输入D2。局部放大后的仿真波形见图12所示。
图12. mux4_1结构描述模型仿真结果局部放大图显示延时
4.四选一数据选择器的行为模型
当然你也可以直接编写一个4选1数选器的行为模型,而不采用调用2选1数选器的层次化设计方法。通过前面的众多例子,你不难写出4选1数选器的代码(图13)。
图13. mux4_1行为描述模型
剩余时间请同学们完成由反相器、与门以及或门构建的2选1数选器。先分别创建反相器、与门、或门的行为模型,再用结构化模型将它们连接起来。
实验六结束。