Verilog-HDL复杂数字系统设计-本.ppt
《Verilog-HDL复杂数字系统设计-本.ppt》由会员分享,可在线阅读,更多相关《Verilog-HDL复杂数字系统设计-本.ppt(507页珍藏版)》请在三一办公上搜索。
1、2023/7/8,南通大学电子信息学院,1,Verilog HDL复杂数字系统设计,讲 解 人:邵蔚电 话:13773666530 办公地点:12-617室 E-mail:,2023/7/8,南通大学电子信息学院,2,什么是复杂的数字逻辑系统,嵌入式微处理机系统数字信号处理系统高速并行计算逻辑 高速通信协议电路高速编码/解码、加密/解密电路复杂的多功能智能接口门逻辑总数超过几万门达到几百甚至达几千 万门的数字系统,2023/7/8,南通大学电子信息学院,3,为什么要设计复杂数字逻辑系统,对嵌入式系统的性能要求越来越高-通用的微处理机不能满足要求-硬件结构是提高系统总体性能的关键-软件只能提高系
2、统的灵活性能-军用系统的实时、高可靠、低功耗要求-系统的功能专一,但对其各种性能要求极高-降低系统的设计和制造成本,2023/7/8,南通大学电子信息学院,4,设计数字系统的基本方法,传统的:线路图现代的:硬件描述语言,2023/7/8,南通大学电子信息学院,5,数字信号处理、计算、程序算法和硬线逻辑的基本概念,数字信号处理计算(Computing)算法和数据结构编程语言和程序体系结构硬线逻辑,2023/7/8,南通大学电子信息学院,6,数字信号处理,现代电子系统设备中广泛使用了数字信号处理 专用集成电路。用于数字信号传输中所必需的滤波、变换、加密、解密、编码、解码、纠检错、压缩、解压缩等操作
3、。处理工作从本质上说都是数学运算。完全可以用计算机或微处理器来完成处理工作。,2023/7/8,南通大学电子信息学院,7,计算(Computing),“Computing 这门学问研究怎样系统地有步骤地描述和转换信息,实质上它是一门覆盖了多个知识和技术范畴的学问,其中包括了计算的理论、分析、设计、效率和应用。它提出的最基本的问题是什么样的工作能自动完成,什么样的不能。”(摘自Denning et al.,“Computing as a Discipline,”Communication of ACM,January,1989)。,2023/7/8,南通大学电子信息学院,8,算法和数据结构的基本
4、概念,算法就是解决特定问题的有序步骤。数据结构就是解决特定问题的相应的模型。,2023/7/8,南通大学电子信息学院,9,编程语言和程序,编程语言:程序员利用一种由专家设计的既可以被人理解,也可以被计算机解释的语言来表示算法问题的求解过程。这种语言就是编程语言。程序:由编程语言所表达的算法问题的求解过程就是。常用的编程语言:C、Pascal、Fortran、Basic或汇编语言。,2023/7/8,南通大学电子信息学院,10,计算机体系结构和硬线逻辑,计算机体系结构:是一门 讨论和研究通用的计算机中央处理器如何提高运算速度性能的学问。硬线逻辑:由与门、或门、非门、触发器、多路器等基本逻辑部件造
5、成的逻辑系统。,2023/7/8,南通大学电子信息学院,11,数字信号处理系统的分类,非实时系统:信号处理的工作是可以事后进行。实时系统:信号处理的工作必须在规定的很短的时间内完成。,2023/7/8,南通大学电子信息学院,12,数字信号处理系统的实现,非实时系统:通用的计算机和利用通用计算机改装的设备,主要工作量是编写“C”程序。输入/输出数据大多为文本。实时系统:信号处理专用的微处理器为核心的设备,主要工作量是编写汇编程序。输入/输出数据大多为数据流,直接用于控制。,2023/7/8,南通大学电子信息学院,13,实时数字信号处理系统实现中存在的技术难点,算法问题。电路实现问题:如果由最快的
6、信号处理专用的微处理器为核心的设备也来不及处理如此大量的数据怎么办呢?,2023/7/8,南通大学电子信息学院,14,解决办法,算法问题。研究并行快速算法。电路实现问题:设计并研制具有并行结构的数字和计算逻辑结构和相应的接口逻辑。两个方向:FPGA、专用集成电路,2023/7/8,南通大学电子信息学院,15,第一部分 Verilog HDL入门,2023/7/8,南通大学电子信息学院,16,1.1 数字电子系统CAD技术的发展,三个阶段:(1)20世纪60年代80年代初期 CAD(Computer Aided Design)阶段(2)20世纪80年代初期90年代初期 CAE(Computer
7、Aided Engineering)阶段(3)20世纪90年代以来 EDA(Electronic Design Automation)阶段,第1章Verilog复杂数字设计综述,2023/7/8,南通大学电子信息学院,17,数字系统EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言(Hardware Description Language)完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可行性,减轻了设计者的劳动强度。20世纪90
8、年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用已得到普及。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。,2023/7/8,南通大学电子信息学院,18,1.2 硬件描述语言Verilog HDL,1.2.1 什么是Verilog HDL Verilog HDL 是硬件描述语言的一种,它是目前应用最广泛的硬件描述语言之一,用于数字系统的设计。设计者用它进行数字逻辑系统的仿真模拟、时序分
9、析、逻辑综合。,2023/7/8,南通大学电子信息学院,19,1.2.2 Verilog HDL的发展历史,1989Cadence 公司购买 Verilog HDL的版权,1990Verilog HDL 公开发表,1980s Verilog-XL 诞生,1990有关Verilog HDL的全部权利都移交给OVI(Open Verilog International)组织,1995Verilog IEEE1364标准公开发表,1999模拟和数字都适用的 Verilog 标准公开发表,2001Verilog IEEE1364-2001标准公开发表,Verilog IEEE1364-2005,202
10、3/7/8,南通大学电子信息学院,20,VHDL,比VerilogHDL早几年成为IEEE标准;-语法/结构比较严格,因而编写出的 模块风格比较清晰;-比较适合由较多的设计人员合作完成 的特大型项目(一百万门以上)。,2023/7/8,南通大学电子信息学院,21,Verilog HDL和 VHDL的比较,VHDL发展的较早,语法严格,而Verilog HDL是在C语言的基础上发展起来的一种硬件描述语言,语法较自由。VHDL的书写规则比Verilog烦琐一些,但Verilog自由的语法也容易让少数初学者出错。国外电子专业很多会在本科阶段教授VHDL,在研究生阶段教授Verilog。从国内来看,V
11、HDL的参考书很多,而Verilog HDL的参考书相对较少,这给学习Verilog HDL带来一些困难。,2023/7/8,南通大学电子信息学院,22,两者建模能力的比较,2023/7/8,南通大学电子信息学院,23,1.2.3 Verilog HDL的优点 Verilog HDL是一种通用的硬件描述语言,易学易用。具有C语言编程经验的设计者很容易学习和掌握。Verilog HDL允许在同一个电路模型内进行不同抽象层次的描述。设计者可以从开关、门级、RTL和行为等各个层次对电路模型进行定义。Verilog HDL是在全球最大的EDA供应商Cadence公司的扶持下针对EDA工具开发的HDL语
12、言。绝大多数流行的综合工具都支持Verilog HDL,这是Verilog HDL成为设计者的首选语言的重要原因之一。Verilog HDL的编程风格简洁明了,高效便捷。所有的制造厂商提供用于Verilog HDL综合之后的逻辑仿真的元件库,使用Verilog HDL进行设计,即可在更广泛的范围内选择委托制造的厂商。在ASIC设计领域,Verilog HDL占有明显的优势,2023/7/8,南通大学电子信息学院,24,1.3复杂数字系统的设计方法,1.3.1 复杂数字逻辑系统嵌入式微处理机系统数字信号处理系统高速并行计算逻辑 高速通信协议电路高速编码/解码、加密/解密电路复杂的多功能智能接口门
13、逻辑总数超过几万门达到几百甚至达几千万门的数字系统,2023/7/8,南通大学电子信息学院,25,1.3.2 传统的设计方法,查用器件手册;选用合适的微处理器和电路芯片;设计面包板和线路板;调试;定型;,设计复杂的系统(几十万门以上)极其困难!,2023/7/8,南通大学电子信息学院,26,1.3.3 Verilog HDL设计法,选用合适的 EDA仿真工具;选用合适电路图输入和HDL编辑工具;逐个编写可综合HDL模块;逐个编写HDL测试模块;逐个做 HDL 电路逻辑访真;编写 HDL总测试模块;做系统电路逻辑总仿真;选用合适的基本逻辑元件库和宏库 租用或购买必要的IP核;选用合适的综合器;进
14、行综合得到门级电路结构;布局布线,得到时延文件;后仿真;定型,FPGA编码或ASIC投片,2023/7/8,南通大学电子信息学院,27,采用Verilog HDL输入法时,由于Verilog HDL的标准化,可以很容易把完成的设计进行移植到不同厂家的不同芯片。采用Verilog HDL输入法最大的优点是其与工艺无关性。,2023/7/8,南通大学电子信息学院,28,1.3.4 软核、固核和硬核,软核(Soft Core):经过验证的、可综合的、实现后门数在5000门以上的HDL模型固核(Firm Core):在某FPGA器件上实现的、经过验证、5000门以上的电路结构编码文献硬核(Hard C
15、ore):以某种工艺实现的、经过验证、5000门以上的电路结构版图掩膜,2023/7/8,南通大学电子信息学院,29,1.4 典型设计流程,Top-Down 设计思想,系统级设计,模块A,模块B,模块C,模块A1,模块A2,模块A3,模块B1,模块B2,模块B3,模块C1,模块C2,2023/7/8,南通大学电子信息学院,30,2023/7/8,南通大学电子信息学院,31,用EDA设计数字系统的典型流程,电路图设计,HDL设计,电路功能仿真,HDL功能仿真,逻辑综合、时序验证,优化、布局布线,布线后门级仿真,工艺文件,电路制造版图或FPGA 码流文件,设计要求,实现,2023/7/8,南通大学
16、电子信息学院,32,1.5 硬件描述语言的发展趋势,当前集成电路的设计面临一些问题,如设计重用、知识产权和内核插入;高层次综合和混合模型的总和;验证包括仿真验证和形式验证等自动验证手段;深亚微米效应;等等。这些问题给EDA技术的发展提出了新的要求,因此硬件描述语言的改进和发展非常必要。,2023/7/8,南通大学电子信息学院,33,1.6 设计资源,设计工具CadenceSYNOPSYSMentor Graphics-ModelSimSynplicity-SynplifyXILINX-ISEAltera-Quartus 华大-ZeniFPGA芯片厂商XILINXAlteraLatticeEDA
17、网站,2023/7/8,南通大学电子信息学院,34,第2章 Verilog的模块,2023/7/8,南通大学电子信息学院,35,2.1 概 述,Verilog HDL能够描述电路的5种抽象级别:,1)系统级:用高级结构实现外部性能的模型2)算法级:用高级结构实现算法运行的模型3)RTL级(Register Transfer Level):描述数据在寄存器之间的流动和如何处理、控制这些数据流动的模型4)门级:描述逻辑门及其互相之间连接的模型5)开关级:描述器件中三极管和存储节点以及互相之间连接的模型,Verilog HDL既是一种行为描述语言,也是一种结构描述语言。即:描述电路功能行为的模型或描
18、述元器件或较大部件互连的模型均可以用Verilog HDL实现。,2023/7/8,南通大学电子信息学院,36,2023/7/8,南通大学电子信息学院,37,Verilog HDL特别适合算法级和RTL级的模型设计提供了一套完整的组合逻辑基本元件、双向通路和电阻器件的原语可建立MOS器件的电荷分享和衰减动态模型Verilog HDL与C语言的风格很类似,2023/7/8,南通大学电子信息学院,38,一个完整系统的Verilog HDL模型由若干个Verilog HDL模块构成,每个模块又由若干个子模块构成,Verilog模型(模块)-Verilog的基本设计单元,层次化的模型,2.2 Veri
19、log的模块,2023/7/8,南通大学电子信息学院,39,例2-1a 2选1module muxtwo(out,a,b,sl);input a,b,sl;output out;reg out;always(sl or a or b)if(!sl)out=a;else out=b;endmodule,sl,out,a,b,2023/7/8,南通大学电子信息学院,40,例2-1b 4选1多路选择器module mux4_to_1(out,i0,i1,i2,i3,s1,s0);output out;input i0,i1,i2,i3,s1,s0;reg out;always(s1 or s0 or
20、 i0 or i1 or i2 or i3)begin case(s1,s0)2b00:out=i0;2b01:out=i1;2b10:out=i2;2b11:out=i3;default:out=1bx;endcase end endmodule,s1,out,i0,i1,i3,i2,s0,2023/7/8,南通大学电子信息学院,41,例2-2a 2选1module muxtwo(out,a,b,sl);input a,b,sl;output out;not u1(nsl,sl);and#1 u2(sela,a,nsl);and#1 u3(selb,b,sl);or#2 u4(out,sel
21、a,selb);endmodule,2023/7/8,南通大学电子信息学院,42,例2-2b 4选1多路选择器module mux4_to_1(out,i0,i1,i2,i3,s1,s0);output out;input i0,i1,i2,i3;input s1,s0;wire s1n,s0n;wire y0,y1,y2,y3;not not0(s1n,s1);not not1(s0n,s0);and and0(y0,i0,s1n,s0n);and and1(y1,i1,s1n,s0);and and2(y2,i2,s1,s0n);and and3(y3,i3,s1,s0);or or0(o
22、ut,y0,y1,y2,y3);endmodule,2023/7/8,南通大学电子信息学院,43,分析:例2-1模块属于行为描述,例2-2模块属于门级描述。通过综合,行为描述的模块可能转化为门级描述的模块。,2023/7/8,南通大学电子信息学院,44,例2-3 加法器,module adder(count,sum,a,b,cin);input 2:0 a,b;input cin;output count;output 2:0 sum;assign count,sum=a+b+cin;endmodule说明:求a、b、cin 的和sum,count为进位。,2023/7/8,南通大学电子信息学
23、院,45,例2-4 比较器,module compare(equal,a,b);input 1:0 a,b;output equal;assign equal=(a=b)?1:0;endmodule,2023/7/8,南通大学电子信息学院,46,例2-5 三态驱动器,module trist2(out,in,enable);output out;input in,enable;bufif1 mybuf(out,in,enable);endmodule,2023/7/8,南通大学电子信息学院,47,例2-6 三态驱动器,module trist1(sout,sin,ena);output sou
24、t;input sin,ena;mytri tri_inst(.out(sout),.in(sin),.enable(ena);endmodulemodule mytri(out,in,enable);output out;input in,enable;assign out=enable?in:bz;endmodule,2023/7/8,南通大学电子信息学院,48,例2-7 测试,include“muxtwo.v”module t;reg ain,bin,select;reg clock;wire outw;initial begin ain=0;bin=0;select=0;clock=0
25、;endalways#50 clock=clock;always(posedge clock)begin ain=$random%2;#3 bin=$random%2;endalways#10000 select=select;muxtwo m(.out(outw),.a(ain),.b(bin),.sl(select);endmodule,2023/7/8,南通大学电子信息学院,49,第3章 模块的结构、数据类型、变量和基本运算符号,2023/7/8,南通大学电子信息学院,50,模块(block)由两部分组成:端口定义(接口描述)模块内容(逻辑功能描述),3.1 模块的结构,例如:modul
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Verilog HDL 复杂 数字 系统 设计
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5452044.html