




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
57电子科技大学实 验 报 告学生姓名:学号: 指导教师:冯健实验地点:科研楼B座453实验时间:2008.3.18一、 实验室名称:二、 实验项目名称:数字钟的FPGA设计与实现三、 实验学时:16学时四、 实验原理:数字钟电路的基本结构(图1所示)由两个6O进制计数器和一个24进制计数器组成,分别对秒、分、小时进行计时,当计时到23时59分59秒时,再来一个计数脉冲,则计数器清零,重新开始计时。六十进制计数器系统时钟秒计数器数据选择器六十进制计数器译码器显示码数码管数码管数码管秒分时秒脉冲分脉冲时脉冲BCD码BCD码BCD码扫描码产生图1 实现方案电路框图秒计数器的计数时钟clk为1 Hz的标准信号,可以由晶振产生的信号通过分频得到。当数字钟处于计时状态时,秒计数器的进位输出信号carry 作为分钟计数器的计数信号,分钟计数器的进位输出信号carry 又作为小时计数器的计数信号。时、分、秒的计时结果通过6个数码管来动态显示。五、 实验目的:1. 掌握计数器的基本设计方法;2. 对利用VHDL硬件描述语言设计相关模块有一定的了解;3. ALTERA MAXPLUSII 软件的使用。4. 要求:能够自动计时,并下载到实验箱中用七段数码管显示出时、分、秒六、 实验内容:1. 在MAX+PLUSII软件上用VHDL语言编写源程序实现数字钟的五 个模块。2. 将所编程序进行编译并调试改错,最终实现正确仿真。3. 选择芯片型号:Device FLEX10K EPF10K10LC84-44. 管脚分配: Programmer Floorplan Editor 5. 将实验箱中的管脚按照芯片管脚分配好。6. 编译适配: Complier7. 启动 Programmer Hardware Type Byte blaster Ok8. JTAGMulti-Device JTAG Chain 选择要下载的文件: XXX.pof Add Ok9. ProgrammerConfigure七、 实验器材(设备、元器件)1. EDA实验箱 一只2. MAXPLUS软件 一套八、 实验步骤:1. 分别建立模块源程序。运行MAXPLUS II软件,首先选择“File”中的“New”, 建立一个新的VHDL文件;编辑VHDL源程序选择“Text Editor file”。 输入五个模块的源程序,将源程序存为VHDL文件格式,分别进行编译。2. 分别建立模块仿真文件,仿真源文件。首先,选择“FileNew”, 建立一个新的仿真文件。选择“Waveform Editor file”,并选择文件扩展名为“.scf”,得到仿真波形窗口。添加仿真波形名称:点击“NodeEnter Nodes from SNF”,出现仿真波形窗口;点击右上方“List”,左边窗口显示全部信号名称,将待仿真的信号添加到右边窗口;点击“OK”。然后,设置仿真波形文件为当前工程:选择“FileProjectSet Project to Current File”;保存,选择正在使用的“驱动器目录”,输入文件名“.scf”点击“OK”。最后,编辑输入信号:点击输入信号名称,利用左边工具栏编辑输入的激励信号,点击“MAX+plus IISimulatorStart”进行仿真。3采用原理图方式Graphic Editor file (*.gdf),将这五个模块连接起来,这是最方便,最直观的逻辑输入方法。输入逻辑元件,没有的逻辑元件,如输入输出可在Symbol Libraries框中选择prim库,在Symbol Name栏输入input或者output。设计好的原理图如图2所示:图2 数字钟电路图4.整体编译。上面已经完成了原理图的输入,需要给设计指定一个工程名,选择File-Project-Set Project to Current File,将当前工程名设为当前文件名。准备开始编译,选择MAX+plus II-Compiler,弹出编译窗口,按 Start 开始编译。如图3所示:图3 整体编译窗口编译结束之后,在正确无误的情况下可以进行下一步的仿真5. 整体仿真。首先要编辑一个波形文件,打开MAX+plus II-Waveform Editor:图4 波形仿真界面 然后确定仿真的时长,选择File-End Time,输入100us,确定;还需要确定仿真的最小时间单位,选择Option-Grid Size,输入50ns,确定;下面开始输入要仿真的信号名称,选择Node-Enter Node From SNF,按=选择要增加的Nodes,点击输入信号名称,利用左边工具栏编辑输入的激励信号,点击“MAX+plus IISimulatorStart”进行仿真。6. 选择芯片型号:Device FLEX10K EPF10K10LC84-47. 管脚分配: Programmer Floorplan Editor 8. 将实验箱中的管脚按照芯片管脚分配好。图5 实验系统图6 CPLD主芯片及引脚9. 编译适配: Complier10. 用Altera的ByteBlaster下载电缆将编程文件.pof从电脑的并行口直接写入器件。主板左上角有一10个脚的 JTAG IN 插座,为编程接口。通过下载电缆与计算机的并口相连。启动 Programmer Hardware Type Byte blaster Ok。11. JTAGMulti-Device JTAG Chain 选择要下载的文件: XXX.pof Add Ok12. ProgrammerConfigure九、 实验数据及结果分析:程序:秒计数器模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity newsecond is port (clk,reset:in std_logic; sec1,sec2: out std_logic_vector(3 downto 0); carry: out std_logic);end newsecond;architecture t1 of newsecond issignal sect1,sect2: std_logic_vector(3 downto 0);begin process(reset,clk) begin if reset=1 then sect1=0000; sect2=0000; elsif (clkevent and clk=1) then if sect1=1001 then sect1=0000; if sect2=0101 then sect2=0000; else sect2=sect2+1; end if; else sect1=sect1+1; end if; if (sect1=1001 and sect2=0101) then carry=1; else carry=0; end if;end if; end process; sec1=sect1; sec2=sect2;end t1;分计数器模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity minute is port (clk,reset:in std_logic; min1,min2: out std_logic_vector(3 downto 0); carry: out std_logic);end minute;architecture t2 of minute issignal mint1,mint2: std_logic_vector(3 downto 0);begin process(reset,clk) begin if reset=1 then mint1=0000; mint2=0000; elsif (clkevent and clk=1) then if mint1=1001 then mint1=0000; if mint2=0101 then mint2=0000; else mint2=mint2+1; end if; else mint1=mint1+1; end if; if (mint1=1001 and mint2=0101) then carry=1; else carry=0; end if;end if; end process; min1=mint1; min2=mint2;end t2;时计数器模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity hour is port (clk,reset:in std_logic; hour1,hour2: out std_logic_vector(3 downto 0); carry: out std_logic);end hour;architecture t3 of hour issignal hourt1,hourt2: std_logic_vector(3 downto 0);begin process(reset,clk) begin if reset=1 then hourt1=0000; hourt2=0000; elsif (clkevent and clk=1) then if (hourt2=0010 and hourt1=0011) then hourt1=0000; hourt2=0000; elsif (hourt20010 and hourt1=1001) then hourt1=0000; hourt2=hourt2+1; else hourt1=hourt1+1; end if; if (hourt1=0011 and hourt2=0010) then carry=1; else carry=0; end if;end if; end process; hour1=hourt1; hour2=hourt2;end t3;数据选择器模块library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity m6_1scan isport(clkscan,reset:in std_logic; in1,in2,in3,in4,in5,in6: in std_logic_vector(3 downto 0); data:out std_logic_vector(3 downto 0); sel: out std_logic_vector(2 downto 0);end m6_1scan;architecture t1 of m6_1scan is signal count: std_logic_vector(2 downto 0);beginprocess(reset,clkscan) begin if reset=1 then data=0000; elsif (clkscanevent and clkscan=1) then if count5 then count=count+1; else count=000; end if; end if; seldatadatadatadatadatadatadoutedoutedoutedoutedoutedoutedoutedoutedoutedo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 室内装修设计合同模板
- 2025年江西省全国优创名校高考英语联考试卷(4月份)
- 杰出成都居间合同示例2025
- 2024年04月江西赣州经济技术开发区疾病预防控制中心见习生招聘2人笔试历年专业考点(难、易错点)附带答案详解
- 2024年04月郴州市市直卫生事业单位招聘引进高层次和急需紧缺人才49人-2024年湖南笔试历年专业考点(难、易错点)附带答案详解
- 矿石提取中的化学工艺事故处理考核试卷
- 烟草种植信息化平台建设考核试卷
- 橄榄球场安全设施验收考核试卷
- 木工产业政策环境与市场前景分析报告考核试卷
- 液力元件在高速公路设备中的应用考核试卷
- 人教版数学五年级下册分数与除法课件
- 光学信息处理第六章光学图像识别课件
- 诚信期末考试构建诚信考场宣传PPT模板
- 全国电网情况介绍课件
- 人教版 七年级数学下册平行线中的“拐点”问题课件
- DBJ50-T-398-2021 城轨快线施工质量验收标准
- 工程进度检查评分表
- 《观察人口腔上皮细胞结构》说课课件
- 箱变施工方案
- 2022四川成都市邛崃市天府现代种业园管理委员会公开招聘员额制社会化专业人才9人(必考题)模拟卷和答案
- 2022云南省气象事业单位公开招聘气象类专业(第一批)高校毕业生45人(必考题)模拟卷及答案
评论
0/150
提交评论