基于fpga的出租车计费器毕业设计.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于fpga的出租车计费器毕业设计.doc》由会员分享,可在线阅读,更多相关《基于fpga的出租车计费器毕业设计.doc(27页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、目 录摘要1Abstract1第一章 引言21.1课题背景21.2本文的主要工作2第二章 FPGA、VHDL介绍42.1 FPGA现状及发展42.2 FPGA的结构与特点42.2.1 FPGA基本结构52.2.2 FPGA的特点62.3 VHDL设计优点6第三章 出租车计费器的设计73.1出租车计费器的总体设计73.1.1出租车计费标准73.1.2 总体框架设计73.2出租车计费器主要模块设计83.2.1 速度模块93.2.2 计程模块93.2.3 计时模块103.2.4 计费模块10第四章 整体电路设计114.1 整体电路图114.2 电源电路124.3 启动/停止按键电路124.4 自动清
2、零部分13第五章 系统仿真与下载实现135.1 Quartus软件介绍145.1.1软件特点145.1.2 Quartus设计流程:145.2仿真结果155.2.1整体仿真155.2.2速度模块仿真155.2.3计程模块仿真165.2.4计时模块仿真165.2.5 计费模块仿真175.3设计测试17第六章 总结及展望18致谢19主要参考文献19基于FPGA的出租车计费器设计摘要:随着EDA技术的高速发展,电子系统的设计技术和工具发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了很多方便。利用它进行产品开发,可以降低研发成本,缩短研发周期。本文介绍了一种采用FPGA
3、芯片进行出租车计费器的设计方法,描述了研究该课题的意义和应用价值;说明了Altera公司的FPGA结构原理及其主要运用;介绍了超高速集成电路硬件描述语言的主要功能和设计;讲解了出租车计费器的系统原理和功能。本文主要采用了Altera公司的可编程逻辑芯片EPC2C35F672C8为核心控制,并附加一定外围电路组成出租车计费器,使用目前流行的VHDL语言进行设计,具有移植性强的特点,便于升级及可重复使用。利用Quartus6.0对所设计的出租车计费器的VHDL代码进行仿真,并在FPGA数字实验系统上实现了该控制。 关键字: FPGA, VHDL, Quartus, 出租车计费器Design of
4、Taxi Meter Based on FPGAABSTRACT:With the rapid development of EDA technology, the design and tools of electronic system have deeply changed. And the large-scale programmable logic device CPLD/FPGA appearance to make convenience for designer. By using it to research and develop, it will help deviser
5、 to reduce cost, shorten cycle. This essay introduces a design of taxi meter by using FPGA chip, describes the significance and importance to research this, explain makeup elements of FPGA which is made by Altera Company, introduce the main function and design of Very-High-Speed Integrated Circuit H
6、ardware Description Language, interpret the taxi meter principle and functions of the system. This essay mainly use the EPC2C35F672C8 for core control, and add some outside circuit to make a taxi meter. It is designed with VHDL Language and it can be migrated easier. This make the product much more
7、convenience to repeat use. By using Quartus6.0 to emulate taxi meter VHDL code, the PFGA digital experiment system can be controlled.Key Words: FPGA, VHDL, Quartus, Taxi fare Registers第一章 引言几年来,出租车行业发展迅速,全国大大小小的出租车公司已有数千家,基于出租车的附属品市场前景也是十分广阔。传统的出租车计费器大多是由单片机实现的,发展使用也是十几年了,在稳定性、成本、制造工艺、使用习惯等方面都具有一些优势
8、,但在运营过程中系统不是很稳定,容易造成死机的现象。传统计费器的不足点:1. 产品更新周期长:传统的计费器利用微控器,大部分功能依靠单片机实现。但单片机的程序不通用,不同芯片指令集不相同,因此设计研发比较困难,周期很长。2. 计价方式不灵活:每次计价标准修改都需要重新烧录芯片,使得每次价格调整都成为很费力的事情,很难适应社会发展的需要。本设计基于FPGA的出租车计费器主要由Altera公司的Cyclone型系列芯片EPC2C35F672C8及一些外部控制电路组成。使用软件Quartus和超高速硬件描述语言VHDL来实现计价标准灵活设定。FPGA在电子设计领域中价格低廉,有良好的发展趋势,它的出
9、现必定会占领大部分数字器件市场。面对出租车行业日益迅猛的发展趋势及对计费器更高的灵活性的要求,本设计希望尝试一些新的方法来予以解决。 (1).利用FPGA取代传统微控器随着FPGA等数字可编程器件的出现解决了传统电子设计不能完成的任务,利用FPGA来实现出租车计费器,可行性很高,而且电路简单,大大减少外围器件,可以用软件完全仿真,灵活度高,可以设计一些复杂的系统,而且编好的系统可以在不同的FPGA或CPLD芯片上通用。FPGA能完成任何数字器件的功能,使用FPGA来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。同时由于FPGA的功能完全取决于VHDL语言编写的程序,不拘
10、泥于某种芯片的特殊指令,更加提高了产品的更新换代能力。 (2).完成基于FPGA的出租车计费器的设计出租车计费器系统是VHDL语言的实际应用,利用VHDL语言设计出来的出租车计费器系统将实现计程模块、计时模块以及动态扫描模块等设计方法与技巧。计程模块将用计数器来完成,计数器对脉冲数计数,然后提供给程序数据。通过不同的信号,然后用比较器可以让我们确定出租车是在车行计程还是车停计时。再将数据传输到计费模块,通过多种条件判定,最后确定输出值,然后相加确定最后的费用,并显示出来。第二章 FPGA、VHDL介绍2.1 FPGA现状及发展FPGA是现场可编程门阵列(Field Programmable G
11、ate Array)的简称。它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA起源于美国的Xilinx公司,该公司于1985年推出了世界上第一块FPGA芯片。在这二十年的发展过程中,FPGA的硬件体系结构和软件开发工具都在不断的完善,日趋成熟。从最初的1200个可用门,90年代时几十万个可用门,发展到目前数百万门至上千万门的单片FPGA芯片,Xilinx、Altera等世界顶级厂商已经将FPGA器件的集成度提高到一个新的水平。FPGA结合了
12、微电子技术、电路技术、EDA技术,使设计者可以集中精力进行所需逻辑功能的设计,缩短设计周期,提高设计质量。目前世界上有十几家生产CPLD/FPGA的公司,最重要的几家是Altera、Xilinx、Lattice和Actel。Actel公司生产的FPGA广泛应用于通信等领域,该公司的部分FPGA系列采用了繁荣死结构,可以应用于航空航天、军事领域。另外一些FPGA采用了Flash工艺制造。Xilinx公司目前有8款FPGA的DSP。其中Sparten-3A DSP为低端产品,高端的Virtex-DSP分为两个产品线:Virtex-4 SX,采用了65nm工艺的Virtex-5 SXT。所以Xili
13、nx的产品从21最多到352个GMAC/s(千兆乘加/秒),以提供不同范围的性能,同时也增大在存储器方面的带宽。因此最低速产品可以运行到250MHz,告诉产品运行到550MHz;MAC单元从84到640。Altera公司的高密度Stratix器件拓展FPGA的DSP性能。嵌入式DPS模块运行在550Hz,这些器件可达每秒492千兆乘加(GMAC)的性能,并结合良好的逻辑结构于速度优化的互联。Stratix器件可以引脚完全兼容地移植到HardCopy结构化ASIC,从而保证客户的设计功能没有任何改变。Altera的新一代结构化ASIC芯片,逻辑相当于多达220万ASIC门,DSP模块相当于额外的
14、140万门,还有集成超过8Mbits的嵌入式存储器。2.2 FPGA的结构与特点 FPGA基本结构目前生产FPGA的主要公司有Altera、Xilinx、Lattice和Actel,生产的FPGA品种和型号繁多,尽管这些FPGA的集体结构和性能指标各有特色,但它们都有一个共同之处,即由逻辑功能块排成阵列,并有可编程的互连资源连接这些逻辑功能块,从而实现不同的设计。典型的FPGA通常包含三类基本资源:可编程逻辑功能块、可编程输入/输出块和可编程互联资源,基本结构如图2-1所示。 图2-1 FPGA基本结构 FPGA的特点FPGA使用的是可编程的查找表(Look Up Table,LUT)结构,L
15、UT是可编程的最小逻辑结构单元。大部分FPGA采用基于SRAM的查找表逻辑形成结构,就是用SRAM(静态随机存储器)来构成逻辑函数发生器。一个N输入查找表(LUT)可以实现N个输入变量的任何逻辑功能。目前市场上有三种基本FPGA编程技术:SRAM、反熔丝、Flash。其中SRAM是迄今为止应用范围最广的架构,主要因为它速度快且具有可重编程能力,而繁荣死FPGA只具有一次可编程(One Time Programmable,OTP)能力。基于Flash的FPGA是FPGA领域比较新的技术,也能提供重编程功能。 2.3 VHDL设计优点利用VHDL语言设计数字逻辑硬件系统具有多方面的优点。1 VHD
16、L可以用来描述逻辑设计的结构,比如逻辑设计中有多少个子逻辑,而这些子逻辑是如何连接的。2 VHDL并不十分关心一个具体逻辑是靠何种电路实现的,设计者主要把精力集中电路所能实现的功能上。3 VHDL采用类似于高级语言的语句格式完成对硬件行为的描述,所以我们称VHDL为行为描述语言。4 VHDL所给出的逻辑的模拟与调试为设计者提供了最大的空间,用户甚至不必编写任何测试向量便可进行源代码级的调试。5 设计者可以非常方便地比较各种方案的可行性和优劣,大大降低了设计的难度。并且设计者的原始描述是非常简练的硬件描述,经过EDA工具处理最终生成付诸生产的电路描述或版图参数描述的工艺文件。6 VHDL语言具有
17、良好的可读性,VHDL语言中的设计尸体(Design Entity)、程序包(Package)、设计库(Library)为设计人员重复利用别人的设计成果提供了技术手段。第三章 出租车计费器的设计 出租车计费标准车起步开始计费,首先显示起步价,起步费为3.00元,车在行驶3km以内,只收起步价。车行驶超过3km后,每公里2元,车费依次累加。当总费用达到或超过40元时,每公里收费4元。当遇到红灯或客户需要停车等待时,则按时间计费,计费单价为每20秒收费1元。 总体框架设计系统流程介绍:分析系统设计要求不难得知,整个出租车计费系统按功能主要分为速度模块、计程模块、计时模块和计费模块,其系统结构图如图
18、3-1所示。图3-1 出租车计费器系统结构图系统接收到reset信号后,总费用变为3元,同时其他计数器、寄存器等全部清零。系统接收到start信号后,首先把部分寄存器赋值,总费用不变,单价price寄存器通过对总费用的判断后赋为2元。其他寄存器和计数器等继续保持为0。速度模块:通过对速度信号sp的判断,决定变量kinside的值。Kinside即是行进100m所需要的时钟周期数,然后每行进100m,则产生一个脉冲clkout。计程模块:由于一个clkout信号代表行进100m,故通过对clkout计数,可以获得共行进的距离kmcount。计时模块:在汽车启动后,当遇到顾客等人或红灯时,出租车采
19、用计时收费的方式。通过对速度信号sp的判断决定是否开始记录时间。当sp=0时,开始记录时间。当时间达到足够长时产生timecount脉冲,并重新计时。一个timecount脉冲相当于等待的时间达到了时间计费的长度。这里选择系统时钟频率为500Hz,20s即计数值为1000。计费模块由两个进程组成。其中,一个进程根据条件对enable和price赋值:当记录的距离达到3公里后enable变为1,开始进行每公里收费,当总费用大于40元后,则单价price由原来的2元每公里编程4元每公里;第二个进程在每个时钟周期判断timeout和clkout的值。当其为1时,则在总费用上加上相应的费用。从上述设计
20、方案中我们可以大致得到出租车计费器的系统框图,如图3-2所示。其中clk为输入时钟脉冲,时钟上升沿有效;reset为复位信号,start为开始计费信号,stop为停止计费信号,均高电平有效;SP2.0表示出租车状态(停止或不同形式速度);kmcnt和count信号则分别输出出租车行驶的里程和花费。 图3-2 出租车计费器系统框图 速度模块速度模块首先根据start信号判断是否开始计费,然后根据输入的速度档位sp2.0的判断,确定行驶100m所需要的时钟数,每前进100m,输出一个clkout信号。同时由cnt对clk进行计数,当cnt等于kinside时,把clkout信号置1,cnt清0。其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 fpga 出租车 计费 毕业设计
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内