




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FPGA与硬件描述语言实验报告武汉工程大学电气信息学院FPGA与硬件描述语言实验报告1 专业班级13电信(2)班实验时间2015年 月日学生学号1304201201实验地点4B 315学生姓名陈寰指导教师曹新利实验项目闪烁的LED实验类别基础实验实验学时4学时实验 目1. 掌握Quartusll设计电路的基本流程, 熟悉VHDL程序,分别设计分频电路,LED的闪烁延时计数程序。及 要 求2. 将设计好的LED闪烁电路程序下载到 DEII开发板上进行实物测试。成绩评定表类另S评分标准分值得分合计上机表现按时出勤、遵守纪律 认真完成各项实验内容30分报告质量程序代码规范、功能止确 填写内容完整、体
2、现收获70分说明:评阅教师:日期:2015年12 月1 日实验内容(说明:此部分应包含:实验内容、实验步骤、实验数据与分析过程等)一、实验内容1用VHDL语言设计分频器,得到 0.1Hz 1Hz的时钟信号;2设计闪烁延时程序,控制发光二极管的闪烁。二、实验方法与步骤分频电路的产生1. 分频原理:50MHz晶振信号经过一次 50分频得到1MHz信号,再经过三次 100分频可得到1Hz信号,0.伯z信号可由1Hz信号经10分频得到2. 50分频器:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_ un sig ned.all;
3、ENTITY cnt50 ISPORT(clk:IN STD_LOGIC;en:IN STD_LOGIC;clr:IN STD_LOGIC;cout:OUT STD_LOGIC;q:buffer STD_LOGIC_VECTOR(5 DOWNTO 0);END cn t50;ARCHITECTURE SYN OF cnt50 IS BEGIN process(clk,clr) begi n if clr='1' then q<="000000"elsif clk'eve nt and clk='1' the n if en=
4、39;1' then if q="110001" then q<="000000"else q<=q+1;end if;e nd if;end if;if q="110001"then cout<='1'else cout<='0'end if;end process;END SYN;3. 100分频器:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_ un sig ned.all;ENTITY cn
5、t100 ISPORT(clk:IN STD_LOGIC;en:IN STD_LOGIC;clr:IN STD_LOGIC;cout:OUT STD_LOGIC;q:buffer STD_LOGIC_VECTOR(6 DOWNTO 0);END cn t100;ARCHITECTURE SYN OF cnt100 ISBEGIN process(clk,clr) begi n if clr='1' then q<="0000000" elsif clk'eve nt and clk='1' the n if en='1&
6、#39; then if q="1100011" then q<="0000000"else q<=q+1;end if;e nd if;end if;if q="1100011"then cout<='1'else cout<='0'end if;end process;END SYN;4. LED闪烁定时电路:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_ un sig ned.all;ENTITY c
7、nt5 ISPORT(clk:IN STD_LOGIC;en:IN STD_LOGIC;clr:IN STD_LOGIC;cout:OUT STD_LOGIC;q:buffer STD_LOGIC_VECTOR(2 DOWNTO 0) );END cnt5;ARCHITECTURE SYN OF cnt5 IS BEGIN process(clk,clr) beg in if clr='1' then q<="000"elsif clk'eve nt and clk='1' the n if en='1' the
8、n if q="100" then q<="000"else q<=q+1;end if;e nd if;end if;if q="100"then cout<='1'else cout<='0:end if;end process;END SYN;5. 顶层文件,将所有底层原件集成为顶层设计文件三、实验数据与结果分析实验总结(说明:总结实验认识、过程、效果、问题、收获、体会、意见和建议。)FPGA与硬件描述语言实验报告武汉工程大学电气信息学院FPGA与硬件描述语言实验报告2 专业班级1
9、3电信(2)班实验时间2015年 月日学生学号1304201201实验地点4B 315学生姓名陈寰指导教师曹新利实验项目从左到右的流水灯实验类别基础实验实验学时4学时实 验 目 的 及 要 求1. 接在fpga的8个LED从左到右循环依次点亮,产生走马灯效果2. 深入掌握晶振分频的原理,并实现;3 通过设计计数器的不冋计数值,来控制若干个发光二极管的逐次点亮。成绩评定表类另S评分标准分值得分合计上机表现按时出勤、遵守纪律 认真完成各项实验内容30分报告质量程序代码规范、功能止确 填写内容完整、体现收获70分说明:评阅教师:日期:2015年月日实验内容(说明:此部分应包含:实验内容、实验步骤、实
10、验数据与分析过程等)一、实验内容1. 接在fpga的8个(或者更多个)LED从左到右循环依次点亮,产生流水灯效果2. 深入掌握晶振分频的原理,并实现;3通过设计计数器的不同计数值,来控制若干个发光二极管的逐次点亮。二、实验方法与步骤1. 深入掌握晶振分频的原理,并实现;由于实验开发板上使用的是 50MHz的晶振,所以先将晶振分频的到1Hz的信号供后来使用,同样采用一个50分频和三个100分频2通过设计计数器的不同计数值,来控制若干个发光二极管的逐次点亮。把1Hz的信号做为延时程序的时钟信号,再把延时程序的输出信号作为八进制计数器的时钟信号,计数器从0开始计数,计数到7后清零,0到7每个数对应一
11、个发光二极管,计到哪个数对应的那个发光二极管 亮从而实现发光二极管的逐次点亮,本实验相关的VHDL描述如下所示:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY Ied8 ISPORT(clk : IN STD_LOGIC;en : IN STD_LOGIC;clr : IN STD_LOGIC;output : OUT STD_logic_vector (7 DOWNTO 0);q : BUFFER STD_logic_vector (2 DOWNTO 0); END led8;AR
12、CHITECTURE SYN OF led8 ISBEGINPROCESS(clk,clr)BEGINIF clr='1' THEN qv="000"ELSIF clk'EVENT AND clk='1' THENIF en='1' THEN IF q="111"THEN q<="000"ELSE q<=q+1; END IF;END IF;END IF;case(q) iswhen "000"=> output<="0000
13、0001" when "001"=> output<="00000010" when "010"=> output<="00000100" when "011"=> output<="00001000" when "100"=> output<="00010000" when "101"=> output<="00100000"
14、 when "110"=> output<="01000000" when "111"=> output<="10000000" whe n others=> output<="00000000" end case;END PROCESS;END SYN;、实验数据与结果分析fI :筈E -L i -II - I'空鱼匹空EC冨孟 3 :aiip i »LFLTLrLTjirLFLiLrLnrLFLvTjLrLFLmLFLLrLTnnBrL曰
15、LrLnrLrLrLtnjmjmrLTLnnjbtf L 0 oL !i|L i!1_LFl11;k卜1 n_ii Lii H1IFT til'F"|.n”mu卜MAri ni r-1a fni HiL EiL »一i1LLrtf I"ii il_= ru*T_实验总结(说明:总结实验认识、过程、效果、问题、收获、体会、意见和建议。)武汉工程大学电气信息学院FPGA与硬件描述语言实验报告3 专业班级13电信(2)班实验时间2015年 月日学生学号1304201201实验地点4B 315学生姓名陈寰指导教师曹新利实验项目单只数码管循环显示0F; 8只数码管动
16、态显示多个不同字符。实验类别基础实验实验学时4学时实1.掌握晶振芯片的分频过程及原理。验目2.设计共阴极和共阳极七段数码管的显示原理,编写驱动译码VHDL代码。的3.通过时序控制,令单只数码管循环显示,形成流水灯的效果,并可以改变显示的时及要间。求4. 8只数码管动态显示多个不同字符,数码管动态扫描显示07。成绩评定表类另S评分标准分值得分合计上机表现按时出勤、遵守纪律 认真完成各项实验内容30分报告质量程序代码规范、功能止确 填写内容完整、体现收获70分说明:评阅教师:日期:2015年月日成绩评定表类 别评分标准分值 得分合计实验内容(说明:此部分应包含:实验内容、实验步骤、实验数据与分析过
17、程等)一、实验内容1. 掌握晶振芯片的分频过程及原理。2. 设计共阴极和共阳极七段数码管的显示原理,编写驱动译码VHDL弋码。3. 通过时序控制,令单只数码管循环显示0 F,并可以改变显示的时间。4. 8只数码管动态显示多个不同字符,数码管动态扫描显示07。二、实验方法与步骤1. 对晶振芯片进行分频:从50MHZ分频到 Hz。2. 设计共阴极和共阳极七段数码管的显示原理,编写驱动译码VHDL代码:共阴极LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY smgK ISPORT(q : i
18、n STD_logic_vector (3 DOWNTO 0);OUTPUT : OUT STD_LOGIC_VECTOR (6 DOWNTO 0);END smgK;ARCHITECTURE SYN OF smgK ISBEGINPROCESS(q)BEGINCASE (q) iswhe n"0000" => outPUT<="0111111"whe n"0001" => outPUT<="0000110"whe n"0010" => outPUT<=&qu
19、ot;1011011"whe n"0011" => outPUT<="1001111"whe n"0100" => outPUT<="1100110"whe n"0101" => outPUT<="1101101"whe n"0110" => outPUT<="1111101"whe n"0111" => outPUT<="0000111
20、"whe n"1000" => outPUT<="1111111"whe n"1001" => outPUT<="1101111"when others => outPUT<="0000000"end case;END PROCESS;END SYN;3. 通过时序控制,令单只数码管循环显示,形成流水灯的效果,并可以改变显示的时间。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_
21、UNSIGNED.ALL;ENTITY SHUMAGUANA ISPORT(clk : IN STD_LOGIC;en : IN STD_LOGIC;clr : IN STD_LOGIC;q : BUFFER STD_logic_vector (3 DOWNTO 0);OUTPUT : OUT STD_LOGIC_VECTOR (7 DOWNTO 0);END SHUMAGUANA;ARCHITECTURE SYN OF SHUMAGUANA IS BEGINPROCESS(clk,EN,CLR)BEGINIF clr='1' THEN q<="0000&quo
22、t;ELSIF clk'EVENT AND clk='1' THENIF en='1' THEN IF q="1001"THEN q<="0000"ELSE q<=q+1;END IF;END IF;END IF;CASE (q) iswhe n"0000" => outPUT<="11000000"whe n"0001" => outPUT<="11111001"whe n"0010&qu
23、ot; => outPUT<="10100100"whe n"0011" => outPUT<="10110000"whe n"0100" => outPUT<="10011001"whe n"0101" => outPUT<="10010010"whe n"0110" => outPUT<="10000010"whe n"0111" =
24、> outPUT<="11111000"whe n"1000" => outPUT<="10000000" whe n"1001" => outPUT<="10010000" whe n others => n ull;end case;END PROCESS;END SYN;Bal 1*0 > -J 瞪审古卜IKjij Iruf svAtaiULb "Xi :nEL1 ->T” *-:尸 lUM M.L|r EdBi 占Lrr a
25、r = nfi.r hi”lute: IWUIEMS|J|'N.dS 4L' hlkIMvj* tiwatlMM L*L« EM寸SMIr-lhH I 邯;1*1 Fl* i hi g A - -¥ Ij 1 1 i - 1 it nz f13«a ia4prwt Fl5 M)4. 8只数码管动态显示多个不同字符,数码管动态扫描显示07。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SHUMAGUANK ISPORT(clk : IN
26、STD_LOGIC;clr : IN STD_LOGIC;q : BUFFER STD_logic_vector (2 DOWNTO 0); output : OUT STD_LOGIC_VECTOR (6 DOWNTO 0); outsel : OUT STD_LOGIC_VECTOR (7 DOWNTO 0); sel : BUFFER bit_VECTOR (7 DOWNTO 0););END SHUMAGUANK;ARCHITECTURE SYN OF SHUMAGUANK IS sig nal en : IN STD_LOGIC;BEGINsel<="00000001
27、"PROCESS(clk,EN,CLR)BEGINoutsel<=to_STDLOGICVECTOR(sel); if clk=1 the n sel<=sel rol 1;e nd if;IF clr='1' THEN qv="000"ELSIF clk'EVENT AND clk='1' THENIF en='1' THEN IF q="111"THEN q<="000" ELSE q<=q+1; END IF;END IF; END IF;
28、CASE (q) iswhe n"000" => outPUT<="0111111" whe n"001" => outPUT<="0000110" whe n"010" => outPUT<="1011011" whe n"011" => outPUT<="1001111" whe n"100" => outPUT<="1100110"
29、 whe n"101" => outPUT<="1101101" whe n"110" => outPUT<="1111101" whe n"111" => outPUT<="0000111" whe n others => outPUT<="0000000" end case;if sel(7)=1 the n en=1;else en=0;END PROCESS;END SYN;、实验数据与结果分析实验总
30、结(说明:总结实验认识、过程、效果、问题、收获、体会、意见和建议。)武汉工程大学电气信息学院FPGA与硬件描述语言实验报告4 专业班级13电信班实验时间2015年 月日学生学号1304201220实验地点4B 315学生姓名张鹏指导教师曹新利实验项目100计数器并数码管显示实验类别基础实验实验学时4学时实 验 目 的 及 要 求1. 掌握晶振芯片的分频过程及原理。2. 设计100计数器的时序电路,编写VHDL代码。3. 通过时序控制,用三个数码管显示100计数器的计数值4. 下载到开发板上进行验证。成绩评定表类另S评分标准分值得分合计上机表现按时出勤、遵守纪律 认真完成各项实验内容30分报告质
31、量程序代码规范、功能止确 填写内容完整、体现收获70分说明:评阅教师:日期:2015年 月日实验内容(说明:此部分应包含:实验内容、实验步骤、实验数据与分析过程等)一、实验内容1. 掌握晶振芯片的分频过程及原理。2. 设计100计数器的时序电路,编写VHDL代码。3. 通过时序控制,用三个数码管显示100计数器的计数值4. 下载到开发板上进行验证。二、实验方法与步骤1. 掌握晶振芯片的分频过程及原理。实验开发板上的晶振为 50MHz计数时一秒钟计一个数则计数器时钟为1Hz信号,要达到要求须将 50MHz信号经过一次50分频和三次100分频2. 设计100计数器的时序电路,编写VHDL代码。LI
32、BRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cn t100 ISPORT (clk : IN STD_LOGIC;en : IN STD_LOGIC;clr : IN STD_LOGIC;cout : OUT STD_LOGIC;q : BUFFER STD_logic_vector (6 DOWNTO 0);END cnt100;ARCHITECTURE SYN OF cnt100 ISBEGINPROCESS(clk,clr)BEGINIF clr='1' THE
33、N q<="0000000"ELSIF clk'EVENT AND clk='1' THENIF en='1' THEN IF q="1100011"THEN q<="0000000"ELSE q<=q+1;END IF;END IF;END IF;IF q="1100011"THEN cout<='1: ELSE cout<='0:END IF;END PROCESS;END SYN;3. 通过时序控制,用三个数码管显示100计
34、数器的计数值LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY smg3 ISPORT (cin : in STD_LOGIC;qin : in STD_logic_vector (6 DOWNTO 0);smg01 : out STD_logic_vector (6 DOWNTO 0); smg10 : out STD_logic_vector (6 DOWNTO 0);smg100 : out STD_logic_vector (6 DOWNTO 0););END smg3;ARCHITECTURE SYN OF smg3 ISBEGINPROCESS© n,qi n)variable date01,date10 : in teger range 9 dow nto 0;BEGINdate10:=c onv_in teger( qin)/10;date01:=c onv_in teger( qin)m od10;case (date01)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 检验科室承包合同
- 建筑工程施工合同书合同
- 房屋买卖按揭合同书
- 工业品买卖合同经典
- 交通标牌采购投标合同
- 存量房买卖房屋租赁合同出租
- 非公开协议合同
- 鲜奶代加工合同协议书
- 挖机按天施工合同协议书
- 公司直播协议合同
- 咯血病人的护理
- 安徽省2024年中考道德与法治真题试卷(含答案)
- 《公路建设项目文件管理规程》
- 2023年北京按摩医院招聘笔试真题
- 西门子S7-1500 PLC技术及应用 课件 第5、6章 S7-1500 PLC 的通信及其应用、S7-1500 PLC的工艺指令应用
- 中国生殖支原体感染诊疗专家共识(2024年版)解读课件
- 人教版小学三年级下期数学单元、期中和期末检测试题
- 工会驿站验收
- 【全友家居企业绩效考核问题及其建议(论文8500字)】
- 职业技术学校《云计算运维与开发(初级)》课程标准
- 幼儿园大班数学练习题直接打印
评论
0/150
提交评论