VHDL语言与EDA课程设计
用VHDL语言实现数字电子钟的设计(EDA课程设计报告-含源程序)
课程设计报告
设计题目:用VHDL语言实现数字钟的设计
班级:电子 0901
学号: XXXXXXXX
姓名:XXXXXXXXX
指导教师:XXXXXXXXX
设计时间:
现代电子设计技术的核心已转向基于计算机的电子设计自动化技术,即EDA (Electronic Design Automation)技术。EDA技术就是依赖计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现。硬件描述语言是EDA技术的重要组成部分,常见的HDL语言有VHDL、Verilog、HDL、ABLE、AHDL、System Verilog和System C。其中VHDL、Verilog在现在的EDA设计中使用最多,也拥有几乎所有主流EDA工具的支持。VHDL语言具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化硬件设计任务,提高了设计效率和可靠性。在这次设计中,主要使用VHDL语言输入。此次设计很好地完成了数字钟的定时、切换显示年月日和时分秒的功能,完成了小型FPGA的设计开发,锻炼了动手实践能力,达到了课程设计的目的。
关键词:EDA技术硬件描述语言VHDL 设计数字电子钟
摘要 (2)
1、课程设计目的 (4)
《EDA电子设计》VHDL实验内容
1
1.题目
2.给出真傎表或表达式, 工作原理等
3.给出VHDL程序
4.给出仿真波形的建立 与仿真结果 5. 心得体会
2
• • • • • • • • • • •
library IEEE; z=(/a· b) OR (a· c) use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity zhlj_s is port(a,b,c:in std_logic;z:out std_logic); END entity zhlj_s; architecture expression of zhlj_s is begin z<=(not a and b)or(a and c); end architecture expression;
functionalasm1a524给出仿真波形的建立与仿真结果61jk4给出仿真波形的建立与仿真结果713给出仿真波形的建立与仿真结果82
实验1.1 组合逻辑
• • • • • 要求: 1)题目:用VHDL实现 z A.B A.C 2)给出真傎表或表达式 3)给出VHDL程序 4)给出仿真波形的建立与仿真结果
实验1.2 一位全加器
• 2个输出:总和 S,进位输出Co • 3个输入:A、B,进位输入Ci
EDA技术与VHDL设计 第三章VHDL语言入门
L27 END ARCHITECTURE behavior; L28 ------------------------------------------------------------------------------------------------------------------------L29 CONFIGURATION mux_cfg1 OF mux21 IS L30 L31 FOR construct END FOR; --配置名为 mux_cfg2 --配置名为 mux_cfg1 --选择结构体 construct
L32 END CONFIGURATION mux_cfg1; L33 --CONFIGURATION mux_cfg2 OF mux21 IS L34 L35 --FOR behavior --END FOR; --选择结构体 behavior
L36 --END CONFIGURATION mux_cfg2; L37 -------------------------------------------------------------------------------------------------------------------------
EVENT:信号属性 函数,用来获得 信号行为信息
ARCHITECTURE bhv OF DFF1 IS BEGIN PROCESS (CLK) BEGIN IF CLK’EVENT AND CLK = ‘1’ THEN Q <= D AFTER m; END IF; END PROCESS ; END bhv; 3
VHDL语言及其应用课程设计
VHDL语言及其应用课程设计
一、前言
VHDL(VHSIC Hardware Description Language)是一种用于描述数字系统、芯片、电路板和系统级应用的硬件描述语言。作为一种硬件描述语言,VHDL使用定义来描述设计,供计算机程序执行和仿真。VHDL被认为是数字电子工程领域中最强大、最灵活的硬件描述语言之一。
在本次课程设计中,我们将通过VHDL语言来设计一个数字系统,从而理解和熟悉VHDL语言的应用以及数字系统的设计方法。
二、开发环境
在我们进行VHDL语言开发之前,需要准备以下开发环境:
•Vivado:Vivado是一款由Xilinx公司开发的集成开发环境(IDE),可用于设计数字系统的FPGA、ASIC和Soc(System on Chip)。
•VHDL仿真器:VHDL仿真器用于测试和仿真我们设计的数字系统,常用的VHDL仿真器有ModelSim等。
三、课程设计
在本次课程设计中,我们将设计一个简单的数字系统,该系统可以对两个8位数字进行求和运算,并输出计算结果。具体的设计过程如下:
1.设计输入
首先,我们需要定义输入信号的格式。在本次设计中,我们需要两个8位的输入信号,因此输入信号的格式如下:
entity Input_Output is
port(
A_In, B_In :in std_logic_vector(7downto0);
Sum :out std_logic_vector(7downto0)
);
end Input_Output;
在上述代码中,我们使用标准逻辑向量来定义输入信号的格式,其中A_In和B_In是两个8位输入信号,Sum是输出结果。
EDA技术与VHDL程序设计基础教程
构架设计 (Architecture Exploration)
RTL 设计 (RTL Design)
RTL 验证 (RTL Verification)
综合 (Synthesis)
门级验证 (Gate-level Verification)
后端设计 (Back-end)
电路参数提取 (Circuit Extraction)
1.互补输入缓冲电路
B A
C
2.三态输出缓冲电路
ENB
A
Y
二、PLD内部结构的表示方法
3.与或逻辑
与或逻辑是可编程器件的核心部件。
如图所示,(a)中三条竖线A、B、C均为输入线,输入到与门的横线为乘积
线。乘积线与输入线的交叉点为编程点,在编程点处有编程器件,如熔丝或
可编程的MOS器件等。当输入线与乘积线相连通时,在编程点处以“×”表示
功能定义 (Functional Spec.)
硬件描述 (HDL)
综合 (Synthesis)
EDA数字钟课程设计--用VHDL语言实现数字钟的设计
课程设计报告
设计题目:用VHDL语言实现数字钟的设计
班级:电子1002班
学号:20102625
姓名:于晓
指导教师:李世平、李宁
设计时间:2012年12月
摘要
数字钟是一种用数字电路技术实现时、分、秒计时的钟表。本设计主要是实现数字钟的功能,程序用VHDL语言编写,整体采用TOP-TO-DOWN设计思路,具有基本的显示年月日时分秒和星期的功能,此外还有整点报时功能。该数字钟的实现程序分为顶层模块、年月模块、日模块、时分秒定时模块、数码管显示模块、分频模块、星期模块,此外还有一个库。该程序主要是用了元件例化的方法,此外还有进程等重要语句。
没有脉冲时,显示时分秒,set按钮产生第一个脉冲时,显示年月日,第2个脉冲到来时可预置年份,第3个脉冲到来时可预置月份,依次第4、5、6、7、8个脉冲到来时分别可预置日期、时、分、秒、星期,第 9个脉冲到来时设置星期后预置结束,正常工作,显示的是时分秒和星期。调整设置通过Up来控制,UP为高电平,upclk有脉冲到达时,预置位加1,否则减1。当整点到达时,报时器会鸣响,然后手动按键停止报时。
关键词:数字钟,VHDL,元件例化,数码管
1、课程设计目的
掌握利用可编程逻辑器件和EDA设计工具进行电子系统设计的方法
2、课程设计内容及要求
设计实现一个具有带预置数的数字钟,具有显示年月日时分秒的功能。用6个数码管显示时分秒,set按钮产生第一个脉冲时,显示切换年月日,第2个脉冲到来时可预置年份,第3个脉冲到来时可预置月份,依次第4、5、6、7个脉冲到来时分别可预置日期、时、分、秒,第 8个脉冲到来后预置结束,正常工作,显示的是时分秒。Up为高电平时,upclk有脉冲到达时,预置位加1.否则减1,还可以在此基础上增加其它功能。
EDA教案--2VHDL语言
16#FE# 2#11010001# 8#376#
(4)物理量文字 例如:60s,100m 2. 字符串文字 字 符 —— 以 单 引 号 括 起 来 的 数 字 、 字 母 和 符 号 (ASCII码) 例如:’0’,’1’,’A’,’B’,’a’,’b’ 字符串——一维的字符数组,用双引号括起来。 (1)文字字符串 例如:”ABC”,”A BOY.”,”A”
7. 实数(REAL)数据类型 由正、负、小数点和数字组成,如:-1.0,+2.5,1.0E38 范围:-1.0E+38 TO +1.0E+38
8. 字符串(STRING)数据类型 字符串是用双引号括起来的字符序列,也称字符矢 量或字符串数组。例如, “A BOY.”,“10100011”
9. 时间(TIME)数据类型 时间是物理量数据,由整数数据和单位两部分组成, 定义语句:
例如:VARIABLE a:INTEGER VARIABLE b:INTEGER:=2;
变量赋值语句: 目标变量名:=表达式
例如:VARIABLE x,y:REAL VARIABLE a,b:BIT VECTOR(0 TO 7); x:=100.0; y:=1.5+x; a:=“1010101” a(3 TO 6):=(‘1’,‘1’,‘0’,‘1’); a(0 TO 5):=b(2 TO 7);
EDA技术与VHDL实验指导书
EDA技术与HDL 实验指导书
吉林大学珠海学院
二零一一年制定
目录
实验一:实验环境和平台的建立 (1)
实验二:组合逻辑电路设计 (12)
实验三:多层次设计 (14)
实验四:时序逻辑电路设计(一) (18)
实验五:时序逻辑电路设计(二) (20)
实验六:分频器的设计 (22)
实验七:通用移位寄存器的设计 (23)
实验八:数码管扫描显示的设计 (24)
实验九:正弦信号发生器的设计 (26)
实验十:序列检测器的设计 (36)
实验一:实验环境和平台的建立
一、实验目的:
熟悉Quartus II的VHDL文本设计流程,学习8-3编码器的设计、仿真。二、实验内容:
用VHDL编写8-3编码器的VHDL代码并仿真。
三、实验环境
PC 机(Pentium100 以上)、Altera Quartus II 6.0 CPLD/FPGA 集成开环境。
四、实验原理
在数字系统中,常常需要将某一信息(输入)变换为某一特定的代码(输出)。把二进制码按一定的规律排列,例如8421码、格雷码等,使每组代码具有一特定的含义(代表某个数字或是控制信号)称为编码。具有编码功能的逻辑电路称为编码器。编码器有若干个输入,在某一时刻只有一个输入被转换为二进制码。例如8线-3线编码器和10线-4线编码器分别有8输入、3位输出和10位输入、4位输出。8线-3线编码器的真值表见表1-1,管脚图如图1-1所示。
输入输出
A7 A6 A5 A4 A3 A2 A1 A0 Y2 Y1 Y0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0 0 1
EDA技术与VHDL实用教程
本书讨论的对象专指狭义的EDA技术。
EDA技术与VHDL实用教程
5
• EDA技术的3个层次
➢(1)EWB、PSpice、protel的学习作为 EDA的最初级内容;
➢(2)利用VHDL完成对CPLD/FPGA的开 发等作为中级内容;
➢(3)ASIC的设计作为最高级内容
EDA技术与VHDL实用教程
6
输入1
输入2
查找表
输入3
LUT
输出
输入4
30
四、选择PLD还是FPGA
➢ FPGA: SRAM工艺;直接烧写程序掉电后程序丢失;理 论上擦写100万次以上;一般使用需要外挂 EEPROM, 可以达到几百万门电路。比如ALTERA公司的 APEX、F LEX、ACEX、STRATIX、CYCLONE系列。
3、算法的实现
如:离散FFT变换、数字滤波器、浮点乘法器、高速宽位加法器、数字 振荡器、数字锁相环、调制解调器、图象DSP等电路的设计,时钟频 率一般在50MHz以上
EDA技术与VHDL实用教程
19
电子EDA技术发展迅猛,逐渐在教学、科研、 产品设计与制造等各方面都发挥着巨大的作用。
1.EDA技术将广泛应用与高校电类专业的实践 教学工作中
EDA技术与VHDL实用教程
7
(3)开放式的设计环境(各厂家均适合);
(4)自顶向下的算法;
EDA技术与VHDL实验课件简介
EDA技术与VHDL实验课件简介
本课件内容包括GW48-PK2实验系统说明和十二个实验的课件,课件构思严紧、编排巧妙、各具特色、风格各异、具有不同的界面及演示模拟方式。下面对各个实验课件作一简单介绍:
实验1十进制计数器的设计
1、实验目的:
①熟悉QUARTUSII软件的使用及操作流程;
②掌握进程、流程语句的应用;
③学习十进制计数器的设计
2、实验内容:
①分析给定程序中各语句的含义,以及该程序的整体功能。在QuartusII上对该程序进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形。
②进行引脚锁定及硬件测试,观察实验结果。
3、课件主要介绍了使用QuartusII实现设计的实验步骤、实现流程。同时通过Flash制作了整个实验的具体的操作过程演示,使学生熟悉了Quartus软件的使用和操作流程。
实验2设计含异步清0和同步时钟使能的加法计数器
1、主要引用实验系统的真实照片具体地介绍了引脚锁定方法、步骤和实现该实验的相关硬件设置,讲解形象逼真,便于学生理解掌握。
2、介绍了使用嵌入式逻辑分析仪进行实时测试的方法和相关设置,使学生很好地掌握嵌入式逻辑分析仪SignalTapII的使用。
3、介绍了将计数器设计文件烧写到实验板上FPGA的配置器件EPCS1中,实现掉电保护的方法、相关软件设置和硬件连接。
实验37段数码显示译码器设计
主要介绍了该实验硬件资源的分配,引脚锁定,实验硬件测试方法及实验结果分析。
实验48位数码扫描显示电路设计
通过实验参考程序和实验硬件电路对8位数码扫描显示电路的原理进行了详细的说明,浅显易懂,学生容易掌握。同时对引脚锁定进行了说明,还详细地介
EDA技术VHDL语言
EDA技术VHDL语言课程大作业
设计题目:分频电路
姓名:段亮
班级:自动化10(4)
学号: 41003010410
一.设计背景
EDA电子设计自动化是Electronic Design Automation的简称,20世纪60年代中期发展开始至今,已经取得了飞跃性的进步,在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已经非常普及,这些可编程逻辑器件为数字系统的设计带来了相当大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构和改变,这就使得硬件的设计可以如同软件设计那样方便快捷效率高,可编程逻辑器件加快了EDA技术的发展,在现代社会,尤其是电子信息科技行业发展突飞猛进,在化工、机械、电子、通信、医学、航空航天、矿产、生物、军事等各个领域都有EDA的广泛应用在数字逻辑电路设计中,分频器是一种基本电路,通常用来对某个给定频率的时钟进行分频,得到所需的时钟。时序电路设计中需要各种各样的分频器来获得不同频率的时钟,其中以整数分频器最为常见。但是在某些需要使用电平逻辑的设计中,我们更希望分频时钟拥有50%的占空比,或者与驱动时钟相同的占空比。这时就需要通过另外的逻辑方法来进行分频,本作业就针对奇数分频占空比50%进行设计。
本作业题目:分频电路:将20M的时钟信号分频生成5khz的方波,再将此方波分频生成1khz占空比为50%的方波。
二. 设计方案
2.1分频总体思路
首先对20MHZ的频率进行分频,将其分成5KHZ的频率,再此将
5KHZ的频率分成1KHZ的占空比是50%的方波。
VHDL数字电路设计教程课程设计 (2)
VHDL数字电路设计教程课程设计
1. 课程设计背景
随着数字电路在现代电子产品中的广泛应用,对数字电路设计的需求也越来越大。而作为数字电路设计的重要工具和方法之一的硬件描述语言VHDL也被广泛应用。为了让学生在学习数字电路和VHDL语言时能够掌握实际的设计技能,本课程针对数字电路和VHDL语言的基本原理和应用进行授课和课程设计,旨在培养学生的实际操作和解决实际问题的能力。
2. 教学目标
本课程旨在使学生掌握数字电路和VHDL语言的基本原理和应用,具备以下能力:
•掌握数字电路和VHDL语言的基本语法和编程思路;
•能够独立完成数字电路和VHDL语言的设计、仿真和综合;
•能够解决数字电路和VHDL语言设计中出现的实际问题;
•具备一定的实际数字电路设计经验和VHDL编程能力。
3. 教学大纲
3.1 数字电路基础
•数字电路基本概念
•数字逻辑门电路和代数表达式
•组合逻辑电路设计
•时序逻辑电路设计
•计数器设计
•存储器设计
3.2 VHDL语言基础
•VHDL语言概述
•实体声明和体系结构
•VHDL数据类型和常量
•基本的VHDL语言结构
•组合逻辑设计
•时序逻辑设计
•设计复用和程序结构
•模拟和综合
3.3 VHDL数字电路设计实践
(1)多位计算机算术逻辑单元设计
(2)VHDL编程设计电话拨号系统
(3)VHDL和FPGA技术共同设计数字时钟
4. 教学方法
本课程将采用以下教学方法:
•知识讲授:通过讲授数字电路和VHDL语言的基本原理,让学生掌握基本概念和设计思路;
•实验操作:通过实验操作的方式带领学生熟练掌握数字电路和VHDL 语言的设计、仿真和综合技术;
EDA课程设计(基于VHDL语言的8位数字密码锁设计)
东华理工大学机械与电子工程学院基于VHDL语言的8位数字密码锁设计
一、摘要:
数字控制的电子密码锁已经广泛应用在办公室、公司、宾馆、小区住宅等场所。
EDA技术的应用引起了电子产品系统开发的革命性变革。利用先进的EDA工具,基于硬件描述语言,可以进行系统级数字逻辑电路的设计。本文简述了VHDL语言的功能及其特点,并以8位串行数字锁设计为例,介绍了在QUARTUS II 6.0开发软件下,利用VHDL硬件描述语言设计数字逻辑电路的过程和方法。
关键词: QUARTUS II 6.0 EDA 电子密码锁(电子设计自动化) VHDL语言语言设计串行密码锁硬件描述语言数字逻辑电路Based on VHDL language 8 digits combination lock design Digital control of electronic locks has widely used in office, companies, hotels, residential area and etc.
EDA technology application caused a electronic product development system of the revolutionary transformation. Using advanced EDA tools, hardware based description language, can undertake system in digital logic circuit design. This paper describes the function and characteristics of VHDL language, and eight serial number lock design as an example, this paper introduces QUARTUS II 6.0 software development in of VHDL
EDA技术与VHDL实验指导书
EDA技术与VHDL实验指导书
电气中心实验室编制
2011-9
前言
《EDA技术与VHDL实验指导书》是与理论课程《EDA技术与VHDL》配套开出的,是电子信息工程等专业的一门专业选修课程,对电子信息工程等专业的学生具有非常重要的作用。本实验课与理论课同时进行,与理论课有着较密切的联系。因此学生在做本实验之前必须具备1.一定的C语言基础;2.电路与电子技术的基础知识;3.计算机辅助设计的基本操作能力;4.理论联系实践的自学能力。
学生学习完本实验课后,应具有1.能熟练使用Quartus II等EDA开发工具软件;2.掌握CPLD/FPGA芯片的基本使用方法,能用现代数字系统的设计方法进行基本的数字系统设计;3.掌握图形编辑和VHDL文本编辑两种设计方法,重点是VHDL文本编辑;4.具备基本的开发能力,为后续学习打下坚实的基础等方面能力。
从70 年代第一片可编程逻辑器件PROM的诞生到现在的CPLD/FPGA,数字系统的设计发生了本质的变化。基于CPLD/FPGA和EDA(电子设计自动化)工具进行数字系统的设计与开发。它代表了数字电信领域的最高水平,给数字电路的设计带来了革命性的变化。从传统的对电路板的设计到现在的基于芯片的设计,使得数字系统设计的效率大大提高,产品更新速度大大加快,设计周期大大变短。所以本科生学习本课程有着非常重要的意义。
本实验不同于其它实验,其实验手段和实验方法都有重大的变化,要求实验前提交预习报告,检查通过后方可实验,设计与综合实验环节。本实验是在PC 平台上,用原理图或文本进行输入,然后进行编译,通过之后再进行波形仿真,如有缺陷,对源文件进行修改。利用ISP技术、采用EDA工具、应用PLD 器件,在PC及EDA开发平台上进行。
EDA课程设计(VHDL语言数字秒表的设计)毕业设计(论文)
摘要
EDA技术作为电子工程领域的一门新技术,极大的提高了电子系统设计的效率和可靠性。本次课程设计就是利用VHDL语言结合硬件电路来实现数字秒表的功能,数字秒表有4个模块构成,分别为分频电路模块,去抖电路模块,时间计数电路模块,显示模块。用VHDL 语言编程来实现各个模块的功能,再用原件例化的方法实现各模块之间的连接,从而实现整个数字秒表电路的功能。
关键词:EDA,VHDL,数字秒表
Abstract
The technology of EDA as a new technology in electronic engineering has greatly improved the efficiency and reliability of electronic system design. The course design is the use of VHDL language combination of hardware circuitry to achieve digital stopwatch function. Digital Stopwatch is made up of four modules, such as: sub-frequency circuit module, debounce circuit module, counting circuit module and display module. I used VHDL language programming to achieve the functions of each module and connected each module with the method of original cases to realize the entire digital stopwatch function.
EDA 课程设计报告 基于VHDL的电子秒表的设计
《EDA技术及应用》
课程设计报告
题目:基于VHDL的电子秒表的设计院(系):机电与自动化学院
专业班级:电气工程及其自动化1101 学生姓名:心系学弟学妹的好学长学号:***
指导教师:汪媛
2014年 1月 6日至2014 年 1月10日华中科技大学武昌分校制
目录
1.课程设计目的 (3)
2.课程设计主要内容 (4)
2.1设计实验说明 (4)
2.2数字秒表组成及实现功能 (4)
2.3系统总体框图 (4)
3.各模块的设计及仿真 (5)
3.1二十四进制计数器模块设计和仿真 (5)
3.2六十进制计数器模块设计和仿真 (7)
3.3分频器模块设计和仿真 (9)
3.4 LED显示模块设计和仿真 (10)
3.5 顶层仿真 (13)
4.心得体会 (15)
5.主要参考资料 (16)
1.课程设计目的
在Quartus II软件平台上,熟练运用VHDL语言,完成数字时钟设计的软件编程、编译、综合、仿真,使用EDA试验箱,完成数字秒表的硬件功能。本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。
⑴掌握较复杂的逻辑设计和调试
⑵学习用原理图+VHDL语言设计逻辑电路
⑶学习数字电路模块层次设计
⑷掌握QuartusII软件
2.课程设计主要内容
2.1 设计实验说明
设计一个电子秒表,给定时钟信号为256HZ,要求系统达到以下功能:
(1)用6个数码管分别显示时、分、秒,计时范围为00:00:00~ 23: 59:59;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南人文科技学院
课程设计报告课程名称: VHDL语言与EDA课程设计
~
设计题目:出租车自动计价器设计
系别:
专业:
班级:
学生姓名:
学号:
起止日期: 2011年6月13日~2011年6月26日
$
指导教师:
教研室主任:
摘要
随着我国社会经济的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普遍的交通工具。出租车计价器是出租车营运收费的专用智能化仪表,是出租车市场规范化、标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备、简单易用、计量准确的出租车计价器是加强出租车行业管理、提高服务质量的必备品。根据预定的设计要求和设计思路,我们使用VHDL硬件描述语言设计了一个实际的基于Altera FPGA芯片的出租车自动计价器系统,介绍了该系统的电路结构和程序设计。通过在软件中编译和下载测试,得到了仿真波形和关键的设计结果。经过在实验箱上进行硬件测试,证明该出租车计价系统具有实用出租车计价器的基本功能,如能进一步完善,将可以实用化和市场化。
关键词:出租车自动计价器;VHDL; FPGA ;
目录
设计要求 ................................................. 错误!未定义书签。
1、方案论证与对比 ........................................ 错误!未定义书签。
方案一................................................ 错误!未定义书签。
方案二................................................ 错误!未定义书签。
两种方案的对比........................................ 错误!未定义书签。
2、实验步骤和设计过程 .................................... 错误!未定义书签。
计程模块.............................................. 错误!未定义书签。
等待计时模块.......................................... 错误!未定义书签。
计费模块.............................................. 错误!未定义书签。
3、调试与操作说明 ........................................ 错误!未定义书签。
中的VHDL程序......................................... 错误!未定义书签。
程序的编译与及仿真波形................................ 错误!未定义书签。
程序的下载与功能的测试................................ 错误!未定义书签。
4、课程设计心得体会 ...................................... 错误!未定义书签。
5、元器件及仪器设备明细 .................................. 错误!未定义书签。
6、参考文献 .............................................. 错误!未定义书签。
7、致谢 .................................................. 错误!未定义书签。
出租车自动计价器设计
设计要求
设计一个出租车自动计费器,具有行车里程计费、等候时间计费、及起价三部分,用四位数码管显示总金额,最大值为元,行车里程单价1元/公里,等候时间单价元/10分钟,起价3元(3公里起价)。
设计的主要技术指标如下:
1) 计价范围: 0~元计价分辨率:元
2) 计程范围:0~99公里计程分辨率: 1公里
3) 计时范围:0~59分计时分辨率: 1分
1、方案论证与对比
根据本课程设计要求,需要对出租车当行驶公里数和等待时间两种情况对应进行计数计费,同时要求显示出对应行驶公里数、等待时间和出租车费用,我们想到了以下两种方案。
方案一
用分频器将外部时钟分为三路频率的信号,用来计时和计程,同时也供整个系统工作,通过设置使能信号,使系统自动对等待时间计时和对行驶公里数的计数,最后将所得结果分别在数码管上显示出来。
图 1 方案一设计结构图
方案二
各部分主要功能包括:信号输入模块对车轮传感器传送的脉冲信号进行计数,并以高低脉冲模拟出租汽车启动、停止按钮,具有输入信号作用;数据转换模块将计费模块输出的车费和路程转换成十进制数据;译码/动态扫描模块将路程与费用的数值译码后用动态扫描的方式驱动数码管[5];数码管显示模块将公里数和计费金额显示出来。
图2 方案二设计结构图
两种方案的对比
经分析,两种方案都要通过模块组合来实现出租车计价器的功能。方案一模块数量比方案二多一些,但思路简单,各模块程序也相对简单,因此较容易实现,适合我们初学EDA的编程设计。方案二模块较少,但单个模块功能要求较高,程序复杂。所以,我们选择方案一。
2、实验步骤和设计过程
计程模块
计程模块:根据提供的里程脉冲信号fin,计算乘客上车后出租车所行驶的里程数。fin每来一个上升沿,计程模块实现一次计数,里程数就加1。当行驶里程大于3Km时,本模块中en0信号变为1;进行行驶公里都计费。
等待计时模块
等待计时模块:根据分频得到的时钟信号f_1,计算乘客的等待累计时间。计时器的量程为59min,满量程归零。等待时间大于3min时,本模块中en1信号变为1;f_1