收藏 分销(赏)

课程设计正文.doc

上传人:仙人****88 文档编号:8553953 上传时间:2025-02-18 格式:DOC 页数:14 大小:110KB
下载 相关 举报
课程设计正文.doc_第1页
第1页 / 共14页
课程设计正文.doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述
目录 摘 要 I 第1章 设计方案 2 1.1 VHDL简介 2 1.2设计思路 3 第2章 模块介绍 4 2.1计时模块 4 2.2数码显示模块 4 2.3报警模块 4 2.4顶层模块 4 第3章 Verilog HDL设计源程序 5 3.1计时模块程序 5 3.2数码显示模块程序 6 3.3 报警模块程序 8 3.4顶层模块程序 9 第4章 波形仿真图 10 4.1计时模块波形仿真图 10 4.2报警模块波形仿真图 10 4.3顶层模块波形仿真图 10 第5章 管脚锁定及硬件连线 11 5.1管脚锁定 11 5.2引线说明 11 第6章 总结 12 参考文献 13 致谢 14 第一章 设计方案 1.1 VHDL简介 数字电路主要是基于两个信号(我们可以简单的说是有电压和无电压),用数字信号完成对数字量进行算术运算和逻辑运算的电路我们称之为数字电路,它具有逻辑运算和逻辑处理等功能,数字电路可分为组合逻辑电路和时序逻辑电路。 EDA技术,就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术。 利用EDA技术进行电子系统的设计,具有以下几个特点:① 用软件的方式设计硬件;② 用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③ 设计过程中可用有关软件进行各种仿真;④ 系统可现场编程,在线升级;⑤ 整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,EDA技术是现代电子设计的发展趋势。 EDA技术伴随着计算机、集成电路、电子系统设计的发展,经历了计算机辅助设计(Computer Assist Design,简称CAD)、计算机辅助工程设计(Computer Assist Engineering Design,简称CAE)和电子设计自动化(Electronic Design Automation,简称EDA)三个发展阶段。 常用的硬件描述语言有VHDL、Verilog、ABEL。 1 EDA技术是随着集成电路和计算机技术的飞速发展应运而生的一种高级、快速、有效的电子设计自动化工具。它是为解决自动控制系统设计而提出的,从70年代经历了计算机辅助设计(CAD),计算机辅助工程(CAE),电子系统设计自动化(ESDA)3个阶段。前两个阶段的EDA产品都只是个别或部分的解决了电子产品设计中的工程问题;第三代EDA工具根据工程设计中的瓶颈和矛盾对设计数据库实现了统一管理,并提出了并行设计环境概念,提供了独立于工艺和厂家的系统级的设计工具。EDA关键技术之一就是采用硬件描述语言对硬件电路进行描述,且具有系统级仿真和综合能力。目前应用比较广泛的硬件描述语言就是Verilog HDL。 2 Verilog HDL简介 Verilog HDL是目前大规模集成电路设计中最具代表性、使用最广泛的硬件描述语言之一。 具有如下特点: (1) 能够在不同的抽象层次上,如系统级、行为级、RTL级、门级和开关级,对设计系统进行精确而简练的描述。 (2)能够在每个抽象层次的描述上对设计进行仿真验证,及时发现及时发现可能存在的错误,缩短设计周期,并保存整个设计过程的正确性。 (3)由于代码描述与工艺过程实现无关,便于设计标准化,提高设计的可重用性。如国有C语言的编程基础经验,只需很短的时间就能学会和掌握Verilog HDL,因此,Verilog HDL可以作为学习HDL设计方法的入门和基础。 1.2 设计思路 1 设计要求 1、设计简易的一分钟闹钟; 2、可手动输入定时时间(0~59s),如30s; 3、两个动态数码管上跟踪显示时间的变化:如30,29,28……到了指定时间蜂鸣器发出5s的提示音; 4、采用2个动态数码管显示时间; 5、用蜂鸣器发出提示音; 6、拨码开关设置定时时间。 2 设计思路 根据上述的设计要求,整个系统大致包括如下几个组成部分:它包括以下几个组成部分:1、 显示屏,由2个七段动态数码管组成,用于显示当前设置的闹钟时间并进行跟踪显示;2、 6个拨码开关,用于输入闹钟时间;3)复位键,确定新的闹钟时间设置,或显示已设置的闹钟时间;4)蜂鸣器,在当前时钟时间与闹钟时间相同时,发出报警声。 第二章 模块介绍 2.1 计时模块 此模块共有6个拨码开关作为输入信号,当开关无输入时,都处于低电平状态,D5、D4、D3、D2、D1和D0是并行数据输入端,CRN是异步复位输入端,LDN是预置控制输入端。当开关有输入时,会产生一个六位的二进制输出信号num,此信号表示动作的开关序号,它是作为动态显示模块的输入信号。 2.2 数码显示模块 这个模块有两个输入信号和两个输出信号。其中一个是信号输入模块的输出num作为输入,另外一个是时钟输入端,作为扫描数码管的频率信号,采用1024HZ的中高频信号。输出信号为SS0、SS1、SS2,是动态数码管的片选段。 2.3 报警模块 报警模块共有两个输入信号ET和CLK1,一个输出信号COUT。当从信号输入模块检测到有开关输入时,ET信号已置1,CLK上升沿到来时,程序将COUT置1,蜂鸣器发出时间为10s的报警信号,时间到达后,跳出循环,蜂鸣器停止报警。 2.4 顶层模块 顶层模块的作用是将各个模块组合到一起,从而实现最终的功能。其输入即为各个模块的输入,一个时钟信号,还有6个拨码开关的输入,其输出为数码管显示和报警器。 第三章Verilog HDL设计源程序 3.1 计时模块程序 module counter(LDN,D5,D4,D3,D2,D1,D0,CLK,CRN,Q,OC); input LDN,D5,D4,D3,D2,D1,D0,CLK,CRN; output[5:0] Q; output OC; reg OC; reg[5:0] Q; reg[5:0] Q_TEMP; reg[3:0] NUM; always@(posedge CLK or negedge CRN) begin if(~CRN) Q_TEMP=6'b000000; else if(~LDN) begin Q_TEMP={D5,D4,D3,D2,D1,D0}; NUM=4'b0000; end else if(Q_TEMP<6'b111100&&Q_TEMP>6'b000000) begin if(NUM<4'b1000&&NUM>=4'b0000) NUM=NUM+1; else NUM=4'b0001; if(NUM==4'b1000) Q_TEMP=Q_TEMP-1; end else Q_TEMP=6'b000000; end always begin if(Q_TEMP==6'b000000&&LDN) OC=1'b1; else OC=1'b0; Q=Q_TEMP; end endmodule 3.2 数码显示模块程序 module showtime(A,Q,CLKM,SS0,SS1,SS2); input[5:0] A; input CLKM; output[6:0] Q; output SS0,SS1,SS2; reg[6:0] Q; reg SS0,SS1,SS2; reg M; reg[5:0] B; reg[5:0] C; always@(posedge CLKM) begin M=M+1; end always begin if(A<='b001001) begin B=A; C=0; end else if(A>'b001001&&A<='b10011) begin B=A-10; C=1; end else if(A>'b10011&&A<='b11101) begin B=A-20; C=2; end else if(A>'b11101&&A<='b100111) begin B=A-30; C=3; end else if(A>'b100111&&A<='b110001) begin B=A-40; C=4; end else if(A>'b110001&&A<='b111011) begin B=A-50; C=5; end else if(A=='b111100) begin B=0; C=6; end if(M=='b1) begin SS0=1;SS1=0;SS2=0; case(B) 'b000000:Q='b0111111; 'b000001:Q='b0000110; 'b000010:Q='b1011011; 'b000011:Q='b1001111; 'b000100:Q='b1100110; 'b000101:Q='b1101101; 'b000110:Q='b1111101; 'b000111:Q='b0000111; 'b001000:Q='b1111111; 'b001001:Q='b1101111; default:Q='b0111111; endcase end else if(M=='b0) begin SS0=0;SS1=0;SS2=0; case(C) 'b000000:Q='b0111111; 'b000001:Q='b0000110; 'b000010:Q='b1011011; 'b000011:Q='b1001111; 'b000100:Q='b1100110; 'b000101:Q='b1101101; 'b000110:Q='b1111101; default:Q='b0111111; endcase end end endmodule 3.3 报警模块程序 module speaker(CLK1,ET,COUT); input CLK1,ET; output COUT; reg COUT; reg[5:0] TEMP; always@(posedge CLK1) begin if(~ET) TEMP=6'b000000; else if(TEMP<6'b101001&&TEMP>=6'b000000) TEMP=TEMP+1; else TEMP=6'b101001; end always begin if(TEMP<6'b101001&&TEMP!=6'b000000) COUT=1'b1; else COUT=1'b0; end endmodule 3.4 顶层模块程序 module timer(LDN,D5,D4,D3,D2,D1,D0,CLK,CRN,CLK1,COUT,LED,SS0,SS1,SS2,CLKM); input LDN,D5,D4,D3,D2,D1,D0,CLK,CRN,CLK1,CLKM; output[6:0] LED; output COUT,SS0,SS1,SS2; wire X6; wire[5:0] X; counter u1(.LDN(LDN),.D5(D5),.D4(D4),.D3(D3),.D2(D2),.D1(D1),.D0(D0),.CLK(CLK),.CRN(CRN),.Q(X[5:0]),.OC(X6)); showtime u2(.A(X[5:0]),.Q(LED[6:0]),.CLKM(CLKM),.SS0(SS0),.SS1(SS1),.SS2(SS2)); speaker u3(.CLK1(CLK1),.ET(X6),.COUT(COUT)); endmodule 第四章 波形仿真图 4.1 计时模块波形仿真图 4.2 报警模块波形仿真图 4.3 顶层模块波形仿真图 第五章 管脚锁定及硬件连线 5.1 管脚锁定 CLK>chip=timer;Input Pin=75 CLKM>chip=timer:Input Pin=83 CLK1> chip=timer;Input Pin=85 COUT> chip=timer;Output Pin=38 CRN> chip=timer;Input Pin=39 DO> chip=timer;Input Pin=53 D1> chip=timer;Input Pin=47 D2> chip=timer;Input Pin=46 D3> chip=timer;Input Pin=45 D4> chip=timer;Input Pin=44 D5> chip=timer;Input Pin=41 LDN> chip=timer;Input Pin=40 LED0> chip=timer;Output Pin=173 LED1> chip=timer;Output Pin=174 LED2> chip=timer;Output Pin=175 LED3> chip=timer;Output Pin=176 LED4> chip=timer;Output Pin=177 LED5> chip=timer;Output Pin=179 LED6> chip=timer;Output Pin=187 SSO> chip=timer;Output Pin=191 SS1> chip=timer;Output Pin=192 SS2> chip=timer;Output Pin=193 5.2 引线说明 拨码开关使用数字开关组A,需外接引线。 第六章 总结 通过这次设计,初步对EDA有一个新了解。 课程设计之初是做了一个简单的培训,关于软件和硬件的设计,算是入门训练吧。通过前两天的课程讲解,我对其有了初步的了解。之后就开始按照指导书中的例题就行练习,仿真,有进一步的掌握后就开始了自己的课程设计。由于我C++程序设计知识不扎实,所以导致这次软件设计困难重重,也让我明白了在这个领域知识的串联是非常普遍的,学好学扎实是我们必须要做到的要求。 参考文献 [1]阎石主编. 《数字电子技术基础》(第五版).高等教等育出版社.2006.5,168-175页 ; [2]李国丽、朱维勇、何剑春主编 .《EDA与数字系统设计》(第2版).机械工业出版社.2009.3,105-146页 致谢 通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能提高自己的实际动手能力。在设计的过程中,可以说得是困难重重,同时在设计的过程中发现了自己的不足之处。 在此还需要感谢老师耐心的指导与帮助,使课设能够更加顺利的完成。 13
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服