当前位置:文档之家› EDA技术与VHDL(复习提纲)[1]

EDA技术与VHDL(复习提纲)[1]

EDA技术与VHDL(复习提纲)[1]
EDA技术与VHDL(复习提纲)[1]

EDA技术与VHDL

第1章概述

第2章PLD硬件特性与编程技术

第3章VHDL基础

1. 实体的概念?程序<-->元件图

2. 结构体的概念?程序<-->逻辑电路

3. P42页图3-2对应的逻辑表达式是什么?为什么能够实现2选1多路选择器?

4. 2选1多路选择器的3种实现方法?

真值表<-->逻辑表达式<-->逻辑电路图<-->程序?

5. P44页图3-3/mux21a功能时序波形的理解?

6. 标识符能用关键词起名,也能用EDA工具库中预定义的元件名起名?

7.综合的作用或意义?

8. 可综合的端口模式分别是?数据的流动方向和方式?

9. INOUT、BUFFER的区别?

10.什么是RTL?

11.什么是VHDL的RTL描述?

12.在VHDL中,所有合法的顺序描述语句都必须放在进程语句中?13.通常要求将进程中所有的输入信号都放在敏感信号表中?14.试叙述进程的?启动-运行?过程?

15.在一个结构体中只能包含一个进程语句结构?

16.所有进程语句都是并行语句?

17.任一进程PROCESS内部语句结构属于顺序语句?

18.VHDL代码文件的后缀扩展名是?

19.建议程序文件名与该程序的实体名一致?

20.文件名区分大小写吗?

21.P48页例3-6,D触发器工作原理?

22.STD_LOGIC数据类型定义的数据有几个?分别是什么?什么含义?综合器支持哪几个数据?

23.关键词?EVENT?的作用?

24.假设clock的数据类型是BIT,试解释为什么?clock’ EVENT AND clock=’1’”表达式是用来对clock的上升沿进行检测?25.结合P48例3-6说明,为什么不完整条件语句是构建时序电路的关键?

26.检测时钟信号上升沿的不同表述方法?(4)

27.半加器:真值表<-->逻辑表达式<-->逻辑电路图<-->程序?28.全加器电路图?

29.双横线?--??

30.元件例化语句的表达式?例化名和元件名如何理解?PORT MAP ()端口映射语句中的?端口名=>连接端口名?,端口名和连接端口名的区分?

31.试用两种方法设计4位二进制加法计数器?(1:BUFFER;2:

SIGNAL)

32.设计异步复位同步使能十进制加法计数器?(流程图)

33.?OTHERS=>X?中?OTHERS?的作用?

34.异步、同步的概念?

35.设计同步并行预臵功能的8位右移移位寄存器?

P66例3-22(流程图)

36.为什么该移位寄存器是算数右移移位寄存器?(SRA)

37.数据对象的种类?

38.常数定义的格式?常数定义的设计单元?常数的可视性?常数如果分别在程序包、结构体和进程中定义,哪一个的使用范围广?39.变量的特点(4)?变量定义的格式?

40.信号的使用和定义范围?

41.符号?<=?两边的数值总是一致的?

判断题:

1)信号可以在进程中定义?变量可以在结构体中定义?

2)信号和常数都可以在实体、结构体和程序包中定义?

3)常数和变量都可以在进程和子程序中定义?

4)信号可以在函数和过程中定义?

5)变量可以在程序包中定义?

6)变量赋值需要延时?变量、信号、常量都可以列入进程的敏感表?7)实体的端口可以列入进程的敏感表?

8)信号赋值延时(不指定)需要多长时间?指定延时的格式是?指

定延时综合器支持吗?

9)实体的端口可以看作一种定义数据流向的隐性信号?

10)信号可以看作实体内部的没有定义数据流向的端口?

42.在进程和结构体的并行语句结构中,信号赋值的区别?

43.变量和信号在赋值上的异同点?表3-1(行为特性)

44.结合例3-25和例3-26说明信号与变量在延时特性上的差别?(3)45.变量和信号的赋值都需要一个δ延时?

46. 在进程中,所有赋值语句,包括变量赋值,都必须在一个δ延时中完成?

47.在进程中的所有信号赋值是?假?顺序?真?并行?

48. 如在进程中存在对同一信号多次赋值,使信号值发生更新的是第一个赋值源?

49. 结合例3-28和例3-29说明顺序语句中信号与变量之间的差别?

50. 结合图3-20说明例3-30的工作原理?

51. IF语句的4种结构?

52. 非完整性条件语句<-->时序电路,完整性条件语句<-->组合电路

53. 8线-3线优先编码器的设计?

54. PROCESS结构中的顺序语句及其顺序执行过程只是相对于计算机

中的软件行为仿真的模拟过程而言?

55. PROCESS语句结构如何执行?

56. 多数VHDL综合器要求敏感信号表必须列出本进程中所有输入信

号名?

57. PROCESS语句结构的特点?

58. PROCESS为一有限循环语句?

59. PROCESS中的顺序语句具有明显的顺序/并行运行双重性?

60. 软件语言中每一条语句的执行是按CPU的机器周期的节拍顺序

执行?每一条语句执行的时间是确定的?

61. 在PROCESS中,一个执行状态的运行周期,即从PROCESS的启动

执行到遇到END PROCESS为止所花的时间与任何外部因素都无关(从综合结果来看),甚至与PROCESS语法结构中的顺序语句的多少都没有关系,其执行时间从行为仿真的角度看(如果没有设臵任何显式的惯性或传输延时),只有一个VHDL模拟器的最小分辨时间,即一个δ时间;但从综合和硬件运行的角度看,其执行时间是0;与信号的传输延时无关,与被执行的语句的实现时间也无关,即在同一PROCESS中,10条语句和1000条语句的执行时间是一样的,显然,从效果上看,PROCESS中的顺序语句具有并行执行的性质。

62. 任何一条信号的并行赋值语句都是一个简化的进程语句,其输入

表达式中的各信号都是此进程语句的敏感信号?

63. 信号是多个进程间的通信线?

64. 一个进程中只允许描述对应于一个时钟信号的同步时序逻辑?

推荐只放臵一个含有时钟边沿检测语句的条件语句?

65. 在三态控制电路设计中,如何实现三态门禁止输出?注意:’Z’

大写。

66. 固有延时,默认是δ,是VHDL仿真器的最小分辨时间,并不能

完全代表器件实际的惯性延时情况?

67. 固有延时模型的赋值语句?

68. 传输延时模型的赋值语句?

69. 为什么VHDL仿真器和综合器自动为系统中的信号赋值配臵延时

量δ?

