文档库 最新最全的文档下载
当前位置:文档库 › VVV FPGA在峰值检测中的应用

VVV FPGA在峰值检测中的应用

VVV  FPGA在峰值检测中的应用
VVV  FPGA在峰值检测中的应用

FPGA实验报告

数字电路与逻辑设计 用Verilog编程 用FPGA实现汽车尾灯控制系统 实验报告 学院:信息与通信工程学院 专业:电子信息工程 班级: 2015211103 组员:傅远昌 2015210077 张楷 2015210078

一.实验要求 根据汽车行驶状态自动控制汽车尾灯 1.直行:尾灯不亮 2.右转:右侧尾灯亮而且按秒闪烁,左侧尾灯不亮 3.左转:左侧尾灯亮而且按秒闪烁,右侧尾灯不亮 4.临时停车或故障:两侧尾灯同时闪烁 5.倒车显示 二.用FPGA实现方式设计 1.用三色LED代表左右汽车尾灯,为了便于区分,左尾灯选择靠左的三色LED且显示为蓝色,右尾灯选择靠右的三色LED且显示为红色。两灯同时闪烁表示停车或倒车。 2.用八个单色LED以流水灯的方式显示汽车的行驶状态,向前滚动表示汽车前行,向后滚动表示汽车到车,只有前四个LED 亮表示左转,只有后四个LED亮表示右转。 3.用四个拨码开关分别表示前行、左转、右转、故障(倒车),器输入组合1000表示前行,0100表示左转、0010表示右转、0001表示故障(倒车); 三.设计思路分析 1.使用不同的进程来分别处理时钟分频及各个状态下的灯光效果 2.用三色LED代表左右汽车尾灯

3.用拨码开关控制汽车行驶状态 4.用单色LED显示汽车行驶状态 5.使用状态机的思想来设计,通过过状态来决定灯光效果,通过外部输入来改变状态。 四.波形仿真 五.管脚分配 1.输入管脚分配: 2.输出管脚分配:

六.实验总结体会: (1)本次实验,我们采用模块化的设计方法,将整体分成不同功能的模块,如计时模块、分频模块、显示控制模块、LED灯显示模块,然后分模块编写程序(由小组人员分工完成),之后再将模块之间用变量连接起来,从而实现汽车尾灯显示要求。 (2)在实现本次设计的过程中,使我们了解了汽车尾灯的基本原理,从而让我们觉得,首次将我们的专业知识与生活联系起来,增强了我们对本课程的学习兴趣。 (3)在本次实验的实现过程中,通过调用case语句、always语句,是我们进一步加深了对case、always语句的认识,并且能够将其运用到其他设计中,使我们进一步熟练了这种设计方法和verilog程序设计语言。 七.实现代码

FPGA试卷+答案+超详细解答

电子与信息学院10应用电子技术教育2班 科目:<>(X)卷 考试形式:闭卷考试时间:100 分钟 院(系)别、班级:姓名:学号: 20XX.X.考试试卷含答题纸、试题纸、草稿纸的装订试卷不能分拆) 试题区:(试题区必须与答题区同时交回,含答题纸、试题纸、草稿纸的装订试卷不能分拆) 一、单项选择题:(20分) 1.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是___C___。 A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成 后,等待下一次进程启动。 B.敏感信号参数表中,不一定要列出进程中使用的所有输入信号; C.进程由说明部分、结构体部分、和敏感信号三部分组成; (进程由声明语句、顺序语句、敏感信号列表组成) D.当前进程中声明的变量不可用于其他进程。

电子与信息学院10应用电子技术教育2班 2.在一个VHDL设计中idata是一个信号,数据类型为integer,数据范围0 to 127,下面哪个赋值语句是正确的___C___。(信号赋值符号<= ) A.idata := 32; B.idata <= 16#A0#; (十进制数为:10*16= 160,idata范围为0~127) C.idata <= 16#7#E1;(十进制数为:7*16^1= 112) D.idata := B#1010#; 3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是___C___。 A.FPGA是基于乘积项结构的可编程逻辑器件; (FPGA芯片基于查找表的可编程逻辑结构) B.FPGA是全称为复杂可编程逻辑器件; (FPGA 现场可编程逻辑门阵列,CPLD才是复杂可编程逻辑器件) C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。 (MAX7000系列属CPLD结构) 4.进程中的变量赋值语句,其变量更新是___A___。 (变量(variable)是立即完成的,信号(signal)有延时) A.立即完成; B.按顺序完成; 第2页(不含草稿纸部分共18页

数字逻辑电路实验报告

