基于vhdl防盗设计说明书.doc_第1页
基于vhdl防盗设计说明书.doc_第2页
基于vhdl防盗设计说明书.doc_第3页
基于vhdl防盗设计说明书.doc_第4页
基于vhdl防盗设计说明书.doc_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

XXX 大学 毕业设计毕业设计( (论论文)文) 防盗报警的设计防盗报警的设计 年年 级:级:xxx 级级 本科本科 学生学号:学生学号:xxx 学生姓名:学生姓名:xxx 指导教师:指导教师:xxx 学生单位:信息工程学院学生单位:信息工程学院 技术职称:讲师技术职称:讲师 学生专业:电子信息工程学生专业:电子信息工程 教师单位:信息工程学院教师单位:信息工程学院 XXX 大大 学学 教教 务务 处处 XXX 大学本科生毕业论文 I 汽车电子防盗报警系统设计 摘要:随着人民生活水平的不断提高,汽车的普及应用为人们的生活带来了方便, 但也给人们提出了一大难题汽车防盗。本文采用自顶向下的 EDA 设计方法,用 VHDL 语言进行基于可编程逻辑器件的汽车电子防盗报警系统软件设计。系统划分 为四个模块:启动/解除警戒模块、检测信号模块、光报警模块和声音报警及锁止模 块,其中检测信号模块和光报警模块用有限状态机实现。本设计采用 Xilinx ISE 进 行前端设计输入、后端布局布线及配置下载;用 Modelsim 软件对系统进行功能仿真; 用 Leonado Spectrum 进行综合。系统实现了实时监测非法入侵,及时声光报警、启 动/解除警戒和禁止非法使用发动机移动车辆等基本功能。 关键词:自顶向下;有限状态机;VHDL 语言;汽车防盗 XXX 大学本科生毕业论文 II The Software Design of Guarding Against Theft and Alarm System about Automobile Abstract: With the incessant improvement of the standard of living, the popularization of the car brings much convenience in peoples life, but at the same time the use of the car also brings a big problem-guard against theft of cars. In this paper, it adopts top-down design method of EDA and carries through the design of guarding against theft and alarm system about automobile with VHDL language, which bases on Programmable Logic Device (PLD). The system is consist of four modules, including starting and closing alertness module, detecting signal module, alarm of sound and locked module, alarm of light module, detect signal module and alarm of light module were carried out by finite state machine. This design uses Xilinx ISE to carry through foreside inputting design, placing route and configuring download of back-end; Function simulating of the system was carried out by Modelsim; It uses Leonado Spectrum to carry through synthesis. The system carries out some basic functions, there are detecting inbreak in real time, alarming through sound and light in time, starting and closing alertness, forbidding moving car by engine and so on. Key words: top-down, finite state machine, VHDL language, guard against theft of automobile XXX 大学本科生毕业论文 III 目 录 第 1 章 绪论1 1.1 课题背景、目的和意义1 1.1.1 课题的背景1 1.1.2 课题的目的和意义4 1.2 论文的主要内容4 1.3 本章小结4 第 2 章 汽车防盗报警系统整体设计5 2.1 系统分析与设计5 2.1.1 设计要求5 2.1.2 系统分析5 2.2 系统工作原理及模块划分6 2.3 本章小结7 第 3 章 系统软件设计系统软件设计8 3.1 VHDL 编程语言8 3.2 系统模块设计8 3.2.1 启动/解除警戒模块设计8 3.2.2 检测信号模块设计9 3.2.3 光报警模块设计12 3.2.4 声音报警及锁止模块设计15 3.3 系统顶层设计15 3.4 本章小结16 第 4 章 系统模块实现系统模块实现18 4.1 调试与仿真综合软件介绍18 4.2 系统模块实现19 4.2.1 启动/解除警戒模块实现20 XXX 大学本科生毕业论文 IV 4.2.2 检测信号模块实现20 4.2.3 光报警模块实现21 4.2.4 声音报警及锁止模块实现23 4.3 本章小结24 第 5 章 系统顶层实现系统顶层实现25 5.1 系统顶层仿真25 5.2 系统顶层综合26 5.3 系统引脚锁定26 5.4 系统实现过程及布线后仿真27 5.5 使用 iMPACT 进行下载配置28 5.6 本章小结30 结论31 致谢32 参考文献考文献33 附录录34 XXX 大学本科生毕业论文 1 1 第 1 章 绪 论 1.1 课题背景、目的和意义 1.1.1 课题的背景 众所周知,汽车是当今世界主要的交通工具之一。随着人民生活水平的不断提高, 汽车越来越成为人们生活中不可缺少的一部分,从世界上第一辆 T 型福特车被盗开 始,偷车已成为现今城市最常见的犯罪行为之一。随着汽车数量的增加,特别是轿 车正以很快的速度步入家庭,车辆被盗的数量逐年上升,这给社会带来极大的不安 定因素,担心车辆被盗,成为困扰每一位汽车用户的难题。人们为了车辆的安全大 都安装了汽车防盗报警系统。汽车防盗报警器的使用在很大程度上有效地保护了国 家和人民生命财产的安全。使人们有了安全的依靠。同时车辆防盗报警器的使用也 减少了盗窃犯罪事件的发生,起到了一定的威慑作用。随着科学技术的进步,为对 付不断升级的盗车手段,人们研制开发不同方式结构的防盗器。 目前汽车防盗装置已经由初期的机械控制,发展成为电子密码、遥控呼救、信 息报警等高科技产品,早期的防盗装置主要用于控制门锁、门窗、起动器、制动器、 切断供油等联锁机构,以及为防止盗贼拆卸零件而设计的专用套筒扳手。随着科技 的发展,汽车防盗装置日趋严密和完善,目前防盗器按其结构与功能可分四大类: 机械式、电子式、芯片式和网络式,各有优劣,但汽车防盗的发展方向是向智能程 度更高的芯片式和网络式发展1。 1、机械锁 机械锁是最常见也是最早的汽车防盗器,现阶段在高中档汽车中几乎不被使用, 即便是低档汽车也已经很少单独使用,主要和电子式、芯片式联合使用,分为方向 盘锁和变速箱锁两大类。其中方向盘锁在使用时,主要是将方向盘与制动脚踏板连 接一起,使方向盘不能作大角度转向及不能制动汽车。而安装变速箱锁是在换挡杆 附近安装变速锁,可使变速箱不能换挡。通常在停车后,把换挡杆推回 P 位或挡 位置,加上变速箱锁,可使汽车不能换挡。方向盘锁和变速箱锁、钩锁等这些机械 式防盗器,主要是靠锁定离合、制动、油门或转向盘、变速杆来达到防盗的目的, 但只能防盗不能报警。另外,机械式防盗锁靠坚固的金属结构锁住汽车的操纵部位, XXX 大学本科生毕业论文 2 2 使用起来不隐蔽,且占用驾驶室空间;机械锁主要起到限制车辆操作的作用,对防 盗方面能够提供的帮助非常有限,很难抵挡住生猛型盗车贼手中撬棍、钢锯、老虎 钳等重型工具的盗窃。但它们能拖延偷车贼作案的时间却是事实,一般偷车贼要用 几十秒甚至几分钟才能撬开方向盘锁,变速杆锁的破坏时间还要长一点。 2、电子式防盗系统 在现阶段,应用最广泛的是电子式防盗锁。机械防盗装置是预防汽车被盗的装 置,但这种装置不能防止他人进入驾驶室、车内,打开行李箱、发动机罩或起动发 动机等。而电子防盗装置不仅能可靠地防止汽车被盗,而且能防止他人拆卸某些汽 车零件和进入车内。电子防盗报警器,也称微电脑汽车防盗器,是目前使用最广泛 的类型,包括插片式、按键式和遥控式等电子式防盗器。它主要是靠锁定点火或启 动系统来达到防盗的目的,同时具有声音报警功能。这种防盗器共有 4 种功能: (1)服务功能,包括遥控车门、遥控起动、阻吓窃贼作用等; (2)警惕提示功能,具有触发报警记录(提示车辆曾被人打开过车门); (3)报警提示功能,即当有人动车时发出警报; (4)防盗功能,当防盗器处于警戒状态时,切断汽车上的起动电路,使汽车无 法起动。 该类防盗器安装隐蔽,功能齐全,无线遥控,操作简便,但需要靠良好的安装 技术和完善的售后服务来保证。电子防盗系统的致命弱点在于其电子密码和遥控操 作方式,当车主用遥控器开关车门时,匿藏在附近的偷车贼可以用接收器或扫描器 盗取遥控器发出的无线电波或红外线,再经过解码,就可以开启汽车的防盗系统。 另外这类电子防盗报警器的使用频率普遍被限定在 300350MHz 的业余频段上,而 这个频段的电子波干扰源又多,电波、雷电、工业电焊等都会干扰它而产生误报警。 如上海通用别克系列轿车上配置的 Passkey和 Passkey防盗系统就是电子式防盗 系统。 3、芯片式数码防盗系统 电子防盗系统固然有其优点,但随着时间的推移,人们研制出了更先进性的替 代品,这就是目前在汽车防盗领域位居重点的芯片式数码防盗器。由于特点突出且 使用方便,大多数轿车均采用这种防盗方式作为原配防盗器。目前很多高档车,如 国产的大众、广州本田、派力奥、爱丽舍、毕加索等车型已装有原厂的芯片数码防 XXX 大学本科生毕业论文 3 3 盗系统。芯片式数码防盗器基本原理是锁住汽车的马达、电路和油路,在没有芯片 钥匙的情况下无法启动车辆。数字化的密码重码率极低,而且要用密码钥匙接触车 上的密码锁才能开锁,杜绝了被扫描的弊病。 目前芯片式防盗已经发展到第四代,最新面世的第四代电子防盗芯片,具有特 殊诊断功能,即已获授权者在读取钥匙保密信息时,能够得到该防盗系统的历史信 息。系统中经授权的备用钥匙数目、时间印记以及其他背景信息,成为收发器安全 特性的组成部分。第四代电子防盗系统除了比以往的电子防盗系统更有效地起到防 盗作用外,还具有其他先进之处,如它独特的射频识别技术可以保证系统在任何情 况下都能正确识别驾驶者,在驾驶者接近或远离车辆时可自动识别其身份自动打开 或关闭车锁;无论在车内还是车外,独创的 TMS37211 器件都能够轻松探测到电子 钥匙的位置。国内不少厂商通过引进国外先进技术开发出了我国的芯片式防盗系统, 如爱丽舍应答式防盗系统是在 BOSCH MP5.2 电喷系统的基础上增加了一套新系统, 它可以用来锁定和解锁发动机电脑,从而来实现车辆的防盗功能,当插入一把带有 应答器的正确钥匙并打到“M”位时,系统自动完成对码、解锁发动机电脑,否则 发动机电脑处于闭锁状态,发动机点火和喷油的控制被切断,汽车无法起动。 4、网络式防盗系统 网络防盗是指通过网络来实现汽车的开关门、启动马达、截停汽车、汽车的定 位以及车辆会根据车主的要求提供远程的车况报告等功能。网络防盗主要是突破了 距离的限制。目前主要使用的网络有:无线网络(BB 机网络)、卫星定位跟踪系统 (简称 GPS),其中应用最广的就是 GPS。 GPS 系统全称为“全球卫星定位系统”。实际上,此技术是美国耗资 100 多亿美 元,历时 20 多年发展的一大航天工程。1991 年在海湾战争中被首次使用,海湾战 争之后,GPS 技术在非军事领域得到了更加深入的应用,在汽车反劫防盗领域已取 得实际效果。GPS 卫星定位汽车防盗系统属于网络式防盗器,它主要靠锁定点火或 起动来达到防盗的目的, GPS 应用于汽车反劫防盗服务就得益于卫星监控中心对车 辆的 24 小时不间断、高精度的监控服务。该系统由安装在指挥中心的中央控制系统、 安装在车辆上的移动 GPS 终端以及 GSM 通信网络组成,接受全球定位卫星发出的 定位信息,计算出移动目标的经度、纬度、速度、方向,并利用 GSM 网络的短信 息平台作为通信媒介来实现定位信息的传输,具有传统的 GPS 通信方案所无法比拟 XXX 大学本科生毕业论文 4 4 的优势。缺点是价格昂贵,每月要交纳一定的服务费。一些常见的品牌有赛格、华 强、迈吉贝斯、大三通等等,这类产品因费用太高等各方面原因,目前在市场上还 不普及,市场占有率非常低。 1.1.2 课题的目的和意义 本课题采用现代数字系统设计的思路和自顶向下的 EDA 设计方法,针对当今社 会汽车防盗越来越重要的现实问题,通过 VHDL 语言软件编程设计基于可编程器件 的汽车电子防盗报警系统,达到了实时监测非法入侵、及时声光报警、启动/解除警 戒和禁止非法使用发动机移动车辆等基本要求,为汽车防盗报警方面进一步研究, 扩展更实用更全面的功能,设计更完善的产品打下了基础。通过设计掌握 EDA 设计 的基本思路、VHDL 语言编程方法,有限状态机的设计方法以及掌握开发软件 Xilinx ISE,仿真软件 Modelsim 和综合工具 Leonado Spectrum 的运用。 1.2 论文的主要内容 本文由五章的内容构成,绪论部分介绍了当今汽车防盗报警系统发展的状况, 说明了本课题的目的和意义以及论文主要内容。后面的四章对系统的设计过程和实 现过程作了详细阐述。第 2 章对系统进行整体分析和模块划分;第 3 章详细介绍了 系统四个模块和系统顶层的程序设计编写过程;第 4 章主要是系统四个模块的独立 调试与仿真;最后一章是系统顶层的实现过程,也是整个系统的实现过程,这一章 对系统实现的流程做了总体的介绍。 1.3 本章小结 本章主要介绍了当今社会汽车防盗报警系统发展状况,现有的种类和特点以及 本课题的目的和意义并对论文主要内容作了简要概述。 XXX 大学本科生毕业论文 5 5 第 2 章 汽车防盗报警系统整体设计 2.1 系统分析与设计 2.1.1 设计要求 本课题要求设计一种基于可编程逻辑器件的汽车防盗报警电子系统,完成软件 部分设计,得出系统功能仿真结果。其具体设计指标要求如下: (1)启动/解除警戒,灯亮表示启动,灯灭表示解除警戒; (2)实时检测非法入侵,检测到非法入侵,锁住车门; (3)禁止非法使用发动机移动车辆,一旦非法使用发动机,锁止发动机并锁住 车门; (4)及时声光报警,采用喇叭发声和三个灯轮流点亮的方式进行声光报警。 2.1.2 系统分析 从本系统的设计要求来分析,软件设计可以采用原理图设计和硬件描述语言设 计。硬件描述语言(Hardware Description Language, HDL)属于文本输入方法的范畴, 是一种用形式化方法来描述数字电路和设计数字逻辑的语言,这种设计方法也被称 为高层次设计(High-Level-Design)方法,其设计流程示意图如图 2-1 所示。 HDL HDL HDL 图图 2-1 HDL 设计流程的示意图设计流程的示意图 相对于原理图设计,硬件描述语言设计具有很多优点:开发效率高、便于移植、 便于文档管理、便于仿真、可以开发出非常复杂的数字系统等等。因此本系统采用 XXX 大学本科生毕业论文 6 6 硬件描述语言设计。硬件描述语言有 VHDL 语言和 Verilog HDL 语言,这两种语言 都具备 HDL 的优点,Verilog HDL 推出比 VHDL 早,它模仿 C 语言,语法简单,风 格自由,比较容易掌握,而 VHDL 是基于 Ada 语言的,追求语法的严格性,学习起 来相对烦琐一点,但是严格的语法在一定程度上限制了错误的产生,调试起来可能 会容易一些2。VHDL 的系统抽象能力比 Verilog HDL 要强一些,在系统级的描述 上占一定的优势,本系统设计采用 VHDL 语言编写程序代码。 整个系统是一个数字系统,非法入侵信号采用数字信号模拟,用高电平1表 示车辆受到非法入侵,用低电平0表示不存在非法入侵。灯光报警要求每个灯持 续一个确定的时间,这就需要一个标准时钟信号,而标准时钟信号都是从外部晶振 中得到的,本设计采用频率为 1MHZ 的外部晶振,在设计中需要考虑时钟的换算。 2.2 系统工作原理及模块划分 系统的工作原理:启动系统装置,系统进入检测信号状态,同时检测非法入侵 信号和非法使用发动机的信号,若无非法信号,系统将一直处于检测状态,当检测 到非法入侵信号时,进行声光报警,并锁住车门;当检测到非法使用发动机信号时, 进行声光报警,并锁止发动机以及锁住车门。解除系统报警,系统停止工作。 根据系统分析及系统工作原理,把整个系统划分成四个模块:启动/解除警戒模 块、检测信号模块、声音报警及锁止模块和光报警模块 ,系统结构图如图2-2。 / 图图2-2 系统模块构成图系统模块构成图 四个模块的功能是:启动/解除警戒模块用以启动或解除整个防盗报警系统,使 装置进入或退出正常工作状态;检测信号模块检测汽车是否存在异常移动、异常振 动、异常提升、车身异常切斜和非法启动发动机等异常情况;声音报警及锁止模块 发出声音报警,并锁住车门,锁止非法启动发动机信号;光报警模块通过LED灯闪烁 发出报警信号; XXX 大学本科生毕业论文 7 7 2.3 本章小结 本章主要介绍了系统设计的一些要求及性能指标,并对整个系统进行了分析, 选择了适合的设计输入方式和硬件描述语言。通过分析系统的工作原理,对系统进 行了模块的划分,总共划分为四个模块:启动/解除警戒模块、检测信号模块、声音 报警及锁止模块和光报警模块。 XXX 大学本科生毕业论文 8 8 第 3 章 系统软件设计 3.1 VHDL 编程语言 VHDL 的全称为 VHSIC(Very High Speed Integrated Circuit)Hardware Description Language,它的中文译名为超高速集成电路的硬件标准语言。模块化和 自顶向下,逐层分解的结构化设计思想贯穿于整个 VHDL 设计文件之中。VHDL 将 所设计的任意复杂的电路系统均看作一个设计单元,可以用一个程序文件来表示。 一个完整的 VHDL 语言程序通常包含实体、构造体、配置、程序包和库五个部分。 实体是声明到其他实体或其他设计的接口,即定义本设计的输入/输出端口;构造体 是用来定义实体的实现,即电路的具体描述;配置为实体选定某个特定的结构体; 程序包则用来声明在设计或实体中将用到的常数、数据类型、元件及子程序等;库 用以存储预先完成的程序包和数据集合体。这五个部分并不是每一个 VHDL 程序都必 须具备的,其中只有一个实体和一个与之对应的构造体是必须的。 VHDL 编程语言具有以下主要优点3: (1)具有强大的功能,覆盖面广,描述能力强,可用于从门级、电路级直至系 统级的描述、仿真和综合。 (2)有良好的可读性,它可以被计算机接受,也容易被读者理解。用 VHDL 书 写的既是源文件又是文档。 (3)有良好的可移植性,作为一种已被 IEEE 承认的工业标准 VHDL 事实上已 成为通用的硬件描述语言,可以在不同的设计环境和系统平台中使用。 (4)使用 VHDL 可以延长设计的生命周期。 (5)VHDL 支持对大规模设计的分解和已有设计的再利用。 3.2 系统模块设计 3.2.1 启动/解除警戒模块设计 此模块用于启动/解除整个系统,使系统进入/退出正常的工作状态。用一个开 关来控制系统的启动和解除,并用一个 led 灯来显示系统的状态。开关接通,即输 入为高电平1时,系统进入正常的工作状态,led 灯点亮。开关断开时,输入的 为低电平0,系统退出正常工作状态,led 灯熄灭。这用 IF 语句的双路选择结 XXX 大学本科生毕业论文 9 9 构实现,其中 sta 表示开关控制信号,led1 表示 led 灯信号,程序见附录。 3.2.2 检测信号模块设计 信号检测模块的任务是检测非法入侵信号和非法启动发动机信号,非法入侵信 号包括汽车异常移动、异常振动、异常提升、车身异常切斜四个信号,总共五个非 法信号。整个模块采用有限状态机来进行设计,下面先对有限状态机作介绍。 状态机是包括一组寄存器的电路,该寄存器的值称为状态机的状态。状态机的 状态不仅和输入信号有关,而且还与寄存器的当前状态有关。状态机可以认为是组 合逻辑电路和寄存器逻辑电路的特殊组合,它包括两个主要部分:组合逻辑部分和 寄存器部分。寄存器逻辑用于存储状态机的状态,组合逻辑包括两部分:状态译码 和输出译码。状态译码用于确定状态机下各时钟周期的状态值,即确定状态机的激 励方程,而输出译码确定状态机的输出,即确定状态机的输出方程。 最一般和最常用的状态机通常包括说明部分、状态更新进程、状态译码进程、 辅助进程等几个部分。说明部分用于说明状态机中的状态情况和定义状态机的现态 和次态;状态更新进程就是状态机的主控时序进程,它负责状态机运转和在时钟驱 动下负责状态转换的进程;状态译码过程也就是主控组合进程,它的任务是根据外 部输入的控制信号(包括来自状态机外部的信号和来自状态机内部其它非主控的组 合和时序进程的信号),或/和当前状态的状态值确定下一状态的取向,以及确定对 外输出或对内部其它组合或时序进程输出控制信号的内容。辅助进程用于配合状态 机工作的组合或时序进程。例如为了完成某种算法的进程,或用于配合状态机工作 的其它时序进程,或为了稳定输出设置的数据锁存器等4。 状态机分为同步状态机和异步状态机。同步状态机使用全局时钟信号,所有寄 存器的时钟都是同一个,这使得状态的改变只发生在时钟的上升沿。异步状态机则 利用组合逻辑电路的传播延迟来实现状态的存储功能,这样的状态机难于设计,而 且很不稳定,一般情况设计同步状态机。 在状态机的输出的产生过程中,根据输出译码是否使用输入信号可分为两类状 态机:摩尔状态机和米利状态机。在摩尔状态机中,输出只与当前状态有关,而在 米利状态机中,输出不仅和当前状态有关,还与输入状态有关。此模块设计采用的 是米利状态机。米利状态机的模型如图 3-1 所示。 XXX 大学本科生毕业论文 10 10 cl k 图图 3-1 米利状态机模型米利状态机模型 本模块总共八个输入信号,其中五个非法信号分别为 a1,a2,a3,a4,b,一个 时钟信号 clk,一个复位信号 rst,一个启动输入信号 start1;一个检测结果输出信号 q。整个模块采用一个米利状态机来实现,它包括四个进程,分别是状态更新进程, 状态译码进程,辅助进程和输出译码进程。状态机中设计了两个状态,为状态 st1 和 st2,状态 st1 表示检测信号状态,状态 st2 表示报警状态。状态转移如图 3-2 所 示。 st1st2 a1 or a2 or a3 or a4 or b=1rstflag=0 a1 or a2 or a3 or a4 or b=1 flag=1 a1 or a2 or a3 or a4 or b=0 a1 or a2 or a3 or a4 or b=1 图图 3-2 检测信号模块的米利状态机转移图检测信号模块的米利状态机转移图 一开始工作状态机进入检测信号状态 st1 进行实时监测,当检测到非法信号, 状态机转移到报警状态 st2。在这里,非法信号为 a1,a2,a3,a4,b,它们都是高 电平1有效,把这五个信号相或作为判断条件,即是其中任一个非法信号有效, 则判断条件成立,状态机就转移到报警状态。一旦进入报警状态 st2,将持续 5s 的 报警,不管此时是不是还有非法信号存在,5s 报警完成后,状态机继续判断是不是 还存在非法信号,如果存在,则继续报警,否则回到检测状态 st1 继续进行实时监 测。 在程序的编写中状态更新进程是一个很重要的部分,它既用于状态机的复位, 同时也负责整个状态机的状态更新,此进程 VHDL 代码如下: process( clk , rst ) -每个时钟上升沿,更新状态 begin XXX 大学本科生毕业论文 11 11 if rst = 1 then -状态机复位 cur_state if (a1 or a2 or a3 or a4 or b) = 1 then next_state if flag = 1 then if (a1 or a2 or a3 or a4 or b) = 1 then next_state if q1= 1 then XXX 大学本科生毕业论文 14 14 next_state if q1 = 1 then if flag1 = 1 then next_state if q1 = 1 then if flag2 = 1 then next_state if q1 = 1 then if flag3 = 1 then next_state 把信号关联起来, 这样就可以很清楚的知道各信号是怎样一一对应连接的5。 本系统的顶层设计的对外接口有输入信号 start,a1,a2,a3,a4,b,时钟信号 clk,复 位信号 rst, 输出信号 led1,led_b,led_door,r,g,y,alarm。在设计中先对对外端口进行声 明,接着要申明的是在顶层设计中用到的四个模块的 component,其声明的位置是 在 architecture 与 begin 之间。接着还要声明一些内部信号,作为 component 间连接 用,在这里只需要声明一个信号 aa,它用于连接检测信号模块与光报警模块、声音 报警及锁止模块。最后在 architecture 的 begin 与 end 间,则是用 component_instant 将信号相连接。这样,整个系统设计就完成了。整个系统的程序源代码见附录。 3.4 本章小结 在系统软件设计这一部分,先对要用的编程语言 VHDL 做了相关的介绍,列出 了它的一些优点。在本章中对系统的各个模块以及系统顶层的设计作了详细的说明。 启动/解除警戒模块通过 led 灯显示系统工作状态,启动警戒灯亮,解除警戒灯灭; 检测信号模块采用米利型有限状态机实现,实现了实时监测系统的功能;光报警模 块采用摩尔型有限状态机来实现,实现了红绿黄三个 led 灯依次轮流闪烁进行光报 警的功能,其中每个灯亮两秒;声音报警及锁止模块和光报警模块实现了声音报警, XXX 大学本科生毕业论文 17 17 并具有锁住车门,锁止汽车发动机的功能。系统顶层设计是整个设计的一个重要组 成部分,主要通过利用构造体的结构描述方式把整个系统连接了起来,实现所有子 模块的功能。 XXX 大学本科生毕业论文 18 18 第 4 章 系统模块实现 4.1 调试与仿真综合软件介绍 系统用VHDL语言编程,采用VHDL语言仿真软件Xilinx ISE进行代码调试。 Xilinx ISE集成综合环境是美国Xilinx公司的现场可编程逻辑器件数字电路开发工具 集,其集成的工具可以使设计人员方便、快速的完成FPGA/CPLD数字开发电路全过 程。Xilinx ISE是Xilinx公司EDA软件开发系统,是一个集成化环境,主要由项目导 航工具,设计输入工具,逻辑综合工具,设计实现工具,设计约束图形编辑接口等 组成一个平台。项目导航工具是基本窗口界面,用来访问ISE软件系统的各种工具箱; 设计输入工具包括:电路逻辑图输入工具电路图编辑器、硬件描述语言输入工 具硬件描述语言编辑器、状态机编辑器、硬件描述语言测试生成器;逻辑综合 工具将硬件描述语言代码经过综合优化后输出EDIF格式电路逻辑连接(网表);设 计实现工具用于面向FPGA的设计实现中的布局布线,并且可以对网表反标注以便提 供给仿真工具进行后仿真验证;设计约束图形编辑接口包含图形化的约束编辑接口, 实现控制逻辑块的位置约束和时间约束6。 系统采用Xilinx ISE进行调试,完成了设计输入并成功的进行了编译,只能说明 设计符合一定的语法规范,并不能保证设计可以获得所期望的功能,这时就需要通 过仿真对设计进行验证,这里就要用到第三方软件Model Technology公司的 ModelSim仿真软件。ModelSim是一个独立的仿真工具,它在工作的时候并不需要其 它软件的协助,在Xilinx公司的ISE集成开发环境中给ModelSim仿真软件预留了接口, 通过这个接口可以从ISE集成环境中直接启动ModelSim工具进行仿真7。使用此方 法启动ModelSim工具需要具备三个条件:第一,启动ISE集成环境并建立一个 FPGA/CPLD的工程项目;第二,添加设计源代码并且编译通过;第三,使用ISE中 的Test Fixture 或Test Bench Waveform工具为当前的设计提供一个测试模板 (Testbench),并且在测试模板中添加设计激励,或者在相应的工程下建立一个 sim.do文件,在文件里设置信号激励。ModelSim仿真工具在默认条件下提供九种不 同的用户窗口:主窗口、结构窗口、源程序窗口、信号窗口、进程窗口、变量窗口、 数据流窗口、波形窗口以及列表窗口等。本设计中主要用到的是主窗口和波形窗口。 主窗口在ModelSim启动时就直接打开,是所有其他窗口运行的基础,它分为工作区 XXX 大学本科生毕业论文 19 19 和脚本区,通过工作区可以很方便的对当前工程的工作库以及所有打开的数据集合 进行控制,通过脚本区可以在ModelSim的提示符下输入所有ModelSim的各种命令, 并且可以将命令执行后的信息反馈回来,以便用户了解命令的执行情况。通过波形 窗口可以观察仿真的波形文件。 系统仿真完毕,接着需要用综合工具进行综合。Xilinx ISE软件有内嵌的综合工 具XST,虽然安装ISE后可以直接使用XST,但是它的综合功能不全面,相对综合能 力较差一点。因此本设计采用Mentor Graphics公司的Leonardo Spectrum综合工具进 行系统综合。Leonardo Spectrum提供了先进的综合技术,支持增量设计、模块化设 计,以及小组设计方法。简单易用,可控性较强,可以在Leonardo Spectrum中综合 优化并产生EDIF文件。在ISE设计环境中,ISE提供与Mentor Graphics 的Leonardo Spectrum的无缝集成。 只需按一个按钮,就可开始综合系统。 4.2 系统模块实现 双击桌面上的 Project Navigator 的快捷方式打开 ISE 开发环境,点击主菜单上 Edit-preferences,出现一个 preferences,点击 Integrated Tools,在 Model tech Simulator 下面的路径栏选择 modelsim.exe 的路径,在 LeonardoSpectrum 下面的路径栏选择 leonardo.exe 的路径,然后确定,这样就在 ISE 中把 ModelSim 以及 LeonardoSpectrum 关联起来了。接着就可以通过主菜单上 File-New Project 建立新 的工程了。新建工程中,其 Project Properties 的设置图 4-1 所示: 图图 4-1 工程属性设置工程属性设置 XXX 大学本科生毕业论文 20 20 建立工程后,在 Process View 窗口中右键点击 Compile HDL Simulation Libraries, 选择 Properties,出现一个窗口,在 Target Simulator 项选择 ModelSim SE,在 Simulator Path 项选择 Modeltech 下 Win32 文件夹的路径,确定,然后双击 Compile HDL Simulation Libraries,就进行 ModelSim 仿真库的编译了,只有编译了仿真库,之后 的仿真才能顺利的进行。 4.2.1 启动/解除警戒模块实现 建立了新的工程,在工程中添加新的 on_off.vhd 源文件,在源文件写入启动/解 除报警模块的程序代码,保存以后就可以进行编译了。这个程序比较的简单,编译 一次就通过了。这时就可以通过 ModelSim 进行仿真了,仿真之前先在对应的程序 目录下新建一个 sim.do 文件。此模块 sim.do 的内容如下: force sta 0 0,1 100,0 1000,1 2000,0 5000 run 10000 force 和 run 都是命令词,force 命令给 VHDL 信号予以激励,它的常规语法如下: force , item_name 表示被

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论