70. δ延时即仿真软件的最小分辨时间,能满足逻辑排序,从而使并

行语句和顺序语句中的并列赋值逻辑得以正确执行?

第4章QuartusII使用方法

第5章VHDL状态机

1. TYPE语句和SUBTYPE语句的格式?(定义新的数据类型,枚举)

2. 状态机通常包括几个部分?分别是什么?

3. 主控时序进程和主控组合进程的工作原理?

4. 一般状态机结构框图?

5. 程序<-->状态图?

6. 设计ADC0809的采样状态机?

工作时序<-->控制采样状态图<-->状态机结构框图<-->VHDL程序

7. 单进程Moore状态机的作用?如何实现?

8. 两进程Mealy状态机的组成部分?如何实现?与两进程Moore状态机的区别?

9. 直接输出型编码的特点?

10. 非法状态的概念及处理(2)?

11. VHDL状态机总结(5)?

第7章VHDL语句

1.顺序语句(Sequential Statements)的特点?

2.顺序语句只能出现在____和____中?

3.VHDL的6类基本顺序语句?

4.赋值语句分为两种?3个基本部分?

5.信号赋值符号和变量赋值符号分别是____和____?

6.VHDL规定,赋值目标和赋值源的数据类型必须严格一致?

1)变量赋值语句中,赋值目标和赋值源的数值总是一致?

2)信号赋值语句中,赋值目标和赋值源的数值不总是一致?P70 7.信号、变量的区别?(有效性=定义范围、延迟性)

8.CASE语句选择值的表达方式?

9.单个LOOP语句和FOR_LOOP语句的语法格式?

1)FOR_LOOP语句:循环变量既可以作为赋值源,也可以作为赋值目标?

2)TO/DOWNTO/’RANGE/’LENGTH-1 DOWNTO 0(1);

10.设计奇偶校验逻辑程序?(偶校验)

11.循环范围最好以____表示,综合器不支持________的循环?12.NEXT的3种语句格式和作用?

13.NEXT?LOOP标号?的作用?

14.?NEXT?、?EXIT?的区别?

15.WAIT语句的作用和4种语句格式?

16.VHDL规定,已列出敏感信号表的进程中不能使用任何形式的WAIT 语句?

17.VHDL综合器支持的WAIT语句是哪一个?语句格式?名称?满足条件?(2)例7-10(a)

18.WAIT_UNTIL语句的3种表达方式?

19.时钟上跳沿的4种表达方式?

20.P221页例7-11进程中使用4个?WAIT UNTIL?语句穿插同一信号赋值目标的4个不同赋值语句与不使用?WAIT UNTIL?语句有何不同?使用4个?WAIT UNTIL?语句穿插同一信号赋值目标的4个不同赋值语句:真顺序;不使用?WAIT UNTIL?语句:假顺序,真并行;21.P221页例7-12:

PROCESS( )

...

rst_loop:LOOP

(复位语句)

WAIT UNTIL clock=‘1’AND clock’EVENT;

(复位语句)

NEXT rst_loop WHEN (rst=‘1’);

......

END PROCESS;

改用?IF_THEN_ELSIF_ENDIF?语句结构如何表达?

22.?同步复位?用?WAIT_UNTIL?+?IF_THEN_ELSIF_ENDIF?如何

表达?P222

异步复位

1)IF RST=’1’THEN

ELSIF CLK=’1’AND CLK’EVENT

……

2)rst_loop:LOOP ?

(复位语句)

WAIT UNTIL clock=‘1’AND clock’EVENT;

(复位语句)

NEXT rst_loop WHEN (rst=‘1’);

......

同步复位

1)IF CLK=’1’AND CLK’EVENT THEN IF RST=’1’THEN

ELSIF

……

2)WAIT UNTIL clock=‘1’AND clock’EVENT;

IF RST=’1’THEN

ELSIF

……

23.RETURN语句的两种格式的作用?

24. CASE ...IS

WHEN ... =>

...

WHEN OTHERS =>NULL;

END CASE;

在许多情况下选择NULL语句是最佳选择?

25. 并行语句(Concurrent Statements)的特点?

26. 并行语句内部运行方式分为哪两种?

27. 并行语句(综合器支持)主要有几个?哪几个?

28. 并行信号赋值语句有几个?哪几个?共同点?每一信号赋值语句都相当于一条缩写的进程语句,如何启动?

29. 简单信号赋值语句如何区分顺序、并行?

30. 简单信号赋值语句在进程中是顺序语句的并列逻辑部分?

31. IF_THEN_ELSIF_ELSE_ENDIF

CASE_WHEN

WHEN_ELSE

WITH_SELECT_WHEN

分别是顺序还是并行语句?内部运行方式是顺序还是并行执行方式?

32. 内部并行执行方式的特点?(3)

33. 内部顺序执行方式的特点?(3)优先级

34. 并行选择信号赋值语句和并行条件赋值语句的标点符号?

35. 参数传递说明语句(GENERIC语句)和参数传递映射语句(GENERIC MAP语句)的作用?(结合实例)

36. 块语句结构的作用和其说明部分的透明性?P232页例7-23

37. 元件例化语句中接口表达方式?(2)

38. 生成语句的作用?两种形式?

39. 74LS373(8位三态锁存器)设计?

40. 进程中的IF_THEN_ELSE_ENDIF如何变换成结构体中的WHEN_ELSE?

41. FOR_GENERATE语句和IF_GENERATE语句的作用?

42. 用n个D触发器如何构成n位二进制计数器?

43. 为什么每位D触发器的输出端口Q都需要反相接至其输入端口D 并同时接至其高位D触发器的CLK端口?

44. 每位D触发器的输出端口Q反相接至其输入端口D的作用?

45. 如何实现2的n次方分频?

46. 断言语句(包括REPORT语句)的格式?综合器支持吗?断言语句的三部分如何执行?如何区分顺序断言和并行断言语句?

47. 属性的特征?综合器支持的属性有哪些(四对半)?预定义属性描述语句的格式?

48. NOT(clock’STABLE AND clock=‘1’)语句和(NOT clock’STABLE AND clock=‘1’)语句是等效的?

49. 目前常用的VHDL综合器只支持在IF和WAIT语句中使用的EVENT?

第8章VHDL结构

1.实体与设计实体的区别?设计实体=实体+结构体?

2.子程序的使用方式?子程序体用顺序语句还是并行语句完成算法?

3.子程序定义的三个位臵?

4.子程序调用N次,所对应的硬件模块在目标芯片中有几个?5.函数和过程的语句表达格式都分为?首?和?体?吗?它们在格式上最主要的区别是什么??首?和?体?在三个定义位臵中是否都需要?在三个位臵中定义函数和过程,作用是否都一样?

