《一种基干FPGA的便携式逻辑分析仪的设计与实现.docx》由会员分享,可在线阅读,更多相关《一种基干FPGA的便携式逻辑分析仪的设计与实现.docx(59页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 摘要 逻辑分析仪是 一 种常用的数据信号测试仪器。在各种数字系统软硬件的调试 测试,检查故障以及性能分析中,它可以用于检测数字电路工作中的逻辑信号, 并储存后用波形等方式直观地 表示出来,便于设计人员进行检测,从而分析在电 路设计中出现的错误。在数字电路的调试中,通常需要同时测试多路信号的波形 , 分析它们之间的逻辑关系。示波器一般只能够检测两路信号波形,在许多数字系 统的研究中,往往需要同时观察多路数据信号的时序关系,而有时信号不是周期 性的,只使用示波器往往无法完整的了解信号之间的关系,因而要使用逻辑分析 仪。逻辑分析仪是数据信号分析仪器中最有效、最典型的仪器之一。但是从上世 纪七十年代
2、逻辑分析仪出现至今,它的普及程度却一直不高,百分之三十以上的 数字系统设计人员不使用逻辑分析仪 ,主要的原因之一在于它的价格比较高。 本文针对目前的卡式虚拟逻辑分析仪必须与电脑配合使用的缺点,利用 FPGA 技术实时性、可重构性以及稳定性好的优势并结合常用的 VGA 显示技术,使用 Verilog HDL 硬件描述语言设计实现了一种简易的逻辑分析仪。此逻辑分析仪支持 三种采样模式,十种不同的采样频率;并且具有六个采样通道,每一个通道均支 持上升沿或下降沿两种触发方式。整个系统采用黑盒测试方法,对所设计的各项 功能进行了详细的测试。测试证明,该逻辑分析仪达到了预期的目标,具有成本 低,速度快,方
3、便携带的特点。 关键词 :逻辑分析仪; FPGA; VHDL; VGA Abstract Logic analyzer is widely used digital test equipment. It applies to computer software and other digital systems, hardware debugging, troubleshooting, performance analysis process. It can monitor the hardware circuit when the logic level, and stores, with
4、an intuitive graphical way to express it, to facilitate detection, analysis of the circuit design error. In the digital circuit debugging, often multiple waveforms to test and analyze the logic. Ordinary oscilloscope can only test two-way signal waveform. Digital circuits in many studies and experim
5、ents, often need to simultaneously view multiple digital signals, timing relationships, and sometimes the signal is not periodic, only the observation of the oscilloscope can not be tiie complete understanding of the relationship between the signal and therefore need to use logical analysis Miriam.
6、Logic analyzer data field is the most effective test instruments, the most representative instruments.However, since 1973 the birth of the first logic analyzer so far, the logic analyzer rate is still low, more than 30% of the number of designers are not using logic analyzer, because of its high pri
7、ce. This design is in view of the current card virtual logic analyzer significant shortcomings, using real-time, reconfigurable and good reliability of FPGA technology is designed and implemented a portable logic analyzer. This logical analyzer supports three kinds of modes, 10 kinds of different sa
8、mpling frequency. With six sampling channel to show results, and each channel can support rising and falling edge of the two kinds of trigger modes. After completing the entire system, black-box testing method was adopted to test the various functions of the system in detail. The results show that t
9、his logical analyzer is fully achieved the desired objectives. KEY WORDS: logic analyzer; FPGA;VGA 目录 m W . ii Abstract . ii g m . iii 胃绪论 . 1 1.1 研究相关背景 . 1 1.2 国内外研究现状及发展趋势 . 2 1.3 论文主要工作及创新 . 3 1.4 论文结构 . 4 第二章相关技术概述 . 5 2.1 FPGA 技术介绍 . 5 2.1.1FPGA 技术的特点 . 6 2.1.2 FPGA 技术的优势 . 8 2.1.3 FPGA 的设计流程
10、. 9 2.2 逻辑分析仪的介绍 . 11 2.2.1 逻辑分析仪的结构 . 13 2.3 VGA 技术介绍 . 15 第三章设计开发环境 . 18 3.1 软件平台 . 18 3.1.1 Quartos II 8.0 设计流程 . 18 3.1.2 Verilog HDL 5 更件描述语言 . 22 3.2 硬件平台 . 22 第四章基于 FPGA 的逻辑分析仪详细设计 . 25 4.1 功能需求 . 25 4.2 系统设计总体结构 . 26 4.2.1 系统问步模块 . 26 4_2.2 采样模块 . 30 4.2.3 VGA 显示控制模块 . 38 4.3 雜综 4 . 43 第五章系统
11、实现与性能测试 . 45 5.1 系统的实现 . 45 5.2 系统的测试 . 47 5.2.1 测试系统的搭建 . 47 5.2.2 系统的测试步骤 . 47 5.3 测试分析及系统性能评估 . 48 第六章总结与展望 . 49 6.1 . 49 6.2 展望 . 49 #教 _ . 51 麵 . 53 iv 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 第一章绪论 1.1 研究相关背景 从上个世纪 70 年代以来,随着电子计算机、高速数字信号处理、大规模集成 电路以及可编程逻辑器件的高速发展,导致数字电路系统的设计、开发和检测的 任务越来越复杂。在数字系统中需要处理的各种信息一般用离
12、散二进制表示,通 常用 0表示低电平,表示高电平,一组数据由多个二进制位组成,此领域 就是通常所说的数据域;数据域测试技术就是在该领域的测试技术,简称为数据 域测试 1。 在进行数据域的检测时,通常情况下容易忽视实际的具体波形只注意数据信 号之间的时序关系和逻辑关系,一般数字系统设计师如果要从大量的数据流中分 辨出那些随机、隐蔽、无规则的错误将会非常困难,因此,需要使用一些特殊的 检测仪器才能快速、实时、正确的处理这些错误,如逻辑分析仪、数字像生成器、 仿真器等 2。这些仪器中逻辑分析仪 ( Logic Analyzer)是最常用和最有代表性的 数据域检测仪器。 逻辑分析仪的主要功能就是在设定
13、时钟下采集被测系统的相关数字信号并且 显示出来,便于测试人员对时序正误进行判断。逻辑分析仪和示波器不同之处在 于,它的电压值没有具体显示出来,并且只能显示 出两个电压即逻辑 0 和 1 , 所以必须设定参考电压,被测试的信号与参考电压通过比较器进行对比,如果高 于参考电压就为高电平 ( 即逻辑 1) , 同样,若低于参考电压则为低电平(即逻 辑0) ,高电平与低电平相结合组成数字波形。举个例子比如使用一个逻辑分析 仪检测被测信号时,假如将比较电平设置为 2V, 则逻辑分析仪每个时钟采样一个 点,如果采样点高于 2V 就为逻辑 1 ,若低于或者等于 2V 的就为逻辑 0 ,然 后将这些 0 和
14、1 的逻辑信号连接形成一个波形,用户通过参考这个波形,就能够 很便利的将异常之处找出来。总而 言之,逻辑分析仪是一种对数字系统的软硬件 进行分析的测试仪器,通常用在对数字系统逻辑关系的分析,它成功的让复杂数 字系统的检测和故障诊断问题得到有效解决。 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 1.2 国内外研究现状及发展趋势 1973 年惠普公司和 BIOMATION 公司成功研制出逻辑分析仪 3,从那之后, 随着电子计算机、信号处理等技术的飞速发展,逻辑分析仪已发展了四代:第一 代只具有简单的测试功能和表示方式,速度较慢并且功能比较简单,状态分析仪 和定时分析仪分别成为两个不同仪器;
15、第二代的特点是微小独立化,在测试与显 示方面得到了很大程度的进步,并将状态逻辑分析仪和定时逻辑分析仪整合到了 一起,更便于分析数字系统的软硬件;第三代则速度更高、存储量更大、通道数 量更多,并且还增加了注重分析系统的性能的分析能力;最后的第四代产品的逻 辑分析仪则成为性能强大功能全面的逻辑分析系统 4。 随着数字系统分析监测仪器在生产生活中的大量应用,逻辑分析伩拥有着良 好的市场前景。同时国内对于逻辑分析仪的应用也在不断提高,但是国内生产厂 家在逻辑分析仪的生产制造上发展却比较缓慢,原因主要是这种仪器的使用比较 复杂,价格也相对比较高,而且,国外的企业一直占领着此类伩器的市场主导地 位,而国内
16、此类仪器厂商占据的市场份额比较小,从而影响了国内用户应用的普 及。逻辑分析仪的生产厂家主要来自美国,这些企业拥有逻辑分析伩生产制造的 许多核心技术,并占据主要的市场份额 5。虽然国内也有几家企业和高校研究单位 可以研究制造台式逻辑分析仪,但比较大一部分由于其功能较单一、性能指标较 低,难以进行大规模实际应用。国内生产的插卡逻辑分析仪或外接模块,必须配 合 计算机使用,此类设备利用计算机辅助资源,补充代替逻辑分析仪的重要部分, 协同完成其功能。此类产品的价格相对较低,对于逻辑分析伩在中国市场的普及 有促进的作用。 逻辑分析仪今后的可能发展情况有下面几点: 第一,与网络结合,这样使远程操作和控制成
17、为可能,并且所得的数据能够 网上共享,有利于专家在线上对一些用户进行教学指导; 第二,与其他设备相结合起来,组成模块化的综合逻辑分析系统,包含高效 的逻辑分析仪、示波器以及数据信号发生器等; 第三,对更多总线结构支持,将来使用的逻辑分析仪应当能够支持计算机中 新的 I/O 总线,从而使用户可以分析和检测 PC 主机或高性能的计算机系统; 2 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 第四,能够同时对多处理器结构进行检测、调试和验证。 第五,操作使用更加人性化。让设计人员更容易上手使用,显示更加的直观。 逻辑分析仪的发展应更加易用、易携带,因而本文研究设计基于 FPGA 的便 携式逻辑
18、分析仪是有创新意义和发展潜力的。 依据硬件上结构功能的不同设计方式,现在在市场上的逻辑分析仪可大体上 分为独立式逻辑分析仪和卡式虚拟逻辑分析仪。前者又可以叫做单机型,它将需 要的软硬件全部集成到一台单独的设备中 “ ,卡式虚拟逻辑分析仪不同之处在于必 须结合计算机来使用,显示部分也不在主机上 6。 经过多年的发展,目前独立式的逻辑分析仪产品已经非常成熟,有些产品的 采样频率可以达到 8GHz,通道数可以达到到三百个甚至更多,而数据存储深度也 可以达到很高,但是独立式逻辑分析仪通常价格却比较昂贵,普通的个人用户很 难承担其几万甚至几十万的价格。 而卡式虚拟逻辑分析仪则与独立式的不同,它通过接入计
19、算机,能够以比独 立式小的多的成本的到同样的功能。可是卡式逻辑分析仪的也存在缺点:第一, 它的使用高度依赖于计算机,因而在无法在没有计算机的情况下使用。其二,卡 式虚拟逻辑分析仪虽然便于携带,但是整个卡式芯片只是负责信号的采集并发送 到计算机,信号的主要处理部分在计算机上的软件,它是利用软件来代替逻辑分 析仪的功能,故称之为虚拟逻辑分析仪 7。但在运行的速度上采用软件相对纯硬件 来说要慢些。 1.3 论文主要工作及创新 本设计针对目前卡式逻辑分析仪的独立性差缺点,利用 FPGA 技术和基于 VGA的液晶显示器来实现一个片上的易携 带的逻辑分析仪。此设计,主要有如下 几点优势。 首先解决了目前卡
20、式逻辑分析仪高度依赖电脑的缺点,只需要一块带 VGA 接 口的卡板,加上 VGA 显示器就可以实现便携式逻辑分析仪,真正实现了便携的特 点。 其次,由于 FPGA 技术具有速度快,资源占用少,比较灵活,成本低等特点, 因此采用 FPGA 技术实现的整个系统相对与卡式虚拟逻辑分析仪具有速度快,实 3 一种基于 FPGA 的便携式逻辑分析伩的设计与实现 时性高等特点。 再者,整个系统具有多种功能,能够配置不同的触发方式和触发模式,并且 能够配置十种不同的采样频率。同时还可以扩展通道,满足实用需求。 本论文对目前卡式逻辑分析仪必须配合电脑使用的缺点,基于 FPGA 技术与 VGA 显示技术设计实现了
21、一种便携式的逻辑分析伩。此逻辑分析仪支持三种采样 模式,十种不同采样频率;并且具有六个采样通道,所有的通道均支持上升沿触 发和下降沿触发。设计实现后利用黑盒测试方法,对所整个系统的各个功能进行 了测试。测试证明,该设计可以达到预定的功能,拥有成本低,速度快,易于携 带的优点。 1.4 论文结构 论文共分六章。 第一章为绪论,综合介绍论文的选题背景及国内外研究现状。 第二章介绍了本次设计所涉及的相关技术的介绍,详细介绍了 FPGA、 逻辑分 析仪、 VGA 显示技术的发展,关键技术。 第三章介绍了本次设计所使用的硬件及软件平台。 第四章介绍了逻辑分析仪模块设计的总体思路,以及各部分的组成。还有对
22、 各个模块极其子模块的设计实现进行了详细的说明。 第五章为本系统的实际实现及测试情况。 第六章为总结与展望,指明了当前研究工作中不足与待完善的成方,指出当 前系统的缺陷与应用局限性,并对本设计以后的改进深入研究提出构想。 4 一种基于 :FPGA 的便携式逻辑分析仪的设计与实现 第二章相关技术概述 2.1 FPGA 技术介绍 在早期,可编程的逻辑器件仅有三类,包括可编程的只读存储器 (PROM)、 紫 外线可擦除的只读存储器 ( EPROM)和电可擦除的只读存储器 ( EEPROM) 8。 因为结构的限制,这些器件仅能进行逻辑功能的简单实现。之后出现了可编程逻 辑器件 ( PLD),可以完成更
23、多更复杂的逻辑功能。 PLD 能够用乘积和这种形式来 描述组合逻辑功能,因为 PLD 通常由 与 门阵列和 或 门阵列构成 9,所 有的组合逻辑基本上都能用 与 和 或 的组合来描述。 在这段时间主要的逻辑器件有可编程的阵列逻辑 ( PAL)和通用阵列逻辑 (GAL)。PAL 是现场可编程的器件,由可以编程的 与 平面和固定的 或,平 面组成,它的生产制造工艺主要有反熔丝、 EPROM 和 EEPROM 技术 1Q。另外一 类逻辑器件可编程逻辑阵列 ( PLA)的结构则更加灵活,它也是由一个 与 平面 和 或 平面组成,他们之间不同的是两个平面的连接关 系为可编程的 11。 PLA 器件可分为
24、现场可编程和掩膜可编程的 2。然后在 PAL 基础上,又出 现了通用阵列逻辑 GAL, 它利用了 EERPOM 工艺,从而使电可擦除、改写得以实 现,它的输出结构为可编程的逻辑宏单元 13,因此其编程的灵活性较强,直至今 曰仍然有人在使用。此类早期的 PLD 器件的共同一个特点是能实现速度特征相对 较好的逻辑功能,可是其结构比较简单使它们仅可以实现规模较小的电路,为了 解决这一缺陷, 80 年代中期, Altera 和 Xilinx 两家公司分别推出了与 PAL 结构 类似的扩展型 CPLD (Complex Progra- mmable Logic Device)和与标准门阵列类似 的 FP
25、GA (FieldProgrammable Gate Array) 14,它们都拥有较高集成度应用范围很 广,并逻辑单位与组合结构非常灵活。他们兼容了 GAL 和 PLD 的特点,编程比 较灵活,可以实现大规模的集成电路 15。与其它 ASIC 相比,它们的设计开发过 程周期较短,设计人员使用的开发工具更先进,研发生产的成本较低,质量比较 稳定,标准设计不需要测试,并且能实时在线验证。因而他们在产品设计原型和 生 产中被大量采用。基本上绝大部分的可编程逻辑器件、应用门阵列和一定规模 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 的集成电路都可使用 FPGA 和 CPLD 器件。 Alte
26、ra 公司推出的 Cyclone 系列 FPGA 在现在的市场上价格低廉且性能较好。 Cyclone 系列器件为许多诸如工业制造、消费市场、计算机和通信等方面的市场应 用,提供了很多优华的功能集, 本次设计时使用的 FPGA 芯片就是 Altera 的 Cyclone 系列。第一代的 Cyclone FPGA 在 2002 年 12 月推出,之后己经共生产了约数百万片,在 Altera 公 司历史上销售最快。 Cyclone 系列 FPGA 基于成本进行了大量的优化,另外, Cyclone 系列FPGA 还集成了许多复杂的功能,并且支持目前的许多种单端 I/O 标 准。 Cyclone系列 F
27、PGA 拥有 2 4 个锁相环 ( PLL)能够得到多个输入出与层次的 时钟结构,以及设计复杂的管理时钟电路。因为这些结构功能在市场有性能好价 格低的特点,让FPGA 能够作为 ASIC (专用集成电路)灵活和低成本的代替方案。 Altera Cyclone系列 FPGA 在目前市场上性价比较优且价格较低。 2.1.1 FPGA 技术的特点 FPGA 即现场可编程门阵列芯片,一类可编程 ASIC。 它与传统的 PLD 不同。 它是由组成阵列的逻辑功能块构成,与半定制的门阵列的通常结构有些相似,并 且通过可编程的联接布线来联接此类逻辑功能块。可以这么说, :FPGA 是结合了门 阵列的通用结构与
28、 PLD 的现场可编程的特点在一起的新器件, FPGA 可以通过用 户的现场编程来完成逻辑功能块之间的互连,所以,它把现代 VLSI 逻辑集成的 优点和苛编程器件设计的优点相结合,比较灵活,生产及上市速度快,从而让设 计人员在 FPGA开发系统软件的帮助下,直接依据系统要求定义及修改逻辑功能, 让含有多达数千门的数字系统设计通过 FPGA 技术可以在较短的时间内完成,因 此,无论从设计制作成本,还是以产品上市速度而言,在应用数量少、种类多的 情况下,使用 FPGA可优于利用掩膜设计制作的 ASIC。 从 FPGA 出现至今,不 管是从集成程度和功能的方面,还是从种类系列和规模等方面都获得了高速
29、的发 展。现在 FPGA 的集成门数量已经达到了数百万门。 1. FPGA 的基本特点: FPGA 使用逻辑单元阵列 ( Logic Cell Any)这种技术,它的里面由可配置逻 6 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 辑模块 ( CLB, Configurable Logic Block)、 内部连线 ( Literconnect)和输入输出 模块 ( IOB, Input Output Block)三个部分组成。 FPGA 的基本特点主要有: (1) 利用 FPGA 芯片代替设计 ASIC 芯片,设计人员不用投片制造就可以获 得想要的芯片 16; (2) FPGA 芯片可
30、以做制造 ASIC 芯片的试样片: (3) FPGA 芯片内拥有大量的触发器和 I/O 引脚; (4) FPGA 在 ASIC 设计中,可以缩短设计的时间周期,降低研发的成本, 且设计的风险很小; (5) FPGA 釆用了高速 CHMOS 工艺,功耗较低,能与 CMOS、 TTL 电平兼 容叼。 因此, FPGA 芯片是设计少量系统时增强集成度和稳定性的很好解决办法。 FPGA 是通过存在片内 RAM 中的程序来配置其工作状态的 17。因而,工作时 需对片内的 RAM 编程。用户可依据需要的工作模式而使用对应的编程方法。 FPGA在上电后芯片将 EPROM内存放的程序信息读入片上的 RAM内
31、, FPGA 在设置完成了以后,就可以进行工作了。断电后,片内的逻辑关系就不存在了, FPGA又成为空片。所以, FPGA 才可以重复编程。 FPGA 的编程不需使用专用的 编程器,只需使用通用的 EPROM、 PROM 编程器就可 18。如果要修改 FPGA 功 能时,只要换片 EPROM 就可以达到目的。如此,同一片 FPGA 不相同的编程数 据,就可出现不同的电路功能。所以, FPGA 的使用非常灵活。 FPGA 如下四种配置方式: (1) 并行主模式为一片 FPGA 加一片 EPROM19; (2) 主从模式可使用单片 PROM 对几片 FPGA 进行编程: (3) 串行模式能使用串行
32、 PROM 编程 FPGA; (4) 外设模式则可把 FPGA 当成 CPU 的外部设备来用,使用 CPU 来对 它进行编程。 2、 FPGA 的优点。 FPGA 芯片可以说是特别的 ASIC 芯片,但它不仅拥有 ASIC 的优势,还有以 下三个优点。 伴随超大规模集成电路技术水平的快速发展,在一个芯片的内部能够集成 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 的晶体管数量越来越多,因而 FPGA 芯片的集成规模也随之越大,一块芯片内部 逻辑门的数量己可以达到百万门,芯片功能也非常丰富,因此能够完成系统的集 成。 FPGA芯片在上市前均经过检测,避免了设计生产中可能存在的风险和花 费,
33、用户只要在实验室内即可利用硬件设备和软件工具完成所需芯片的设计工作。 因此,FPGA 的需要的成本比较少,避免了许多额外的成本。 用户想要设计不同的功能,只要通过抹去之前的程序,或在相同的外围设 备使用其他的软件。因此,若通过 FPGA 进行样片试制,则可以快速进入占领市 场。FPGA 类器件提供了丰富的软件,其中有多种编程输入仿真工具等,设计人员 可以快速的完成设计系统的输入、编译、仿真、优化 2(),到最终芯片的生产制作。 在电路需要改动时,就更表现出 FPGA 的优势。设计人员即使没有深入学习过 1C 集成电路的专业知识,也可以采用 FPGA 设计电路时, FPGA 设计的软件很容易 掌
34、握,能够让厂商迅速投入到芯片设计中,让产品以最快速度上市。 2.1.2 FPGA 技术的优势 FPGA 的技术优势可以通过与其它的可编程逻辑器件进行对比来了解,如与与 可编程逻辑器件 CPLD 的对比如下。 虽然 FPGA 与 CPLD 都属于 ASIC 芯片,但因为 CPLD 和 FPGA 在组成方 式上的不同,使得它们又有各自的特点: CPLD 适于实现设计算法以及组成逻辑, FPGA 适于实现时序的逻辑。或者说, FPGA 更适于有大量触发器的结构 , CPLD 则更适于触发器不多但乘积项很多的结构 21。 FPGA的集成程度相比比 CPLD更高,因而布线的结构和逻辑功能会更加复 杂。
35、FPGA 在编程设计上比 CPLD 更加灵活。 CPLD 的编程设计主要是对故定不变 片内连线的逻辑块进行修改,但是 FPGA 的编程则是利用了对片内连线的修改; CPLD 的设计在逻辑快下,而 FPGA 的设计在逻辑门下。 CPLD 的编程存储方式与 FPGA 不同。 CPLD 编程使用的是 EEPRAM 或 FLASH 技术,不需要外部存储器芯片 22。 FPGA 的编程内容则需要保存在芯片外 的存储器上。 8 一种基于 FPGA 的便携式逻辑分析仪的设计与实现 从编程数据的存储方式上看, CPLD 的程序数据主要是采用 EEPROM 或 FLASH储存,因此其编程的次数没有限制,并且在切断了电源后仍然不会失去程 序。 CPLD可以分成在系统编程和在编程器上编程两种。 FPGA 的编程则很多是 采用 SRAM 的,因此在系统没有供电之后编程信息就会消失,在通电后,需要把 编程信息从芯片外部存储器再次输入 SRAM, 它的优势是能在工作中进行快速编 程,并能够进行重复多次编程,因此可以完成动态的配置。 在一般情况下, CPLD 的功耗比 FPGA 更大,这点在芯片的集成程度越高的 时候表现越明显。所以综合 CPLD 和 FPGA 的上述特点,特别是逻辑规模上的特 点,我在设计逻辑分析的硬件部分时选择了 Altera公司的 Cyclonell系列 FPGA EP2C