武汉理工大学FPGA taxi计价器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书
学生姓名:专业班级:
指导教师:华剑工作单位:信息工程学院
题目: 武汉市TAXI计价器的设计与仿真
初始条件:
EDA开发板,Quartus软件。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具
体要求)
1、课程设计工作量:1周。
2、技术要求:
①设计一个符武汉市合现行计价标准的TAXI计价器。计价方案见附件。
②确定设计方案,按功能模块设计分电路,画出总体电路原理图,阐述基本原理。
③用Quartus软件完成设计,下载至开发板上运行。
④查阅至少5篇参考文献,限近5年出版。
⑤按《武汉理工大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印或手
写,图纸应符合绘图规范。
时间安排:
1、 2013 年 6 月 19 日分班集中,作课设具体实施计划与课程设计报告格式的要求说明。
2、 2013 年 7 月 1 日至 2013 年 7 月 6 日为课程设计周。
3、 2013 年 7 月 6日完成课程设计报告与答辩。
指导教师签名:年月日
系主任(或责任教师)签名:年月日
目录
目录
摘要 (3)
1 绪论 (3)
2 出租车计费系统的实验任务及要求 (3)
2.1技术要求 (3)
2.2功能要求 (3)
2.3计费标准 (4)
3 方案设计及原理框图 (4)
3.1硬件方案设计及原理框图 (4)
3.2软件方案设计及原理框图 (4)
4 各单元模块设计,仿真结果及分析 (7)
4.1 分频模块 (7)
4.2计程模块 (9)
4.3计时模块 (14)
4.4 计费模块 (17)
4.5控制模块 (10)
4.6 译码模块 (24)
5 顶层模块设计,仿真结果及分析 (28)
5.1各模块的连线图 (28)
5.2 波形仿真 (28)
5.3输入、输出信号说明 (29)
5.4调试结果说明及分析 (29)
6 收获体会 (29)
参考文献 (29)
基于FPGA的出租车计价器设计
摘要
介绍了出租车计费器系统的组成及工作原理,简述了在EDA平台上用FPGA 器件构成该数字系统的设计思想和实现过程。论述了计程模块,计费模块,计时模块,译码动态扫描模块等的设计方法与技巧。
1 绪论
随着EDA技术的高速发展,电子系统的设计技术发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。利用它进行产品开发,不仅成本低、周期短、可靠性高,而且具有完全的知识产权。本文介绍了一个以Altera公司可编程逻辑芯片cyclone2系列的EP2C5T144C8的FPGA 芯片为控制核心、附加一定外围电路组成的出租车计费器系统。随着社会的不断进步,人们生活水平的不断提高,出租车逐渐成为人们日常生活不可缺少的交通工具。而计价器作为出租车的一个重要组成部分,关系着出租车司机和乘客双方利益,起着重要的作用,因而出租车计价器的发展非常迅猛。
2 出租车计费系统的实验任务及要求
2.1技术要求
(1)掌握较复杂逻辑的设计、调试;
(2)进一步掌握用VHDL语言设计数字逻辑电路;
(3)掌握用QuartusII软件的原理图输入的设计方法。
2.2功能要求
(1)设置两种收费模式,按里程和按等待时间计费;
(2)实现模拟功能:能模拟汽车启动、停止、暂停;
(3)设计动态扫描电路:将车费、里程、等待时间动态的显示出来;
(4)用VHDL语言设计符合上述功能要求的出租车计费器,并用层次化设计方法设计该电路;
(5)各计数器的计数状态用功能仿真的方法验证,并通过有关波形确认电路设计是否正确。
2.3计费标准(附件一)
3 方案设计及原理框图
3.1硬件方案设计及原理框图
图1硬件系统组成框图
各模块的作用和组成:
(1)输入电路:
该模块主要有两个开关以及一个输入信号引脚,作用是输入信号到FPGA中。(3)动态显示模块:
此模块由4个数码管所构成,作用是将里程、等待时间和计费动态分时地显示出来。
3.2软件方案设计及原理框图
3.2.1 FPGA内部具体框图及方案设计
出租车的一般计费过程为:出租车载客后,启动计费器,整个系统开始运行,里程计数器从0开始计数,费用计数器从6开始计算;出租车载客中途等待,等待时间计数器从0开始计数。行驶途中不断根据行驶里程或停止等待的时间的计费标准计费。出租车到达目的地停止后,停止计费。
根据出租车计费器的工作过程,本系统采用分层次、分模块的方式设计,其FPGA内部具体框图如下所示。
图2 软件系统组成框图3.2.2 软件路程图
图3 软件流程图
4 各单元模块设计,仿真结果及分析
本系统采用层次化、模块化的设计方法,设计顺序为自下向上。首先实现系统框图中的各子模块,然后由顶层模块调用各子模块来完成整个系统。
4.1 分频模块
4.1.1 分频模块原理图
图4 分频器原理图
4.1.2 分频模块介绍
此模块的功能是对总的时钟进行分频,总的时钟是50M。计数分频器f60和f50m 能分别把时钟频率分到1/60和1/50M,组合两分频器1Hz和1/60Hz的信号。
信号介绍为:
clk0:输入时钟信号;
fout:输出时钟信号。
4.1.3 分频模块的VHDL程序
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY f60 IS
PORT(clk0:IN STD_LOGIC;
fout:OUT STD_LOGIC);