6.函数名称分为哪两类?函数参量的数据对象是什么?默认是哪个?函数参量、返回值为什么可以不定义端口模式?

7.函数?首?、?体?定义时放在一起吗?

8.重载函数的特点?运算符重载函数的功能?

9.STD_LOGIC_1164程序包中包含哪两对数据类型的转换?10.STD_LOGIC_ARITH和STD_LOGIC_UNSIGNED程序包中包含哪对数据类型的转换?

11.试写出0~255范围内的自然数转换成8位二进制数的主要程序部分?(流程图)

12.过程参数的数据对象和端口模式?默认哪个端口模式?

13.哪两个数据对象分别在何种端口模式下可以默认?

14.函数和过程的调用方式有何不同?(结合实例)

15.过程调用的具体步骤?(结合实例)

16.调用中的形参与实参的对应关系有哪两种?(结合实例)17. 279页例8-13进程中为什么要定义变量,而不直接使用a,b,c,d?为什么要定义成变量而不定义成信号?

18.设计一个过程用于确定一给定位宽的位矢是否只有一个位是1?(流程图)

19.VHDL语言的库分为哪两类?常用的三个库是?

20.IEEE库的八个程序包?属于Synopsys公司的程序包是?21.为什么IEEE库及其程序包需要显式表达?

22.STD库的程序包?为什么STD库及其程序包可以隐式表达?23.WORK库及其程序包如何表达?(隐式/显式)

24.使用什么关键词打开库和程序包?

25.程序包部分或全部开放的格式?

26.程序包?首?和?体?如何区别的关键词?函数、过程?首?和?体?如何区别的关键词?

27.程序包?首?的说明部分包括哪些内容?(结合P285页例8-16)28.VHDL配臵语句的作用?

29.整数45_234_287对否?

30.整数2#1111_1110#对否?

31.?R”、’ERROR’对否?

32.?BOTH”和?both”一样吗?

33.B?1_1101_1110”、O?15?、X?AD0?中B、O、X各代表多少进制?

34.标识符的书写规则?(5点)注意:不能与关键词同名。35.下标名的表达式的值如果是不确定值,综合后将产生什么后果?36.数据类型不同的常数、信号、变量、函数以及设定的各种参量可以互相传递和作用?

37.数据类型分成预定义和自定义两种?预定义数据类型一般在哪些库的哪些程序包里?

38.VHDL综合器支持全部的预定义和自定义的数据类型?

39.预定义数据类型在哪个库的哪个程序包中定义?

40.预定义数据类型有哪几个?分别是什么?综合器不支持哪几个数据类型?

41.字符、字符串和标识符都区分大小写吗?

42.整数的取值范围用二进制数表示?

43.VHDL仿真器通常将INTEGER类型作为____处理,VHDL综合器将INTEGER类型作为____处理。

44.定义整数时,VHDL综合器要求用____子句为所定义的整数限定范围。

45.实数的取值范围?

46.时间类型包括____和____两部分。

47.时间类型的表达上整数和单位之间不需要留空格?

48.____是VHDL中的最小时间单位。

49.unsigned、signed数据类型分别是关于什么的运算?50.unsigned、signed数据类型共在哪个库的几个程序包中定义?51.综合器将unsigned数据类型表示的数值解释为____,最高位是____?

52.综合器将signed数据类型表示的数值解释为____,最高位是____?

53. VHDL仿真器支持一维数组,VHDL综合器支持多维数组?54.数组分为哪两类?语句格式分别是?

55.什么是操作数?什么是操作符?例如:?1+2?中1、2是操作符还是操作数??+?是操作符还是操作数?

56.VHDL中的操作符和操作数间的运算注意两点规则??1.0+2.0?分别符合或不符合哪点规则?

57.操作符优先级?(结合实例)

58.BIT_VECTOR、STD_LOGIC_VECTOR参与逻辑运算要注意什么?59.逻辑运算中什么情况下不使用括号?

60.关系运算结果是什么数据类型?

61.?=、=/?和?<、<=、>、>=?的数据类型是否一样?不一样,各是什么?

62.?=、=/?操作,编译器如何执行?

63.对于?<、<=、>、>=?操作,VHDL的排序判断规则?

64.不管排序的数组元素是生序还是降序排列,或不一致,都是通过____逐一对元素进行比较来决定?

65.比较过程中,如何确定排序?

66.由于从左至右比较,?1011?>?101011?出现判断错误,为什么?如何来解决?

67.对同样位数的二进制数进行比较,?=、=/?和?<、<=、>、>=?哪个资源利用率高?

68.加减?+、-?运算耗费硬件资源规模大,采用什么方法降低电路资源的需要?

69.?*、/?和?+、-?的数据类型一样吗?

70.MOD(取模)、REM(取余)的操作数数据类型只能是____,运算操作结果也是____?

71.VHDL综合器支持的MOD(取模)、RED(取余),其操作数必须是什么?

72.VHDL综合器支持的乘法?*?运算的操作数应是什么?

73.?/?运算中,除数必须是什么?综合中,如何实现?

74.?*、/?运算可以综合,所以可以轻易直接使用?如不能,可以采用其他变通的方法实现吗?

75.QuartusII限制?*、/?运算符右边的操作数必须是什么?76.负号?-?使用要加括号吗?

77.乘方?**?运算符左边可以是____或____,但是右边必须是____;只有在左边为____时,其右边才可以是____?

78.移位操作符的数据类型是什么?(不包括重载)

79.移位操作符左边可以是支持的类型,右边必定是____数据类型;

如是____数据类型的___(常数、变量、信号),则实现节省硬件资源?80.?SLL、SRL?、?SLA、SRA?、?ROL、ROR?运算符的移位特点是什么?移位操作符的语句格式是?

81.许多综合器支持移位标识符还是常数位矢?

82.3-8译码器的设计的两种方法?(1.臵位;2.移位)

实验

1.如何查找电脑物理地址?

2.实验中,应该先仿真,后编译?

3.编程下载前要再编译一次?

4.型号选错不影响引脚锁定?

5.必须工程、文件、实体三名一致?

6.7段数码显示译码器的设计?P286例8-17

7.计数器和译码器连接电路的设计?(例化语句)

8.数控分频器的设计?(结合8位D触发器设计8位计数器)

EDA技术与VHDL程序设计基础教程习题答案

