EDA课程设计报告Word下载.docx
- 文档编号:20796238
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:14
- 大小:227.65KB
EDA课程设计报告Word下载.docx
《EDA课程设计报告Word下载.docx》由会员分享,可在线阅读,更多相关《EDA课程设计报告Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
个人任务:
在该组负责收集整理资料并且写报告,在收集资料方面,多数是在互联网上,XX文库中搜索相关资料,但是资料有限且大多相同,另外,在图书馆部分书籍上看到有关资料并抄下来,资料基本齐全,设计的成功依赖于好的程序和有序的运作以及各成员的分工合作,以下是详细设计。
设计任务:
假设汽车尾部左右两侧各有3盏指示灯,其控制功能应包括:
(1)汽车正常行驶时指示灯都不亮。
(2)汽车右转弯时,右侧的一盏指示灯亮。
(3)汽车左转弯时,左侧的一盏指示灯亮。
(4)汽车刹车时,左右两侧的一盏指示灯同时亮。
(5)汽车在夜间行驶时,左右两侧的一盏指示灯同时一直亮,供照明使用。
设计要求:
(1)采用VHDL语言编写程序,并在QuartusII工具平台中进行开发,下载到EDA实验箱进行验证。
(2)编写设计报告,要求包括方案选择、程序清单、调试过程、测试结果及心得体会。
2.设计方案
大致设计方案如下:
根据系统设计要求,系统设计采用自顶向下的设计方法,顶层设计采用原理图设计方案,它是由时钟分频模块、汽车尾灯主控模块、左边灯控制模块、右边灯控制模块四部分组成。
图2-1模块关系
系统的输入信号包括:
系统时钟信号CLK,汽车左转弯控制信号LEFT,汽车右转弯控制信号RIGHT,刹车信号BRAKE,夜间行驶信号NIGHT。
系统的输出信号包括:
汽车左侧3盏指示灯LLED1,LLED2,LLED3和汽车右侧3盏指示灯RLED1,RLED2,RLED3。
当汽车正常行驶时所有的指示灯都不亮,当汽车向左转时,汽车左边的指示灯LLED1亮,当汽车向右转时,汽车右边的指示灯RLED1亮,当汽车刹车时,左右的LLED2、RLED2亮,当汽车夜间行驶时,汽车左右的LLED3、RLED3一直亮。
通过编写相关VHDL语言程序实现以上功能,将四个模块的各个程序编写出来作为相应的底层文件,然后再设计一个顶层文件将四个不同模块连接起来,实现成整体的程序。
通过不同模块生成相应的元件,将生成的各个元件按功能进行连接形成整体的设计电路。
在完成编程后,再进行功能,时序仿真,最后进行硬件检测。
3.模块设计
3.1主控模块
图3-1主控模块
输入信号:
输出信号:
LEFT:
左转信号;
LP:
左侧灯控制信号;
RIGHT:
右转信号;
RP:
右侧灯控制信号;
BRAKE:
刹车信号;
LR:
错误控制信号;
NIGHT:
夜间行驶信号;
BRAKE_LED:
刹车控制信号;
NIGHT_LED:
夜间行驶控制信号;
模块程序(MC.vhd)
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYMCIS
PORT(LEFT,RIGHT,BRAKE,NIGHT:
INSTD_LOGIC;
LP,RP,LR,BRAKE_LED,NIGHT_LED:
OUTSTD_LOGIC);
ENDMC;
ARCHITECTUREARTOFMCIS
BEGIN
NIGHT_LED<
=NIGHT;
BRAKE_LED<
=BRAKE;
PROCESS(LEFT,RIGHT)
VARIABLETEMP:
STD_LOGIC_VECTOR(1DOWNTO0);
BEGIN
TEMP:
=LEFT&
RIGHT;
CASETEMPIS
WHEN"
00"
=>
LP<
='
0'
;
RP<
LR<
--当汽车直行时,左右灯都不亮
01"
1'
--当汽车右拐时,右拐指示灯亮
10"
--当汽车左拐时,左指示灯亮
WHENOTHERS=>
--当汽车刹车时,左右灯都亮
ENDCASE;
ENDPROCESS;
ENDART;
功能:
该段程序用于对汽车尾灯进行整体控制,当输入为左转信号时,输出左侧灯控制信号;
当输入为右转信号时,输出右侧灯控制信号;
当同时输入LEFT和RIGHT信号时,输出错误控制信号。
当输入为刹车信号时,输出刹车控制信号;
当输入为夜间行驶信号时,输出为夜间行驶控制信号。
仿真图:
图3-2时序仿真
图3-3功能仿真
3.2时钟分频模块
图3-4时钟分频模块
模块VHDL程序(CLK_1.vhd)
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCLK_1IS
PORT(CLK:
CP:
END;
ARCHITECTUREARTOFCLK_1IS
SIGNALCOUNT:
STD_LOGIC_VECTOR(7DOWNTO0);
BEGINPROCESS(CLK)
IFCLK'
EVENTANDCLK='
THEN
COUNT<
=COUNT+1;
ENDIF;
CP<
=COUNT
(2);
--进行8分频
这块的功能是对左右两边的LLED1、RLED1的闪烁时间间隔,以CLK为输入信号,CP为输出信号,在程序中定义一个八位节点信号COUNT来放计数值,当CLK的上升沿到来时就开始计数,最后将COUNT
(2)给CP,实现对CLK的8分频,再将CP的电平信号分别和LEDL、LEDR电平与,最后用输出的电平来控制汽车左右的LLED1、RLED1,实现左右转的指示功能。
图3-5时钟分频模块仿真
3.3左边灯控制模块
图3-6左灯控制模块
输入信号:
CLK:
时钟控制信号;
LP:
LR:
BRAKE:
NIGHT:
输出信号:
LEDL:
左侧LD1灯控制信号;
LEDB:
左侧LD2灯控制信号;
LEDN:
左侧LD3灯控制信号;
模块程序(LC.vhd)
ENTITYLCIS
PORT(CLK,LP,LR,BRAKE,NIGHT:
LEDL,LEDB,LEDN:
OUTSTD_LOGIC);
ARCHITECTUREARTOFLCIS
LEDB<
LEDN<
PROCESS(CLK,LP,LR)
BEGIN
EVENTANDCLK='
THEN--时钟上升沿有效
IF(LR='
)THEN--没有错误信号时
IF(LP='
)THEN--没有左转信号
LEDL<
--左信号灯不亮
ELSE--相反情况
ELSE
LEDL<
本程序用于控制左侧灯的亮、灭和闪烁情况,当时钟上升沿信号和左侧灯控制信号或刹车控制信号或夜间行驶信号同时出现时,左侧相应的灯亮或出现闪烁。
当错误控制信号出现时,LD1灯不亮。
图3-7时序仿真
图3-8功能仿真
3.4右边灯控制模块
图3-9右灯控制模块
CLK:
RP:
LEDR:
右侧RD1灯控制信号;
右侧RD2灯控制信号;
右侧RD3灯控制信号;
模块VHDL程序(RC.vhd)
ENTITYRCISPORT(CLK,RP,LR,BRAKE,NIGHT:
LEDR,LEDB,LEDN:
ARCHITECTUREARTOFRCIS
PROCESS(CLK,RP,LR)
IF(LR='
)THEN--没有错误信号时
IF(RP='
)THEN--没有右转信号时
LEDR<
--右信号灯不亮
ELSE--相反情况
='
本描述用于控制右侧灯的亮、灭和闪烁情况,当时钟上升沿信号和右侧灯控制信号或刹车控制信号或夜间行驶信号同时出现时,右侧相应的灯亮或出现闪烁。
当错误控制信号出现时,RD1灯不亮。
图3-10时序仿真
图3-11功能仿真
3.5顶层文件
(ourdesign.vhd)
Libraryieee;
Useieee.std_logic_1164.all;
Useieee.std_logic_unsigned.all;
Entityourdesignis
Port(clk:
instd_logic;
Left:
Right:
Brake:
Night:
Ld1,Ld2,Ld3:
outstd_logic;
Rd1,Rd2,Rd3:
outstd_logic);
End;
Architectureaabbofourdesignis
ComponentCLK_1is
Cp:
Endcomponent;
ComponentMCis
Port(left,right,brake,night:
Lp,rp,lr,brake_led,night_led:
ComponentLCis
Port(clk,lp,lr,brake,night:
Ledl,ledb,ledn:
ComponentRCis
Port(clk,rp,lr,brake,night:
Ledr,ledb,ledn:
Signalt0,t1,t2,t3,t4:
std_logic;
--定义中间信号以方便元件例化
Signale0,e1,e2,e3,e4,e5:
signaltm:
begin
U1:
CLK_1portmap(clk,tm);
U2:
MCportmap(left,right,brake,night,t0,t1,t2,t3,t4);
U3:
LCportmap(clk,t0,t2,t3,t4,e0,e1,e2);
U4:
RCportmap(clk,t1,t2,t3,t4,e3,e4,e5);
Ld1<
=e0andtm;
Ld2<
=e1;
Ld3<
=e2;
Rd1<
=e3andtm;
Rd2<
=e4;
Rd3<
=e5;
Endarchitectureaabb;
采用元件例化的设计方法将各个底层模块连接起来,整体完成汽车尾灯功能。
4.整体设计
4.1系统仿真结果图
图4-1系统仿真
4.2系统电路图
图4-2系统电路图
输入刹车信号一直为高电平,输出LD2灯和RD2灯也为长亮;
左转信号为高电平时,LD1灯闪烁,右转信号为高电平时,RD1灯闪烁;
当左转信号和右转信号同时为高电平时,LD1灯和RD1灯都不亮;
夜间行驶信号为高电平时,LD3灯和RD3灯同时亮。
波形仿真结果满足预期的功能。
5.硬件设置与测试
选用硬件芯片为EP1K30T144-3
端口设置:
输入端口:
Clk-------PIN125选用1Hz脉冲
开关控制
LEFT-----PIN32----SW1RIGHT---PIN33----SW2
BRAKE---PIN36-----SW3NIGHT------PIN37---SW4
输出端口:
彩灯显示
LD1------------PIN31---------------D112
LD2------------PIN30---------------D111
LD3------------PIN29---------------D110
RD1------------PIN26---------------D107
RD2------------PIN27---------------D108
RD3------------PIN28---------------D109
测试结果:
当打开单独左转开关,D112(LD1)亮;
当打开单独右转开关,D107(RD1)亮;
当左右同时打开时,D112,D107(LD1,RD1)都不亮;
当打开夜行或刹车开关时,D111和D108(LD2和RD2)都亮或D110和D109(LD3和RD3)都亮。
6.心得体会
设计让我们充分主动,在各方面,由小组合作,分工明确,目标明了,在充分找到资料后,认真熟悉与分析原理,调起了学生的设计兴趣,在编程方面,姜理论知识运用于实际,将所学知识充分运用,由于缺乏实验器材,只能在电脑上仿真,每一步都体现了设计的人性化和团队合作的重要性,开发了学生的创造力与思考能力,调动了学生做事的主动性。
7.指导老师意见
8.参考资料
【1】邹彦、庄严等编.EDA技术与数字系统设计.北京:
电子工业出版社,2008
【2】张庆双主编.实用电子电路200例.北京:
机械工业出版社,2005
【3】赵世强、许杰等编.电子电路EDA技术.西安:
西安电子科技大学出版社,2000
【4】清华大学电子学教研组编.余孟尝主编.数字电子技术.第三版.北京:
高等教育出版社,2006
【5】黄仁欣.EDA技术实用教程.北京:
清华大学出版社,2006
【6】江国强.EDA技术与应用.北京:
电子工业出版社,2004
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 课程设计 报告