1 / 14

第一节 硬件描述语言简介

第一节 硬件描述语言简介. 概述. Verilog HDL 简介. 用 Verilog HDL 描述逻辑电路的实例. 总目录. 推出. 下页. 一、概述. 随着半导体技术的发展,数字电路已经由 中小规模的集成电路 向 可编程逻辑器件 ( PLD ) 及 专用集成电路 ( ASIC )转变。 数字电路的设计手段也发生了变化,由传统的手工方式逐渐转变为以 EDA 工具作为设计平台的方式。 硬件描述语言 ( HDL )就是设计人员和 EDA 工具之间的一种界面。

clarence
Télécharger la présentation

第一节 硬件描述语言简介

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第一节 硬件描述语言简介 • 概述 • Verilog HDL简介 • 用Verilog HDL描述逻辑电路的实例 总目录 推出 下页

  2. 一、概述 随着半导体技术的发展,数字电路已经由中小规模的集成电路向可编程逻辑器件(PLD)及专用集成电路(ASIC)转变。 数字电路的设计手段也发生了变化,由传统的手工方式逐渐转变为以EDA工具作为设计平台的方式。 硬件描述语言(HDL)就是设计人员和EDA工具之间的一种界面。 利用硬件描述语言并借助EDA工具,可以完成从系统、算法、协议的抽象层次对电路进行建模、仿真、性能分析直到IC版图或PCB版图生成的全部设计工作。 上页 下页 返回

  3. 硬件描述语言主要用于编写设计文件,在EDA工具中建立电路模型。硬件描述语言主要用于编写设计文件,在EDA工具中建立电路模型。 硬件描述语言发展至今已有30年的历史,已经成功地应用于电子电路设计的各个阶段:建模、仿真、验证和综合等 。 VHDL和Verilog HDL是目前两种最常用的硬件描述语言。 除了这两种最流行的硬件描述语言外,随着系统级FPGA以及系统芯片的出现,软硬件协调设计和系统设计变得越来越重要。传统意义上的硬件设计越来越趋向于与系统设计和软件设计相结合。 上页 下页 返回

  4. 二、Verilog HDL 简介 1983年Gateway Design Automation 公司在C语言的基础上,为其仿真器产品Verilog-XL开发了一种专用硬件描述语言——Verilog HDL。 随着Verilog-XL成功和广泛的使用, Verilog HDL被众多数字电路设计者所接受。 Verilog HDL从C语言中继承了多种操作符和结构,源文本文件由空白符号分割的词法符号流组成。 词法符号的类型有空白符、注释、操作符、数字、字符串、标识符和关键字等,从形式上看和C语言有许多相似之处。 上页 下页 返回

  5. 1. 基本程序结构 Verilog HDL 语言采用模块化的结构,以模块集合的形式来描述数字电路系统。模块对应硬件上的逻辑实体,描述这个实体的功能或结构,以及它与其他模块的接口。 模块的基本语法结构如下: module <模块名> (<端口列表>) <定义> <模块条目> endmodule 上页 下页 返回

  6. 根据<定义><模块条目>的描述方法不同,可将模块分成行为描述模块、结构描述模块,或者是二者的组合。根据<定义><模块条目>的描述方法不同,可将模块分成行为描述模块、结构描述模块,或者是二者的组合。 行为描述模块通过编程语言定义模块的状态和功能。 结构描述模块将电路表达为具有层次概念的互相连接的子模块,其最底层的元件必须是Veriolg HDL 支持的基元或已定义过的模块。 上页 下页 返回

  7. 2. 词法构成 Verilog HDL 的词法标识符包括:间隔符与注释符,操作符、数值常量、字符串、标识符和关键字。 (1)间隔符与注释符 间隔符又称空白符,包括空格符、制表符、换行符以及换页符等。它们的作用是分隔其他词法标识符。 Verilog HDL有单行注释和多行段注释两种注释形式。单行注释以字符“//”起始,到本行结束;段注释以“/*”起始以“*/”结束,在段注释中不允许嵌套,段注释中“//”没有任何特殊意义。 上页 下页 返回

  8. (2)操作符 Verilog HDL中定义了操作符,又称运算符,按照操作数的个数,可以分为一元、二元和三元操作符;按功能可以大致分为算术操作符、逻辑操作符、比较操作符等几大类。 (3)数值常量 Verilog HDL中的数值常量有整型和实型两大类,分为十进制、十六进制、八进制或二进制。 Verilog HDL数值集合有四个基本值: 0:逻辑0或假状态; X:逻辑不定态; 1:逻辑1或假状态; Z:高阻态。 上页 下页 返回

  9. (4)字符串 字符串是双引号“”括起来的字符序列,必须包含在一行中,不能多行书写。 (5)标识符 标识符是模块、寄存器、端口、连线和begin-end快等元素的名称,是赋给对象的唯一的名称。 标识符可以是字母、数字、$符和下划线“-”字符的任意组合序列,必须以字母或下划线“-”开头。 在Verilog HDL中,标识符区分大小写,且字符数不能多于1024。 (6)关键词 关键词是Verilog HDL语言内部的专用词。 上页 下页 返回

  10. 3. 模块的两种描述方式 (1)行为描述方式 行为描述方式通过行为语句来描述电路要实现的功能,表示输入与输出间转换的行为,不涉及具体结构。 (2)结构描述方式 结构描述方式是将硬件电路描述成一个分级子模块相互连接的结构。通过对组成电路的各个子模块间相互连接关系的描述,来说明电路的组成。 各个模块还可以对其他模块进行调用,也就是模块的实例化。其中调用模块成为层次结构中的上级模块,被调用模块成为下级模块。 上页 下页 返回

  11. 例8.3.1的4位加法器 三、用Verilog HDL 描述逻辑电路的实例 [例8.3.1]用Verilog HDL对图示4位加法器做逻辑功能描述。 上页 下页 返回

  12. //对4位串行进位加法器的顶层结构的描述 module Four_bit_fulladd(A,B,CI,S,CO); //4位全加器模块名称和端口名 parameter size=4; //定义参数 input [size:1]A,B; output [size:1]S; input CI; output CO; wire [1:size-1]Ctemp //定义模块内部的连接线 Onebit_fulladd //调用1位全加器 add1(A[1],B[1],CI, S[1], Ctemp[1]), //实例化,调用1位全加器 上页 下页 返回

  13. add1(A[1],B[1],CI, S[1], Ctemp[1]), //实例化,调用1位全加器 add1(A[2],B[2], Ctemp[1], S[2], Ctemp[2]), //实例化,调用1位全加器 add1(A[3],B[3], Ctemp[2], S[3], Ctemp[3]), //实例化,调用1位全加器 add1(A[4],B[4],,Ctemp[3], S[4], CO), //实例化4 endmodule //结束 //对1位全加器内部结构的描述 Module one_bitfulladd (A,B,CI, Sum, Cout); //1位全加器模块名称和端口名 input A,B,CI; output Sum,Cout; wire SUM_temp,C_1,C_2,C_3; //定义模块内部的连接线 上页 下页 返回

  14. XOR2 CI Sum A B XOR1 AND3 OR1 Cout AND2 AND1 xor XOR1(Sum_temp,A,B), XOR2(Sum,Sum_temp,CI); //两次调用异或门实现Sum=A⊕ B⊕ CI and //调用3个与门AND1,AND2,AND3 AND1(C_1,A,B), AND2(C_2,A, CI), AND3(C_3,B, CI); or OR1(Cout,C_1,C_2,C_3); //调用或门实现Cout=AB+A(CI)+B(CI) endmodule //结束 上页 返回

More Related