FPGA实验报告
更新时间:2024-03-09 00:06:01 阅读量: 综合文库 文档下载
FPGA实验报告
专 业:电子信息科学与技术
注:以下所有设计均选用DE2-115开发板
FPGA 器件选用Cyclone IV E:EP4CE115F29C7 所有设计均在开发板上已通过硬件验证
8位全加器
1. 源代码 library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity adder8 is
port (a,b: in std_logic_vector(7 downto 0);
cin: in std_logic;
dout: out std_logic_vector(7 downto 0);
cout: out std_logic);
end entity adder8;
architecture behav of adder8 is
signal data: std_logic_vector(8 downto 0); begin
data<=('0'&a)+('0'&b)+(\cout<=data(8);
dout<=data(7 downto 0); end behav;
2. 仿真结果
3. 引脚分配
通过DE2-115上9个LEDG,17个拨动开关对应八位全加器中所有输入输出。其中LEDG[8]表示进位输出cout,LEDG[7]~LEDG[0]对应dout(7 downto
0),SW[7]~SW[0]对应a(7 downto 0),SW[15]~SW[8]对应b(7 downto 0),SW[16]对应低位进位输入端cin。具体引脚分配在工程文件中。
智能抢答器
1. 设计要求
设计一个4人参加的智力竞赛抢答器,每人有1个对应的按钮。在主持人的主持下,参赛者通过抢先按下按钮获得答题资格,同时七段数码管会显示抢答成功者的号码。
2. 基本功能
4人抢答器,要求抢答开始后4人抢答,抢答结果在数码管上显示,复位后下一次抢答开始
3. 设计模块
抢答模块
源代码 library ieee;
use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity qdq1 is port ( qout: out std_logic_vector(3 downto 0); host : in std_logic; ----CONNECT TO RESET answer : in std_logic_vector(3 downto 0); light : out std_logic_vector(3 downto 0) );
end qdq1;
architecture rtl of qdq1 is signal lock:std_logic; begin
process (host,answer,lock)
begin
if(host='0')then light<=\ lock<='0'; qout<=\
elsif (lock='0')then case answer is
when \ when \ when \ when \ when others=>light<=\ end case; end if;
end process; end rtl;
显示模块 源代码 library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity decode7 is port(hex:out std_logic_vector(6 downto 0); qin: in std_logic_vector(3 downto 0); rest: in std_logic); end decode7;
architecture behav of decode7 is begin process(qin) begin if rest ='0' then hex(6 downto 0)<=\ else case qin is when \ when \ when \ when \ when others=>hex(6 downto 0)<=\
end case; end if; end process; end behav;
顶层模块设计采用原理图输入
4. 引脚分配 SW[0]对应host(主持人),SW[4]~SW[1]对应四个回答者a(3 downto 0),
LEDG(3)~LEDG(0)对应显示a(3 downto 0)的显示状态。七段数码管对应显示四个回答者的相应编号。具体引脚分配在工程文件中。
数字钟
1. 功能说明
能进行正常的时、分、秒计时功能,并分别由相应数码管上显示时(24hour)、分(60min)、秒(60s)的时间,且能具有校时功能。
2. 设计思路
先设计出60进制(分,秒),24进制计数器(时),分频器,2选1选择器,七段数码管译码这些子模块,再进行顶层模块综合设计。
3. 模块设计
------------------------------- --60进制模块源代码--- -------------------------------
2. 设计思路
采用分模块设计的思想,先设计分频,显示等子模块,再设计顶层模块并综合。
3. 模块设计
---------------------------------- ----50MHZ分频为1HZ---- ---------------------------------
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity fp is
port(clk:in std_logic; clk1hz:out std_logic); end fp;
architecture behav of fp is
signal cnt:integer range 0 to 49999999; begin
process(clk)
begin if clk'event and clk='1' then if cnt=49999999 then cnt<=0; else cnt<=cnt+1; end if; if cnt<25000000 then clk1hz<='1'; else clk1hz<='0'; end if; end if;
end process; end behav;
--------------------- -----2 分频------- ---------------------
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity fp1 is
port(clk:in std_logic; clkhz:buffer std_logic); end fp1;
architecture behav of fp1 is signal cnt: integer range 0 to 1; begin
process(clk) begin if clk'event and clk='1' then if cnt=1 then cnt<=0; else cnt<=cnt+1; end if; if cnt<1 then clkhz<='1'; else clkhz<='0'; end if; end if; end process; end behav;
------------------------------ -----LED 显示模块------ ------------------------------
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;
entity show is
port(clk:in std_logic; aout:out std_logic_vector(0 to 7)); end show;
architecture behav of show is begin
process(clk)
variable cnt:integer range 0 to 23; begin if (clk'event and clk='1') then if (cnt>24) then cnt:=0; else cnt:=cnt+1; end if; case cnt is ----左向流水----- when 0=> aout<=\ when 1=> aout<=\ when 2=> aout<=\ when 3=> aout<=\ when 4=> aout<=\ when 5=> aout<=\ when 6=> aout<=\ ---------------------- ----右向流水----- when 7=> aout<=\ when 8=> aout<=\ when 9=> aout<=\ when 10=> aout<=\ when 11=> aout<=\ when 12=> aout<=\ when 13=> aout<=\ when 14=> aout<=\ --------------------- ----全亮全灭---- when 15=> aout<=\ when 16=> aout<=\ --------------------------------- ----高四灯-低四灯闪烁-- when 17=> aout<=\ when 18=> aout<=\
when 19=> aout<=\ when 20=> aout<=\ ----------------------- ----隔灯闪烁------ when 21=> aout<=\ when 22=> aout<=\ when 23=> aout<=\ ------------------ when others=> null; end case; end if; end process; end behav;
顶层模块采用原理图输入
4. 引脚分配 LEDG[0]~LEDG[7]对应aout (0 to 7);SW[0]控制闪烁时间间隔,SW[0]为‘0’时,闪烁间隔为1 s ,SW[0]为‘1’时,闪烁间隔为2 s ,具体引脚分配在工程文件中。
结语:
通过综合实验的思考和设计,对一个项目的整体设计有了进一步认识,
加深了对VHDL语言的了解,提高了编程能力。同时,锻炼了独立发现问题解决问题的能力,提高了个人素质。利用硬件描述语言VHDL编程,借助Altera公司
的quartus II及modlesim软件环境下进行了编译及仿真测试,通过FPGA芯片实现了几个实际可行的的控制系统,如数字时钟,设计由于采用了EDA技术,不但大大缩短了开发研制周期,提高了设计效率,而且使系统具有设计灵活,实现简单,性能稳定的特点。
这是一次颇有收获的实训, 这次的实训中,我们更进一步体会到自主学习和团队合作的乐趣与必要性。为了完成项目,在网络上找到了许多相关资料,大大扩充自己的知识面,使许多以前想解决却无法解决的困难迎刃而解, 这才知道老师的良苦用心。相信以后的我不管是做网络亦或是从事软、硬件开发,都会有一个扎实的基础和良好的开发习惯的。
通过这次课程设计真正体会到了课本上的知识是在做解决实际的问题时,是远远不够的,实际问题不是像理论知识那样,更多的是需要自己动手去操作,遇到问题时参考资料,咨询老师或是其他方式去解决问题,在此次设计过程中提升了如何解决问题的能力,找对方法,多动手实践才能解决问题。
不管这样,这次课程设计终于顺利完成了,我学也到很多实用的知识,学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和与人合作共同提高,都受益非浅。在此,感谢老师的细心指导!
若需工程文件夹可联系:1927377679
正在阅读:
FPGA实验报告03-09
采用EPON技术组建校园网 - 图文05-27
第二章社会心理学的派别及理论01-18
2019年高考物理靠前30天特训计算题专项训练(共10套)含答案10-25
发动机齿轮齿数09-01
一年级下册_百数表07-22
新、改、扩建工程“三同时”管理制度01-27
PLC面试题04-09
第二篇洁净钢发展及钢中夹杂物控制07-19
知识竞赛题库2018.01 - 图文11-09
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 实验
- 报告
- FPGA
- C语言课程设计指导书2011
- 部编中考初中语文阅读理解 - 解题技巧+专项训练练习题(含答案解
- 卸料小车自动定位系统 - 图文
- 《西方世界的劫难3》1.18年版炼化合成公式
- 2013届高考历史一轮复习精品学案:第13课时 - 解放人类的阳光大
- 谈传统绘画元素在动画造型中的运用
- WLAN协议
- 读《趣味气象小百科》有感-400字四年级作文读后感
- 西方现代主义思潮与流派 - 存在主义之自由选择
- 光学玻璃分类1
- 物料采购系统 - 图文
- 探索桥梁施工中旋挖钻孔桩的施工质量控制
- 最新-人教版小学二年级语文下册复习资料全套 精品
- DiscoveryChannel电驴资源ed2k
- 山茶油精炼厂项目可行性研究报告可研报告
- 幼儿音乐教育中存在的问题与对策的研究开题报告
- 绵阳市辖区设施农用地管理办法(初改)
- 2012年二年级语文第一学期近反义词答案
- 2017-2018年学年度第一学期幼儿园大班中秋节活动方案与2017-2018
- 盐的妙用