EDA技术与VHDL程序设计基础教程习题答案 第1章EDA习题答案 1.8.1填空 1.EDA的英文全称是Electronic Design Automation 2.EDA技术经历了计算机辅助设计CAD阶段、计算机辅助工程设计CAE阶段、现代电子系统设计自动化EDA阶段三个发展阶段 3. EDA技术的应用可概括为PCB设计、ASIC设计、CPLD/FPGA设计三个方向 4.目前比较流行的主流厂家的EDA软件有Quartus II、ISE、ModelSim、ispLEVER 5.常用的设计输入方式有原理图输入、文本输入、状态机输入 6.常用的硬件描述语言有VHDL、V erilog 7.逻辑综合后生成的网表文件为EDIF 8.布局布线主要完成将综合器生成的网表文件转换成所需的下载文件 9.时序仿真较功能仿真多考虑了器件的物理模型参数 10.常用的第三方EDA工具软件有Synplify/Synplify Pro、Leonardo Spectrum 1.8.2选择 1.EDA技术发展历程的正确描述为(A) A CAD->CAE->EDA B EDA->CAD->CAE C EDA->CAE->CAD D CAE->CAD->EDA 2.Altera的第四代EDA集成开发环境为(C) A Modelsim B MUX+Plus II C Quartus II D ISE 3.下列EDA工具中,支持状态图输入方式的是(B) A Quartus II B ISE C ispDesignEXPERT

D Syplify Pro 4.下列几种仿真中考虑了物理模型参数的仿真是(A) A时序仿真 B 功能仿真 C 行为仿真 D 逻辑仿真 5.下列描述EDA工程设计流程正确的是(C) A输入->综合->布线->下载->仿真 B布线->仿真->下载->输入->综合 C输入->综合->布线->仿真->下载 D输入->仿真->综合->布线->下载 6.下列编程语言中不属于硬件描述语言的是(D) A VHDL B V erilog C ABEL D PHP 1.8.3问答 1.结合本章学习的知识,简述什么是EDA技术?谈谈自己对EDA技术的认识? 答:EDA(Electronic Design Automation)工程是现代电子信息工程领域中一门发展迅速的新技术。 2.简要介绍EDA技术的发展历程? 答:现代EDA技术是20世纪90年代初从计算机辅助设计、辅助制造和辅助测试等工程概念发展而来的。它的成熟主要经历了计算机辅助设计(CAD,Computer Aided Design)、计算机辅助工程设计(CAED,Computer Aided Engineering Design)和电子设计自动化(EDA,Electronic System Design Automation)三个阶段。 3.什么是SOC?什么是SOPC? 答:SOC (System on Chip,片上系统) SOPC(System on a Programmable Chip,片上可编程系统) 4.对目标器件为CPLD/FPGA的VHDL设计,主要有几个步骤?每步的作用和结果分别是什

EDA技术实用教程-VHDL版课后答案

第一章 1-1 EDA技术与ASIC设计和FPGA开发有什么关系? P3~4 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2与软件描述语言相比,VHDL有什么特点? P6 答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL 程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型? 答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 1-4在EDA技术中,自顶向下的设计方法的重要意义是什么? P7~10 答:在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 1-5 IP在EDA技术的应用和发展中的意义是什么? P11~12 答:IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 第二章 2-1 叙述EDA的FPGA/CPLD设计流程。P13~16 答:1.设计输入(原理图/HDL文本编辑);2.综合;3.适配;4.时序仿真与功能仿真;5.编程下载;6.硬件测试。 2-2 IP是什么?IP与EDA技术的关系是什么? P24~26 IP是什么? 答:IP是知识产权核或知识产权模块,用于ASIC或FPGA/CPLD中的预先设计好的电路功能模块。 IP与EDA技术的关系是什么?答:IP在EDA技术开发中具有十分重要的地位;与EDA技术的关系分有软IP、固IP、硬IP:软IP是用VHDL等硬件描述语言描述的功能块,并不涉及用什么具体电路元件实现这些功能;软IP 通常是以硬件描述语言HDL源文件的形式出现。固IP是完成了综合的功能块,具有较大的设计深度,以网表文件的形式提交客户使用。硬IP提供设计的最终阶段产品:掩模。 2-3 叙述ASIC的设计方法。P18~19 答:ASIC设计方法,按版图结构及制造方法分有半定制(Semi-custom)和全定制(Full-custom)两种实现方法。 全定制方法是一种基于晶体管级的,手工设计版图的制造方法。 半定制法是一种约束性设计方式,约束的目的是简化设计,缩短设计周期,降低设计成本,提高设计正确率。半定制法按逻辑实现的方式不同,可再分为门阵列法、标准单元法和可编程逻辑器件法。 2-4 FPGA/CPLD在ASIC设计中有什么用途? P16,18 答:FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。 2-5 简述在基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具,及其在整个流程中的作用。 P19~23答:基于FPGA/CPLD的EDA设计流程中所涉及的EDA工具有:设计输入编辑器(作用:接受不同的设计输

EDA技术与VHDL语言课程设计

EDA技术与VHDL语言课程设计 课程设计 EDA技术与VHDL语言 课程设计报告 班级: 电信11-2班 姓名: 董元伟 学号: 1106110205 指导教师: 李铁 成绩: 电子与信息工程学院 信息与通信工程系 - 2 - 课程设计;数字密码锁 目录 摘 要 ..................................................................... .......................................... - 3 - 一、设计目 的 ..................................................................... ............................ - 4 - 二、设计内容和要 求 ..................................................................... .................. - 4 - 1、用户开 锁 ..................................................................... ......................... - 5 -

2、管理员解除警 报 ..................................................................... .............. - 5 - 3、管理员修改密 码 ..................................................................... .............. - 5 - 4、定时返 回 ..................................................................... ......................... - 6 - 三、设计思路和系统结构...................................................................... ............ - 6 - 1、设计模 块 ..................................................................... ......................... - 6 - 2、系统结构和数字密码锁原理 图 .............................................................. - 7 - 3、设计思 路 ..................................................................... ......................... - 8 - 四、实验设计程序 如 ..................................................................... ................... - 9 - 五、创建测试平台仿真结 果 ..................................................................... ....... - 21 - 参考文

EDA技术与VHDL语言设计

《EDA技术与VHDL语言设计》 课程设计 题目:交通灯控制器 姓名: ***** 院系:电子信息工程系 专业:电子信息工程 班级:电信112班 学号: ****** 指导教师: ****** 2013年6 月

交通灯控制器 *** (电子信息工程学系指导教师:**) 摘要:传统的交通灯控制器多数由单片机实现,本文介绍基于EDA技术设计交通灯控制器的 一种方案。EDA技术的一个重要特征是使用硬件描述语言来完成系统的设计文件,这在电子 设计领域已得到设计者的广泛采用。给出了交通灯控制器的源程序和仿真结果,仿真结果表明 该设计方案可行。 关键词:交通灯控制器;仿真;设计 1.设计原理 1.1设计要求 设计一个十字路口交通控制器,器示意图如图1.1所示,A方向和B方向歌设红(R)、黄(Y)、 绿(G)、和左拐(L)四盏灯,四种灯按合理的顺序亮灭,并能将灯亮的时间以倒计时的形式显示出来。A方向红、绿、黄、左拐灯亮的时间分别为65s、40s、5s、和15s,B方向红、绿、黄、左拐灯亮的时 间分别为55s、30s、5s、和15s。 1.2功能要求 两个方向各种灯亮的时间能够进行设置和修改,此外假设A方向是主干路,车流大,因此在 表1.2 交通灯控制器的状态 1.3设计思路和原理 根据交通灯控制器要求实现的功能,考虑用两个并行执行的always模块来分别控制A和B两个方向的四盏灯,这两个always模块使用同一个时钟信号,以进行同步。也就是说,两个always模块的敏感信号是同一个,每个模块控制一个方向的四种灯按如下顺序点亮,并往复循环:绿灯→黄灯→左拐灯→黄灯→红灯。 每种灯亮的时间采用一个减法计数器进行计数,计数器用同步预置法设计,这样只需改变计数器的

EDA技术与VHDL基础课后习题答案(供参考)

《EDA技术与VHDL基础》 课后习题答案 第一章EDA技术概述 一、填空题 1、电子设计自动化 2、非常高速集成芯片硬件描述语言 3、CAD、CAE、EDA 4、原理图输入、状态图输入、文本输入 5、VHDL、Verilog HDL 6、硬件特性 二、选择题 1、A 2、C 3、A 4、D 5、C 6、D 7、A 第二章可编程逻辑器件基础 一、填空题 1、PLD 2、Altera公司、Xilinx公司、Lattice公司 3、基于反熔丝编程的FPGA 4、配置芯片 二、选择题 1、D 2、C 3、C 4、D 第三章VHDL程序初步——程序结构 一、填空题 1、结构、行为、功能、接口 2、库和程序包、实体、结构体、配置 3、实体名、类型表、端口表、实体说明部分

4、结构体说明语句、功能语句 5、端口的大小、实体中子元件的数目、实体的定时特性 6、设计库 7、元件、函数 8、进程PROCESS、过程PROCEDURE 9、顺序语句、并行语句 二、选择题 1、D 2、C 3、C 4、B 5、D 6、B 7、A 8、C 三、简答题 2、 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand_3in IS PORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC); END; ARCHITECTURE bhv OF nand_3in IS BEGIN y<=NOT(a AND b AND c); END bhv; 5、0000 6、(247) 第四章VHDL基础 一、填空题 1、顺序语句、并行语句 2、跳出本次循环 3、等待、信号发生变化时 4、函数、过程 5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性 6、程序调试、时序仿真 7、子程序、子程序 二、选择题

