1、 综合实验综合实验 出租车计价器设计 前言 随着微电子技术的发展,现代电子技术的核心已日趋转向基于计算机的电子设计自动化技术, 即 EDA(Electronic Design Automation)技术。EDA 技术就是依赖功能强大的计算机,在 EDA 工具 软件平台上,对以硬件描述语言 HDL(Hardware Description Language)为系统逻辑描述手段完成的 设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实 现既定的电子线路系统功能。EDA 技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述 语言和 EDA 软件来完成对系统硬件
2、功能的实现,这是电子设计技术的一个巨大进步。 本学期,学校开设了 EDA 和 VHDL 课程的学习,而学习一门编程语言,最好的方法莫过于在 一个完整的系统开发过程中进行。因此,EDA 综合实验就是一个最好的学习实践机会。 随着我国社会经济的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们 日常出行选择较为普遍的交通工具。出租车计价器是出租车营运收费的专用智能化仪表是出租车市 场规范化、 标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备、简单易用、计量 准确的出租车计价器是加强出租车行业管理、提高服务质量的必备品。本实验就是采用 VHDL 硬件 描述语言作为设计手段
3、,采用自顶向下的设计思路,得到一种出租车计价系统的软件结构,通过在 Quartus II 软件下进行模拟仿真,并进行相应的硬件下载调试,证明所设计的电路系统完成了出租车计 价器的功能,各技术指标符合预定标准,具有一定实用性。 一、实验任务及要求一、实验任务及要求 1.能实现计费功能,计费标准为:按行驶里程收费,起步费为 10.00 元,并在车行 3 公里后再 按 1.6 元/公里,车暂停时,停车一分钟之后开始加价,每分钟增加 2.5 元。 2. 实现预置功能:能预置起步费、每公里收费、车行加费里程。 3. 实现模拟功能:能模拟汽车启动、停止、暂停等状态。 4. 设计动态扫描电路:将车费及暂停时
4、间显示出来。 5. 用 VHDL 语言设计符合上述功能要求的出租车计费器,并用层次化设计方法设计该电路。 6. 综合仿真验证,并通过有关波形确认电路设计是否正确。 7. 完成电路全部设计后,通过 GW48 系统实验箱下载验证设计的正确性。 二、实验原理二、实验原理 图 1 出租车计价器流程图 图 2 系统结构图 接口部分定义如下: 输入:clk_240,系统时钟,频率为 240Hz; Start,启动信号,当 start=1 时,汽车启动,开始计价; 当 start=0 时,清零; Stop,暂时计时信号,当 stop-1 时,中途暂停,开始计时;当 stop=0 时,再次出发; Fin,汽车
5、车速脉冲信号,是一个与随着车速变化而变化的脉冲信号。 输出:cha2,cha1,cha0,分别为价钱的十位,个位和角位; Km1,km0,分别为行驶公里数的十位,个位; Min0,暂时分钟数输出。 接口部分源程序如下: port ( clk_240 :in std_logic; -频率为 240Hz 的时钟 start :in std_logic; -计价使能信号 stop:in std_logic; -等待信号 fin:in std_logic; -公里脉冲信号 cha2,cha1,cha0:out std_logic_vector(3 downto 0); -费用数据 km1,km0:ou
6、t std_logic_vector(3 downto 0); -公里数据 min0: out std_logic_vector(3 downto 0); -等待时间 计价部分原理如下: 起步价 10 元,3 公里内 10 元,超出 3 公里部分,每公里 1.6 元,车暂停时,2 分钟内不加价, 超出 2 分钟部分,每分钟 2.5 元; 计费部分源程序如下: feipin:process(clk_240,start) begin if clk_240event and clk_240=1 then if start=0 then q_15=0;q_16=0;f_15=0;f_16=0;f_1=0;f=0; else if q_15=15 then q_15=0;f_15=1; -此 IF 语句得到频率为 15Hz 的信号 else q_15=