数字逻辑电路 实验报告 指导老师: 班级: 学号: 姓名: 时间: 第一次试验一、实验名称:组合逻辑电路设计

二、试验目的: 1、掌握组合逻辑电路的功能测试。 2、验证半加器和全加器的逻辑功能。 3、、学会二进制数的运算规律。 三、试验所用的器件和组件: 二输入四“与非”门组件3片,型号74LS00 四输入二“与非”门组件1片,型号74LS20 二输入四“异或”门组件1片,型号74LS86 四、实验设计方案及逻辑图: 1、设计一位全加/全减法器,如图所示: 电路做加法还是做减法是由M决定的,当M=0时做加法运算,当M=1时做减法运算。当作为全加法器时输入信号A、B和Cin分别为加数、被加数和低位来的进位,S 为和数,Co为向上的进位;当作为全减法时输入信号A、B和Cin分别为被减数,减数和低位来的借位,S为差,Co为向上位的借位。 (1)输入/输出观察表如下: (2)求逻辑函数的最简表达式 函数S的卡诺图如下:函数Co的卡诺如下: 化简后函数S的最简表达式为: Co的最简表达式为:

(3)逻辑电路图如下所示: 2、舍入与检测电路的设计: 用所给定的集成电路组件设计一个多输出逻辑电路,该电路的输入为8421码,F1为“四舍五入”输出信号,F2为奇偶检测输出信号。当电路检测到输入的代码大于或等于5是,电路的输出F1=1;其他情况F1=0。当输入代码中含1的个数为奇数时,电路的输出F2=1,其他情况F2=0。该电路的框图如图所示: (1)输入/输出观察表如下: B8 B4 B2 B1 F2 F1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 1 1 1

FPGA试卷+答案+超详细解答

20XX—20XX学年度第(X)学期期末考试试卷科目:<>(X)卷 考试形式:闭卷考试时间:100 分钟 院(系)别、班级:姓名:学号: 试题区:(试题区必须与答题区同时交回,含答题纸、试题纸、草稿纸的装订试卷不能分拆)一、单项选择题:(20分) 1.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是___C___。 A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成后, 等待下一次进程启动。 B.敏感信号参数表中,不一定要列出进程中使用的所有输入信号; C.进程由说明部分、结构体部分、和敏感信号三部分组成; (进程由声明语句、顺序语句、敏感信号列表组成) D.当前进程中声明的变量不可用于其他进程。 2.在一个VHDL设计中idata是一个信号,数据类型为integer,数据范围0 to 127,下面哪个赋值语句是正确的___C___。(信号赋值符号 <= ) A.idata := 32; B.idata <= 16#A0#; (十进制数为:10*16= 160,idata范围为0~127) C.idata <= 16#7#E1;(十进制数为:7*16^1= 112) D.idata := B#1010#;

3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是___C___。 A.FPGA是基于乘积项结构的可编程逻辑器件; (FPGA芯片基于查找表的可编程逻辑结构) B.FPGA是全称为复杂可编程逻辑器件; (FPGA 现场可编程逻辑门阵列,CPLD才是复杂可编程逻辑器件) C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。 (MAX7000系列属CPLD结构) 4.进程中的变量赋值语句,其变量更新是___A___。 (变量(variable)是立即完成的,信号(signal)有延时) A.立即完成; B.按顺序完成; C.在进程的最后完成; D.都不对。 5.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述___D___。(结构体实现实体的功能,通过对实体的逻辑功能进行描述) A.器件外部特性; B.器件的综合约束; C.器件外部特性与内部功能; D.器件的内部功能。 6.CASE语句是___A___。(case语句时顺序语句中最重要最常用的顺序语句) A. 顺序语句 B. 并行语句 C. 其它 D.组合逻辑控制电路语句 7. LIBRARY ___A___; --库的声明 USE IEEE.STD_LOGIC_1164.ALL; --库的引用,引用IEEE库中的std_logic_1164中的所有项目A. IEEE B. STD C.WORK D.ENTITY counter IS

实验三序列发生器与序列检测器实验报告

