VHDL-门级与结构建模PPT课件.ppt

上传人:优*** 文档编号:127674400 上传时间:2020-04-04 格式:PPT 页数:40 大小:831KB
返回 下载 相关 举报
VHDL-门级与结构建模PPT课件.ppt_第1页
第1页 / 共40页
VHDL-门级与结构建模PPT课件.ppt_第2页
第2页 / 共40页
VHDL-门级与结构建模PPT课件.ppt_第3页
第3页 / 共40页
VHDL-门级与结构建模PPT课件.ppt_第4页
第4页 / 共40页
VHDL-门级与结构建模PPT课件.ppt_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《VHDL-门级与结构建模PPT课件.ppt》由会员分享,可在线阅读,更多相关《VHDL-门级与结构建模PPT课件.ppt(40页珍藏版)》请在金锄头文库上搜索。

1、第三讲门级与结构建模 内容 结构建模分类Verilog内建基本门门级结构建模门延迟测试模块模块仿真入门 前言 Verilog模型可以是实际电路不同级别的抽象 这些抽象的级别和它们对应的模型类型共有以下五种 系统级 system 算法级 algorithmic RTL级 RegisterTransferLevel 门级 gate level 开关级 switch level 我们将通过许多实际的VerilogHDL模块的设计来了解不同抽象级别模块的结构和可综合性的问题 对于数字系统的逻辑设计工程师而言 熟练地掌握门级 RTL级 算法级 系统级是非常重要的 而对于电路基本部件 如门 缓冲器 驱动器

2、等 库的设计者而言 则需要掌握用户自定义源语元件 UDP 和开关级的描述 一个复杂电路的完整VerilogHDL模型是由若干个VerilogHDL模块构成的 每一个模块又可以由若干个子模块构成 这些模块可以分别用不同抽象级别的VerilogHDL描述 在一个模块中也可以有多种级别的描述 利用VerilogHDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计 结构建模分类 结构建模分类 结构建模侧重反映模块内部的结构组成 门级建模由基本逻辑门级元件互连而成的具有一定功能的电路模块 开关级建模 不讲 是构成VerilogHDL对硬件设计最低层次的描述 通常的综合

3、工具不支持开关级描述 用户定义原语建模 不讲 由用户定义基础元件互连而成的具有一定功能的电路模块 用户定义模块建模由用户定义模块互连而成的具有一定功能的电路模块 Verilog内建基本门 一个逻辑网络是由许多逻辑门和开关所组成 因此用逻辑门的模型来描述逻辑网络是最直观的 VerilogHDL提供了一些门类型的关键字 可以用于门级结构建模多输入门 and nand or nor xor xnor多输出门 buf 缓冲门 not 非门 三态门 bufif0 bufif1 notif0 notif1 只有在控制端有效时才能传递数据 否则输出高阻抗z 上拉 下拉电阻 pullup pulldownMO

4、S开关 cmos nmos pmos rcmos rnmos rpmos双向开关 tran tranif0 tranif1 rtran rtranif0 rtranif1 多输入门 多输入门具有单个输出 2个或多个输入 如图 多输入门实例语句语法 gate typeinstance name output input1 inputN 门类型 实例名可选 单输出 多输入 内建多输入门 与门 and 与门真值表 实例引用 andU1 out in1 in2 andU2 out1 a b c d and out in1 in2 4个输入 与非门 nand 与非门真值表 实例引用 nandU3 out

5、 in1 in2 nandU4 out1 a b c 3个输入 或门 or 或门真值表 实例引用 orU5 out in1 in2 U6 out1 a b c 同类门实例引用简化方式 或非门 nor 或非门真值表 实例引用 norU7 out in1 in2 norU8 out1 out b c U7输出out信号连接到U8的输入端口 异或门 xor 异或门真值表 实例引用 xorU9 out in1 in2 xorU10 out1 out in1 c in1信号连接到U9 U10的输入端口 异或非门 xnor 异或门真值表 实例引用 xnorU11 out in1 in2 xor out1

6、out b c 无实例名 多输出门 多输出门具有单个输入 1个或多个输出 如图 多输出门实例语句语法 gate typeinstance name output1 outputN input 多输入门 输出1 输出n 输入 门类型 实例名可选 多输出 单输入 内建多输出门 真值表 实例引用 bufB1 F1 F2 F3 F4 CLK notN1 A B ready 内建三态门 三态门实例语句语法 gate typeinstance name output input control 内建三态门真值表 门级结构建模 真值表 4选1多路选择器 4选1多路选择器的门级结构建模 moduleMUX4x

7、1 Z D0 D1 D2 D3 S0 S1 outputZ 端口说明inputD0 D1 D2 D3 S0 S1 端口说明wireT1 T2 T3 T4 内部线网说明 缺省说明S0bar S1barand T0 D0 S0bar S1bar 4个与门 T1 D1 S0bar S1 T2 D2 S0 S1bar T3 D3 S0 S1 not S0bar S0 2个非门 S1bar S1 or Z T0 T1 T2 T3 1个或门endmodule 门延迟 在实际电路中任何一个逻辑门输入到输出都有延迟 门延迟由三类延迟值组成 1 下降延迟 1 x z02 上升延迟 10 x z3 截止延迟 输出

