基于fpga器件的电子密码锁设计内容摘要:

可以实现三输入( F′、G′和块外信号 H1)的任意布尔函数。 由函数发生器生成的信号 F′或 H′可以被连到X 输出端, G′或 H′可以被连到 y 输出端。 从而使一个 CLB 可以实现两个独立的多达四变量的任意函数,或单个 五变量任意函数,或一个任意的四变量函数连同一个五变量函数,或多达九变量的一些函数。 在单一逻辑块上实现如此宽的逻辑函数,既减少了所要求的逻辑块数又减少了在信号通路上的时延,达到了增加密度和速度的目的。 在 CLB 中有两个边沿触发的 D 触发器,它们具有公用时钟( K)和时钟使能( EC)输入,第三个公用输入( S/R)可以分别地对它们编程为异步置位或复位信号,该输入也可定义为不被使能。 另外,还有一个单独的全局置位 /复位线,在电源接通或重新配置时由专用复位网线对每个触发器置位或复位。 函数发生器 F′和 G′的另一种可选方式是 使其中的查找存储器用做 16 2 或 321 位的读 /写存储单元阵列使用。 这种 RAM 的速度是很高的,读操作与逻辑延时一样,大约 ,而写操作大约 8ns。 这是一个新的相当有用的功能,在系统中可以设计寄存器阵列、 LIFO 堆栈或 FIFO 缓冲器等。 输入 /输出块( IOB) 图 33 输入输出模块 IOB 用户可配置的 IOB(见图 33)为芯片外部引脚和内部逻辑提供了一个界面,每个IOB 控制一个外部引脚,并可定义为输入、输出或双向三种功能。 当 IOB 定义为输入时,输入信号经 Pad 进入输入缓冲器,并根据配置可以直接输 入,亦可以通过边沿触发器或电平敏感锁存器输入。 当 IOB 定义为输出时,输出信号可以通过配置选择是否反相,是直接传输到 Pad,还是通过边沿触发器寄存后传输。 可以选择用输出使能信号( OE)使输出缓冲器是否为高阻状态,以实现三态输出或双向 I/O 传输。 可编程内部连线( PI) 内部连线由一些具有可编程开关点或开关矩阵的金属线段组成,结构对称、规范,第三章 系统需求分析 9 适合于建立自动有效的布局布线算法。 布线通道的数目由阵列规模决定。 FPGA 特 点 FPGA 与 CPLD(复杂可编程逻辑器件)都是可编程逻辑器件,它们是在 PAL、 GAL等逻辑器件的基础上发展起来的。 FPGA 既继承了 ASIC 的大规模、高集成度、高可靠性的优点,又克服了普通 ASIC 设计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电路设计的理想首选。 在这十几年的发展过程中,以 FPGA/CPLD 为代表的数字系统现场集成技术取得了惊人的发展:现场可编程逻辑器件从最初的数百个门发展到现今的数百万个门。 目前,国际上现场可编程逻辑器件著名厂商有 Xilinx 的 XC 系列,TI 公司的 TPC 系列, Altera 公司的 FIEX 系列等。 同以往的 PAL、 GAL 等相比较,FPGA/CPLD 的规模 比较大,它可以替代几十甚至几千块通用 IC 芯片。 对用户而言,CPLD 与 FPGA 的内部结构只是稍有不同,但用法一样,所以多数情况下不加以区分 [7]。 FPGA 具有以下特点: 1. FPGA 芯片的规模越来越大,其单片逻辑门数已达数百万门。 所能实现的功能也越来越强,用 FPGA 设计, ASIC 电路用户不需要投片生产就能得到合用的芯片。 2. FPGA 可做其它全定制或半定制 ASIC 电路的试样片,并且它采用高速 CHMOS工艺,功耗低,可以与 CMOS、 TTL 电平兼容,它是 ASIC 电路中设计周期最短、开发费用最低、风险最小的器件之一。 3. FPGA 内部有丰富的触发器和 I/O 引脚,用户可以反复地编程、擦除、使用或在外围电路不动的情况下用不同软件实现不同的功能。 既能使数字系统适应柔性系统的需求(不同的配置实现不同的功能),又能随着市场需求的变化和技术的发展及时扩展,变更数字系统的功能,提高了电子产品的应变能力。 4. FPGA 的保密性好。 在某些场合下,根据要求选用防止反向技术的 FPGA 能很好的保护系统的安全性和设计者的知识产权。 5. FPGA 开发工具智能化,功能强大,软件包中有各种输入工具和仿真工具以及版图设计工具和编程器等全线产品,电路设 计人员在很短的时间内就可以完成电路的输入、编译、优化、仿真,直至最后芯片的制作。 可以使设计人员能集中精力进行电路设计,使产品快速推向市场。 6.电路设计人员使用 FPGA 进行电路设计时,软件易学易用。 正是如此, FPGA 应用前景广阔,尤其适合于新产品的研制。 模块化设计 FPGA 随着可编程技术的发展, FPGA 被广泛应用于电子设计的各个领域。 越来越多复杂第三章 系统需求分析 10 的系统的核心电路利用 FPGA 设计完成,这些复杂系统经常需要使用百万门加密卡的研制与加密算法的 FPGA 实现以上的大规模 FPGA 来设计。 另一方面,为了对市场需 求做出最迅速的反映,就要求这些电子产品的设计周期尽量缩短,只有以第一时间推出成熟稳定的产品,才能获得更大的市场份额。 于是一方面需要百万门以上的大规模 FPGA 以满足设计需要,另一方面需要在最短的时间内高质量的完成设计以满足市场需要,这两者出现了矛盾。 解决这个矛盾的唯一出路是投入更多的人力,进行并行工作、协同设计。 并行工作、协同设计在一般的工业生产中比较容易实现,例如生产一部汽车,可以在不同车间并行生产出汽车的各个配件,然后统一将这些配件组装起来即可。 如果每个零件的制造都能满足图纸的公差标准,那么每个零部件的 制造的关联就不是那么紧密,完全可以并行进行生产制造。 使制造每个零部件之间的联系尽量小,然后运用并行、协同工作方式相对独立的生产每个零部件,最后将这些零部件组合起来的工作方法就是一种模块化设计方法。 自顶向下设计 方 法 所谓自顶向下设计方法,简单地说,就是采用可完全独立于芯片厂商及其产品结构的描述语言,在功能级对设计产品进行定义,并结合功能仿真技术,以确保设计的正确性,在功能定义完成后,利用逻辑综合技术,把功能描述转换成某一具体结构芯片的网表文件,输出给厂商的布局布线器进行布布线。 布局布线结果还可反标回同 一仿真器,进行包括功能和时序的后验证,以保证布局布线所带来的门延时和线延时不会影响设计的性能。 自顶向下设计方法的优越性是显而易见的。 首先,由于功能描述可完全独立于芯片结构,在设计的最初阶段,设计师可不受芯片结构的约束,集中精力进行产品设计,进而避免了传统设计方法所带来的重新再设计风险,大大缩短了设计周期。 其次,设计的再利用得到保证。 目前的电子产品正向模块化发展,所谓模块化就是对以往设计成果进行修改,组合和再利用,产生全新的或派生设计,而自顶向下设计方法的功能描述可与芯片结构无关。 因此可以以一种 IP 的方式 进行存档,以便将来的重新利用。 第三,设计规模大大提高。 简单的语言描述即可完成复杂的功能,而不需要手工绘图。 第四,芯片选择更加灵活。 设计师可在较短的时间内采用各种结构芯片来完成同一功能描述,从而在设计规模、速度、芯片价格及系统性能要求等方面进行平衡,选择最佳结果。 目前,最为常用的功能描述方法是采用均已成为国际标准的两种硬件描述语言:VHDL 和 Verilog。 第三章 系统需求分析 11 自上而下设计方法 自上而下的设计方法是现代电子系统的新型设计策略,它从设计的总体要求出发,自上而下地逐步从系统数学模型的设计与仿真,到数据流级 的设计与仿真,选择系统设计方案,最后完成系统硬件的整体设计。 VHDL 的自上而下的设计方法不仅体现在它的基本结构由描述外视特性的实体与描述内视行为和结构的结构体构成,同一实体可以有一个以上的结构体,以便设计方案的选择,还体现在系统硬件设计过程的三个层次:行为级描述与仿真、 RTL 级描述与仿真、逻辑综合与门级仿真。 逻辑综合与所使用的逻辑综合工具有关,由逻辑综合优化工具生成具体的门级逻辑电路的 EDIF( Electronic Design Interchange Format)网表。 EDIF 网表是一种标准接口,它是一 个以 ASCII 字符为基础的中间互换格式,被大多数供应商提供的 CAE/CAD 系统所支持。 半导体制造厂基于这种网表生成 ASIC 芯片的制造工艺, FPGA 则基于这种网表生成用以配置 FPGA 芯片的位流文件。 这三种仿真贯穿系统硬件设计的全过程,从而可以在系统设计早期发现设计中存在的问题,与传统的自下而上的后期仿真相比大大缩短系统的设计周期,并且利于方案的综合评价与选取。 这是用 VHDL 语言设计系统硬件的最突出的优点。 VHDL 硬件描述语言 VHDL( Very high speed integrated circuit Hardware Description Language)硬件描述语言从高于逻辑级的抽象层次上描述硬件的功能、信号连接关系及定时关系。 VHDL 的设计流程如下图。 图 34 VHDL 的设计流程 VHDL 语言的基本结构 一个完整的 VHDL 语言程序通常包含实体 (Entity)、结构体( Architecture)、配置( Configuration)、包集合( Package)和库( Library)五个部分。 实体 实体说明部分是说明一个器件的外观视图,即从器件外部看到的器件外貌,其中包括器件的端口,同时也可以定义参数,并把参数从外部传入模块内部,主要用于描述所设计的系统的外部接口。 第三章 系统需求分析 12 结构体 结构体是描述一个器件的内部视图,是次级设计单元。 在其对应的初级设计单元实体说明被编译并且被并入设计库之后,它就可以单独地被并入该设计库中。 结构体描述一个设计的结构和行为,把一个设计的输入和输出之间的关系建立起来。 一个设计可以有多个结构,分别代表该器件的不同实现方案。 根据对一个器件设计由抽象到具体的过程,可把结构体的描述方式分为三个层次:行为描述方式、寄存器传输描述方式( RTL)和结构描述方式。 库 库是经编译后的实体、结构体、包集合和配置的集合。 使用库时总要在设计单元的前面予以说明。 一旦说明,库中的数据对该设计单元就是可见的,从而共享已经编译过的设计结果。 VHDL 语言中存在的库大致有 IEEE 库、 STD 库、 ASIC 厂家提供的库、用户定义的库和现行作业库。 包集合 包集合属库中的一个层次,是一种可编译的源设计单元。 它收集了 VHDL 语言中所用到的信号、常数、数据类型、函数和过程的说明等。 用户可以构造一个包集合,用以存放常数、数据类型、函数和过程,该包集合经编译后便自动加到 WORK 库中。 使用库中的包 集合时,在打开库后要用 USE 语句说明。 例如: LIBRARY IEEE; USE ; 配置 配置语句从一个库中为一个实体选择一个特定的结构体,是一种放在库中的被编辑单元,并有相应的配置名。 通过配置技术,可以选取多种不同的结构体,以便对一个设计任务采用仿真工具进行多种配置的性能实验。 另外,配置说明和规定的特性还可以用在多层描述中。 结构体的描述方式 在 VHDL 语言中,对结构体的三种描述方式从不同角度对硬件系统进行行为和功能的描述,体现了不同的建模 方法。 行为描述方式 行为描述是对系统的数学模型的抽象描述,它不考虑结构体是如何具体实现的。 在程序中可以采用算术运算、关系运算、惯性延时和传输延时等难以或不能进行逻辑综合的 VHDL 语句。 一般说,它主要用于系统数学模型的仿真或系统工作原理的仿真。 第三章 系统需求分析 13 RTL 描述方式 RTL 是真正可以进行逻辑综合的描述方式,它介于行为描述和结构描述之间。 通过对系统的寄存器和总线的描述来说明数据的传输方向,在仿真通过后利用逻辑综合工具产生门级网表,从而完成硬件设计。 结构描述方式 结构描述方式是在多层次的设计中,高层次的 设计模块调用低层次的设计模块,或直接用门电路设计单元来构造一个复杂的逻辑电路的描述方法。 它描述的是子元件及之间的连线。 它所描述的端口与硬件端口之间的对应关系要比行为描述的端口与硬件端口的对应关系更容易明白。 它能提高设计效率,可以将现有的设计成果方便地用到新的设计中去。 EDA 技术 简介 EDA 是电子设计自动化( Electronic Design Automation)缩写,是 90 年代初从 CAD(计算机辅助设计)、 CAM(计算机辅助制造)、 CAT(计算机辅助测试)和 CAE(计算机辅助工程)的概念发展而来 的。 EDA 技术是以计算机为工具,根据硬件描述语言HDL( Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。 典型的 EDA 工具中必须包含两个特殊的软件包,即综合器和适配器。 综合器的功能就是将设计者在 EDA 平台上完成的针对某个系统项目的 HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。 适配器的功能是将由综合器产生的王 表文件配置与指定的目标器件中,产生最终的下载文件,如 JED 文件。 第四章 系统详细设计 14 第四章 系统详细 设计 系统 功能描述 通常情况下 ,电子密码锁的具体设计要求为 :。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。