南昌大学实验报告姓名: 学号:6100210173 专业班级:中兴通信101 实验类型:验证□综合■设计□创新□实验日期:2012、11、16 实验四序列信号发生器与检测器设计 一、实验目的 1、.学习VHDL文本输入法 2、学习有限状态机的设计 3、设计序列信号发生器和检测器 二.实验内容与要求 1. 设计序列发生器,完成序列为0111010011011010的序列生成器 2.用有限状态机设计序列检测器,实现串行序列11010的检测器 3. 若检测到符合要求的序列,则输出显示位为“1”,否则为“0” 4. 对检测到的次数计数 三.设计思路 1.设计分频器 因为最终要把待检测序列的检测次数在数码管上显示出,所以必须设计一个分频器,将起始频率作为数码管的扫描频率,而将分频后的频率作为序列发生器的移位频率,所以在程序中设置10KHZ进行分频分成1HZ脉冲(10KHZ的扫描频率是为了让数码管的动态显示更加清晰) 2.设计序列发生器 在这次的设计序列发生器时没有用状态转移的方法来来形成一个16位的序列,而是通过直接设计一串16位的序列,通过对最高位的输出与并置来形成一串循环的16位序列,这样设计简单方便,易于操作与控制,也减少了在状态转移产生的误差,其主要的核心程序为: architecture bhv of p2 is signal bs: std_logic_vector(15 downto 0):="0111010011011010"; begin xlout<=bs(15); process (clk1hz) begin if (clk1hz'event and clk1hz='1') then bs<= bs(14 downto 0)&bs(15); 先将序列最高位输出至序列检测器中,然后在一个脉冲作用下,将此时最高位变成最低位,其余14位不变,使序列循环移动,最终形成一个16位循环序列。 3.设计序列检测器 基本思想是采用有限状态机设计,通过状态的转移来实现被检测序列的的检测,首先设定6个状态S0 S1 S2 S3 S4 S5 通过这6个状态的转移情况来检测出11010这个序列。

FPGA数电实验报告

实验报告 课程名称:数字电子技术实验姓名: 学号: 专业: 开课学期: 指导教师:

实验课安全知识须知 1.须知1:规范着装。为保证实验操作过程安全、避免实验过程中意外发生,学生禁止穿拖 鞋进入实验室,女生尽量避免穿裙子参加实验。 2.须知2:实验前必须熟悉实验设备参数、掌握设备的技术性能以及操作规程。 3.须知3:实验时人体不可接触带电线路,接线或拆线都必须在切断电源的情况下进行。 4.须知4:学生独立完成接线或改接线路后必须经指导教师检查和允许,并使组内其他同学 引起注意后方可接通电源。实验中如设备发生故障,应立即切断电源,经查清问题和妥善处理故障后,才能继续进行实验。 5.须知5:接通电源前应先检查功率表及电流表的电流量程是否符合要求,有否短路回路存 在,以免损坏仪表或电源。 特别提醒:实验过程中违反以上任一须知,需再次进行预习后方可再来参加实验;课程中违反三次及以上,直接重修。 实验报告撰写要求 1.要求1:预习报告部分列出该次实验使用组件名称或者设备额定参数;绘制实验线路图, 并注明仪表量程、电阻器阻值、电源端编号等。绘制数据记录表格,并注明相关的实验环境参数与要求。 2.要求2:分析报告部分一方面参考思考题要求,对实验数据进行分析和整理,说明实验结 果与理论是否符合;另一方面根据实测数据和在实验中观察和发现的问题,经过自己研究或分析讨论后写出的心得体会。 3.要求3:在数据处理中,曲线的绘制必须用坐标纸画出曲线,曲线要用曲线尺或曲线板连 成光滑曲线,不在曲线上的点仍按实际数据标出其具体坐标。 4.要求4:本课程实验结束后,将各次的实验报告按要求装订,并在首页写上序号(实验课 上签到表对应的序号)。请班长按照序号排序,并在课程结束后按要求上交实验报告。 温馨提示:实验报告撰写过程中如遇预留空白不足,请在该页背面空白接续。

FPGA试题

【第一章】 1、FPGA芯片的发展主要体现在哪几个方面?未来的发展趋势是什么? (1) 大容量、低电压、低功耗 (2) 系统级高密度 (3) FPGA和ASIC出现相互融合。 (4) 动态可重构 2、EDA技术的优势是什么? 缩短开发周期,有各类库的支持,简化逻辑设计,有利于设计文档的管理,能仿真测试,开发者有自主权,将所有开发环节纳入统一的自顶向下的设计中,有效的利用了计算机的自动设计能力。 3、EDA的设计流程包括哪几个环节? ①设计输入(原理图/HDL文本编辑)②综合③FPGA/CPLD 适配④时序仿真与功能仿真⑤FPGA/CPLD编程下载⑥FPGA/CPLD器件电路硬件检测。 4、硬件描述语言的种类有哪些? VHDL 、Verilog HDL、SystemVerilog、System C 等 5、自顶向下设计方法的优点是什么? 过程大部分由计算机完成,可植性强,便于系统的优化和升级,以及对模型进行及时的修改,以改进系统或子系统的功能,更正设计错误,提高目标系统的工作速度,减小面积耗用,降低功耗和成本等。在EDA

技术应用中,自顶向下的设计方法,就是在整个设计流程中各设计环节逐步求精的过程。高效,高稳定性,省时省力,成本较低。 6、ip核可分为哪几类? ①软IP 、②固IP、③硬IP 7、ip在EDA技术的应用和发展中的意义是什么? IP就是将某些功能固化,而当EDA设计也需要这些功能的时候,就可以直接将植入了此功能的IP拿过来直接用,而不用再重新设计。这样既可以提高效率又可以减少设计风险。IP核具有规范的接口协议,良好的可移植与可测试性,为系统开发提供了可靠的保证。 8、EDA的概念Electronic Design Automation,电子设计自动化。 简单一点EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言完成设计文件,然后由计算机自动地完成逻辑编译,化简,分割,综合,优化,布局,布线和仿真,直至对于特定目标芯片的适配编译,逻辑映射和编程下载等工作。 9、VHDL与verilog的优缺点的对比 Verilog代码简明扼要,操作灵活方便,使用简单,有效的简化了设计过程。Vhdl语句严谨,有很好的行为级描述能力和系统级描述能力。缺点是代码过于冗长,对数据类型匹配要求过 于严格,对版图级,管子级的描述几乎不支持。 【第二章】 1、可编程逻辑器件经历哪些发展过程?

序列检测器实验报告

序列检测器设计 实验内容: 设计一个1110010序列检测器,即检测器检测到序列1110010时,输出为1,否则输出为0。 输入信号:一个时钟输入信号clk; 一个输入端x以输入序列来检测; 一个输入y用来选择是检测序列1110010或是检测自己输入的序列;一个输入k(7..0)用来输入想要检测器检测的序列; 输出信号:一个7位输出信号q,用来输出正在检测的7位序列;一个1位输出信号unlk,当被检测序列符合时,输出unlk为1否则为0; 中间信号:再定义两个7位的中间信号a和combination; 执行操作:在上升的时钟沿时候,将从x输入的序列赋给7位a,在y等于1的情况下,令中间信号combination为1110010,否则,在y等于0的情况下,令中间信号combination为从k输入的七位长序列。最后把a的值赋给q,如果a与combination输出unlk等于1否则等于0。 (1)序列检测器语言设计: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; USE IEEE.STD_LOGIC_ARITH.ALL;

entity xulie2 is port ( clk,x:in std_logic; y:in std_logic; k:in std_logic_vector(7 downto 1); unlk:out std_logic; q:out std_logic_vector(7 downto 1)); end xulie2; architecture art of xulie2 is signal a:std_logic_vector(7 downto 1); signal combination: std_logic_vector(7 downto 1); begin process(clk) begin if clk'event and clk='1' then a<=a(6 downto 1)&x; if y='1' then combination<="1110010";

FPGA试卷+答案+超详细解答

广东技术师范学院电子与信息学院10应用电子技术教育2班 20XX—20XX学年度第(X)学期期末考试试卷科目:<>(X)卷 考试形式:闭卷考试时间:100 分钟 院(系)别、班级:姓名:学号: 试题区:(试题区必须与答题区同时交回,含答题纸、试题纸、草稿纸的装订试卷不能分拆) 一、单项选择题:(20分) 1.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是___C___。 A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成后, 等待下一次进程启动。 B.敏感信号参数表中,不一定要列出进程中使用的所有输入信号; C.进程由说明部分、结构体部分、和敏感信号三部分组成; (进程由声明语句、顺序语句、敏感信号列表组成) D.当前进程中声明的变量不可用于其他进程。 2.在一个VHDL设计中idata是一个信号,数据类型为integer,数据范围0 to 127,下面哪个赋值语句是正确的___C___。(信号赋值符号 <= ) A.idata := 32; B.idata <= 16#A0#; (十进制数为:10*16= 160,idata范围为0~127) C.idata <= 16#7#E1;(十进制数为:7*16^1= 112) D.idata := B#1010#;

3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是___C___。 A.FPGA是基于乘积项结构的可编程逻辑器件; (FPGA芯片基于查找表的可编程逻辑结构) B.FPGA是全称为复杂可编程逻辑器件; (FPGA 现场可编程逻辑门阵列,CPLD才是复杂可编程逻辑器件) C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。 (MAX7000系列属CPLD结构) 4.进程中的变量赋值语句,其变量更新是___A___。 (变量(variable)是立即完成的,信号(signal)有延时) A.立即完成; B.按顺序完成; C.在进程的最后完成; D.都不对。 5.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述___D___。(结构体实现实体的功能,通过对实体的逻辑功能进行描述) A.器件外部特性; B.器件的综合约束; C.器件外部特性与内部功能; D.器件的内部功能。 6.CASE语句是___A___。(case语句时顺序语句中最重要最常用的顺序语句) A. 顺序语句 B. 并行语句 C. 其它 D.组合逻辑控制电路语句 7.LIBRARY ___A___; --库的声明 USE IEEE.STD_LOGIC_1164.ALL; --库的引用,引用IEEE库中的std_logic_1164中的所有项目A. IEEE B. STD C.WORK D.ENTITY counter IS

序列检测器的设计 实验报告.doc

EDA实验报告书

WHEN OTHERS => NST <= st0; END CASE ; END PROCESS; REG: PROCESS (CLK,RST) BEGIN IF RST='1' THEN ST<=s0; ELS IF ( CLK'EVENT AND CLK='1') THEN ST<=NST; END IF; END PROCESS REG; SOUT<='1'WHEN ST=s8 ELSE '0' ; END behav; 仿真波形 图

实验结果LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY SM1 IS PORT ( clock : IN STD_LOGIC; reset : IN STD_LOGIC := '0'; input1 : IN STD_LOGIC := '0'; input2 : IN STD_LOGIC := '0'; output1 : OUT STD_LOGIC ); END SM1; ARCHITECTURE BEHA VIOR OF SM1 IS TYPE type_fstate IS (st1,st2,st3,st4,st5,st6,st7,st8,st0); SIGNAL fstate : type_fstate; SIGNAL reg_fstate : type_fstate; BEGIN PROCESS (clock,reset,reg_fstate) BEGIN IF (reset='1') THEN fstate <= st1; ELSIF (clock='1' AND clock'event) THEN fstate <= reg_fstate; END IF; END PROCESS; PROCESS (fstate,input1,input2) BEGIN output1 <= '0'; CASE fstate IS WHEN st1 => IF (((input1 = '1') AND (input2 = '1'))) THEN reg_fstate <= st2; ELSE reg_fstate <= st0; END IF;

基于FPGA的单脉冲发生器

西安邮电大学FPGA课程设计报告 题目:可编程单脉冲发生器 院系:通信与信息工程学院专业班级:电子信息科学与技术学生姓名:韩萌 导师姓名:张丽果 起止时间:2012-9-10至2012-9-22 2012年09月20日

FPGA课程设计报告提纲 1.任务 根据输入的8位的脉宽参数,输出255种宽度的单次脉冲。 可编程单脉冲发生器是一种脉冲宽度可编程的信号发生器,在输入按键的控制下,产生单次的脉冲,脉冲的宽度由8位的输入数据控制。由于是8位的脉宽参数,故可以产生255 种宽度的单次脉冲。 2.目的 产生一个脉冲宽度可根据8位输入数据(data)可变的脉冲发生器。 可变的脉冲信号可以通过把输入的data赋值给一个count,通过对count信号做减1操作控制输出的脉冲宽度。把data赋给count后,在key键启动的情况下,输出脉冲pulse信号开 始输出低电平,count同时在每来一个时钟信号的时候做减1操作,而且pulse信号一直保持高 电平,当count减为0时,把pulse信号拉低。这样就输出了一个脉冲宽度可以根据data输入信 号可变的脉冲信号。 3.使用环境(软件/硬件环境,设备等) 布局布线使用的环境是Quartus II。 仿真测试使用的环境是ModelSim SE。 4.FPGA课程设计详细内容 4.1 技术规范 (一)、功能定义如下: 本设计实现一个可编程单脉冲发生器,具体功能如下: 1.异步信号复位,复位后信号输出可以重新开始。 2.把8为脉冲宽度data赋给计数信号count。 3.当有key按键使能时,输出脉冲信号,并做count减1操作,重复再按使能键无效。 4.使能按键后产生的单脉冲的上升沿与时钟取得同步。 5.当count减为0时,脉冲信号拉低。高电平持续的宽度,即所需的脉冲宽度。 6.产生的脉冲信号的最大宽度为255。 (二)、引脚定义

EDA(FPGA)期末考试试题

这是长期总结的EDA期末考试试题 试题一 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提供设计的最终阶段产品:掩模。 3-1 OLMC(输出逻辑宏单元)有何功能?说明GAL是怎样实现可编程组合电路与时序电路的。 P34~36 答:OLMC单元设有多种组态,可配置成专用组合输出、专用输入、组合输出双向口、寄存器输出、寄存器输出双向口等。 说明GAL是怎样实现可编程组合电路与时序电路的? 答:GAL(通用阵列逻辑器件)是通过对其中的OLMC(输出逻辑宏单元)的编程和三种模式配置(寄存器模式、复合模式、简单模式),实现组合电路与时序电路设计的。 3-2 什么是基于乘积项的可编程逻辑结构? P33~34,40 答:GAL、CPLD之类都是基于乘积项的可编程结构;即包含有可编程与阵列和固定的或阵列的PAL(可编程阵列逻辑)器件构成。 3-3 什么是基于查找表的可编程逻辑结构? P40~41 答:FPGA(现场可编程门阵列)是基于查找表的可编程逻辑结构。 3-7 请参阅相关资料,并回答问题:按本章给出的归类方式,将基于乘积项的可编程逻辑结构的PLD器件归类为CPLD;将基于查找表的可编程逻辑结构的PLD器什归类为FPGA,那么,APEX系列属于什么类型PLD器件? MAX II系列又属于什么类型的PLD器件?为什么? P54~56 答:APEX(Advanced Logic Element Matrix)系列属于FPGA类型PLD器件;编程信息存于SRAM中。MAX II系列属于CPLD类型的PLD器件;编程信息存于EEPROM中。 4-3. 图3-31所示的是双2选1多路选择器构成的电路MUXK,对于其中MUX21A,当s='0'和'1'时,分别有y<='a'和y<='b'。试在一个结构体中用两个进程来表达此电路,每个进程中用CASE语句描述一个2选1多路选择器MUX21A。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MUX221 IS PORT(a1,a2,a3:IN STD_LOGIC_VECTOR(1 DOWNTO 0); --输入信号 s0,s1:IN STD_LOGIC; outy:OUT STD_LOGIC);--输出端 END ENTITY; ARCHITECTURE ONE OF MUX221 IS SIGNAL tmp : STD_LOGIC; BEGIN

110序列检测器仿真报告

Lab 110序列检测器仿真 1.实验目的 学会序列检测的设计,学会modelsim的使用,熟悉用Quartus编译Verilog语言的方法,熟悉DEO板的操作。 2.实验内容 1)用HDL语言的输入方式,实现110序列检测器。 2)用modelsim进行仿真。 3)用DE0下载并进行测试。 3.代码分析 1)该实验使用状态机进行设计,使用两个always语句,一个作为时序逻辑,另一个作为组合逻辑,其结构图为 2)首先定义输入输出变量和中间变量: module test110(data_in,data_out,Q,cp,en); output data_out,Q; //定义输出变量; input data_in,cp,en; //定义输出变量; reg data_out; //定义中间变量;