EDA技术与VHDL(第2版)习题解答

第3章 VHDL 基础 3-1 如图所示 input output enable buf3s mux21 in0in1output sel 3-2 程序: IF_THEN 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 S PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE one OF mux21 IS BEGIN PROCESS ( s0,s1,a,b,c,d ) BEGIN IF s1=?0? AND s0=?0? THEN y<=a ; ELSIF s1=?0? AND s0=?1? THEN y<=b ; ELSIF s1=?1? AND s0=?0? THEN y<=c ; ELSIF s1=?1? AND s0=?1? THEN y<=d ; ELSE y<=NULL ; END IF ; END PROCESS ; END ARCHITECTURE one ; CASE 语句 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 IS

PORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ; ARCHITECTURE two OF mux21 IS SIGNAL s : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ; BEGIN s<=s1 & s0 ; PROCESS ( s ) BEGIN CASE s IS WHEN “00” => y<=a ; WHEN “01” => y<=b ; WHEN “10” => y<=c ; WHEN “11” => y<=d ; WHEN OTHERS => NULL ; END CASE ; END PROCESS ; END ARCHITECTURE two ; 3-3 程序: LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; ENTITY MUXK IS PORT ( s0,s1 : IN STD_LOGIC ; a1,a2,a3 : IN STD_LOGIC ; outy : OUT STD_LOGIC ) ; END ENTITY MUXK ; ARCHITECTURE double OF MUXK IS SIGNAL tmp : STD_LOGIC ; --内部连接线 SIGNAL u1_s, u1_a, u1_b, u1_y : STD_LOGIC ; SIGNAL u2_s, u2_a, u2_b, u2_y : STD_LOGIC ; BEGIN p_MUX21A_u1 : PROCESS ( u1_s, u1_a, u1_b, u1_y ) BEGIN

完整word版,EDA技术与VHDL(A卷答案)

4.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是C。 A. FPGA是基于乘积项结构的可编程逻辑器件; B. FPGA是全称为复杂可编程逻辑器件; C. 基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D. 在Altera公司生产的器件中,MAX3000系列属FPGA结构。 5.以下对于进程PROCESS的说法,正确的是: A A. 进程语句本身是并行语句 B. 进程内部由一组并行语句来描述进程功能 C. 进程之间可以通过变量进行通信 D. 一个进程可以同时描述多个时钟信号的同步时序逻辑 6.在VHDL语言中,下列对时钟上升沿检测描述中,错误的是C。 A. if clk’event and clk = ‘1’ then B. if rising_edge(clk) then C. if clk’event and clk = ‘0’ then D. if not clk’stable and clk = ‘1’ then 7.关于VHDL中的数字,请找出以下数字中数值最大的一个:B A. 2#1111_1110# B. 8#366# C. 10#169# D. 16#F#E1 8.下列标识符中,B是不合法的标识符。 A. State0 B. 9moon C. Not_Ack_0 D. signall 9.下列语句中,不属于并行语句的是:D A.进程语句 B.条件信号赋值语句 C.元件例化语句 D.IF语句 10. 状态机编码方式中,其中 C 占用触发器较多,但其实现比较适合FPGA的应用 A. 状态位直接输出型编码 B. 顺序编码 C. 一位热码编码 D. 以上都不是

EDA技术与VHDL程序开发基础教程 教学资料第二章

