数字系统设计hdl课后答案
【篇一:数字系统设计与verilog hdl】
ss=txt>(复习)
eda(electronic design automation)
就是以计算机为工作平台,以eda软件工具为开发环境,以pld器件或者asic专用集成电路为目标器件设计实现电路系统的一种技术。 1.电子cad(computer aided design)
2.电子cae(computer aided engineering) 3.eda(electronic design automation) eda技术及其发展 p2
eda技术的应用范畴
1.3 数字系统设计的流程 基于fpga/cpld
的数字系统设计流程
1. 原理图输入(schematic diagrams ) 2、硬件描述语言 (hdl文本输入) 设计输入
硬件描述语言与软件编程语言有本质的区别 综合(synthesis)
将较高层次的设计描述自动转化为较低层次描述的过程
◆行为综合:从算法表示、行为描述转换到寄存器传输级(rtl) ◆逻辑综合:rtl级描述转换到逻辑门级(包括触发器)
◆版图综合或结构综合:从逻辑门表示转换到版图表示,或转换到pld器件的配置网表表示
综合器是能自动实现上述转换的软件工具,是能将原理图或hdl语言描述的电路功能转化为具体电路网表的工具 适 配
适配器也称为结构综合器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,并产生最终的可下载文件
对cpld器件而言,产生熔丝图文件,即jedec文件;对fpga器件则产生bitstream位流数据文件 p8
仿真(simulation)
功能仿真(function simulation) 时序仿真(timing simulation) 仿真是对所设计电路的功能的验证 p9
编程(program)
把适配后生成的编程文件装入到pld器件中的过程,或称为下载。 通常将对基于eeprom工艺的非易失结构pld器件的下载称为编程(program),将基于sram工艺结构的pld器件的下载称为配置(configure)。 习 题
1.1 现代eda技术的特点有哪些? 1.2 什么是top-down设计方式?
1.3 数字系统的实现方式有哪些?各有什么优缺点?
1.4 什么是ip复用技术?ip核对eda技术的应用和发展有什么意义? 1.5 用硬件描述语言设计数字电路有什么优势?
1.6 基于fpga/cpld的数字系统设计流程包括哪些步骤? 1.7 什么是综合?常用的综合工具有哪些? 1.8 功能仿真与时序仿真有什么区别? 第2章 fpga/cpld器件 2.1 pld的分类 pld的发展历程
pld的集成度分类 可编程逻辑器件(pld)简单pld 复杂pld
pla pal gal cpld fpga 一般将gal22v10(500门~750门 )作为简单pld和高密度pld的分水岭
pld器件按照可以编程的次数可以分为两类:
(1) 一次性编程器件(otp,one time programmable) (2) 可多次编程器件
otp类器件的特点是:只允许对器件编程一次,不能修改,而可多次编程器件则允许对器件多次编程,适合于在科研开发中使用。 按编程特点分类 p15
(1)熔丝(fuse)
(2)反熔丝(antifuse)编程元件
(3)紫外线擦除、电可编程,如eprom。
(4)电擦除、电可编程方式,(eeprom、快闪存储器(flash memory)),如多数cpld
(5)静态存储器(sram)结构,如多数fpga 按编程元件和编程工艺分类 pld器件的原理结构图
2.2 pld的基本原理与结构 pld电路符号表示 与门、或门的表示 pld连接表示法
【篇二:数字系统设计与verilog_hdl_王金明_第四版__eda期末知识点复习(宁波工程学院电科版)】
1)更适合用于描述规模大、功能复杂的数字系统
2)语言标准化、便于设计的复用、交流、保存和修改
3)设计与工艺的无关性,宽范围的描述能力,便于组织大规模、模块化的设计
2、verilog模块的结构
模块声明:包括模块名字、模块输入、输出端口列表,结束关键字为endmodule 端口定义:格式为:input: 端口名1,端口名2?端口名n;
output: 端口名1,端口名2?端口名n; inout: 端口名1,端口名2?端口名n;
3、标识符是用户在编程时给verilog对象起的名字,模块、端口和实例的名字都是标识符。标识符可以是任意一组字母、数字以及符号“$”和“_”的组合,但标识符的第一个字符必须是字母(a-z,a-z)或者是下划线“_”,标识符最长可包含1023个字符,此外,标识符区分大小写。
4、整数写法:+/-size位宽’base进制value数字 1、 在较长的数之间可用下划线分开
2、 当数字不说明位宽时,默认值为32位
3、 x或(z)在二进制中代表1位x(或z),在八进制中代表3位,在16进制中代表4位
4、 如果没有定义一个整数的位宽,其宽度为相应值中定义的位数。 5、 如果定义的位宽比实际的位数长,通常在左边填0补位,但如果最左边一位为x或z,就相应的用x或z左边补位。
6、 “?”是高阻态z的另一种表示符号,在数字的表示中,字符“?”和z是完全等价的,可相互代替。