reg[1:0]pres_state,next_state; //定义两个时态; wire Q; //定义wire型中间变量; parameter s0=2'd0,s1=2'd1,s2=2'd2; //指定状态编码; 3)第一个always语句实现时序逻辑功能: fenpinqi(Q,cp); //调用分频器,改变时钟信号; always@(posedge Q or negedge en) //采用边沿触发; if(~en)pres_state<=s0; //清零; else pres_state<=next_state; //在Q上升沿触发器状态翻转; 4)第二个always语句实现组合逻辑功能: always@(pres_state or data_in) //电平触发事件 Begin next_state<=2' xx; //定义输出为零 data_out=1'b0; case(pres_state) //判断条件为现态的状态,对各状态值惊醒判断,并输出值s0:next_state<=(data_in==1)?s1:s0; s1:next_state<=(data_in==1)?s2:s0; s2:begin next_state<=(data_in==1'b1)?s2:s0; if(data_in==1'b0)data_out=1'b1; end endcase end endmodule 5)所调用的分频器的模块: module fenpinqi(Q,CP); output Q; //定义输出端口 input CP; //定义输入端口 wire [32:0]A; //定义中间变量 counter(A,CP); //调用计数器进行计数 D_FF(Q,~Q,CP,A); //调用D触发器是信号发生翻转endmodule module counter(Q,CP); //计数器,每第25M个信号发生一次变化output Q[32:0]; //定义输出端口 input CP; //定义信号输入端口 reg[32:0]Q; //定义中间变量 always@(posedge CP) //采用边沿触发 if(Q==33'd2*******)Q<=33'd0;//每25M作为一个计数周期 else Q<=Q+1'd1; //Q自增并输出 endmodule module D_FF(Q,D,CP,CR); //D触发器 output Q; //定义输出端 input D,CP; //定义输入端及D信号输入 input [32:0]CR; //定义输入变量 reg Q; //定义中间变量