2.8.1填空 1.可编程逻辑器件的英文全称是Programmable Logic Device 2.可编程逻辑器件技术经历了PROM 、PLA、PAL 三个发展阶段 3. CPLD的基本结构包括可编程逻辑阵列块、输入/输出块、互联资源三个部分 4.目前市场份额较大的生产可编程逻辑器件的公司有Altera 、Xillinx 、Lattice 5.根据器件应用技术FPGA可分为基于SRAM编程的FPGA、基于反熔丝编程的FPGA 6. 快速通道/互联通道包括行互连、列互联、逻辑阵列块、逻辑单元 7.常用的的FPGA配置方式为主动串行、主动并行、菊花链 8.实际项目中,实现FPGA的配置常常需要附加一片EPROM 9.球状封装的英文缩写为BGA 10.CPLD/FPGA选型时主要考虑的因素有器件逻辑资源、芯片速度、功耗、封装2.8.2选择 1. 在下列可编程逻辑器件中,不属于高密度可编程逻辑器件的是(D) A EPLD B CPLD C FPGA D PAL 2. 在下列可编程逻辑器件中,属于易失性器件的是(D) A EPLD B CPLD C FPGA D PAL 3.下列逻辑部件中不属于Altera公司CPLD的是(A) A通用逻辑块(GLB) B可编程连线阵列(PIA) C输入输出控制(I/O) D逻辑阵列块(LAB) 4.下列逻辑部件中不属于Lattice公司CPLD的是(D) A通用逻辑块(GLB) B全局布线区(GRP) C输出布线区(ORP) D逻辑阵列块(LAB) 5.下列FPGA中不属于Xilinx公司产品的是(D) A XC4000 B Virtex

《VHDL语言与EDA技术》课程试卷答案

《VHDL语言与EDA技术》课程试卷(1)答案 一、分析下列代码。 1、试分析,该代码描述的是什么功能电路? 答:模8计数器 2、 试分析,该代码描述的是什么功能电路? 答:四位二进制码输入,LED七段码显示电路 若不写第24行代码,是否可以?说明理由。 答:不可以,否则输入0000-1001以外的数据时就无法继续执行代码。 3、试分析,在该代码中,第8行“f<=temp1 XOR temp2;”写在第九行“temp1<=a AND b; ”和第十行“temp2<=c OR d;”前面,这种书写顺序对功能的实现有没有影响? 答:没有 该代码中有一个错误,在第4行,此行语句应改为END exam; 4、 试分析,该代码描述的是什么功能电路? 答:通用译码器 第4句中的端口ena 是使能信号输入端,在此代码描述的电路中,ena为0还是为1时电路能有效完成期望功能? 答:1 此代码描述中,第11句和第12句中,x'high 代表的值是多少? 答:7 二、填空,补全下列代码。 1、output: OUT std_logic_vector( 7 downto 0) ); (OTHERS=>' Z'); 2、 q:OUT STD_LOGIC_VECTOR (1 DOWNTO 0)); SIGNAL q_tmp: STD_LOGIC_VECTOR(1 DOWNTO 0); process( clk) IF(clk'event and clk=' 1 ')then q_tmp <= ( others =>'0'); end if; end process ;

