欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    EDA技术及其应用—彩灯控制器设计.doc

    • 资源ID:14372682       资源大小:177KB        全文页数:9页
    • 资源格式: DOC        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA技术及其应用—彩灯控制器设计.doc

    Jxairy EDA技术及其应用成 绩指导教师:日 期:EDA技术课程设计题 目: EDA技术及其应用 彩灯控制器设计 姓 名: Jxairy 院 系: 电子信息工程学系 专 业: 通信工程 班 级: 091 学 号: 910705131 指导教师: * 2012年 01 月8EDA技术及其应用彩灯控制器设计Jxairy(电子信息工程学系 指导教师:*)0 引言随着电子技术的发展,应用系统向着小型化、快速化、大容量、重量轻的方向发展,EDA(Electronic Design Automatic)技术的应用引起电子产品及系统开发的革命性变革。VHDL语言作为可编程逻辑器件的标准语言描述能力强,覆盖面广,抽象能力强,在实际应用中越来越广泛。在这个阶段,人们开始追求贯彻整个系统设计的自动化,可以从繁重的设计工作中彻底解脱出来,把精力集中在创造性的方案与概念构思上,从而可以提高设计效率,缩短产品的研制周期。整个过程通过EDA工具自动完成,大大减轻了设计人员的工作强度,提高了设计质量,减少了出错的机会。 本文介绍应用美国ALTERA公司的MAX+PLUS平台,使用VHDL硬件描述语言实现的彩灯控制器设计。1 设计目的随着科学技术的发展以及人民生活水平的提高,在现代生活中,彩灯作为一种装饰,既可以给人们带来视觉上的冲击,制造耳目一新的广告宣传,又可以增添节日气氛,为人们的生活增添亮丽,用在舞台上增强晚会灯光效果。本设计就是应用EDA技术,使用VHDL硬件描述语言设计的一种简易的彩灯控制器。2 设计要求1) 有6种花型变化。2) 多种花型可以自动变化,循环往复。3) 彩灯变化的快慢节拍可以选择。4) 具有清零开关。3 系统设计方案根据系统设计要求,设计一个具有6种花型循环变化的彩灯控制器。整个系统共有三个输入信号:控制彩灯节奏快慢的基准时钟信号CLK_IN,系统清零信号CLR,彩灯节奏快慢选择开关CHOSE_KEY;共有16个输出信号LED15.0,分别用于控制16路彩灯。由方案综合分析,系统设计采用自顶向下的设计方法。本设计将整个彩灯控制器CDKZQ分为两大部分:时序控制电路SXKZ和显示控制电路XSKZ。4 模块综合整个系统的组成的模块原理图如图01所示:图01 模块组合原理图5 各模块设计过程5.1 模块清单本次设计分为一个综合设计和两个大的子模块,即彩灯花样控制器、时序控制电路、显示控制电路。5.2 端口简介CLK0控制彩灯节奏快慢的基准时钟信号CLR系统清零信号CHOSE_KEY彩灯节奏快慢选择开关LED15.016个输出信号5.3 模块设计5.3.1文本设计的流程:(1)新建文本:选择菜单File下的New,在框中选中“Text Editor file”,按“OK”按钮,即选中了文本编辑方式。(2)另存为.VHD编辑文件,依次命名为“SXKZ.VHD”、“XSKZ.VHD”、“CDSJ.VHD”等。(3)在相应的编辑窗口中输入相应模块的设计的VHDL源程序。 (4)设置当前文本:在MAX+PLUS II中,在编译一个项目前,必须确定一个设计文件作为当前项目。按下列步骤确定项目名:在File菜单中选择Project 中的Name选项,将出现Project Name 对话框:在 Files 框内,选择当前的设计文件。单击“OK”。(5)打开编译器窗口:在MAXplus菜单内选择Compiler 项,即出现如图的编译器窗口。图02 编译器窗口选择Start即可开始编译,MAX+PLUS II编译器将检查项目是否有错,并对项目进行逻辑综合,然后配置到一个 Altera 器件中,同时将产生报告文件、编程文件和用于时间仿真用的输出文件。(6)建立波形编辑文件:选择菜单File下的New选项,在出现的New对话框中选择“Waveform Editor File”,单击OK后将出现波形编辑器子窗口。(7)仿真节点插入:选择菜单Node下的Enter Nodes from SNF选项,出现选择信号结点对话框。单击右上侧的“List”按钮,在左边的列表框选择需要的信号结点,然后单击中间的“=>”按钮,最后单击“OK”,选中的信号将出现在波形编辑器中。(8)输入波形设置,保存波形文件,文本仿真:单击菜单File下的Save选项,在弹出的窗口中将波形文件存在以上的同一目录中,文件分别取名为sxkz.scf、xskz7.scf、cdsj.scf。单击MAXPlus菜单内选择Simulator选项,单击Start,接着打开Open SCF,即完成对以上实验的波形仿真。5.3.2原理图设计的流程:(1)新建原理图:“File”“New”“Graphic Editor file”“OK”,即选中了原理图设计方式。(2)使用库模块和自定义模块,搭建设计原理图并命名保存。(3)编译工程、建立波形编辑文件、仿真节点插入、输入波形设置、波形仿真、原理图仿真均与文本设计相似,这里不重复赘述。5.3.3时序控制电路模块的设计分析:时序控制电路模块主要是产生时间脉冲,为设计提供必要的时间基准。本模块使用文本设计进行设计,模块以CLK0作为控制彩灯节奏快慢的时钟信号基准,以CLR作为模块和设计的清零信号。通过设计一个CHOSE_KEY端口来作为彩灯的节奏快慢选择的开关,以控制彩灯的流动节奏。该程序设计为综合设计提供了可变动的时间脉冲,模块的设计图如图03所示:图03 时序控制模块原理图5.3.4显示控制电路模块的设计分析:显示控制电路模块是控制设计的彩灯流动显示的关键模块,控制着彩灯的流动方式。本模块使用文本设计进行设计,设计的时间脉冲由时序控制模块的输出CLK提供,以保证设计的彩灯快慢节奏得以控制。共有16个输出信号LED15.0,分别用于控制16路彩灯。该程序设计为综合设计提供了彩灯流动花型输出的基础,模块的设计图如图所示:图04 显示控制模块原理图5.3.5彩灯控制器设计模块整合分析:彩灯控制器电路是整个设计的核心,它控制整个设计的输出效果也就是图案的样式变化。彩灯控制器的设计可以使用原理图设计方法进行设计,也可以使用文本设计方法进行设计。在电路中用1代表灯亮,用O代表灯灭,由0、1按不同的规律组合代表不同的灯光图案,同时由时序模块可以选择不同的频率,以实现多种图案及多种频率的花样功能显示。该程序充分证明了用VHDL设计电路的灵活性,即可以通过改变程序中输出变量的位数来改变彩灯的数目。该彩灯控制器的综合设计模块设计图如图05所示:图05 彩灯设计综合原理图6 调试分析调试仿真时要设置适宜的波形时间(即仿真的时间长度、时钟周期),才能观察到较理想的设计仿真现象。6.1时序控制模块的仿真调试分析时序控制模块的波形时间设置为:结束时间:1.0us 时钟周期:10.0ns。时序控制模块的仿真调试如图06所示:图06 时序控制模块的波形仿真图分析:当CLR=1时,TEMP=000,CLK=0清零。当CLR=0且时钟信号CLK0来到时,如表01所示表01 TEMP值的分析CHOSE_KEYTEMP值的分析1如果TEMP=011(即为3),则TEMP=000(即为0)且CLK反转;如果TEMP不为011,则TEMP+10如果TEMP=111(即为7),则TEMP=000(即为0)且CLK反转;如果TEMP不为111,则TEMP+16.2显示控制模块的仿真调试分析显示控制模块的波形时间设置为:结束时间:5.0us 时钟周期:100.0ns。显示模块的仿真调试如图07所示: 图07 显示模块的波形仿真图分析:当系统清零信号CLR为1时CURRENT_STATE为S0。当系统清零信号CLR为0且时钟信号CLK来到时:当CURRENT_STATE为S1时,CURRENT_STATE的下一个状态S2,LED输出为2492;当CURRENT_STATE为S2时,CURRENT_STATE的下一个状态S3,LED输出为A482;当CURRENT_STATE为S3时,CURRENT_STATE的下一个状态S4,LED输出为2D9A;当CURRENT_STATE为S4时,CURRENT_STATE的下一个状态S5,LED输出为B4D3;当CURRENT_STATE为S5时,CURRENT_STATE的下一个状态S6,LED输出为A6B6;当CURRENT_STATE为S6时,CURRENT_STATE的下一个状态S1,LED输出为D59B;依次循环。6.3彩灯设计的仿真调试分析彩灯综合设计的波形时间设置为:结束时间:10.0us 时钟周期:100.0ns。彩灯综合设计的仿真调试如图08所示:图08 彩灯综合设计的波形仿真分析: 在控制彩灯节奏快慢的基准时钟信号CLK0的时钟脉冲条件下,系统清零信号CLR 、彩灯节奏快慢选择开关CHOSE_KEY的变化对彩灯综合设计的彩灯变换速度的影响如表02所示。表02 彩灯综合设计分析表CLRCHOSE_KEY彩灯变换速度00系统清零CURRENT_STATE为S0110慢1快7 结束语:本次EDA课程设计时间虽然很短暂,但却受益匪浅。通过这次课程设计的实验使我对EDA技术及应用路这门课程有了更深的了解,其次巩固了使用EDA技术进行电子设计的步骤思路。最后让我更加明白理论与实际相结合的重要性,单纯地理论知识储备是远远不够的,只有把理论知识与实践相结合起来,才能真正提高自己的实践能力和独立思考的能力。通过模块调试分析,发现问题,解决问题,一直循环的设计流程,最后完成各模块的设计。 使用VHDL语言设计电路,思路简单,功能明了。使用Max+Plus设计电路不仅可以进行逻辑仿真,还可以进行时序仿真。简而言之,采用EDA技术使得复杂的电子系统的设计变的简单易行,提高了设计的效率。总体来说,此次彩灯控制器设计还是比较成功的,达到了理论与实际相结合的目的。参考文献: 1 王金明 冷自强. EDA技术与Verilog设计M. 北京:科学出版社,2008. 2 章彬宏 周正林. EDA应用技术M. 北京:北京理工大学出版社,2007.3 赵明福 李立军. EDA技术基础M. 北京:北京大学出版社,2007.4 赵明福 田泽正 石新峰. EDA技术与实践M. 北京:清华大学出版社,2005.5 谭会生 张昌凡. EDA技术及应用M. 西安:西安电子科技大学出版社,2001.Jxairy 彩灯控制器设计附 录(1)时序控制电路的VHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SXKZ ISPORT(CHOSE_KEY : INSTD_LOGIC;CLK0 : INSTD_LOGIC;CLR : INSTD_LOGIC;CLK : OUTSTD_LOGIC);END SXKZ;ARCHITECTURE ART OF SXKZ ISSIGNAL CK : STD_LOGIC;BEGINPROCESS (CLK0, CLR,CHOSE_KEY)VARIABLE TEMP : STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINIF CLR='1' THEN -当CLR=1时清零,否则正常工作 CK<='0' TEMP:="000"ELSIF (CLK0'EVENT AND CLK0='1') THEN IF (CHOSE_KEY='1')THEN IF TEMP="011" THEN TEMP:="000" CK<=NOT CK; ELSE TEMP:=TEMP+1; END IF;-当CHOSE_KEY=1时产生基准时钟频率的1/4的时钟信号,否则产生基准时钟频率的1/8的时钟信号 ELSE IF TEMP="111" THEN TEMP:="000" CK<=NOT CK; ELSE TEMP:=TEMP+'1' END IF; END IF; END IF;END PROCESS;CLK<=CK;END ART;(2)显示控制电路的VHDL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY XSKZ ISPORT(CLK : INSTD_LOGIC;CLR : INSTD_LOGIC; LED: OUTSTD_LOGIC_VECTOR(15 downto 0);END entity XSKZ;ARCHITECTURE ART OF XSKZ IS TYPE STATE IS(S0,S1,S2,S3,S4,S5,S6);SIGNAL CURRENT_STATE: STATE;SIGNAL LIGHT: STD_LOGIC_VECTOR(15 DOWNTO 0); BEGINPROCESS (CLR, CLK)ISCONSTANT L1:STD_LOGIC_VECTOR(15 DOWNTO 0):="0010010010010010"CONSTANT L2:STD_LOGIC_VECTOR(15 DOWNTO 0):="1010010010010010"CONSTANT L3:STD_LOGIC_VECTOR(15 DOWNTO 0):="0010110110011010"CONSTANT L4:STD_LOGIC_VECTOR(15 DOWNTO 0):="1011010011010011"CONSTANT L5:STD_LOGIC_VECTOR(15 DOWNTO 0):="1010011010110110"CONSTANT L6:STD_LOGIC_VECTOR(15 DOWNTO 0):="1101010110011011"-六种花型的定义BEGINIF CLR='1' THEN CURRENT_STATE<=S0;ELSIF(CLK'EVENT AND CLK='1') THEN CASE CURRENT_STATE IS WHEN S0 => LIGHT<="ZZZZZZZZZZZZZZZZ" CURRENT_STATE<=S1; WHEN S1 => LIGHT<=L1; CURRENT_STATE<=S2; WHEN S2 => LIGHT<=L2; CURRENT_STATE<=S3; WHEN S3 => LIGHT<=L3; CURRENT_STATE<=S4; WHEN S4 => LIGHT<=L4; CURRENT_STATE<=S5; WHEN S5 => LIGHT<=L5; CURRENT_STATE<=S6; WHEN S6 => LIGHT<=L6; CURRENT_STATE<=S1; END CASE; END IF;END PROCESS;LED<=LIGHT;END ARCHITECTURE ART;(3)彩灯控制程序的VDHL源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CDSJ ISPORT(CLK0: INSTD_LOGIC; CLR : INSTD_LOGIC; CHOSE_KEY: INSTD_LOGIC;LED : OUT STD_LOGIC_VECTOR(15 downto 0);END entity CDSJ;ARCHITECTURE ART OF CDSJ ISCOMPONENT SXKZ ISPORT( CHOSE_KEY: INSTD_LOGIC; CLK0 : INSTD_LOGIC; CLR : INSTD_LOGIC; CLK : OUTSTD_LOGIC);END COMPONENT SXKZ;COMPONENT XSKZ ISPORT( CLK : INSTD_LOGIC; CLR : INSTD_LOGIC; LED : OUTSTD_LOGIC_VECTOR(15 DOWNTO 0);END COMPONENT XSKZ;SIGNAL S : STD_LOGIC;BEGINU1:SXKZ PORT MAP(CHOSE_KEY,CLK0,CLR,S); U2:XSKZ PORT MAP(S,CLR,LED);END ARCHITECTURE ART;

    注意事项

    本文(EDA技术及其应用—彩灯控制器设计.doc)为本站会员(scccc)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开