FPGA基础试验之流水灯

综合实验报告 第四组 组长:韩欢02081535 陈洁钰02081536 侯旭涛02081514 高耀02081510 李欣昊02081508 李昊02081506

FPGA基础试验之流水灯 一、实验目的 通过此实验进一步了解、熟悉和掌握Quartus II开发软件的使用方法及Verilog 语言的编程方法。学习简单时序电路的设计分析和硬件测试。 二、实验内容 1.熟悉信号产生板中的FPGA的普通I/O的连接; 2.根据实际的流水灯分析时序,体会用Verilog语言的编程产生相应时序;3.熟悉集成开发工具Quartus II,学会使用Quartus II对Cyclone系列FPGA的程序开发、编译与调试; 4.掌握Cyclone系列FPGA的程序加载,熟练掌握将.sof文件加载到实验板的FPGA中,实现流水灯的效果。 三、实验原理 流水灯,顾名思义就是让LED像水一样的点亮。如果把流水做慢动作播放,可以想象到其实就是移动,即:把水块不断地向同一方向移动,而原来的水块保持不动,就形成了流水。同样,如果使得最左边的灯先亮,然后通过移位,在其右侧的灯,从左向右依次点亮,而已经亮的灯又不灭,便形成了向右的流水灯。初始状态时,四个灯都不亮,每来一个时钟脉冲,CLK,计数器就加1.这样通过移位依次点亮所有的灯,就形成了流水灯。而当四个灯都点亮时,需要一个操作使得所有的灯恢复为初始状态。然后,再一次流水即可。如果是右移位,就出现向右流水的现象;反之,向左流水。 四、实验要求 控制4个LED进行花式显示,根据硬件设施设计两种模式:S0:从全亮到全灭,再到全亮,依次循环;S1:从LED0开始依次点亮,为LED1亮,LED2亮,LED3亮,后再LED2亮,LED1亮,LED0亮,不停循环。即输出为:S0时,从0000到1111不停循环转换;S1时,0111,1011,1101,1110,1101,1011,0111不断循环。 五、实验步骤 (1)建立工程 (2)建立Verilog文件,编写相关程序 (3)将verilog文件编译为可视化电路图文件 (4)将可视化电路图文件添加输入输出组合成电路图文件 (5)编译语法及验证原理图 (6)根据需要分配管脚并进行编译