8、从0 1 x变化到z的延迟 带有延迟定义的门实例引用的语法如下 gate type delay instance name terminal list 带门延迟的实例引用 无延迟值 notN1 Qbar Q 因为没有定义时延 门时延为0 1个延迟值 nand 6 Out In1 In2 所有时延均为6 即上升时延和下降时延都是6 2个延迟值 and 3 5 Out In1 In2 In3 上升时延被定义为3 下降时延为5 转换到x的时延是3和5中间的最小值 即3 3个延迟值 notif1 2 8 6 Dout Din1 Din2 上升时延为2 下降时延为8 截止时延为6 转换到x的时延是2 8

9、和6中的最小值 即2 最小 典型 最大 延迟 实际电路中逻辑门不但有延迟 而且延迟受温度 电压等因素影响 是变化的 门延迟变化采用min typ max形式定义如下 minimum typical maximum最小值 典型值和最大值延迟实例引用 nand 2 3 4 5 6 7 Pout Pin1 Pin2 选择使用哪种延迟通常作为模拟仿真中的一个选项 延迟时间单位由 timescale编译器指令设定 带延迟的4选1多路选择器的门级结构建模 moduleMUX4x1 delay Z D0 D1 D2 D3 S0 S1 outputZ 端口说明inputD0 D1 D2 D3 S0 S1 端口

10、说明wireT1 T2 T3 T4 内部线网说明 缺省说明S0bar S1barand 2 U1 T0 D0 S0bar S1bar 4个与门 上升时延和下降时延都是2U2 T1 D1 S0bar S1 U3 T2 D2 S0 S1bar U4 T3 D3 S0 S1 notU5 S0bar S0 2个非门U6 S1bar S1 or 2 1 U7 Z T0 T1 T2 T3 1个或门endmodule 用户模块结构建模 用MUX4x1用户模块设计16选1多路选择器 16选1多路选择器设计 moduleMUX16x1 Z D S outputZ 端口说明input 15 0 D 端口说明inp

11、ut 3 0 S 端口说明 用户模块建模MUX4x1U1 Z Z3 0 D0 D 0 D1 D 1 D2 D 2 D3 D 3 S0 S 0 S1 S 1 U2 Z Z7 4 D0 D 4 D1 D 5 D2 D 6 D3 D 7 S0 S 0 S1 S 1 U3 Z Z11 8 D0 D 8 D1 D 9 D2 D 10 D3 D 11 S0 S 0 S1 S 1 U4 Z Z15 12 D0 D 12 D1 D 13 D2 D 14 D3 D 15 S0 S 0 S1 S 1 U5 Z Z D0 Z3 0 D1 Z7 4 D2 Z11 8 D3 Z15 12 S0 S 3 S1 S 4 e

12、ndmodule 模块仿真入门 如何编写测试文件对所做的设计进行测试和验证 modelsim仿真工具入门 Verilog设计的仿真步骤 注 虚线表示编译器能检查输入文件的可读性和是否存在以及是否允许生成输出文件 仿真测试平台的组成 测试模块 为了对已设计的模块进行检验往往需要产生一系列信号作为输出 输入到已设计的模块 并检查已设计模块的输出 看它们是否符合设计要求 这就要求我们编写测试模块 也称作测试文件 常用带 tf扩展名的文件来描述测试模块 4选1多路选择器测试模块1 moduletest MUX4x1 MUX4x1模块测试平台 无输入输出端口reg 3 0 d 测试平台内部激励信号说明r

13、eg 1 0 s wireout 模块输出信号MUX4x1mymux out d 0 d 1 d 2 d 3 s 0 s 1 调有被测模块initial 激励信号产生与结果输出begind 4 b1010 s 2 b00 加载输入信号d 3 0 display time d b s 1 b s 0 b out b n d s 1 s 0 out 显示结果 5s 2 b00 加载选择信号s 1 0 display time d b s 1 b s 0 b out b n d s 1 s 0 out 延时后显示结果 5s 2 b01 display time d b s 1 b s 0 b out

14、 b n d s 1 s 0 out 5s 2 b10 display time d b s 1 b s 0 b out b n d s 1 s 0 out 5s 2 b11 display time d b s 1 b s 0 b out b n d s 1 s 0 out endendmodule 4选1多路选择器测试模块1仿真结果 run all 0d 1010 s 1 0 s 0 0 out x 5d 1010 s 1 0 s 0 0 out 0 10d 1010 s 1 0 s 0 1 out 0 15d 1010 s 1 1 s 0 0 out 0 20d 1010 s 1 1 s

15、 0 1 out 1 4选1多路选择器测试模块2 moduletest MUX4x1 delay MUX4x1模块测试平台 无输入输出端口reg 3 0 d 测试平台内部激励信号说明reg 1 0 s wireout 模块输出信号MUX4x1 delaymymux out d 0 d 1 d 2 d 3 s 0 s 1 调用被测模块 initial 激励信号产生与结果输出begin monitor time d b s 1 b s 0 b out b n d s 1 s 0 out 监视输出d 4 b1010 加载输入信号d 3 0 5s 2 b00 加载选择信号s 1 0 5s 2 b01 5s 2 b10 5s 2 b11 endendmodule 4选1多路选择器测试模块2仿真结果 run all 0d 1010 s 1 0 s 0 0 out x 3d 1010 s 1 0 s 0 0 out 0 10d 1010 s 1 0 s 0 1 out 0 15d 1010 s 1 1 s 0 0 out 0 19d 1010 s 1 1 s 0 0 out 1 20d 1010 s 1 1 s 0 1 out 1 Modelsim仿真工具入门

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号