基于fpga技术的出租车计费器设计内容摘要:

这种将设计实体分成内外部分的概念是 VHDL 系统设计的基本点。 使用 VHDL 设计系统方法是自顶向下的系统设计方法,在设计过程中,首第二章 概述 6 先是从整体上对系统设计作详细的规划,然后完成电路系统功能行为方面的设计。 其设计流程如图 : 图 VHDL 工程设计流程 随着 EDA 技术的发展,使用硬件语言设计 FPGA 成为一种趋势。 借用MAXPLUSII或 QuartusII 等软件用 VHDL 语言开发 FPGA 的完整流程为: ( 1)文本编辑:用任 何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。 通常 VHDL 文件保存为 .vhd 文件。 ( 2)功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)。 ( 3)逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式和信号的连接关系。 逻辑综合软件会生成 .edf( edif)的 EDA 工业标准文件。 ( 4)布局布线:将 .edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑安放到 PLD/FPGA 内。 ( 5)时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序(也叫后仿真)。 ( 6)编程下载:确认仿真无误后,将文件下载到芯片中。 .sof 文件用于直接下载到芯片(掉电后会消失), .pof 文件用于 rom 芯片下载(掉电后不消失)。 南昌工程学院 本 科 毕业设计(论文) 7 MAX+PLUS II MAX+PLUS II 开发工具是 Altera 公司自行设计的一种 CEA 软件工具。 它具有原理图输入和文本输入两种输入手段,利用该工具所配备的编辑、翻译、仿真、综合、芯片编程功能,能将设计电路图或电路描述程序 变成基本的逻辑单元写入到可编程逻辑的芯片中(如 CPLD)。 设计中主要用 Altera 公司 FPGA 来实现 LED 屏显示, MAX+PLUS II 是用来编写模块 VHDL 语言的必备工具。 MAX+PLUS II 支持 Altera 公司不同结构的可编程逻辑器件,能满足用户各种各样的设计需要。 MAX+plus II 具有突出的灵活性与高效性,为设计者提供了多种可自由选择的设计方法和工具。 MAX+PLUSII 普遍认为 MaxplusII 曾经是最优秀的 PLD 开发平台之一,适合开发中小规模 PLD/FPGA。 在这里 我们可以先看一看用 FPGA/ CPLD 开发工具进行电路设计的一般流程,通常可将 FPGA/CPLD 设计流程归纳为以下 7 个步骤,这与 ASIC 设计有相似之处。 设计流程。 在传统设计中,设计人员是应用传统的原理图输入方法来开始设计的。 自 90 年代初, Verilog、 VHDL、 AHDL 等硬件描述语言的输入方法在大规模设计中得到了广泛应用。 (功能仿真)。 设计的电路必须在布局布线前验证电路功能是否有效。 ( ASCI设计中,这一步骤称为第一次 Signoff) PLD 设计中,有时跳过这一步。 设计输入之后就有一个从高层次系统行为设计向门级逻辑电路设转化翻译过程,即把设计输入的某种或某几种数据格式 (网表 )转化为软件可识别的某种数据格式 (网表 )。 对于上述综合生成的网表,根据布尔方程功能等效的原则,用更小更快的综合结果代替一些复杂的单元,并与指定的库映射生成新的网表,这是减小电路规模的一条必由之路。 第二章 概述 8 在 PLD 设计中, 35 步可以用 PLD 厂家提供的开发软件(如 Maxplus2)自动一次完成。 (时序仿真)需 要利用在布局布线中获得的精确参数再次验证电路的时序。 ( ASCI 设计中,这一步骤称为第二次 Sign— off)。 布线和后仿真完成之后,就可以开始 ASCI 或 PLD 芯片的投产。 Max+plusⅡ开发系统的特点 开放的界面 Max+plusⅡ支持与 Cadence, Exemplarlogic, Mentor Graphics, Synplicty, Viewlogic和其它公司所提供的 EDA工具接口。 与结构无关 Max+plusⅡ系统的核心 Complier支持 Altera公司的 FLEX10K、 FLEX8000、FLEX6000、 MAX9000、 MAX7000、 MAX5000和 Classic可编程逻辑器件,提供了世界上唯一真正与结构无关的可编程逻辑设计环境。 完全集成化 Max+plusⅡ的设计输入、处理与较验功能全部集成在统一的开发环境下,这样可以加快动态调试、缩短开发周期。 丰富的设计库 Max+plusⅡ提供丰富的库单元供设计者调用,其中包括 74系列的全部器件和多种特殊的逻辑功能( MacroFunction)以及新型的参数化的兆功能( MageFunction)。 模块 化工具 设计人员可以从各种设计输入、处理和较验选项中进行选择从而使设计环境用户化。 硬件描述语言( HDL) Max+plusⅡ软件支持各种 HDL设计输入选项,包括 VHDL、 Verilog HDL和Altera自己的硬件描述语言 AHDL。 Opencore特征 Max+plusⅡ软件具有开放核的特点,允许设计人员添加自己认为有价值的宏函数。 南昌工程学院 本 科 毕业设计(论文) 9 设计流程 设计输入: 可以采用原理图输入、 HDL 语言描述、 EDIF 网表输入及波形输入等几种方式。 编译: 先根据设计要求设定编译参数和编译策略,如 器件的选择、逻辑综合方式的选择等。 然后根据设定的参数和策略对设计项目进行网表提取、逻辑综合和器件适配,并产生报告文件、延时信息文件及编程文件,供分析仿真和编程使用。 仿真: 仿真包括功能仿真、时序仿真和定时分析,可以利用软件的仿真功能来验证设计项目的逻辑功能是否正确。 编程与验证: 用经过仿真确认后的编程文件通过编程器( Programmer)将设计下载到实际芯片中,最后测试芯片在系统中的实际运行性能。 在设计过程中,如果出现错误,则需重新回到设计输入阶段,改正错误或调整电路后重复上述过程。 图 流程图 设计步骤 (File/Project/Name) 设计输入 编 译 在系统测试 编 程 修改设计 仿真与定时分析 第二章 概述 10 (图形、 VHDL、 AHDL、 Verlog和波形输入方式 ) (Max+plusⅡ /graphic Editor; Max+plusⅡ /Text Editor; Max+plusⅡ /Waveform Editor) CPLD型号 (Assign/Device) 、下载方式和逻辑综合的方式 (Assign/Global Project Device Option,Assign/Global Logic Synthesis) (File/project/Save amp。 Check) (Max+plusⅡ /Floorplan Editor) (File/project/Save amp。 Compile) (Max+plusⅡ /Waveform Editor) (Max+plusⅡ /Simulator) (Max+plusⅡ /Programmer) Altium Protel 2020 Altium Protel 2020 是 Altium 公司推出的电路原理图绘制、 PCB 图绘制以及数模电路仿真一体化的电子设计软件,设计中所有的原理图、 PCB 图均采用该软件绘制。 Protel 2020 引入了集成库的概念,这使您在原理图中选择的元器件就已经有了您需要的封装, Protel 2020 附带了 68,000 多个元件的设计库,包括原理图FPGA 设计的即调即用及预综合元件集成库,并且这些封装都能完全符合您的要求,当然如果您不满意,也可以修改这个元器件的封装为您所需 ,当然您还可以在 PCB 库编辑器制作您所需要的封装。 南昌工程学院 本 科 毕业设计(论文) 11 第三章 出租车计费系统设计说明 系统总体结构 设计一个满足日常生活所需功能的出租车计价器。 该计费器能实现计费功能。 车起步开始计费,首先显示起步价,起步费为 元,车在行驶 3km 以内,只收起步价。 车行驶超过 3km 后,没公里 元,车费依次累加。 当遇到红灯或客户需要停车等待是,则按时间计费,计费单价为每分钟收费 1 元。 实现计费器预置功能,能够预置起步价、每公里收费、计时收费等。 用两位数码管显示总里程数、等待时间和行车计费。 整 个出租车计费系统按功能自顶向下分为分频模块、控制模块、计量模块、译码和动态扫描显示模块,其系统结构如图 所示,各模块功能如下所述。 FPGA 图 出租车计费器系统机构图 单元模块描述 分频模块 分频模块对频率为 240hz的输入脉冲进行分频,得到的频率为 16hz、 10hz、1hz三种。 该模块产生频率信号用于计费,每个 1hz脉冲为 , 10hz信号为 1元的计费控制, 16hz信号为。 等待信号 公里脉冲 计费、复位 时钟信号 分频器 计 费 计 时 计 程 控制器 译码 显示 第三章 出租车计费系统设计说明 12 计量控制模块 计量控制模块是出租车计费系统的主体部分,是其核心模块,该 模块由控制模块、等待计时模块、里程计数摸块和计费模块组成。 主要完成等待计时功能、计价功能、计程功能,同时产生 3分钟的等待计时使能控制信号 en行程 3公里外的使能控制信号 en0。 控制模块是系统的棱心部分.根据汽车计价启动信号 (start)、停止等待信号 (stop),汽车传感器提供的距离脉冲信号( fin)等控制信号对计赞器的状态进行控制。 译码显示模块 本次设计采用的是共阴极七段数码 管,根据 1 6进制数和七段显示段码表的对应关系,用 VHDL的 Case语句可方便实现它们的译码。 .该模块经 8选 1选择器将计费数据( 4位 bcd码)、计时数据( 2位 bcd码)、计程数据( 2位 bcd码)动态显示出来。 其中计费数据 jifei4~ jifei1送入显示译码模块进行译码,最后送至以百元、十元、元、角为单位对应的数码显示管上,最大显示为 ;计时数据送入显示译码模块进行译码,最后送至以分为单位对应的数码显示管上,最大显示为 59分;计程数据送入显示译码模块进行译码,最后送至以公里为单位对应的数码显示管 上,最大显示为 99公里。 车租车计费器的层次化设计方案 出租车计费器的主题 FPGA 电路 taxi 模块的 VHDL 设计。 根据 任务书 描述功能该电路的核心部分就是计数分频电路,通过 VHDL语言的顺序语句 IFTHENELSE根据一个或一组条件来选择某一特定的执行通道,生成计费数据、计时数据和里程数据。 其 VHDL语言 见附一。 该源程序包含 3个进程模块。 fenpin 进程对频率为 2。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。