基于fpga的频率计设计与实现毕业设计(编辑修改稿)内容摘要:

算机辅助设计)是计算机发展的初级阶段,是高级 EDA 系统的重要组成部分。 它利用计算机的图形 编辑、分析和存储等能力,协助工程师设计电子系统的电路图、印制电路板和集成电路板图。 采用二维图形编辑与分析,主要解决电子线路设计后期的大量重复性工作,可以减少设计人员的繁琐重复劳动,但自动化程度低,需要人工干预整个设计过程。 这类专用软件大多以微机为工作平台,易于学用,设计中小唐 山 学 院 毕 业 设 计 5 规模电子系统可靠有效,现仍有很多这类专用软件被广泛应用于工程设计。 80 年代初期, EDA 技术开始设计过程的分析,推出了以仿真(逻辑模拟、定时分析和故障仿真)和自动布局与布线为核心的 EDA 产品,这一阶段的 EDA 已把三维图形技术、窗口技术、计算 机操作系统、网络数据交换、数据库与进程管理等一系列计算机学科的最新成果引入电子设计,形成了 CAE—计算机辅助工程。 也就是所谓的 EDA技术中级阶段。 其主要特征是具备了自动布局布线和电路的计算机仿真、分析和验证功能。 其作用已不仅仅是辅助设计,而且可以代替人进行某种思维。 CAE 这种以原理图为基础的 EDA 系统,虽然直观,且易于理解,但对复杂的电子设计很难达到要求,也不宜于设计的优化。 所以, 90 年代出现了以自动综合器和硬件描述语言为基础,全面支持电子设计自动化的 ESDA(电子系统设计自动化),即高级 EDA阶段、也就 是目前常说的 EDA。 过去传统的电子系统电子产品的设计方法是采用自底而上的程序,设计者先对系统结构分块,直接进行电路级的设计。 这种设计方式使设计者不能预测下一阶段的问题,而且每一阶段是否存在问题,往往在系统整机调试时才确定,也很难通过局部电路的调整使整个系统达到既定的功能和指针,不能保证设计一举成功。 EDA 技术高级阶段采用一种新的设计概念:自顶而下的设计程序和并行工程( Concurrent engineering)的设计方法,设计者的精力主要集中在所要电子产品的准确定义上, EDA 系统去完成电子产品的系统级至物 理级的设计。 此阶段 EDA 技术的主要特征是支持高级语言对系统进行描述,高层次综合( High Level Synthesis)理论得到了巨大的发展,可进行系统级的仿真和综合。 图 11 给出了上述三个阶段的示意图 [6]。 图 11 EDA发展阶段示意图 唐 山 学 院 毕 业 设 计 6 基于 EDA 的 FPGA/CPLD 开发 我国的电子设计技术发展到今天 将面临一次更大的突破 ,即 FPGA/CPLD ( Field Programmable Gate Array,现场可编程门阵列 /Complex Programmable Logic Device,复杂可编程逻辑器件 ) 在 EDA 基础上的广泛应用。 从某种意义上说,新的电子系统运转的物理机制又将回到原来的纯数字电路结构,但却是一种更高层次的循环,它在更高层次上容纳了过去数字技术的优秀部分,对 MCU 系统是一种扬弃,在电子设计的技术操作和系统构成的整体上发生了质的飞跃。 如果说 MCU 在逻辑的实现上是无限的话,那么 FPGA/CPLD 不但包括了 MCU 这一特点,而且可以触及硅片电路线度的物理极限,并兼有串、并行工作方式,高速、高可靠性以及宽口径适用性等诸多方面的特点。 不但如此,随 EDA 技 和 FPGA/CPLD 在深 亚微米领域的进军,它们与 MCU, MPU, DSP, A/D, D/A, RAM 和 ROM 等独立器件间的物理与功能界限已日趋 模糊。 特别是软 /硬 IP 芯核 ( 知识产权芯核 ; Intelligence Property Core,一种已注册产权的电路设计 ) 产业的迅猛发展,嵌入式通用及标准FPGA 器件的呼之欲出,片上系统 ( SOC) 已经近在咫尺。 FPGA/CPLD 以其不可替代的地位及伴随而来的极具知识经济特征的 IP 芯核产业的崛起,正越来越受到业内人士的密切关注 [7]。 FPGA/CPLD 简介 FPGA 和 CPLD 都是高密度 现场可编程逻辑芯片,都能够将大量的逻辑功能集成于一个单片集成电路中,其集成度已发展到现在的几百万门。 复杂可编程逻辑器件 CPLD 是由 PAL( Programmable Array Logic,可编程数组逻辑 ) 或 GAL( Generic Array Logic,通用数组逻辑 ) 发展而来的。 它采用全局金属互连导线,因而具有较大的延时可预测性,易于控制时序逻辑;但功耗比较大。 现场可编程门阵列 ( FPGA)是由掩膜可编程门阵列 ( MPGA) 和可编程逻辑器件二者演变而来的,并将它们的特性结合在一起,因此 FPGA 既有门阵列的高逻辑 密度和通用性,又有可编程逻辑器件的用户可编程特性。 FPGA 通常由布线资源分隔的可编程逻辑单元 ( 或宏单元 )构成数组,又由可编程 I/O 单元围绕数组构成整个芯片。 其内部资源是分段互联的,因而延时不可预测,只有编程完毕后才能实际测量。 CPLD 和 FPGA 建立内部可编程逻辑连接关系的编程技术有三种 :基于反熔丝技术的器件只允许对器件编程一次,编程后不能修改。 其优点是集成度、工作频率和可靠性都很高,适用于电磁辐射干扰较强的恶劣环境。 基于 EEPROM 内存技术的可编程逻辑芯片能够重复编程 100次以上,系统掉电后编程信息也不会丢 失。 编程方法分为在编程器上编程和用下载电缆编程。 用下载电缆编程的器件,只要先将器件装焊在印刷电路板上,通过 PC, SUN 工作站、 ATE( 自动测试仪 ) 或嵌入式微处理器系统,就能产生编程所用的标唐 山 学 院 毕 业 设 计 7 准 5V, 或 逻辑电平信号,也称为 ISP( In System Programmable) 方式编程,其调试和维修也很方便。 基于 SRAM 技术的器件编程数据存储于器件的 RAM区中,使之具有用户设计的功能。 在系统不加电时,编程数据存储在 EPROM、硬盘、或软盘中。 系统加电时将这些编程数据实时写入可编程器件,从而实现板 级或系统级的动态配置。 用 FPGA/CPLD 进行开发的优缺点 我们认为 ,基于 EDA技术的 FPGA/CPLD器件的开发应用可以从根本上 决 MCU所遇到的问题。 与 MCU 相比, FPGA/CPLD 的优势是多方面的和根本 性的 : (1)编程方式简便。 FPGA/CPLD 产品越来越多地采用了先进的 边界扫描测试 ( BST) 技术 ( 由联合测试行动小组, JTAG 开发 ) 和 ISP( 在系统配置编程方式 )。 在 +5V 工作电平下可随时对正在工作的系统上 FPGA/CPLD 进行全部或部分地在系统编程,并可进行所 谓菊花链式多芯片串行编程,对于 SRAM 结构的FPGA,其下载编程次数几乎没有限制 ( 如 Altera 公司的 FLEXIOK 系列 )。 这种编程方式可轻易地实现红外编程、超声编程或无线编程,或通过电话线远程在线编程。 这些功能在工控、智能仪器仪表、通讯和军事上有特殊用途。 (2)高速。 FPGA/CPLD 的时钟延迟可达纳秒级,结合其并行工作方式,在 超高速应用领域和实时测控方面有非常广阔的应用前景。 (3)高可靠性。 在高可靠应用领域, MCU 的缺憾为 FPGA/CPLD 的应用留 下了很大的用武之地。 除了不存在 MCU 所特有的复 位不可靠与 PC 可能跑飞 等固有缺陷外, FPGA/CPLD 的高可靠性还表现在几乎可将整个系统下载于同 一芯片中,从而大大缩小了体积,易于管理和屏蔽。 (4)开发工具和设计语言标准化,开发周期短。 由于 FPGA/CPLD 的集成规 模非常大,集成度可达数百万门。 因此, FPGA/ CPLD 的设计开发必须利用功 能强大的EDA 工具,通过符合国际标准的硬件描述语言 ( 如 VHDL 或 VerilogHDL) 来进行电子系统设计和产品开发。 由于开发工具的通用性、设计语言 的标准化以及设计过程几乎与所用的 FPGA/ CPLD 器件 的硬件结构没有关 系,所以设计成功的各类逻辑功能块软件有很好的兼容性和可移植性,它几乎 可用于任何型号的 FPGA/ CPLD中,由此还可以 以 知识产权的方式得到确认,并 被注册成为所谓的 IP 芯核,从而使得片上系统的产品设计效率大幅度提高。 由 于相应的 EDA 软件功能完善而强大,仿真方式便捷而实时,开发过程形象而 直观,兼之硬件因素涉及甚少,因此可以在很短时间内完成十分复杂的系统设 计,这正是产品快速进入市场的最宝贵的特征。 美国 TI 公司认为,一个 ASIC 80 %的功能可用 IP 芯核等现成逻辑合成。 EDA 专家预言 ,未来的大系统的 FPGA/ CPLD 设计仅仅是各类再应用逻辑与 IP 芯核的拼装,唐 山 学 院 毕 业 设 计 8 其设计周期最少仅数分钟。 (5)功能强大,应用广阔。 目前, FPGA/ CPLD 可供选择范围很大,可根 据不同的应用选用不同容量的芯片。 利用它们可实现几乎任何形式的数字电路 或数字系统的设计。 随着这类器件的广泛应用和成本的大幅度下降, FPGA/ CPLD 在系统中的直接应用率正直逼 ASIC 的开发。 同时, FPGA/CPLD 设计方法也有其局限性。 这主要体现在以下几点 : (1)FPGA/CPLD 设计软件一般需要对电路进行逻辑综合优化 ( Logic Synthesis amp。 Optimization) ,以得到易于实现的结果,因此,最终设计和原始设计之间在逻辑实现和时延方面具有一定的差异。 从而使传统设计方法中经常采 用的一些电路形式( 特别是一些异步时序电路 ) 在 FPGA/CPLD 设计方法中并不适用。 这就要求设计人员更加了解 FPGA/CPLD 设计软件的特点,才能得到优化的设计。 (2)FPGA 一般采用查找表 ( LUT) 结构 , ANDOR 结构或多路 选择器结构,这些结构的优点是可编程性,缺点是时延过大,造成原 始设计中同步信号之间发生时序偏移。 同时,如果 电路较大,需要经过划分才 能实现,由于引出端的延迟时间,更加大了延迟时间和时序偏移。 时延问题是 ASIC 设计当中常见的问题 , 要精确地控制电路的时延是非常困难的,特别是 在像 FPGA/CPLD 这样的可编程逻辑当中。 (3)FPGA/CPLD 的容量和 I/O 数目都是有限的,因此,一个较大的电路必 须经过逻辑划分 ( Logic Partition) 才能用多个 FPGA/CPLD 芯片实现,划分算法 的优劣直接影响设计的性能。 (4)由于目标系统的 PCB 板的修改代价很高,用户一般希望能够在固定引出端分配的前提下对电路进行 修改。 但在芯片利用率提高,或者芯片 I/O 引出端很多的情况下,微小的修改往往会降低芯片的布通率。 (5)早期的 FPGA 芯片不能实现内存、模拟电路等一些特殊形式的电路。 最新的一些 FPGA 产品集成了通用的 RAM 结构。 但这种结构要么利用率不 高,要么不完全符合设计者的需要。 这种矛盾来自于 FPGA 本身的结构局限性, 短期内很难得到很好的解决。 (6)尽管 FPGA 实现了 ASIC 设计的硬件仿真,但是由于 FPGA 和门阵列、 标准单元等传统 ASIC 形式的延时特性不尽相同,在将 FPGA 设计转向其它 ASIC 设计时,仍然存在 由于延时不匹配造成设计失败的可能性。 针对这个问 题,国际上出现了用 FPGA 数组对 ASIC 进行硬件仿真的系统。 这种专用的硬件仿真系统利用软硬件结合的方法,用 FPGA 数组实现了 ASIC 快速原型,接入系统进行测试。 该系统可以接受指定 的测试点,在 FPGA 数组中可以直接观测(就像软件模拟中一样),所以大大 提高了仿真的准确性和效率。 唐 山 学 院 毕 业 设 计 9 4 频率计的测频原理及方案选择 数字频率计工作原理概述 数字频率计的设计原理实际上是测量单位时间内的周期数。 这种方法免去了实测以前的预测,同时节省了划分频段的时间,克服了原来 高频段采用测频模式而低频段采用测周期模式的测量方法存在换挡速度慢的缺点。 采用一个标准的基准时钟,在单位时间 ( 1s) 里对被测信号的脉冲数进行计数,即为信号的频率。 由于闸门的起始和结束时刻对于信号来说是随机的,将会有一个脉冲周期的量化误差。 进一步分析测量准确度:设待测信号脉冲周期为 Tx, 频率为Fx,当测量时间为 T=1s 时,测量准确度为& =Tx/T=1/Fx。 由此可知直接测频法的测量准确度与信号的频率有关:当待测信号频率较高时,测量准确度也较高,反之测量准确度也较低。 因此直接测频法只适合测量频率较高的信号,不能 满足在整个测量频段内的测量精度保持不变的要求。 为克服低频段测量的不准确问题,采用门控信号和被测信号对计数器的使能信号进行双重控制,大大提高了准确度。 当门控信号为 1 时,使能信号并不为 1,只有被测信号的上升沿到来时,使能端才开始发送有效信号,两个计数器同时开始计数。 当门控信号变为 0 时,使能信号并不是立即改变,而是当被测信号的下一个上升沿到来时才变为 0,计数器停止计数。 因此测量的误差最多为一个标准时钟周期。 计算每秒钟内待测信号脉冲个数。 这就要求计数使能信号 testen 能产生一个 1秒脉宽的周期信号,并对 频率计的每一 个十进制 计数器 account 的 ENA 使能端进行同步控制。 当 testen 为高电平时,允许计数;低电。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。