数字逻辑:第9章 Verilog HDL模型的不同抽象级别

上传人:壹****1 文档编号:569991967 上传时间:2024-08-01 格式:PPT 页数:17 大小:262.50KB
返回 下载 相关 举报
数字逻辑:第9章 Verilog HDL模型的不同抽象级别_第1页
第1页 / 共17页
数字逻辑:第9章 Verilog HDL模型的不同抽象级别_第2页
第2页 / 共17页
数字逻辑:第9章 Verilog HDL模型的不同抽象级别_第3页
第3页 / 共17页
数字逻辑:第9章 Verilog HDL模型的不同抽象级别_第4页
第4页 / 共17页
数字逻辑:第9章 Verilog HDL模型的不同抽象级别_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《数字逻辑:第9章 Verilog HDL模型的不同抽象级别》由会员分享,可在线阅读,更多相关《数字逻辑:第9章 Verilog HDL模型的不同抽象级别(17页珍藏版)》请在金锄头文库上搜索。

1、第9章 Verilog HDL模型的不同抽象级别1概述Verilog模型可以是实际电路不同级别的抽象。所谓不同的抽象级别,实际上是指同一个物理电路,可以在不同的层次上用Verilog语言来描述它,如果只从行为和功能的角度来描述某一电路模块,就称为行为模块;如果从电路结构的角度来描述该电路模块,就称为结构模块。抽象的级别和它们对应的模块类型常可以分为以下5种(1) 系统级(system)(2) 算法级(algorithmic)(3) RTL级(RegisterTransferLevel):(4) 门级(gate-level):(5) 开关级(switch-level)系统级、算法级和RTL级是属

2、于行为级的,门级是属于结构级的。2对于数字系统的逻辑设计工程师而言,熟练地掌握门级、RTL级、算法级、系统级是非常重要的。而对于电路基本部件(如门、缓冲器、驱动器等)库的设计者而言,则需要掌握用户自定义源语元件(UDP)和开关级的描述。一个复杂电路的完整Verilog HDL模型是由若干个Verilog HDL模块构成的,每一个模块又可以由若干个子模块构成。这些模块可以分别用不同抽象级别的Verilog HDL描述,在一个模块中也可以有多种级别的描述。利用Verilog HDL语言结构所提供的这种功能就可以构造一个模块间的清晰层次结构来描述极其复杂的大型设计。39.1 门级结构一个逻辑网络是由

3、许多逻辑门和开关所组成,因此用逻辑门的模型来描述逻辑网络是最直观的。Verilog HDL提供了一些门类型的关键字,可以用于门级结构建模。49.1.1 与非门、或门和反向器及其说明语法Verilog HDL中有关门类型的关键字共有26个之多。我们只介绍8个。and 与门nand 与非门nor 或非门or 或门xor 异或门xnor 异或非门buf 缓冲器not 非门门声明语句的格式如下:,;59.1.2用门级结构描述D触发器例9.1用基本逻辑单元组成D型主从触发器6moduleflop(data,clock,clear,q,qb);inputdata,clock,clear;outputq,q

4、b;nand#10nd1(a,data,clock,clear), nd2(b,ndata,clock), nd4(d,c,b,clear), nd5(e,c,nclock), nd6(f,d,nclock), nd8(qb,q,f,clear);nand#9nd3(c,a,d), nd7(q,e,qb);not#10iv1(ndata,data), iv2(nclock,clock);endmodule79.1.3 .由已经设计成的模块来构成更高一层的模块clrdqclkclrdqclkclrdqclkq0d0clrdqclkd3d2q2q3q1d1clrbclkf4f3f2f1四位寄存器电

5、路结构图8include flop.vmodulehardreg(d,clk,clrb,q);inputclk,clrb;input3:0 d;output3:0 q;flopf1(d0,clk,clrb,q0,), f2(d1,clk,clrb,q1,), f3(d2,clk,clrb,q2,), f4(d3,clk,clrb,q3,);endmodule99.2 Verilog HDL的行为描述建模module hardreg(d,clk,clrb,q);inputclk,clrb;input3:0d;output3:0 q;reg 3:0 q; always (negedge clk o

6、r posedge clrb) begin if (clrb) q = 0; else q end_first_pass; end $finish;/结束仿真endendmodule149.2.2 硬件描述语言的可综合性问题所谓逻辑综合就其实质而言是设计流程中的一个阶段,在这一阶段中将较高级抽象层次的描述自动地转换成较低层次描述。就现在达到的水平而言,所谓逻辑综合就是通过综合器把HDL程序转换成标准的门级结构网表,而并非真实具体的电路。而真实具体的电路还需要利用ASIC和FPGA制造厂商的布局布线工具根据综合后生成的标准的门级结构网表来产生。为了能转换成标准的门级结构网表,HDL程序的编写必须

7、符合特定综合器所要求的风格。由于门级结构、RTL级的HDL程序的综合是很成熟的技术,所有的综合器都支持这两个级别HDL程序的综合。159.3 用户定义的原语用户可以定义自己设计的基本逻辑元件的功能,也就是说,可以利用UDP来定义自己特色的用于仿真的基本逻辑元件模块并建立相应的原语库。这样,就可以与调用Verilog HDL基本逻辑元件同样的方法来调用原语库中相应的元件模块,并进行仿真。由于UDP是用查表的方法来确定其输出的,用仿真器进行仿真时,对它的处理速度较对一般用户编写的模块快得多。与一般的用户模块比较,UDP更为基本,它只能描述简单的能用真值表表示的组合或时序逻辑。16primitive udp_and(out,a,b); /原语名和端口列表/端口声明语句output out;/表示组合逻辑时一定不能声明为reg类型input a,b; /输入端口声明/状态表定义;以关键词table开始table /状态表输入项的次序必须与输入端口列表一致 / a b : out; 0 0 : 0; 0 1 : 0; 1 0 : 0; 1 1 : 1;endtable /状态表定义结束endprimitive /自定义原语udp_and的定义结束 17

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

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