FPGA笔试题及答案总结

第 1 章 FPGA基础知识 1.1 FPGA设计工程师努力的方向 SOPC,高速串行I/O,低功耗,可靠性,可测试性和设计验证流程的优化等方面。随着芯片工艺的提高,芯片容量、集成度都在增加,FPGA 设计也朝着高速、高度集成、低功耗、高可靠性、高可测、可验证性发展。芯片可测、可验证,正在成为复杂设计所必备的条件,尽量在上板之前查出bug,将发现bug的时间提前,这也是一些公司花大力气设计仿真平台的原因。另外随着单板功能的提高、成本的压力,低功耗也逐渐进入FPGA设计者的考虑范围,完成相同的功能下,考虑如何能够使芯片的功耗最低。高速串行IO的应用,也丰富了FPGA 的应用范围,象xilinx的v2pro中的高速链路也逐渐被应用。总之,学无止境,当掌握一定概念、方法之后,就要开始考虑FPGA其它方面的问题了。 1.2 简述FPGA等可编程逻辑器件设计流程 系统设计电路构思,设计说明与设计划分,电路设计与输入(HDL代码、原理图),功能仿真与测试,逻辑综合,门级综合,逻辑验证与测试(综合后仿真),布局布线,时序仿真,板级验证与仿真,加载配置,在线调试。常用开发工具(Altera FPGA) HDL语言输入:Text Editor(HDL语言输入),还可以使用Ultra Edit 原理图输入:Schematic Editor IP Core输入:MegaWinzad 综合工具:Synplify/Synplify Pro,Qaustus II内嵌综合工具仿真工具:

