




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科毕业论文(设计) 题 目 基于 fpga 与色敏传感器的颜色识别系统 (数字部分) 指导教师 职称 学生姓名 学号 专 业 自动化 班级 (1) 院 (系)电子信息工程学院电子工程系 完成时间 i 基于 fpga 与色敏传感器的颜色识别系统(数字部分) 摘要 本论文主要介绍了颜色识别系统, 本颜色识别系统主要实现对几种典型 颜色的自动识别.本设计基于 fpga 与色敏传感器来实现,包括模拟和数字两个 主要部分.模拟部分主要负责颜色信号的采集、放大,采集信号使用 cls9032 单 晶硅双结型色敏传感器;数字部分主要负责颜色信号的处理和识别,也是本设计的 核心部分,硬件使用 altera 公司的 niosii 处理器 fpga 系统组建,软件使用 vhdl 语言编程。数字部分用到的核心部件是 fpga,不同于单片机。单片机 (如 8051 系统)每条指令都需要 12 个振荡周期,fpga 只需要 2 个振荡周期, 所以同样条件下,fpga 有更快的运行速度,这也是本设计的创新之处。 关键词关键词:颜色传感器;fpga;vhdl 语言; sensitive sensors based on fpga with color color identification system (digital ii part) abstract this paper introduces color identification system, the primary color identification system to realize the automatic recognition of typical color. the design is based on sopc technology, the use niosii soft-core processor, including analog and digital two main parts. simulate some of the major responsible for the color signal acquisition, amplification, signal acquisition using cls9032 silicon color sensor with double-junction sensor; digital part is mainly responsible for the color signal processing and identification, the hardware using alteras niosii processor system formed, the software programming using vhdl language. digital part of the core component is used in fpga, different from the mcu. microcontroller (such as the 8051 system) each instruction requires 12 oscillation period, fpga only two oscillation period, so the same conditions, fpga with a faster speed, which is also the design innovations. keywords:color sensor ; fpga; vhdl language; 目 录 iii 摘要i abstractii 第 1 章 绪 论1 第 2 章 eda 技术与 vhdl1 2.1 eda 技术1 2.1.1 eda 技术的含义1 2.1.2 eda 技术的发展历史2 2.1.3 eda 技术的基本特征2 2.1.4 eda 技术的主要内容3 2.1.5 eda 技术的设计流程5 2.2 vhdl 硬件描述语言7 2.2.1 vhdl 的特点7 2.2.2 vhdl 语言基础知识8 第 3 章 色敏传感器与 fpga 的简单介绍14 3.1 色敏传感器14 3.2 fpga15 3.3 a/d16 第四章 基于 fpga 与色敏传感器的颜色识别系统(数字部分) 16 4.1 设计原理及工作要求16 4.2 模拟部分17 4.3 数字部分(重要)17 4.4 altera quartus ii 坏境下的仿真19 结束语20 致谢21 iv 参考文献22 (附 录)23 1 第 1 章 绪 论(稍增加一些内容,绪 论中主要写论文的设计背景,意义,设计内容及预期目标) 在当今的社会生活中,颜色识别得到越来越广泛的应用。各个领域的广泛 应用需求使颜色识别技术有了长足的发展,结合其他技术,可为工业控制、产 品制造等多个行业更好地服务。目前,颜色识别技术主要是通过结构简单、使 用方便的单片机来实现,而本设计选用 fpga 来实现,该系统可应用于印染、 油漆、汽车等行业,也可以装在自动生产线上对产品的颜色进行监测。这样选 择的好处有以下几点: fpga 芯片是并行运算的,每个振荡周期都可以执行任务,而单片机 (如 8051 系列)的每条指令都需要 12 个振荡周期。例如,单片机 io 端口的变 化最快也需要 24 个振荡周期,而 fpga 只需要 2 个振荡周期,所以同样的振荡 周期下,fpga 速度更快。 fpga 有丰富的 io 资源(一般有数百个 io 口),容易实现大规模系 统,可以方便地连接外设(比如多路 ad、da 等)。而单片机的 io 口有 限,要进行仔细的资源分配、总线隔离。 fpga 可以进行硬件重构,在功能扩展或性能改善方面也非常容易。 本设计选用了 altera 公司的:niosli 软核,使用 sopc 的软硬件综合解决 方案。与传统的设计方法完全不同,从硬件和软件整体设计上进行了极大的改 进,使硬件电路更加简单、有效、易于理解,软件设计更轻松、可移植性更强。 第 2 章 eda 技术与 vhdl(删减第二章的内容,篇幅不能超 过 4 页,且第二章不能只介绍 eda 相关的内容,你论文中用到 的传感器类的相关知识也可以稍微描述一下,总体篇幅要不超 过 4 页) 2.1 eda 技术 2.1.1 eda 技术的含义 eda 即电子设计自动化,是 electronic design automation 的英文缩写。其 发展历程可分为:(1)手工设计阶段(2)早期电子 cad 技术(3)电子设计 自动化(eda)技术(4)soc、esda 设计技术。 (其中 soc:system on a chip,esda:electronic system design automation) 它有广义和狭义两种定义方式,其广义定义范围包括:半导体工艺设计自 动化、可编程器件设计自动化、电子系统设计自动化、印刷电路板设计自动化、 仿真与测试、故障诊断自动化、形式验证自动化,这些都通称为 eda 工程。 2 eda 技术的狭义定义为以大规模可编程逻辑器件为设计载体,以硬件描述 语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程器件的开发软 件及实验开发系统为设计工具,自动完成用软件方式描述的电子系统到硬件系 统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、布局布线、逻辑仿真, 直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形 成集成电子系统或专用集成芯片的一门多学科融合的新技术。 2.1.2 eda 技术的发展历史 20 世纪 90 年代,国际上电子和计算机技术较先进的国家,一直在积极探 索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取 得了巨大成功。在电子技术设计领域,可编程逻辑器件(如 cpld、fpga)的应 用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这 些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件 的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统 设计方法、设计过程和设计观念,促进了 eda 技术的迅速发展。 eda 是电子设计自动化(electronic design automation)的缩写,在 20 世纪 90 年代初从计算机辅助设计(cad)、计算机辅助制造(cam)、计算 机辅助测试(cat)和计算机辅助工程(cae)的概念发展而来的。eda 技术 就是以计算机为工具,设计者在 eda 软件平台上,用硬件描述语言 hdl 完成 设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布 局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等 工作。eda 技术的出现,极大地提高了电路设计的效率和可*性,减轻了设计 者的劳动强度。 2.1.3 eda 技术的基本特征 eda 代表了当今电子设计技术的最新发展方向,它的基本特征是:设计 人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统 的关键电路用一片或几片专用集成电路(asic)实现,然后采用硬件描述语言 (hdl)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件, 这样的设计方法被称为高层次的电子设计方法。下面介绍与 eda 基本特征有关 的几个概念。 1“自顶向下”的设计方法。10 年前,电子设计的基本思路还是选用标准 集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦 建造金字塔,不仅效率低、成本高而且容易出错。 高层次设计是一种“自顶向 下”的全新设计方法,这种设计方法首先从系统设计人手,在顶层进行功能方框 3 图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高 层次的系统行为进行描述,在系统一级进行验证。然后,用综合优化工具生成 具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。 由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结 构设计上的错误,避燃计工作的浪费,又减少了逻辑功能仿真的工作量,提高 了设计的一次成功率。 2asic 设计。现代电子产品的复杂度日益提高,一个电子系统可能由 数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题。 解决这一问题的有效方法就是采用 asic 芯片进行设计。asic 按照设计方法的 不同可分为全定制 asic、半定制 asc 和可纪程 asic(也称为可编程逻辑器 件)。 设计全定制 asic 芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺 规则,最后将设计结果交由 m 厂家去进行格模制造,做出产品。这种设计方法 的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺 点是开发周期长,费用高,只适合大批量产品开发。 半定制 asic 芯片的版图 设计方法分为门阵列设计法和标准单元设计法,这两种方法都是约束性的设计 方法,其主要目的就是简化设计,以牺牲芯片性能为代价来缩短开发时间。 2.1.4 eda 技术的主要内容 eda 技术涉及面广,内容丰富,从教学和实用的角度看,主要应掌握如 下四个方面的内容:(1)大规模可编程逻辑器件;(2)硬件描述语言;(3) 软件开发工具;(4)实验开发系统。其中,大规模可编程逻辑器件是利用 eda 技术进行电子系统设计的载体,硬件描述语言是利用 eda 技术进行电子 系统设计的主要表达手段,软件开发工具是利用 eda 技术进行电子系统设计的 智能化的自动设计工具,实验开发系统则是利用 eda 技术进行电子系统设计的 下载工具及硬件验证工具。 (1) 大规模可编程逻辑器件 可编程逻辑器件(简称 pld)是一种由用户编程以实现某种逻辑功能的 新型逻辑器件。fpga 和 cpld 分别是现场可编程门阵列和复杂可编程逻辑器 件的简称,现在,fpga 和 cpld 器件的应用已十分广泛,它们将随着 eda 技 术的发展而成为电子设计领域的重要角色。国际上生产 fpga/cpld 的主流公 司,并且在国内占有市场份额较大的主要是 xilinx, altera, lattice 三家公司。 xilinx 公司的 fpga 器件有 xc2000,xc3000,xc4000,xc4000e,xc4000xla, xc5200 系列等,可用门数为 120018000;altera 公司的 cpld 器件有 flex600,flex8000,flex10k,flex10ke 系列等,提供门数为 500025000;lattice 公司的 isp-pld 器件有 isplsi1000, isplsi2000, isplsi3000, isplsi6000 系列等,集成度多达 25000 个 pld 等效门。 fpga 在结构上主要分为三个部分,即可编程逻辑单元,可编程输入/输出 单元和可编程连线三个部分。cpld 在结构上主要包括三个部分,即可编程宏 单元,可编程输入/输出单元和可编程内部连线。 4 高集成度、高速度和高可靠性是 fpga/cpld 最明显的特点,其时钟延时 可小至 ns 级,结合其并行工作方式,在超高速应用领域和实时测控方面有着非 常广阔的应用前景。在高可靠应用领域,如果设计得当,将不会存在类似于 mcu 的复位不可靠和 pc 可能跑飞等问题。fpga/cpld 的高可靠性还表现在 几乎可将整个系统下载于同一芯片中,实现所谓片上系统,从而大大缩小了体 积,易于管理和屏蔽。 由于 fpga/cpld 的集成规模非常大,可利用先进的 eda 工具进行电子 系统设计和产品开发。由于开发工具的通用性、设计语言的标准化以及设计过 程几乎与所用器件的硬件结构没有关系,因而设计开发成功的各类逻辑功能块 软件有很好的兼容性和可移植性。它几乎可用于任何型号和规模 fpga/cpld 中,从而使得产品设计效率大幅度提高。可以在很短时间内完成十分复杂的系 统设计,这正是产品快速进入市场最宝贵的特征。美国 it 公司认为,一个 asic80%的功能可用于 ip 核等现成逻辑合成。而未来大系统的 fpga/cpld 设 计仅仅各类再应用逻辑与 ip 核(core)的拼装,其设计周期将更短。 与 asic 设计相比,fpga/cpld 显著的优势是开发周期短、投资风险小、 产品上市速度快、市场适应能力强核硬件升级回旋余地大,而且当产品定型核 产量扩大后,可将在生产中达到充分检验的 vhdl 设计迅速实现 asic 投产。 对于一个开发项目,究竟是选择 fpga 还是选择 cpld 呢?主要看开发 项目本身的需要。对于普通规模,且产量不是很大的产品项目,通常使用 cpld 比较好。对于大规模的逻辑设计 asic 设计,或单片系统设计,则多采用 fpga。另外,fpga 掉电后将丢失原有的逻辑信息,所以在使用中需要为 fpga 芯片配置一个专用 rom。 (2)硬件描述语言(hdl) 常用的硬件描述语言有 vhdl、verilog、abel。 vhdl:作为 ieee 的工业标准硬件描述语言,在电子工程领域,已成为 事实上的通用硬件描述语言。 verilog:支持的 eda 工具较多,适用于 rtl 级核门电路级的描述,其综 合过程较 vhdl 稍简单,但其在高级描述方面不如 vhdl。 abel:一种支持各种不同输入方式的 hdl,被广泛于各种可编程逻辑器 件的逻辑功能设计,由于其语言描述的独立性,因而适用于各种不同规模的可 编程器件的设计。 有专家认为,在新世纪中,vhdl 与 verilog 语言将承担几乎全部的数字 系统设计任务。 (3)软件开发工具 目前比较流行的、主流厂家的 eda 的软件工具有 altera 的 max+plus ii 、lattice 的 ispexpert、xilinx 的 foundation series。 max+plus ii:支持原理图、vhdl 和 verilog 语言文本文件,以及以波形 与 edif 等格式的文件作为设计输入,并支持这些文件的任意混合设计。它具 有门级仿真器,可以进行功能仿真和时序仿真,能够产生精确的仿真结果。在 适配之后,max+plus ii 生成供时序仿真用的 edif、vhdl 和 verilog 这三种 5 不同格式的网表文件,它界面友好,使用便捷,被誉为业界最易学易用的 eda 软件,并支持主流的第三方 eda 工具,支持除 apex20k 系列之外的所有 altera 公司的 fpga/cpld 大规模逻辑器件。 ispexpert:ispexpert system 是 ispexpert 的主要集成环境。通过它 可以进行 vhdl、verilog 及 abel 语言的设计输入、综合、适配、仿真和在系 统下载。ispexpert system 是目前流行的 eda 软件中最容易掌握的设计工具 之一,它界面友好,操作方便,功能强大,并与第三方 eda 工具兼容良好。 foundation series:xilinx 公司最新集成开发的 eda 工具。它采用自动化 的、完整的集成设计环境。foundation 项目管理器集成了 xilinx 实现工具,并 包含了强大的 synopsys fpga express 综合系统,是业界最强大的 eda 设计工 具之一。 (4)实验开发系统 提供芯片下载电路及 eda 实验/开发的外围资源(类似于用于单片机开发 的仿真器) ,供硬件验证用。一般包括:a)实验或开发所需的各类基本信号发 生模块,包括时钟、脉冲、高低电平等;b)fpga/cpld 输出信息显示模块, 包括数据显示、发光管显示、声响指示等;c)监控程序模块,提供“电路重构 软配置”;d)目标芯片适配座以及上面的 fpga/cpld 目标芯片和编程下载电 路。 2.1.5 eda 技术的设计流程 可以从传统设计方法和 eda 设计方法的区别说明eda 设计方法 的优势: (1 1)设设计计思思想想不不同同: (2)eda 是采用自上而下(top - down)的设计方法。 自上而下是指将数字系统的整体逐步分解为各个子系统和模块,若子 系统规模较大,则还需将子系统进一步分解为更小的子系统和模快,层 层分解,直至整个系统中各个子系统关系合理,并便于逻辑电路级的设 计和实现为止。自上而下设计中可逐层描述,逐层仿真,保证满足系统 指标。 传统设计方法是采用自下而上(bottom up)的设计方法。 6 (2 2)与与传传统统的的基基于于电电路路板板的的设设计计方方法法不不同同,e ed da a 技技术术是是基基于于芯芯片片 的的设设计计方方法法。 7 (3 3)描描述述方方式式不不同同: 传统设计方法采用电路图为主; eda 设计方法以硬件描述语言(hdl_ hard description language)为主。 ( 4 4)设设计计手手段段不不同同: 传统设计方法以手工设计为主; eda 设计方法其方案验证与设计、系统逻辑综合、布局布线、性能仿真、 器件编程等均由 eda 工具一体化完成。 2.2 vhdl 硬件描述语言 2.2.1 vhdl 的特点 vhdl 是一种用普通文本形式设计数字系统的硬件描述语言,主要用于描 述数字系统的结构、行为、功能和接口,可以在任何文字处理软件环境中编辑。 除了含有许多具有硬件特征的语句外,其形式、描述风格及语法十分类似于计 算机高级语言。vhdl 程序将一项工程设计项目(或称设计实体)分成描述外 部端口信号的可视部分和描述端口信号之间逻辑关系的内部不可视部分,这种 将设计项目分成内、外两个部分的概念是硬件描述语言(hdl)的基本特征。 当一个设计项目定义了外部界面(端口) ,在其内部设计完成后,其他的设计就 可以利用外部端口直接调用这个项目。vhdl 的主要特点如下: (1)作为 hdl 的第一个国际标准,vhdl 具有很强的可移植性。 (2)具有丰富的模拟仿真语句和库函数,随时可对设计进行仿真模拟,因 而能将设计中的错误消除在电路系统装配之前,在设计早期就能检查设计系统 功能的可行性,有很强的预测能力。 8 (3)vhdl 有良好的可读性,接近高级语言,容易理解。 (4)系统设计与硬件结构无关,方便了工艺的转换,也不会因工艺变化而 使描述过时。 (5)支持模块化设计,可将大规模设计项目分解成若干个小项目,还可以 把已有的设计项目作为一个模块调用。 (6)对于用 vhdl 完成的一个确定设计,可以利用 eda 工具进行逻辑综 合和优化,并能自动地把 vhdl 描述转变成门电路级网表文件。 (7)设计灵活,修改方便,同时也便于设计结果的交流、保存和重用,产 品开发速度快,成本低。 vhdl 是一种快速的电路设计工具,其功能涵盖了电路描述、电路合成、电路 仿真等设计工作。vhdl 具有极强的描述能力,能支持系统行为级、寄存器传 输级和逻辑门电路级三个不同层次的设计,能够完成从上层到下层(从抽象到 具体)逐层描述的结构化设计思想。 用 vhdl 设计电路主要的工作过程是: 1)编辑。用文本编辑器输入设计的源文件(为了提高输入效率,可用某些专用 编辑器) 。 2)编译。用编译工具将文本文件编译成代码文件,并检查语法错误。 3)功能仿真(前仿真) 。在编译前进行逻辑功能验证,此时的仿真没有延时, 对于初步的功能检测非常方便。 4)综合。将设计的源文件用自动综合工具由语言转换为实际的电路图(门电路 级网表) ,但此时还没有在芯片中形成真正的电路,就好像是把设计者脑海中的 电路画成了原理图。 5)布局、布线。用已生成的网表文件,再根据 cpld(或 fpga)器件的容量 和结构,用自动布局布线工具进行电路设计。首先根据网表文件内容和器件结 构确定逻辑门的位置,然后再根据网表提供的门连接关系,把各个门的输入输 出连接起来,类似于设计 pcb(印刷电路板)时的布局布线工作。最后生成一 个供器件编程(或配置)的文件,同时还会在设计项目中增加一些时序信息,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 七年级地理人教版课件(上册+下册)
- 人教版小学数学五年级上册教学课件
- 异位妊娠的中医饮食护理
- 2025机械设备销售合同范本
- 学校安全第一课
- 2025停车场租赁合同范本
- 2025培训机构合作合同模板
- 破壳的小鸡美术课件
- 智慧树知到《孙子兵法中的思维智慧》(哈尔滨工程大学)章节测试答案
- 2025广告代理服务合同
- 冷却塔维修施工方案
- 航天发射场智能化-深度研究
- 信息时代背景下班主任提升班级管理工作效率的策略研究
- 旅游业员工工资保障措施建议
- 班组长、员工安全生产责任制考核记录表
- 老年康体指导职业教育79课件
- 北京市建设工程施工现场安全生产标准化管理图集(2019版)
- 2025年江苏省江宁城建集团招聘笔试参考题库含答案解析
- 大学生就业与创业指导知到智慧树章节测试课后答案2024年秋辽宁广告职业学院
- 高钛渣及其产品深加工项目的可行性研究报告
- 2024年中国黄油行业供需态势及进出口状况分析
评论
0/150
提交评论