




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
EDAEDA 实习设计报告实习设计报告 课题名称:VHDL 实现抢答器的设计 专业班级: 信息 08-2 姓 名: 韩松 06 号 指导老师: 蔡靖 2011 年 7 月 7 日 目 录 一 EDA 数字技术的发展及应用.2 1.1 EDA 技术的发展与应用.2 1.2 设计的主要内容及要求.2 1.3 本次设计的目的及意义 .3 二 设计整体思路.3 三 单元模块设计部分.4 3.1 抢答模块的设计 .2 3.2 计分模块的设计 .3 3.3 计时模块的设计 .4 3.4 数据选择模块的设计 .6 3.5 例化连接部分 .7 五 EDA 抢答器设计心得 .9 参考文献.11 一 EDA 数字技术的发展及应用 1.1 EDA 技术的发展与应用 现代电子产品几乎渗透了社会的各个领域 EDA 技术是电子设计的发展趋势, EDA 工具从数字系统设计的单一领域,应用范围己涉及模拟、微波等多个领域, 可实现各个领域电子系统设计的测试、设计仿真和布局布线等。设计者只要完 成对电子系统的功能描述,就可利用计算机和 EDA 工具,进行设计处理,最终 得到设计结果。 随着大规模集成电路技术和计算机技术的不断发展,即使是普通的电子产 品的开发,EDA 技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的 开发周期大为缩短、性能价格比大幅提高。不言而喻,EDA 技术将迅速成为电 子设计领域中的极其重要的组成部分。从目前的 EDA 技术来看,其发展趋势是 政府重视、使用普及、应用文泛、工具多样、软件功能强大。 在信息通信领域,要优先发展高速宽带信息网、深亚微米集成电路、新 型元器件、计算机及软件技术、第三代移动通信技术、信息管理、信息安全技 术,积极开拓以数字技术、网络技术为基础的新一代信息产品,发展新兴产业, 培育新的经济增长点。 1.2 设计的主要内容及要求 本次课程设计的主要目的旨在通过独立完成一个 “电子时钟”的设计, 达到对 EDA 技术的熟练掌握,提升对EDA 技术及应用课程所学内容的掌 握和应用。 以计算机为工具,设计者在 EDA 软件平台上,用硬件描述语言 VHDL 完 成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、 布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下 载等工作。 Quartus2 在基于 VHDL 程序设计中拥有输入设计流程 ,其包括设计输入, 综合,适配,仿真测试和编程下载等方法。 Quartus2 与其他应用软件相比,他提供了更强大、更直观便捷和操作灵活 的原理图输入设计功能,同时还配备了更丰富的适用于各种需要的元件库,其 中包括基本的逻辑元件,宏功能元件,以及类似于 IP 核的参数可设置的宏功能 块 LPM 库。 与传统的数字电路实验相比,Quartus2 提供原理图输入设计功能具有不可 比拟的优势和先进性: 1)设计者不必具备许多诸如编程技术,硬件描述语言等知识就能迅速 入门,完成较大规模的电路设计系统。 2)能进行任意层次的数字系统设计,传统的数字电路实验只能完成单 一层次的设计。 3)能对系统中的任意层次,或任一元件的功能进行精确的时序仿真。 4)通过时序仿真能迅速定位电路系统中的错误所在,并及时纠正。 1.3 本次设计的目的及意义 第一,加深对 VHDL 语言设计的理解; 第二,通过对抢答器的设计加深对 EDA 课程的理解; 第三,通过对抢答器的设计了解简易集成电路的设计思路; 二 设计整体思路 在本次课程设计中使用 Altera 公司的 EPF10K10 系列的 FPGA 芯片, 基于实验室现有的 DE-2 实验板,实现“抢答器”的设计要求。 (1) 设计一个可以容纳四组参赛队进行比赛的电子抢答器。 (2) 具有第一抢答信号的鉴别和锁存功能。 (3) 具有计时(10 秒)功能。 (4) 具有(自动)计分功能。 (5) 具有犯规自动(减分)设置电路。 三 单元模块设计部分 单元模块设计部分分四个部分,包括:抢答模块,计时模块,计分模块, 数据选择模块。每个模块的作用分别为: 1.抢答模块:实现四路抢答功能,以选手最快速度将拨码开关置 1 为抢答 成功。 2.计分模块:实现每位选手答题的计分功能,有手动加分减分功能,当选 手抢答成功后 10 秒仍未答题则自动减分。 3.计时模块:实现选手答题的计时功能,若选手抢答成功后没有答题则计 时模块会发出信号给计分模块。 4.数据选择模块:当选手抢答成功后,以该选手的号码最为数据选择的地 址,数据选择将计时模块的减分信号线与该选手的计分模块相连接,若选手没 有答题则扣分。 3.1 抢答模块的设计抢答模块的设计 其程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity qiangda is port( a:in std_logic; b:in std_logic; c:in std_logic; d:in std_logic; en_out:out std_logic; en:in std_logic; adrout:out std_logic_vector(3 downto 0); led_out:buffer std_logic_vector(6 downto 0); end qiangda; architecture bhv of qiangda is signal key_in:std_logic_vector(3 downto 0); begin process(en) begin if en=1 then key_inled:=;-1 when0100=led:=;-2 when0010=led:=;-3 when0001=led:=;-4 when others=led:=null; end case; led_out=led; end process; process(a,b,c,d) begin en_out=a or b or c or d; adrout=key_in; end process; end bhv; 3.2 计分模块的设计计分模块的设计 其程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity jifen is port(a:in std_logic; b:in std_logic; c:in std_logic; led_out:out std_logic_vector(6 downto 0); end jifen; architecture bhv of jifen is signal cnt_a:std_logic_vector(2 downto 0); signal cnt_b:std_logic_vector(2 downto 0); signal cnt_c:std_logic_vector(2 downto 0); signal cnt:std_logic_vector(2 downto 0); begin process(a) begin if aevent and a=1 then cnt_b=cnt_b+1; end if; end process; process(b) begin if bevent and b=1 then cnt_a=cnt_a-1; end if; end process; process(c) begin if cevent and c=1 then cnt_c=cnt_c-1; end if; end process; process(cnt) begin cntled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outled_outnull; end case; end process; end bhv; 3.3 计时模块的设计 其程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity jishi is port( clk:in std_logic; rst:in std_logic; rst1:in std_logic; led_out:out std_logic_vector(6 downto 0); en1:out std_logic); end jishi; architecture bhv of jishi is signal cnt:std_logic_vector(27 downto 0); signal nclk: std_logic; signal cntdata:std_logic_vector(3 downto 0); begin process(clk,rst,rst1) begin if rst=0 or rst1=0then nclk=1; elsif clkevent and clk=1 then cnt=cnt+1; if cnt=x2faf080 then cnt=x; nclk=0; else nclk=1; end if; end if; end process; process(nclk,rst) begin if rst=0 then cntdata=1001;en1=0; elsif nclkevent and nclk=0 then cntdata=cntdata-1; if cntdata=0000 then cntdata=0000; en1jian_ajian_bjian_cjian_dnull; end case; end process; end bhv; 3.5 例化连接部分 其程序如下: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity zonghe is port(clk:in std_logic; a:in std_logic; b:in std_logic; c:in std_logic; d:in std_logic; en:in std_logic; rst:in std_logic; aa:in std_logic; ab:in std_logic; ac:in std_logic; ad:in std_logic; ja:in std_logic; jb:in std_logic; jc:in std_logic; jd:in std_logic; qdout:out std_logic_vector(6 downto 0); jf_a:out std_logic_vector(6 downto 0); jf_b:out std_logic_vector(6 downto 0); jf_c:out std_logic_vector(6 downto 0); jf_d:out std_logic_vector(6 downto 0); js:out std_logic_vector(6 downto 0); off1:out std_logic_vector(7 downto 0):=; off2:out std_logic_vector(7 downto 0):=); end zonghe; architecture bhv of zonghe is component qiangda port( a:in std_logic; b:in std_logic; c:in std_logic; d:in std_logic; en_out:out std_logic; en:in std_logic; adrout:out std_logic_vector(3 downto 0); led_out:buffer std_logic_vector(6 downto 0); end component; component jishi port( clk:in std_logic; rst:in std_logic; rst1:in std_logic; led_out:out std_logic_vector(6 downto 0); en1:out std_logic); end component; component jifen port(a:in std_logic; b:in std_logic; c:in std_logic; led_out:out std_logic_vector(6 downto 0); end component; component xuanze port( enin:in std_logic; adr:in std_logic_vector(3 downto 0); jian_a:out std_logic; jian_b:out std_logic; jian_c:out std_logic; jian_d:out std_logic); end component; signal lin_er:std_logic; signal lin_ad:std_logic_vector(3 downto 0); signal lin_ee:std_logic; signal lin_ja:std_logic; signal lin_jb:std_logic; signal lin_jc:std_logic; signal lin_jd:std_logic; begin u1:qiangda port map(en=en,a=a,b=b,c=c,d=d,en_out=lin_er,adrout=lin_ad,led_out=qdout); u2:jishi port map(clk=clk,rst=rst,rst1=lin_er,en1=lin_ee,led_out=js); u3:xuanze port map(adr=lin_ad,enin=lin_ee,jian_a=lin_ja,jian_b=lin_jb,jian_c=lin_jc,jian_d=lin_jd); u4:jifen port map(a=aa,b=ja,c=lin_ja,led_out=jf_a); u5:jifen port map(a=ab,b=jb,c=lin_jb,led_out=jf_b); u6:jifen port map(a=ac,b=jc,c=lin_jc,led_out=jf_c); u7:jifen port map(a=ad,b=jd,c=lin_jd,led_out=jf_d); end bhv; 例化连接原理图: 五 EDA 抢答器设计心得 首先,通过本次设计,我学会了综合运用各种知识,使得我理论学习得到 应用,对我深刻掌握理论知识是很有帮助的,同时也帮助我提高独立分析问题 和解决问题的能力,这对以后的工作是很有帮助的。 在这次设计中,我花了不少的时间,其中有苦也有乐。苦的是我付出了不 少的汗水,乐的是在付出的过程中我得到了许多,也学会了许多。 因为一个人的能力毕竟有限,在设计方面难免会出现这样那样的错误,但 正是这些错误促进了我的进步。根据电路的特点,我用层次化结构化设计概念, 将此项设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,然 后再将各模块合起来联试,这培养我了层次化设计的概念。在这次课程设计中, 我真正体会到了知识的重要性。在设计的过程中,遇到问题我会先独立思考, 到自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年信息技术对社会的影响考试试卷及答案
- 2025年师范生教育理论考试试题及答案
- 2025年气候变化与应对考试试题及答案
- 2025年会计电算化考试试卷及答案解析
- 2025年化学专业认证考试试卷及答案
- 2025年电子商务运营师培训考试试题及答案
- 2025年供应链金融与风险控制考试试题及答案
- 2025年广告学专业理论知识测试试题及答案
- 农业项目农产品采购协议
- 岳阳楼记文章主旨和修辞教学教案
- 商标基础知识培训课件
- 隆基公司所签的劳动合同
- 围术期肺部超声的应用
- 海洋环境监测技术
- 装修垃圾清运方案
- 中小学-珍爱生命 远离毒品-课件
- 【高效备课】人教版七(上) 3.2 解一元一次方程(一)第1课时 合并同类项 教案
- 广东省肇庆市2023-2024学年高二下学期期末考试政治试题(解析版)
- 光伏电站质量通病防治手册
- DL∕T 5370-2017 水电水利工程施工通 用安全技术规程
- 福建泉州市2023至2024学年高一下学期期末教学质量监测化学试题附参考答案(解析)
评论
0/150
提交评论