ModelSim 实现与优化工具:Quartus II集成的实现工具有Assignment Editor(约束编辑器)、LogicLock(逻辑锁定工具)、PowerFit Fitter(布局布线器)、Timing Analyzer(时序分析器,STA分析工具)、Floorplan Editor(布局规划器)、Chip Editor(底层编辑器)、Design Space Explorer(设计空间管理器)、Design Assistant(检查设计可靠性)等。后端辅助工具:Assembler(编程文件生成工具),Programmer(下载编程工具),PowerGauge(功耗仿真器) 调试工具:SignalTap II(在线逻辑分析仪),SignalProbe(信号探针)。系统级设计环境:SOPC Builder,DSP Builder,Software Builder。 1.3 Quartus文件管理 1. 编译必需的文件:设计文件(.gdf、.bdf、EDIF输入文件、.tdf、verilog 设计文件、.vqm、.vt、VHDL设计文件、. vht)、存储器初始化文件(.mif、.rif、.hex)、配置文件(.qsf、.tcl)、工程文件(.qpf)。 2. 编译过程中生成的中间文件(.eqn文件和db目录下的所有文件.tdf,.hdb,.xml等) 3. 编译结束后生成的报告文件(.rpt、.qsmg 等) 4. 根据个人使用习惯生成的界面配置文件(.qws等) 5. 编程文件(.sof、.pof、.ttf等) 1.4 IC设计流程

