出租车计费系统的FPGA设计与实现毕业论文
2021-04-06 22:41:07
摘 要
传统的出租车计费系统采用单片机进行设计,其硬件构成电路较复杂且程序语言并不通用,因此,系统的功能调节或升级极其不便。针对以上所述情况,依靠日益发展的EDA技术,科学家可以基于FPGA进行设计研发出满足当前人们需求的出租车计费系统。充分利用FPGA的低成本及可编程性,使出租车计费系统升级调节更简易,且载体更低廉轻便。该设计采用自顶向下的设计方法,构造了包含车轮大小选择模在内七个子模块的功能,并通过连接它们构成系统,最终系统实现选择车型模式,计费计程,实时显示的功能。出租计费系统基于Altera公司的Cyclone II系列芯片EP2C700F896C8,使用VHDL语言进行编程,并通过Quartus II软件平台实现仿真编译。最终实验设计成功,该系统完成所需设计功能,且操作简单,成本低廉。
关键词:出租车;计费系统;FPGA;VHDL;Quartus II
Abstract
The traditional taxi billing system is designed by microcontrollers. The hardware circuit of MCU is complex, and the program language of MCU is not universal. So the function adjustment or upgrade of the system is extremely inconvenient. In view of the above situation, relying on the increasingly developed EDA technology, scientists can base the FPGA to design and develop the current mass demand for taxi billing system. making full use of the FPGA which is low cost and programmable, it makes the taxi billing system upgrade and adjustment more simple, and the carrier is cheaper and lighter. The design adopts a top-down design method, Constructed the function of seven sub-modules including wheel size selection mode. And use seven modules to form a system, finally the system realizes the function of selecting the model mode, billing and real-time display. The system is based on Cyclone II series chip EP2C700F896C8 of Altera company. and it is designed with VHDL Language, and is emulated on the Quartus II software platform. The final experimental design was successful, the system completed the required design functions, and the operation was simple and the cost was low.
Key Words:The taxi. Billing system; FPGA; VHDL;Quartus II
目 录
第1章 绪论 1
1.1 课题背景 1
1.2 出租车计费系统的现状及趋势 2
1.3 本文主要内容 2
第2章 出租车计费系统设计 4
2.1 EDA技术介绍 4
2.2 FPGA器件介绍 4
2.3 VHDL语言简介 5
2.4 系统设计思路 6
2.5 系统程序设计 8
2.5.1 车轮大小选择模块设计 8
2.5.2 计程模块设计 8
2.5.3 计时模块设计 9
2.5.4 计费模块设计 9
2.5.5 数据分配模块设计 10
2.5.6 分频模块设计 10
2.5.7 显示译码模块设计 11
2.5.8 系统顶层原理图 11
第3章 系统的仿真与分析 12
3.1 Quartus II软件介绍 12
3.2 系统子模块仿真 12
3.2.1 车轮大小选择模块仿真 12
3.2.2 计程模块仿真 14
3.2.3 计时模块仿真 14
3.2.4 计费模块仿真 15
3.2.5 数据分配模块仿真 16
3.2.6 分频模块仿真 17
3.2.7 显示译码模块仿真 17
3.3 总体电路仿真模块设计 18
第4章 总结与展望 21
4.1 总结及体会 21
4.2 展望 222
附 录 24
致 谢 34
第1章 绪论
1.1 课题背景
依靠城镇经济的蓬勃发展,近年国内的出租交易也迅速增长,出租车行驰在全国的大小城镇的街道中,各个年龄段的人群开始将出租车作为首要的出行工具。出租车的计费系统作为消费者与运营者之间用于公平交易的工具,一款性能优良的出租车计费系统不论对乘客还是对出租车司机都是十分重要的[1]。
1907年,出租车在纽约街头初次登场,出租车计费系统也随之诞生,系统最初仅是钟表师傅设计的一种计程工具,故出租车也被称为计程车。也因为仅由钟表师傅设计,所以其由机械齿轮组装,且只能进行简单计程。后来经过科学家改良,社会上出现了半电子化的计费系统,成为能进行路途计算同时能提示消费者应付的工具。现如今,计费工具载体与以前不同,多数厂商选择以微处理器为核心的进行生产设计,因此其功能也丰富起来如:加入了LED显示模块及语音模块,更好地显示价钱及里程;加入了存储功能,可翻阅最近的交易信息;加入了时钟模块,在行驶中显示时间;更有些系统加入了打印发票的功能,满足部分人群的需求。除此之外,相对包含机械构造的出租计费系统,全电子化使其噪音更小,计算显示的数据也更精准。不过,微处理器虽然能很好的服务于出租车计费系统,但出厂后调节复杂,不够灵活,仅能满足小范围市场的需求,其本身的不足在地域跨度大的市场更尤为明显。正如我国地域辽阔且发展不均,因此国产出租车计费系统面临如:中小城市的出租车每趟运营里程较短导致其起步价及起步距离与大城市不同,特大城市的城市交通情况导致停车耗油较多因而出租车需要进行停车计时等复杂情况。故出租车计费系统需要能对计费方式进行设置,同时为了体现公正需要实时显示路程、停车时间及费用的功能。
以上设计要求是现有传统方式设计的计费系统所不能满足的,而基于FPGA设计的出租计费系统能灵活地实现所需功能。FPGA被创造于逻辑单元阵列这一概念,其具有较高的容量及密度。FPGA可编辑器件依托于EDA技术的提升得到了极大的发展,在许多场合替代了诸如单片机之类的控制器件,也解决了一些传统电子设计所不能解决的问题,它使目标设计的电路结构简单化。而且FPGA的软件是通用的面对不同的芯片不需要重新编程,只需要锁到相应的引脚即可[2]。同时FPGA随着科学技术的在相关领域的发展,它将朝着小体积且低成本方向走去,特别是IP核的使用。IP核是由相关领域的人士设计,可使设计者只需做很少设计就可实现系统功能,有利于缩短设计周期,提高设计质量[3]。
因此,本次设计立足于FPGA可编辑器件,以VHDL语言编程,采取自顶向下的电路设计方法实现对出租车计费系统。设计最终采用Cyclone II的EP2C700F896C8芯片,并在Quartus II平台进行编译及仿真。以FPGA器件为基础的出租计费系统在成本及功能性上将大大优于传统的系统,它将大大拓展了出租车计费系统的市场范围,这也是本次设计的主要意义。
1.2 出租车计费系统的现状及趋势
从1986年起,我国便开始自主研发设计国产的出租车计费系统,通过三十多年的发展,国产出租车计费系统早已结束了依靠国外进口组装的阶段,基本实现我国的出租车市场的全覆盖,甚至出口部分产品及部件,处于国际同类产品的先进行列[4]。而目前在国内外市场上,出租计费系统多数是依靠如51系列单片机之类的微处理器运行的,因这项技术开发比较成熟,故具有成本低、技术简单等优点,这也是被市场广泛使用的主要原因。不过,依靠单片机的出租计费系统所需元器件繁杂,因而功耗大且散热差,其使用寿命也受其影响。除此之外,单片机本身设计研发繁琐,各类单片机之间各有一套编辑程序语言导致系统升级调整不灵活,这也造成了一些出租车司机在使用出租计费系统时会遇到很多不便如:物价上涨导致出租车需要涨价,但系统调整繁琐,司机只能自身人工进行计算车费,出租车服务质量明显下降。
介于这些缺陷,同时近年来EDA技术逐渐发展起来,很多厂商尝试采用CPLD、FPGA等可编程器件进行出租车计费系统的设计。特别是FPGA的研发周期短,硬件提升空间大,具有可编程、运行速度快和稳定高等显著优势,同时其将电路设计在芯片中运行,提升了电路性能,设计方案更加效率灵活[5]。而出租车计费系统未来将趋于易操作且多功能化以面对越来越多样化的市场需求,这表示依靠FPGA器件的出租计费系统在未来将会具有很大的发展前景,甚至将成为未来出租计费系统生产设计的首选。
1.3 本文主要内容
本设计根据当前出租计费系统所面临的挑战,所采取的措施为:以FPGA器件替换微处理器,这将减少设计时间及工作量,同时提升设计整体的稳定性,并减少PCB板的面积;新增车轮选择功能,覆盖大部分车型,扩大系统的适用范围;实现计价规则的制定可调化,减少因物价波动需对系统调节的时间,优化出租车司机与系统的交互体验;实时显示出租车状态信息,保证费用结果公正。
由此,本文总共分为四章。第一章主要提到了关于出租计费系统设计这个课题的背景,当前课题现状和未来趋势以及本次设计的主要工作。第二章先对设计所涉及到电子设计自动化及其相关的知识进行介绍,再提出了系统的设计思路及方案,并详细阐述系统的七个子模块各自的功能。第三章对Quartus II软件进行介绍,对各子模块的程序代码进行仿真,分析各自仿真结果;将各子模块结合后进行整体仿真,并分析结果。第四章将总结本次设计,对出租车计费系统的未来做出展望。
第2章 出租车计费系统设计
2.1 EDA技术介绍
EDA技术又被称为电子设计自动化技术,设计者依靠计算机,采用硬件描述语言在EDA的软件上进行设计,计算机将自动完成编译、仿真等操作,直到下载至目标[6]。随着可编辑逻辑器件的出现,EDA技术的创新得到极大的推动,而经过这么多年的推广,特别是依靠LSI的PLD出现,它使得EDA技术成为了系统软件与硬件的桥梁,这使得EDA技术已成为当前科技升级更新的主推力。
一般数字电子设计的基本设计流程有两种。一种为自底向上法即从最底层进行工作,先选单个逻辑器件组合达到各模块作用,再将各模块组成整体。这是原先手工电路设计的一般流程,而EDA技术则更多的采用自顶向下设计法。自顶向下法即将设计主体按照一定规则转化为各个子模块,接着每个模块转化为若干各小模块,不断转化直至可以几个简单的基本模块完成。这样一来,系统就从高层次的抽象功能模块变成了独立的易于实现的低层次功能模块[7]。当这些模块经过软件进行设计仿真确定后,相互连接起来变组成符合预期的整体系统。
随着计算机技术的发展,EDA工具不断增多。在我国,具有一定影响力的EDA软件有SPICE、PSpice、Altium Designer、OrCAD、modelsim、Electrical Workbench、Matlab、Protel等。[8]。目前EDA软件开发商大部分成立在美国,一些较发达的国家也具有本土化的EDA开发工具,如日本就具有本国国产的EDA开发工具。在我国,华大集团便提供相应的开发设计工具,但软件功能较少,市场使用率并不高。同时,目前相关软件中存在部分是专门开发FPGA器件的软件,就比如Altera公司Quartus II软件。Quartus II是阿尔特拉公司最新版本的开发平台,一般作用在大规模器件开发,且软件支持的输入众多,如原理图、文本及其两者混合等[9]。本次设计便采用Quartus II进行设计仿真。
2.2 FPGA器件介绍