eda课程设计vhdl语言的简易出租车计费器设计.docx
- 文档编号:9493741
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:14
- 大小:47.41KB
eda课程设计vhdl语言的简易出租车计费器设计.docx
《eda课程设计vhdl语言的简易出租车计费器设计.docx》由会员分享,可在线阅读,更多相关《eda课程设计vhdl语言的简易出租车计费器设计.docx(14页珍藏版)》请在冰豆网上搜索。
eda课程设计vhdl语言的简易出租车计费器设计
唐山学院
《EDA技术》课程设计
题目简易出租车计费器设计
系(部)信息工程系
班级12电本班
姓名
学号4120208XXX
指导教师郭耀华周剑利吕宏丽
2015年7月6日至7月12日共1周
2015年7月8日
课程设计成绩评定表
出勤
情况
出勤天数
缺勤天数
成
绩
评
定
出勤情况及设计过程表现(20分)
课设答辩(20分)
设计成果(60分)
硬件调试
设计说明书
总成绩(100分)
提问
(答辩)
问题
情况
综
合
评
定
指导教师签名:
年月日
1引言
出租车计费器是出租车营运收费的智能化仪表,是使出租车市场规范化、标准化的重要设备。
一种功能完备,简单易用,计量准确的出租车计价器是加强出租车行业管理,提高服务质量的必需品。
在科技高度发展的今天,集成电路和计算机应用得到了高速发展。
本设计就采用VHDL描述语言,设计出租车计价系统的软件结构,通过QuartusⅡ9.0软件下进行仿真,再在试验箱进行硬件仿真,实现了模拟的简易的出租车计费器。
编写程序所用的VHDL语言全名为Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
自IEEE-1076(简称87版)之后,各EDA公司相继推出自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。
1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,简称93版。
VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。
对程序进行编译及仿真用到的的QuartusⅡ9.0软件是Altera公司的综合性PLD/FPGA开发软件,原理图、VHDL、VerilogHDL以及AHDL(AlteraHardware支持DescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
QuartusⅡ9.0可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片平面布局连线编辑;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTapII逻辑分析工具进行嵌入式的逻辑分析;自动定位编译错误;此外,QuartusII通过和DSPBuilder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。
2计费器的设计
2.1设计内容
(1)设计一个简易的出租车计费系统,实现计价功能,计费标准为按行程里程收费,起步价为6.00元,当里程小于3公里时,按照起价计费,车行超过3公里后在按1.2元/公里收费。
(2)实现车辆行驶的模拟:
能模拟汽车的启动,停止,暂停等状态。
(3)计费器显示部分设计:
用LED数码管实时显示车费和汽车行驶里程,用两位数字显示汽车行驶里程,显示方式为“XX”,单位为km。
计程范围为0—99km,计程分辨率为1km;用四位数字显示总费用,显示方式为“XX.X”,单价为元。
计价范围为0—99.9元,计价分辨率为0.1元。
(4)此计费器要设有一个由司机控制的整体复位控制,设定车轮转一圈输出一个脉冲,100个脉冲对应1公里。
2.2设计要求
(1)根据任务要求确定电路各功能模块
(2)写出设计程序
(3)给出时序仿真结果
(4)实现硬件调试
2.3设计原理
设计系统的输入信号:
时钟脉冲clk,开始计费信号start,复位信号rst,暂停信号stop。
输出信号:
显示总费用cost0~cost3,显示计程km0和km1。
设计两个脉冲cost_clk和mile_clk,其中cost_clk通过分频模块分成8个clk上升沿的脉冲,用来计费,mile_clk是96个clk上升沿的脉冲,用来计程。
两个控制输入开关start、stop;控制过程为:
start作为计费开始开关,当start为高电平时,stop为低电平时,系统开始根据输入的情况计费。
当出租车开始行驶时,mile_clk脉冲到来,进行行驶计程;如果行驶路程小于3公里,则费用显示为起步价6.00元,如果行程大于3公里,则cost_clk开始工作,每来一脉冲则加在起步价上加0.1元。
如需停车等待,就把stop变为高电平,恢复行驶时,把stop变为低电平,继续计程与计费。
当按下rst键,计程与计费显示都清零。
该设计有三个模块:
分频模块、计程模块、计费模块。
系统结构框图如图2-1所示:
图2-1
2.4各模块的设计
2.4.1分频模块
为方便计费和计程,需要对clk脉冲进行分频。
因为计费是1.2元每公里,所以0.1元约为83.3米,设计要求一个脉冲是10米,所以把cost_clk分频成每8个clk上升沿对应一个cost_clk上升沿;mile_clk分频成每96个clk上升沿对应一个mile_clk上升沿。
系统模块图2-2如下:
图2-2
2.4.2计程模块
计程模块的功能是计算并输出出租车行驶公里数,及输出使能信号en来表示是否大于三公里。
当计费信号start为高电平且复位信号rst为低电平时,mile_clk每来一个上升沿,计程器低位k0就加1,当k0满9时,进位,高位k1加1,k0清零,k1满9清零,因此计程器的计程范围是0~99km,满量程后自动归零。
当行驶里程大于3km时,使能信号en变为高电平,小于3km时en为低电平。
stop为暂停信号,当stop为高电平时,计量模块停止计数并显示当前里程数。
系统模块图2-3如下:
图2-3
2.4.3计费模块
计费模块的功能是根据前两个模块的输出,根据公里数是否大于3公里,分别计费。
定义c2、c1、c0分别表示费用的十元、元、角的输出。
当en为低电平即行程在3公里以内时,c2c1c0显示为000001100000,代表起步价6.0元;当en为高电平即行程超过3公里时,超过的里程按1.2元每公里计费,每来一个cost_clk上升沿,c2c1c0在6.0元的基础上以0.1元为基数进行累加。
当暂停信号stop为高电平时,c2c1c0停止计费,并显示当前费用。
最后把c2c1c0信号给cost2~cost0,送至数码管译码显示。
系统模块图2-4如下:
图2-4
2.4.4顶层模块
将以上三个模块按设计要求组合在一起,连接各个原件的输入和输出,得到顶层模块。
系统模块图2-5如下。
图2-5
3仿真
程序编译成功后,进行仿真
仿真结果如图3-1
图3-1
当clk脉冲信号到来后,开始里程计数和行驶计费。
当行驶里程小于3公里时,按起步价6.0元收费;当行驶里程超过3公里,则超出里程按每千米1.2元计费。
当stop为高电平时,里程计数和计费均停止,显示当前的里程数和最后的总费用。
当rst为高电平时所有数值清零。
4引脚的锁定
km1、km0和cost2、cost1、cost0为输出,分别表示行驶里程数和最后的总费用,用实验箱上的静态数码管显示。
clk为1Hz的脉冲信号,start、rst,stop分别表示开始计费,复位和暂停计费。
具体引脚锁定如图4-1:
图4-1
5总结
经过这次课设,我们学到的不仅是知识,更多的是团队和合作。
它不仅仅让我们综合那些理论知识运用到设计和创新,还让我们知道了一个团队凝聚在一起时所能发挥的巨大潜能。
我们再次熟悉和增强了对VHDL语言的基本知识,熟悉利用VHDL语言对常用的的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来。
VHDL硬件描述语言打破了硬件和软件设计人员之间互不干涉的界限,可以使用语言的形式来进行数字系统的硬件结构、行为的描述,直接设计数字电路硬件系统。
通过编程、下载后,该芯片已经具备了原来需要使用复杂的数字电路实现的功能;更加了解和加深了对编制和调试程序的技巧,进一步提高了上机动手能力,培养了使用设计综合电路的能力,养成了提供文档资料的习惯和规范编程的思想。
在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常的,但应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。
这次的课设,让我们把课本上所学到的知识,应用到实践中,使我们更加熟练的掌握了这些知识,对于以后的学习有很大的帮助。
参考文献
[1] 阎石,《数字电子技术基础》,高等教育出版社,2005
[2] Volei A. Pedroni ,《VHDL数字电路设计教程》,电子工业出版社,2010
[3] 潘松,黄继业,《EDA技术实用教程》,科学出版社,2010.6
[4] 刘江海,《EDA技术课程设计》,华中科技大学出版社,2009.5
[5] 毕满清,《电子技术实验与课程设计》,机械工业出版社,2009
[6] 焦素敏.《EDA应用技术》.清华大学出版社,2002.4
附录
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
entitycheis
port(clk:
instd_logic;
start:
instd_logic;
rst:
instd_logic;
stop:
instd_logic;
cost0,cost2:
outstd_logic_vector(3downto0);
cost1:
outstd_logic_vector(7downto0);
km0,km1:
outstd_logic_vector(3downto0));
end;
architecturebhvofcheis
signalmile_clk,cost_clk:
std_logic;
signalc0,c1,c2:
std_logic_vector(3downto0);
signalk0,k1:
std_logic_vector(3downto0);
signalen0:
std_logic;
signalcount1:
integerrange0to8;
begin
U1:
process(rst,clk,start)
begin
ifrst='1'thenmile_clk<='0';
elsifstart='0'then
mile_clk<='0';
elsifstop='1'thencount1<=count1;
elsifclk'eventandclk='1'then
count1<=count1+1;
ifcount1=8then
count1<=0;mile_clk<='1';
elsemile_clk<='0';
endif;
endif;
endprocess;
U2:
process(rst,start,mile_clk)
variablek:
integerrange0to12;
begin
ifrst='1'then
k0<="0000";k1<="0000";
elsifstart='0'then
en0<='0';
elsifmile_clk'eventandmile_clk='1'then
k:
=k+1;
ifk1&k0>"00000011"then
en0<='1';
endif;
ifk=12then
k:
=0;k0<=k0+'1';
ifk0="1001"then
k0<="0000";k1<=k1+'1';
ifk1="1001"then
k1<="0000";
endif;
endif;
endif;
endif;
km0<=k0;
km1<=k1;
endprocess;
cost_clk<=mile_clkwhenen0='1'else
'0';
U3:
process(rst,start,cost_clk,en0)
begin
ifrst='1'then
c0<="0000";c1<="0000";c2<="0000";
elsifstart='1'anden0='0'then
c0<="0000";c1<="0110";c2<="0000";
elsifstart='1'anden0='1'then
ifcost_clk'eventandcost_clk='1'then
c0<=c0+'1';
ifc0="1001"then
c0<="0000";c1<=c1+'1';
ifc1="1001"then
c1<="0000";c2<=c2+'1';
ifc2="1001"then
c2<="0000";
endif;
endif;
endif;
endif;
endif;
casec1is
when"0000"=>cost1<="11111101";
when"0001"=>cost1<="01100001";
when"0010"=>cost1<="11011011";
when"0011"=>cost1<="11110011";
when"0100"=>cost1<="01100111";
when"0101"=>cost1<="10110111";
when"0110"=>cost1<="10111111";
when"0111"=>cost1<="11100001";
when"1000"=>cost1<="11111111";
when"1001"=>cost1<="11110111";
whenothers=>null;
endcase;
cost0<=c0;
cost2<=c2;
endprocess;
end;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- eda 课程设计 vhdl 语言 简易 出租车 计费 设计