序列检测器的设计实验报告

班级:生物医学工程141班姓名:刘玉奔学号:6103413018 设计性实验项目名称序列信号发生和检测器设计 (一)实验目的 1、进一步熟悉EDA实验装置和QuartusⅡ软件的使用方法; 2、学习有限状态机法进行数字系统设计; 3、学习使用原理图输入法进行设计。 (二)设计要求 完成设计、仿真、调试、下载、硬件测试等环节,在EDA实验装置上实现一个串行序列信号发生器和一个序列信号检测器的功能,具体要求如下: 1、先用设计0111010011011010序列信号发生器,其最后6BIT数据用LED显示出来; 2、再设计一个序列信号检测器,检测上述序列信号,若检测到串行序列“11010”则 输出为“1”,否则输出为“0”; 3、检查检测01011,即将发生的序列最后五位改为01011,为0111010011001011 (三)主要仪器设备 1、微机1台 2、QuartusII集成开发软件1套 3、EDA实验装置1套 (四)实验步骤 主要有三个模块 1:一个设计序列信号发生器 2:一个设计序列信号检测器 3:综合两个设计,通过对模块的调用达到最终效果 (五)实验数据 --设计时间:2016.10.29 --设计者:刘玉奔 --设计内容:1、先用设计0111010011001011序列信号发生器,其最后6BIT数据用LED 显示出来; --2、再设计一个序列信号检测器,检测上述序列信号,若检测到串行序列“01011”则输出

为“1”,否则输出为“0”; --序列信号发生器部分 LIBRARY IEEE;--声明IEEE库 USE IEEE.STD_LOGIC_1164.ALL;--允许使用IEEE中程序包STD_LOGIC_1164 ENTITY serialsignalgenerator IS PORT(CLK,RST:IN STD_LOGIC; CO:OUT STD_LOGIC; LED0,LED1,LED2,LED3,LED4,LED5:OUT STD_LOGIC); END behav; 得到symbol file: 序列信号检测器: LIBRARY IEEE;--声明IEEE库 USE IEEE.STD_LOGIC_1164.ALL;--允许使用IEEE中程序包STD_LOGIC_1164 ENTITY serialsignaltest IS PORT(CLK,DIN,CLR:IN STD_LOGIC; SS:OUT STD_LOGIC; LED0,LED1,LED2,LED3,LED4:OUT STD_LOGIC);

郑州航院EDA实验报告模板

《EDA技术及应用》 实验报告 系部:电子通信工程系 指导教师:张松炜 学号:121307214 ____ 姓名:李俊杰_______

2014___年_6___月__19_日 实验一点亮LED设计 一、实验目的 通过此试验可以让大家逐步了解,熟悉和掌握FPGA开发软件Quartus II的使用方法及VerilogHDL的编程方法。 二、实验内容 本实验是一个简单的点亮LED灯的实验,具体包括: 1)使用Quartus II建立一个工程; 2)Quartus II工程设计; 3)设置编译选项并编译硬件系统; 4)下载硬件设计到目标FPGA; 5)观察LED的状态; 三、实验原理 和单片机一样,向片子里写进数据,输出高电平(对于共阴极的),或者输出低电平(对于共阳极)。根据Cyclone片子已经分配好的针脚设置好针脚。 四、实验步骤 建立-----个工程-----输入程序-----软件编译 ------生成下载文件-----下载—调试。

五、实验程序 module led1(led); //模块名led1 output[7:0] led; //定义输出端口 reg[7:0] led; //定义寄存器 always //过程1 begin led = 8'b10101010; //输出0xAA end endmodule 六、思考题 (1)写出使用QuartusII软件开发工程的完整的流程。 建立一个工程—输入程序—软件编译综合—生成下载文件— 下载—硬件调。 实验二流水灯实验 一、实验目的 通过此试验让大家进一步了解熟悉和掌握FPGA开发软件的使用方法及软件编程方法。学习简单的时序电路的设计和硬件测试。 二、实验内容 本实验的内容是建立用于控制LED流水灯的简单硬件电路,要求在SmartSOPC上实现LED1-LED8发光二极管流水灯的显示。 三、实验原理

相关文档
相关文档 最新文档