当前位置:文档之家› eda交通信号控制器的VHDL设计

eda交通信号控制器的VHDL设计

eda交通信号控制器的VHDL设计
eda交通信号控制器的VHDL设计

EDA 课题设计报告

题目:交通信号控制器的VHDL设计指导老师:

学院:物理与电子工程学院

班级:09级电子信息科学与技术学号:2009080264

姓名:zzh

同组同学:lclc

交通灯信号控制器的VHDL设计

一、设计任务及要求:

设计任务:模拟十字路口交通信号灯的工作过程,利用实验板上的两组红、黄、绿LED作为交通信号灯,设计一个交通信号灯控制器。要求:

(1)交通灯从绿变红时,有3秒黄灯亮的间隔时间;

(2)交通灯红变绿是直接进行的,没有间隔时间;

(3)红绿灯亮灯时间各为30秒。

A B C

30秒30秒3秒

东西南北灯

亮时间

交通灯颜色红绿黄

表1—1交通信号灯闪亮分布表

二、采用VHDL语言输入的方式实现交通信号灯控制器

程序包括两大部分,分别为时钟分频程序部分和信号灯控制实现部分。每一部分程序设计好后打包,最终形成一个如图1-2所示的总程序的原理图来实现交通信号灯的控制。

图1-2程序原理图

主程序1、分频程序

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity fp is

port(clk: in std_logic;

fpclk: out std_logic);

end fp;

architecture arc of fp is

begin

process(clk)

variable count: integer range 0 to 25000000; variable clk0: std_logic;

begin

if clk'event and clk='1' then

if count=25000000 then

clk0:=not clk0;

count:=0;

else

count:=count+1;

end if;

end if;

fpclk<=clk0;

end process;

end arc;

主程序2、交通信号灯控制程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY JTDKZ IS

PORT(CLK,SM,SB:IN BIT;--定义输入

MR,MY,MG,BR,BY,BG:OUT BIT);--定义输出(假设为M表示东西方向,B表示南北方向)

END JTDKZ;

ARCHITECTURE ART OF JTDKZ IS

TYPE STATE_TYPE IS(A,B,C,D);

SIGNAL STATE:STATE_TYPE;

BEGIN

CNT:PROCESS(CLK) --块CNT为进程(CLK敏感信号)

VARIABLE S:INTEGER RANGE 0 TO 29;--定义变量S取值0~29

VARIABLE CLR,EN:BIT;

BEGIN

IF(CLK'EVENT AND CLK='1')THEN --CLK上升沿到

IF CLR='0'THEN S:=0; --CLR='0'时S清零

ELSIF EN='0'THEN S:=S; --EN='0'CLR='1'时S保持不变

ELSE S:=S+1; --EN='1'CLR='1'时S持续加1

END IF;

CASE STATE IS

WHEN A=>MR<='1';MY<='1';MG<='0';--在状态A时,东西方向(绿灯亮,红/黄灯灭),南北方向(红灯亮,黄/绿灯灭)

BR<='0';BY<='1';BG<='1';

IF(SB AND SM)='1'THEN --当无人工控制时

IF S=29 THEN --计时到30秒后,转到状态B,CLR='0'为下次S清零作准备,STATE<=B;CLR:='0';EN:='0';

ELSE

STATE<=A;CLR:='1';EN:='1';--计时不到30秒时,继续执行A状态,

END IF;

ELSIF(SB AND(NOT SM))='1' THEN --人工智能控制,当输入SM='0'时直接跳到B

STATE<=B;CLR:='0';EN:='0';

ELSE

END IF;

WHEN B=>MR<='1';MY<='0';MG<='1';--在状态B时,东西方向(黄灯亮,绿/红灯灭),南北方向(红灯亮,黄/绿灯灭)

BR<='0';BY<='1';BG<='1';

IF S=3 THEN --计时3秒后,转到状态C.........

STATE<=C;CLR:='0';EN:='0';

ELSE

STATE<=B;CLR:='1';EN:='1';--否则继续执行状态B

END IF;

WHEN C=>MR<='0';MY<='1';MG<='1';--在状态C时,东西方向(红灯亮,黄/绿灯灭),南北方向(绿灯亮,红/黄灯灭)

BR<='1';BY<='1';BG<='0';

IF(SM AND SB)='1' THEN --当无人工控制时

IF S=29 THEN --计时到30秒后,转到状态D.........

STATE<=D;CLR:='0';EN:='0';

ELSE

STATE<=C;CLR:='1';EN:='1';--否则继续执行状态C........

END IF;

ELSIF SB='0' THEN --人工智能控制,当输入SB='0'时直接跳到D

STATE<=D;CLR:='0';EN:='0';

ELSE

END IF;

WHEN D=>MR<='0';MY<='1';MG<='1';--在状态D时,东西方向(红灯亮,黄/绿灯灭,南北方向(黄灯亮,绿/红灯灭))

BR<='1';BY<='0';BG<='1';

IF S=3 THEN --计时3秒后,转到状态A.........

STATE<=A;CLR:='0';EN:='0';

ELSE

STATE<=D;CLR:='1';EN:='1';--否则继续执行状态B

END IF;

END CASE;

END IF;

END PROCESS CNT;

END ART;

三、实验仿真

运行程序后,仿真波形图如图所示

图1-3 仿真波形图

四、实验分析说明

实验板载50MHZ有源晶振,可分频50000000倍输出1HZ的clk信号,这样便可使得红绿黄的亮灯时间分别为30秒、30秒、3秒。将分频程序打包,其输出作为第二个主程序的clk输入。主程序2则实现交通信号灯在无人和有人控制下的灭灯和亮灯,红灯变绿灯不经过黄灯而绿灯变红灯时则需要经过3秒的黄灯时间,红绿亮灯时间都为30秒,程序如上所述,打包后与程序1的元件图共同构成总程序的原理图,完成设计。波形仿真,可以实现,最后锁定引脚,编程下载到实验板上,效果如期所示,实验成功。

五、总结

本次试验是对上学期所学VHDL和QUARTUS知识的巩固和运用,通通过对这个课题的分析、设计、编写代码、调试、程序运行下载等来检验学习的成果和提高实践动手能力。在这一次的课程设计中,我感受到了在课堂上学习的内容能真真正正的运用到实际,虽然我根据网上和图书资料上搜索的程序再改写程序能运行而实现某一有显示意义的功能,这让我感受到将理论运用于实际的乐趣!我从最初设想采用一个什么样的程序框架,然后到具体程序的实现,再到编译程序集修改错误和最终的程序设计,在这个过程中我借阅了已有的程序,加深了自己对VHDL语言的运用和认识,思考其中出现的问题,采用了较为简单的方法实现了课程设计所要求的功能。通过这次课程设计,我首先对EDA这门课程及VHDL的编程方法有了更深的了解,在程序的设计过程中,无形中加深了对VHDL编程方法的了解及运用能力,对课本以及以前学过的知识有了一个更好的理解最后感谢学校和老师给我们这次机会,锻炼了我们的动手能力,也让我

们从中发现了自己的不足,以后应该朝着这个方向不断改进自己的不足。

六、参考文献

《模拟电子技术基础简明教程》杨素行主编高等教育出版社

《数字电子技术基础》阎石主编高等教育出版社

《EDA技术实用教程--VHDL版》潘松主编科学出版社

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 是不合法的标识符。

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