资料介绍
基于EDA层次化设计方法的出租车计费器设计
基于EDA层次化设计方法的出租车计费器设计
0 引言
EDA使用户在无需实际芯片、电路板和仪器仪表的情况下进行电路设计和分析;采用在系
统编程技术,在现场对系统进行逻辑重构和升级,实现硬件设计软件化。
EDA技术以可编程逻辑器件FPGA和CPLD及其开发系统为硬件平台,以EDA开发软件如Max+
PlusⅡ为开发工具,基于逻辑功能模块的层次化设计方法设计数字系统。Max+PlusⅡ设计
可采用原理图、硬件描述语言(VHDL)等多种输入方式,并支持这些文件的任意混合设计
。对于不同层次,可采用不同的输入方式进行设计。由于VHDL擅长描述模块的逻辑功能
,所以在对底层模块设计中,常采用VHDL进行描述,而原理图则擅长描述模块间的连接
关系,故在顶层设计中,常采用原理图输入方法。出租车计费器通常以单片机为核心进
行设计,本文以为它例介绍基于EDA技术的数字系统混合设计方法。
1 出租车计费器功能
出租车计费器的功能要求:
(1)实现出租车按行驶里程收费,起步费为7.0元;
(2)行驶3 km后再按2元/km计费,车停时不计费;
(3)能预置起步费和每公里收费,并能模拟汽车启动、停止、车速等状态。
根据VHDL特点,设计者不再需要考虑选择固定功能的标准芯片,而是从实现系统功能与
性能出发来,建立出租车计费器系统模块,如图1所示。
[pic]
2 出租车计费器的设计与实现
本系统分底层和顶层2个层次设计,底层设计采用VHDL编写各个功能模块,顶层设计采用
原理图方式描述各模块间的连接。
2.1 底层文件的设计
底层模块包括:出租车车速控制模块;计费器里程计数模块;计费器计费计数模块3个模
块。
以出租车车速控制模块为例介绍。
出租车车速控制模块用于控制出租车的车速。图1中,当起/停开关及清零信号RESET都
为“1”时,汽车启动就开始进入里程计