基于vhdl语言的电子密码锁的设计(交内容摘要:
AL、 FORTRAN、 PROLOG等。 这些语言 运行在不同硬件平台、不同的操作环境中, 它们适合于描述过程和算法, 不适合作硬件描述。 在利用 EDA 工具进行电子设计时,逻辑图、分立电子元件作为整个越来越复杂的电子系统的设计已不适用。 任何一种 EDA 工具,都需要一种硬件描述语言作为 EDA 工具的 工作语言。 早期的硬件描述语言, 如 ABELHDL、 AHDL,是由不同的 EDA 厂商开发的,互相不兼容, 而且不支持多层次设计,层次间翻译工作要由人工完成。 为了克服以上缺陷, 1985 年美国国防部正式推出了 VHDL(Very High Speed IC Hardware Description Language)语言, 即超高速集成电路硬件描述语 言; 1987 年 IEEE 采纳VHDL为硬件描述语言标准( IEEESTD1076)。 VHDL 是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次 ,支持结构、数据流、行为三种描述形式的混合描述,因此VHDL 几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用 VHDL 来完成。 另外, VHDL 还具有以下优点: VHDL 的宽范围描述能力使它成为高层次设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,只需花较少的精力用于物理实现。 VHDL 可以用简洁明确的代码描述来进行复杂控 制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。 VHDL 的设计不依赖于特定的器件,方便了工艺的转换。 VHDL 是一个标准语言,为众多的 EDA 厂商支持,因此移植性好。 目前数字系统的设计可以直接面向用户需求,根据系统的行为和功能要求 ,自上而下地逐层完成相应 的描述、综合、优化、仿真与验证,直到生成器件,实现电子设计自动化。 其中电子设计自动化 EDA 的关键技术之一就是可以用硬件描述语言来描述硬件电路。 VHDL 是用来描述从抽象到具体级别硬件的工业标准语言 , 它是由美国国防部在 20 世纪 80 年代开发的 HDL,现在已成为 IEEE 承认的标准硬件描述语言。 VHDL 支持硬件的设计、验证、综合和测试,以及硬件设计数据的交换、维护、修改和硬件的实现,具有描述能力强、生命周期长、支持大 8 规模设计的分解和已有设计的再利用等优点。 VHDL 主要用于描述数字系统的结构、行为和功能 , 其程序结构特点是将一个电路模块或一个系统分成端口和内部功能算法实现两部分。 对于一个电路模块或者数字系统而言 , 定义了外部端口后 , 一旦内部功能算法完成后 , 其他系统可以直接依据外部端口调用该电路模块或数字系统 , 而不必知道其内部结构和算法。 VHDL 的特点使得电子系统新的设计方法 —— “自顶向下”设计方法更加容易实现。 可以先对整个系统进行方案设计 , 按功能划分成若干单元模块 , 然后对每个单元模块进一步细分 , 直到简单实现 的单元电路。 VHDL 语言的设计方法是一种高层次的设计方法,也称为系统级的设计方法,其设计步骤如下 : 第一步:按照 “ 自顶向下 ” 的设计方法进行系统划分。 第二步:输入 VHDL 语言 代码,这是高层次设计中最为普遍的输入方式。 此外,还可以采用图形输入方式(框图,状态图等),这种输入方式具有直观、容易理解的优点。 第三步:将以上的设计输入编 译成标准的 VHDL 文件。 对于大型设计,还要进行代码级的功能仿真,主要是检验系统功能设计的正确性,因为对于大型设计,综合、适配要花费数小时,在综合前对源代码仿真,就可以大大减少设计重复的次数和时间,一般情况下,可略去这一仿真步骤。 第四步:利用综合器对 VHDL 源代码进行综合优化处理,生成门级描述的网表文件 , 这是将高层次描述转化为硬件电路的关键步骤。 综合优化是针对 ASIC 芯片供应商的某一产品系列进行的,所以综合的过程要在相应的厂家综合库支持下才能完成。 综合后,可利用产生的网表文件进行适配前的时序仿真,仿真过程 不涉及具体器件的硬件特性,较为粗略。 一般设计,这一仿真步骤也可略去。 第五步:利用适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,包括底层器件配置、逻辑分割、逻辑优化和布局布线。 适配完成后,产生多项设计结果: (1) 适配报告,包括芯片内部资源利用情况,设计的布尔方程描述情况等; (2) 适配后的仿真模型; 第 2 章 EDA技术与 VHDL 语言简介 9 (3) 器件编程文件。 根据适配后的仿真模型,可以进行适配后的时序仿真,因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确地预期未来芯片的实际性能。 如果仿真结果达不到设计 要求,就需要修改 VHDL 源代码或选择不同速度品质的器件,直至满足设计要求。 第六步:将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片 FPGA 或 CPLD 中。 如果是大批量产品开发,通过更换相应的厂家综合库,可以很容易转由 ASIC 形式实现。 VHDL 语言 的特点 应用 VHDL进行系统设计,有以下几方面的特 点: (1) 功能强大 VHDL具有功能强大的语言结构。 它可以用明确的代码描述 复杂的控制逻辑设计。 并且具有多层次的设计描述功能,支持设计库和可 重复使用的元件生成。 VHDL是一种设计、仿真 和综合的标准硬件描述语言。 (2) 可移植性 VHDL 语言是一个标准语言,其设计描述可以为不同的 EDA工具支持。 它可以从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。 此外,通过更换库再重新综合很容易移植为 ASIC 设计。 (3) 独立性 VHDL的硬件描述与具体的工艺技术和硬件结构无关。 设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。 程序设计的硬件目标器件有广阔的选择范围,可以是各系列的 CPLD、 FPGA及各种门 阵列器件。 (4) 可操作性 由于 VHDL 具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。 (5) 灵活性 VHDL最初是作为一种仿真标准格式出现的,有着丰富的仿真语句和库函数。 使其在任何大系统的设计中,随时可对设计进行仿真模拟。 所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。 10 第 3 章 CPLD/FPGA 硬件平台 20 世纪 90 年代,国际上电 子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、 工具等方面进行了彻底的变革,取得了巨大成功。 在电子技术设计领域, 可编程逻辑器件(如 CPLD、 FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。 这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。 这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了 EDA 技术的迅速发展。 可编程逻辑器件的发展历史及概述 当今社会是数字化 的社会,是数字集成电路广泛应用的社会。 数字集成电路本身在不断地进行更新换代。 它由早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电路 (VLSIC,几万门以上 )以及许多具有特定功能的专用集成电路。 但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。 系统设计师们更愿意自己设计专用集成电路 (ASIC)芯片,而且希望 ASIC 的设计周期尽可能短,最好是在实验室里就能设计出合适的 ASIC芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件 (FPLD),其中应用最广泛的当 属现场可编程门阵列 (FPGA)和复杂可编程逻辑器件 (CPLD)。 早期的可编程逻辑器件只有可编程只读存贮器 (PROM)、紫外线可 擦 除只读存贮器 (EPROM)和电可擦除只读存贮器 (EEPROM)三种。 由于结构的限制,它们只能完成简单的数字逻辑功能。 其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件 (PLD),它能够完成各种数字逻辑功能。 典型的 PLD 由一个 “与 ”门和一个 “或 ”门阵列组成,而任意一个组合逻辑都可以用 “ 与一或 ” 表达式来描述,所以, PLD 能以乘积和的形式完成大量的组合逻辑功能。 这一阶段的产 品主要有 PAL(可编程阵列逻辑 )和 GAL(通用阵列逻辑 )。 PAL 由一个可编程的 “ 与 ” 平面和一个固定的 “ 或 ” 平面构成,或门的输。 出可以通过触发器有选择地被置为寄存状态。 PAL 器件是现场可编程的,它的实现工艺有反熔丝技术、 EPROM 技术和 EEPROM 技术。 还有一类结构更为灵活的逻辑器件是可编程逻辑阵列 (PLA),它也由一个 “ 与 ” 平面和第 3 章 CPLD/FPGA硬件平台 11 一个 “ 或 ” 平面构成,但是这两个平面的连接关系是可编程的。 PLA 器件既有现场可编程的,也有掩膜可编程的。 在 PAL 的基础上,又发展了一种通用阵列逻辑GAL (Generic Array Logic),如 GAL16V8,GAL22V10 等。 它采用了 EEPROM 工艺,实现了电可按除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。 这些早期的 PLD 器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。 为了弥补这一缺陷, 20 世纪 80 年代中期。 Altera 和 Xilinx分别推出了类似于PAL结构的扩展型 CPLD(Complex Programmab1e Logic Dvice)和与标准门阵列类似的 FPGA(Field Programmable Gate Array), 它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。 这两种器件兼容了 PLD 和通用门阵列的优点 ,可实现较大规模的电路 , 编程也很灵活。 与门阵列等其它 ASIC(Application Specific IC)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产 (一般在 10,000 件以下 )之中。 几乎所有应用门阵列、 PLD 和中小规模通用 数字集成电路的场合均可应用 FPGA 和 CPLD 器件。 FPGA/CPLD 概述 FPGA(现场可编程门阵列 )与 CPLD(复杂可编程逻辑器件 )都是可编程逻辑器件,它们是在 PAL,GAL 等逻辑器件的基础之上发展起来的。 同以往的 PAL,GAL等相比较, FPGA/CPLD 的规模比较大,它可以替代几十甚至几千块通用 IC 芯片。 这样的 FPGA/CPLD 实际上就是一个子系统部件。 这种芯片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。 经过了十几年的发展,许多公司都开发出了多种可编程逻辑器件。 比较典型的就是 Xilinx 公司的 FPGA 器件系列和 Altera 公司的 CPLD 器件系列,它们开发较早,占用了较大的 PLD 市场。 通常来说,在欧洲用 Xilinx的人多,在日本和亚太地区用 ALTERA 的人多,在美国则是平分秋色。 全球 PLD/FPGA 产品 60%以上是由 Altera和 Xilinx提供的。 可以讲 Altera 和 Xilinx共同决定了 PLD 技术的发展方向。 当然还有许多其它类型器件,如: Lattice, Vantis,Actel, Quicklogic, Lucent 等。 尽管 FPGA,CPLD 和其它类型 PLD 的结构各有其特点和长处, 但概括起来,它们是由三大部分组成的,一个二维的逻辑块阵列,构成了 PLD 器件的逻辑组成 12 核心。 输入 /输出块:连接逻辑块的互连资源。 连线资源:由各种长度的连线线段组成, 其中也有一些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入 /输出块之间的连接。 对用户而言, CPLD 与 FPGA 的内部结构稍有不同,但用法一样,所以多数情况下,不加以区分。 FPGA/CPLD 芯片都是特殊的 ASIC 芯片,它们除了具有 ASIC的特点之外,还具有以下几个优点: (1) 随着 VlSI(Very Large Scale IC,超大规模集成电 路 )工艺的不断提高单一芯片内部可以容纳上百万个晶体管, FPGA/CPLD 芯片的规模也越来越大,其单片逻辑门数已达到上百万门,它所能实现的功能也越来越强,同时也可以实现系统集成。 (2) FPGA/CPLD 芯片在出厂之前都做过百分之百的测试,不需要设计人员承担投片风险和费用,设计人员只需在自己的实验室里就可以通过相关的软硬件环境来完成芯片的最终功能设计。 所以, FPGA/CPLD 的资金投入小,节省了许多潜在的花费。 (3) 用户可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同软件就可实现不同的功能。 所 以,用 FPGA/PLD 试制样片,能以最快的速度占领市场。 FPGA/CPLD 软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产品,电路设计人员在很短。基于vhdl语言的电子密码锁的设计(交
相关推荐
时序仿真验证 设计输入 器件编程 在线测试 投产 设计修改 图 MAX+plusⅡ 软件工作流程 17 VHDL 程序的结构 一、 VHDL 程序的基本单元 VHDL 程序的结构由结构体、实体、配置( CONFIGURATION)、程序包( PACKAGES)和库( LIBRARIES)组成。 在一个具体的应用程序中,最基本的部分为实体和结构体。 在应用程序中,实体是唯一的,结构体可以具有多个。
一种功能模型。 数据流图有四种基本图形符号:“→”箭头表示数据流;“○”圆或椭圆表述加工;“=”双杠表示数据存储;“□”方框表示数据的源点或终点。 下面给出系统的数据流图[13]。 (1)。 (2)。 (3)。 湖南工业大学本科生毕业设计(论文)第4章 概要设计 B/S模式的体系结构B/S这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。
会议主持人: 记 录 人: 年 月 日 M 答 辩 小 组 意 见 评语: 评定等 级: 负责人(签名): 年 月 日 系 学 位 委 员 会 意 见 评语: 论文(设计)最终评定等级: 负责人(签名): 系部(公章) 年 月 日 校 学 位 委 员 会 意 见 评语: 评定等级: 负责人(签名): 年 月 日 I 目 录 1 绪论 ...............................
CLR_CNT 信号用于在每次测量开始时,对计数器进行复位,以清除上次测量的结果,该复位信号高电平有效,持续半个时钟周期的时间。 EN 为计数允许信号,在 EN 信号的上升沿时刻计数模块开始对输入信号的频率 进行测量,测量时间恰为一个时钟周期 (正好为单位时间 1s),在此时间里被测信号的脉冲数进行计数,即为信号的频率。 然后将值锁存,并送到数码管显示出来。 设置锁存器的好处是使显示的数据稳定
转换电路时,电路输出量 V0 和输入 d7~d0 的关系式为 V0=Vref28 RRf(d727+d626+...d020)。 DAC0832 芯片的特点 DAC0832 最具特色是输入为双缓冲结构,数字信号在进入 D/A 转前,需经过两个独立控制的 8 位锁存器传送。 其优点是 D/A 转换的同时, DAC 寄存器中保留现有的数据,而在输入寄存器中可送入新的数据。 系统中多个 D/A
和布线的标准硬件描述语言,因此它可以使设计成果在设计人员之间进行交流与共享,减少硬件电路设计的工作量,缩短开发周期 [8]。 软件开发工具 - MAX+ plus II MAX+PLUSⅡ概述 Max+plusⅡ 全称为 Multiple Array Matrix Programmable Logic User System 是Altera 公司提供的 FPGA/CPLD 开发集成环境,