end rtl; 三、设计程序,完成下列功能 1、 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY fulladder IS PORT (a, b, cin: IN BIT; s, cout: OUT BIT); END fulladder; ARCHITECTURE rtl OF fulladder IS BEGIN s<=a XOR b XOR cin; cout<=(a AND B) OR (a AND cin) OR (b AND cin); END rtl; 2、 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY dff1 IS PORT(d, clk, rst: IN STD_LOGIC; q: OUT STD_LOGIC); END dff1; ARCHITECTURE behavior OF dff1 IS BEGIN PROCESS (rst, clk) BEGIN IF (rst='1') THEN q<='0'; ELSIF ( clk'EVENT AND clk='1' ) THEN q<=d; END IF; END PROCESS; END behavior; 四、简答题 1、 进程(process)内部的语句是一种顺序描述语句,其内部经常包括if,wait,case或loop语句。 特点: 1、进程与进程,或其它并发语句之间的并发性; 2、进程内部的顺序性; 3、要么使用敏感信号列表(sensitivity list),要么使用wait语句,二者不可同时使用。 4、进程必须包含在主代码段中,当敏感信号列表中的某个信号发生变化,或者wait语句的条件满足时,process内部的代码就顺序执行一次;

EDA技术与VHDL语言重点复习必备

1.EDA即Electronic Design Automation(电子设计自动化),就是以计算机为工作平台,以EDA 软件工具为开发环境,以硬件描述语言(HDL)为设计语言,以可编程逻辑器件为实验载体,以ASIC(Application Specific Integrated Circuit)、SOC(System On a Chip)芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程。 2.EDA最后实现的目标:全定制或半定制ASIC设计,FPGA/CPLD开发应用。 3.作为EDA技术最终实现目标的ASIC,通过三种途径来完成:(1)超大规模可编程逻辑器件:实现这一途径的主流器件是FPGA/CPLD。直接面向用户,具有极大的灵活性和通用性,使用方便,开发效率高,成本低,技术维护简单,工作可靠性好。(2)半定制或全定制ASIC:根据实现工艺,可统称为掩膜ASIC,可编程的ASIC具有灵活多样的编程功能。掩膜ASIC分为:门阵列、标准单元、全定制三类。(3)混合ASIC:具有面向用户的编程功能和逻辑资源,同时也含有可方便调用和配置的硬件标准单元模块。 4.EDA设计分五级进行分层次设计:(1)系统级即行为级;(2)RTL级;(3)门级:即逻辑设计,以电路或触发器作基本部件,表达各种逻辑关系;(4)电路级:可看作分离的元件为基本元件,具体表达电路在时域的伏安特性或频域的响应等性能;(5)器件级:即板图级。 5.面向FPGA的开发流程:设计输入(图形输入、文本输入)、综合、布线布局(适配)、仿真(时序仿真、功能仿真)、下载和硬件测试。 6.综合的概念:电子设计中,将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程称为综合。事实上,设计过程中的每一步都可称为一个综合环节。 7.综合的分类:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。8.在EDA技术中,自顶向下的设计方法的重要意义是什么? 在EDA技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。 9.综合在电子设计自动化中的地位是什么? 答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。 8.适配器:也称结构适配器,它的功能是将由综合器产生的网表文件配置于指定的目标器件中,使之产生最终的下载文件。 9.时序仿真:是接近真实器件运行特性的仿真,仿真文件中己包含了器件硬件特性参数,因而,仿真精度高。 10.功能仿真:是直接对VHDL、原理图或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求的过程,仿真过程不涉及任何具体器件的硬件特性。11.时序仿真与功能仿真的区别:时序仿真的仿真文件必须来自针对具体器件的适配器。综合后所得的EDIF等网表文件通常作为FPGA适配器的输入文件,产生的仿真网表文件中包含了精确的硬件延迟信息。功能仿真的过程不涉及任何具体器件的硬件特性。不经历适配阶段,在设计项目编辑编译(或综合)后即可进入门级仿真器进行模拟测试。直接进行功能仿真的好处是设计耗时短,对硬件库、综合器等没有任何要求。 12.IP定义为用于ASIC或FPGA/CPLD中预先设计好的电路功能模块。 13.IP分为软IP(用VHDL等硬件面熟语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能)、固IP(完成了综合的功能块)和硬IP(提供设计的最终阶段产品-掩膜)。 14.基于VHDL的自顶向下设计方法(1)设计说明书(2)建立VHDL行为模型(3)VHDL行为仿真(4)VHDL-RTL级建模(5)前端功能仿真(6)逻辑综合(7)测试向量生成(8)功

EDA技术与VHDL(复习提纲)

EDA技术与VHDL 第1章概述 第2章PLD硬件特性与编程技术 第3章VHDL基础 1. 实体的概念?程序<-->元件图 2. 结构体的概念?程序<-->逻辑电路 3. P42页图3-2对应的逻辑表达式是什么?为什么能够实现2选1多路选择器? 4. 2选1多路选择器的3种实现方法? 真值表<-->逻辑表达式<-->逻辑电路图<-->程序? 5. P44页图3-3/mux21a功能时序波形的理解? 6. 标识符能用关键词起名,也能用EDA工具库中预定义的元件名起名? 7.综合的作用或意义? 8. 可综合的端口模式分别是?数据的流动方向和方式? 9. INOUT、BUFFER的区别? 10.什么是RTL? 11.什么是VHDL的RTL描述? 12.在VHDL中,所有合法的顺序描述语句都必须放在进程语句中?13.通常要求将进程中所有的输入信号都放在敏感信号表中?14.试叙述进程的?启动-运行?过程?

15.在一个结构体中只能包含一个进程语句结构? 16.所有进程语句都是并行语句? 17.任一进程PROCESS内部语句结构属于顺序语句? 18.VHDL代码文件的后缀扩展名是? 19.建议程序文件名与该程序的实体名一致? 20.文件名区分大小写吗? 21.P48页例3-6,D触发器工作原理? 22.STD_LOGIC数据类型定义的数据有几个?分别是什么?什么含义?综合器支持哪几个数据? 23.关键词?EVENT?的作用? 24.假设clock的数据类型是BIT,试解释为什么?clock’ EVENT AND clock=’1’”表达式是用来对clock的上升沿进行检测?25.结合P48例3-6说明,为什么不完整条件语句是构建时序电路的关键? 26.检测时钟信号上升沿的不同表述方法?(4) &27.半加器:真值表<-->逻辑表达式<-->逻辑电路图<-->程序?28.全加器电路图? 29.双横线?--?? 30.元件例化语句的表达式?例化名和元件名如何理解?PORT MAP ()端口映射语句中的?端口名=>连接端口名?,端口名和连接端口名的区分? 31.试用两种方法设计4位二进制加法计数器?(1:BUFFER;2:

EDA技术与VHDL期末复习

1.下降沿与上升沿的描述。 a)上升沿:clock’event and clock=’1’ rising_edge() b)下降沿:clock’event and clock=’0’ falling_edge() 2.信号与变量的区别 3.实体中有哪些端口,及其含义。 in: 输入型,此端口为只读型。 out: 输出型,只能在实体内部对其赋值。 inout:输入输出型,既可读也可赋值。 buffer: 缓冲型,与 out 相似,但可读。 4.编程,配置。 通常,将对CPLD的下载称为编程,对FPGA中的SRAM进行直接下载的方式称为配置,但对于OTP FPGA的下载和对FPGA的专用配置ROM的下载仍称为编程 5.3-8译码器真值表,写程序 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL; Array ENTITY coder IS PORT(A : IN STD_LOGIC_VECTOR(1 TO 3) Y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END coder ; ARCHITECTURE a1 or coder IS Begin IF A=“000” THEN Y<=“00000001”; ELSIF A=“001” THEN Y<=“00000010”; ELSIF A=“010” THEN Y<=“00000100”; ELSIF A=“011” THEN Y<=“00001000”; ELSIF A=“100” THEN Y<=“00010000”; ELSIF A=“101” THEN Y<=“00100000”; ELSIF A=“110” THEN Y<=“01000000”; ELSE Y<=“10000000”; END IF; END a1; 6.CPLD,FPGA的中文含义 CPLD:(Complex Programmable Logic Device)复杂可编程逻辑器件 FPGA:(Field Programmable Gate Array)现场可编程门阵列 ASIC:(Application Specific Integrated Circuit)专用集成电路 7.常用的库、包 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_Arith.all;

EDA技术VHDL语言

EDA技术VHDL语言课程大作业 设计题目:分频电路 姓名:段亮 班级:自动化10(4) 学号: 41003010410

一.设计背景 EDA电子设计自动化是Electronic Design Automation的简称,20世纪60年代中期发展开始至今,已经取得了飞跃性的进步,在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已经非常普及,这些可编程逻辑器件为数字系统的设计带来了相当大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构和改变,这就使得硬件的设计可以如同软件设计那样方便快捷效率高,可编程逻辑器件加快了EDA技术的发展,在现代社会,尤其是电子信息科技行业发展突飞猛进,在化工、机械、电子、通信、医学、航空航天、矿产、生物、军事等各个领域都有EDA的广泛应用在数字逻辑电路设计中,分频器是一种基本电路,通常用来对某个给定频率的时钟进行分频,得到所需的时钟。时序电路设计中需要各种各样的分频器来获得不同频率的时钟,其中以整数分频器最为常见。但是在某些需要使用电平逻辑的设计中,我们更希望分频时钟拥有50%的占空比,或者与驱动时钟相同的占空比。这时就需要通过另外的逻辑方法来进行分频,本作业就针对奇数分频占空比50%进行设计。 本作业题目:分频电路:将20M的时钟信号分频生成5khz的方波,再将此方波分频生成1khz占空比为50%的方波。 二. 设计方案 2.1分频总体思路 首先对20MHZ的频率进行分频,将其分成5KHZ的频率,再此将

5KHZ的频率分成1KHZ的占空比是50%的方波。 2.2 计时模块系统流程框图 2.3 设计思路 本课题的主要解决问题是对占空比是50%的方波,由于最后需要将5KHZ的频率分成1KHZ的占空比是50%的方波,其解决方案是: 1.任意占空比的偶数分频及非等占空比的奇数分频,通常由计数器或计数器的级联来完成。 2.等占空比的奇数分频电路。要实现占空比为50%的M=2N+1分频电路。 对于占空比为非 50%的输出时钟在输入时钟的上升沿触发翻转。若在同一个输入时钟周期内,此计数器分别在输入时钟的上升沿和下降沿触发翻转得到的两路信号,再将所得到的信号进行逻辑或,即可得到占空比为 50%的奇数倍分频时钟。另外,对于实现占空比为50%的N倍奇数分频,首先进行上升沿触发进行模N计数,计数选定到某一个值进行输出时钟翻转,然后经过(N-1)/2再次进行翻转得到一个占空比非50%奇数n分频时钟。再者同时进行下降沿触发的模N计数,到和上升沿触发输出时钟翻转选定值相同值时,进行输出时钟时钟翻转,同样经过(N-1)/2时,输出时钟再次翻转生成占空比非50%的奇数n分频时钟。两个占空比非50%的n分频时钟相或运算,得到占空比为50%的奇数n 分频时钟。另外一种方法:对进行奇数倍n分频时钟,首先进行n/2分频(带小数,即等于(n-1)/2+0.5),然后再进行二分频得到。得到占空比为50%的奇数倍分频。奇数倍分频原理下图所示:

EDA技术与VHDL复习题

第一部分 1-1 EDA技术与ASIC设计和FPGA开发有什么关系? 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD 是实现这一途径的主流器件。FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC (片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。 1-2与软件描述语言相比,VHDL有什么特点? 答:编译器将软件程序翻译成基于某种特定CPU 的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是

根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。 l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? 什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。 有哪些类型?答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。(3)从RTL 级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。(4)从逻辑门表示转换到版图表示(ASIC设计),或转换到FPGA的配置网表文件,可称为版图综合或结构综合。 综合在电子设计自动化中的地位是什么?答:是核心地位(见图1-3)。综合器具有更复杂的工作环境,综合器在接受VHDL程序并准备对其综合前,必须获得与最终实现设计电路硬件特征相关的工艺库信息,以及获得优化综合的诸多约束条件信息;根据工艺库和约束条件信息,将VHDL程序转化成电路实现的相关信息。

EDA技术课后答案

EDA习题第一章 1.1 EDA的英文全称是什么?EDA的中文含义是什么? 答:EDA即Electronic Design Automation的缩写,直译为:电子设计自动化。 1.2 什么叫EDA技术? 答:EDA技术有狭义和广义之分,狭义EDA技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为IES/ASIC自动设计技术。 1.3 利用EDA技术进行电子系统的设计有什么特点? 答:①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级; ⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。 1.4 从使用的角度来讲,EDA技术主要包括几个方面的内容?这几个方面在整个电子系统的设计中分别起什么作用? 答:EDA技术的学习主要应掌握四个方面的内容:①大规模可编程逻辑器件;②硬件描述语言;③软件开发工具;④实验开发系统。其中,硬件描述语言是重点。 对于大规模可编程逻辑器件,主要是了解其分类、基本结构、工作原理、各厂家产品的系列、性能指标以及如何选用,而对于各个产品的具体结构不必研究过细。 对于硬件描述语言,除了掌握基本语法规定外,更重要的是要理解VHDL的三个“精髓”:软件的强数据类型与硬件电路的惟一性、硬件行为的并行性决定了VHDL语言的并行性、软件仿真的顺序性与实际硬件行为的并行性;要掌握系统的分析与建模方法,能够将各种基本语法规定熟练地运用于自己的设计中。 对于软件开发工具,应熟练掌握从源程序的编辑、逻辑综合、逻辑适配以及各种仿真、硬件验证各步骤的使用。 对于实验开发系统,主要能够根据自己所拥有的设备,熟练地进行硬件验证或变通地进行硬件验证。 1.5 什么叫可编程逻辑器件(简称PLD)?FPGA和CPLD的中文含义分别是什么?国际上生产FPGA/CPLD的主流公司,并且在国内占有较大市场份额的主要有哪几家?其产品系列有哪些?其可用逻辑门/等效门数大约在什么范围? 答:可编程逻辑器件(简称PLD)是一种由用户编程以实现某种逻辑功能的新型逻辑器件。FPGA和CPLD分别是现场可编程门阵列和复杂可编程逻辑器件的简称。 国际上生产FPGA/CPLD的主流公司,并且在国内占有市场份额较大的主要是Xilinx,Altera,Lattice三家公司。 Xilinx公司的FPGA器件有XC2000,XC3000,XC4000,XC4000E,XC4000XLA,XC5200系列等,可用门数为1200~18 000;Altera公司的CPLD器件有FLEX6000,FLEX8000,FLEX10K,FLEX10KE 系列等,提供门数为5000~25 000;Lattice公司的ISP-PLD器件有ispLSI1000,ispLSI2000,ispLSI3000,ispLSI6000系列等,集成度可多达25 000个PLD等效门。

EDA技术—VHDL版期末试卷(含答案)

2010—2011学年第一学期期末考试试卷(闭卷) 年级 2008 专业信息处理与交换(本)课程名称 EDA技术基础 教师出题时请勿超出边界虚线; 2、学生答题前将密封线外的内容填写清楚,答题不得超出密封线; 3、答题请用蓝、黑钢笔或圆珠笔。 一、单项选择题(30分) 1.以下描述错误的是 C A.QuartusII是Altera提供的FPGA/CPLD 集成开发环境 B.Altera是世界上最大的可编程逻辑器件 供应商之一 C.MAX+plusII是Altera前一代FPGA/CPLD 集成开发环境QuartusII的更新换代新 产品 D.QuartusII完全支持VHDL、Verilog的 设计流程 2.以下工具中属于FPGA/CPLD开发工具中的 专用综合器的是 B A.ModelSim B.Leonardo Spectrum C.Active HDL D.QuartusII

3.以下器件中属于Xilinx 公司生产的是 C A.ispLSI系列器件 B.MAX系 列器件 C.XC9500系列器件 D.FLEX系 列器件 4.以下关于信号和变量的描述中错误的是 B A.信号是描述硬件系统的基本数据对象, 它的性质类似于连接线 B.信号的定义范围是结构体、进程 C.除了没有方向说明以外,信号与实体的 端口概念是一致的 D.在进程中不能将变量列入敏感信号列表中 5.以下关于状态机的描述中正确的是 B A.Moore型状态机其输出是当前状态和所有输入的函数 B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期 C.Mealy型状态机其输出是当前状态的函数 D.以上都不对 6.下列标识符中, B 是不合法的标识符。

相关主题
文本预览
相关文档 最新文档