fpga-cpld讲义及试验指导(清华大学电子系)

上传人:n**** 文档编号:37148110 上传时间:2018-04-07 格式:DOC 页数:34 大小:8.79MB
返回 下载 相关 举报
fpga-cpld讲义及试验指导(清华大学电子系)_第1页
第1页 / 共34页
fpga-cpld讲义及试验指导(清华大学电子系)_第2页
第2页 / 共34页
fpga-cpld讲义及试验指导(清华大学电子系)_第3页
第3页 / 共34页
fpga-cpld讲义及试验指导(清华大学电子系)_第4页
第4页 / 共34页
fpga-cpld讲义及试验指导(清华大学电子系)_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《fpga-cpld讲义及试验指导(清华大学电子系)》由会员分享,可在线阅读,更多相关《fpga-cpld讲义及试验指导(清华大学电子系)(34页珍藏版)》请在金锄头文库上搜索。

1、 1 可编程逻辑器件与应用专题 讲义 附实验指导书清华大学电子工程系 2 第一章 绪论1.1 可编程 ASIC 综述 为特定的产品或应用而设计的芯片被称为专用集成电路 ASIC(Application Specific Integrated Circuits) ,除了全定制的专用集成电路外,目前有五种半定制的元件,可实现 ASIC 的要求,它们是: *可编程逻辑器件(PLD) *复杂可编程逻辑器件(CPLD) *现场可编程门阵列(FPGA) *门阵列(Gate Array) *标准单元(Standard Cell) 在这些器件中,尤其是前三种器件的出现,使得电子系统的设计工程师利用相应的 ED

2、A 软件, 在办公室或实验室里就可以设计自己的 ASIC 器件,其中近几年发展起来的 CPLD 和 FPGA 格外引人 注目。这三种器件都具有用户可编程性,能实现用户需要的各种专门用途,因此被称作可编程专用集 成电路。半导体制造厂家可按照通用器件的规格大批量生产这种集成电路,作为一种通用集成电路, 用户可以从市场上选购,再通过设计软件编程实现 ASIC 的要求。由于这种方式对厂家和用户都带来 了好处而受到欢迎,因此发展特别迅速,已经成为实现 ASIC 的一种重要手段。 随着半导体技术的迅速发展,从八十年代开始,构造许多电子系统仅仅需要三种标准电路:微处 理器,存储器和可编程 ASIC。电子系统

3、设计的这场革命是从 70 年代开始的,当时存储器已经作为标 准产品进入市场,而 80 年代的微处理器也成为一种标准产品。值得注意的是,微处理器和存储器作为 电子系统的两个主要模块,一直都是可编程的。但是组成电子系统的各种控制逻辑仍然需要大量的中 小规模通用器件。直到近十年来,随着可编程逻辑器件的出现,才给电子系统的控制逻辑提供了可编 程的灵活性。而可编程门阵列作为一种高密度,通用的可编程逻辑器件与它的开发系统一起为更多的 电子系统逻辑设计确定了一种新的工业标准。越来越多的电子系统设计工程师用 CPLD 或 FPGA 作为 电子系统设计的第三个模块来实现一个电子系统。 CMOS 半导体技术的不断

4、发展推动了电子系统逻辑设计的这一变革。人们历来认为 CMOS 速度太 慢,不能满足高性能系统设计的需要,很多设计只能用一次可编程(OTP)的双极型可编程逻辑器件 (PLD)来完成。而现在许多 CMOS 的可编程逻辑器件实际上已达到或超过双极型的性能,同时还具 有低功耗、可编程和高集成度等吸引人的优点。 目前可编程 ASIC 正朝着为设计者提供系统内可再编程(或可再配置)的能力方向发展,即可编 程 ASIC 器件不仅要具有可编程和可再编程能力,而且只要把器件插在系统内或电路板上,就能对其 进行编程或再编程,这就为设计者进行电子系统的设计和开发提供了最新的实现手段,而在以前这是 不可想象的。采用系

5、统内可再编程(ISP)技术,使得系统内硬件的功能可以像软件一样被编程来配置, 从而可以实时地进行灵活和方便的更改和开发。这种称为“软”硬件的全新设计概念,使得新一代电 子系统只有极强的灵活性和适应性,它不仅使电子系统的设计和产品性能的改进、扩充变得十分简易 和方便,而且使电子系统只有多功能性的适应能力,从而可以为许多复杂的信号处理技术提供新的思 路和方法。 随着可编程器件规模的增加,使器件变得越来越复杂,对器件作全面彻底测试的要求也就越来越 高,而且越来越重要。表面安装的封装和电路板制造技术的进步,使得电路板变小变密,这样一来, 传统的测试方法,例如外探针测试法和“钉床”测试夹具法都难于实现。

6、结果由于电路板简化所节约 的成本,很可能被传统测试方法代价的提高而抵消掉。 20 世纪 80 年代联合测试行动组 JTAG(Joint Test Action Group)开发了 IEEE1149.1-1990 边界扫 描测试技术规范。这个边界扫描测试(BST)结构提供了有效地测试引线间隔致密的电路板上零部件 的能力。 你可以使用 BST 结构测试引脚连接而不必使用物理测试探针,而且可以在器件正常工作时捕获功 能数据。器件的边界扫描单元能够迫使逻辑追踪引脚信号,或是从引脚或器件核心逻辑信号中捕获数 3 据。强行加入的测试数据串行移入边界扫描单元,捕获的数据串行移出并在器件外部同预期的结果进 行

7、比较。JTAG 标准提供了板级和芯片级的测试。通过定义输入输出引脚、逻辑控制函数和指令,所 有 JTAG 的测试功能部仅需一个四线或五线的接口及相应的软件即能完成。图 1-1 举例说明了边界扫 描测试法的概念。核心 逻辑 核心 逻辑 串行数据输入 JTAG 器件 1 JTAG 器件 2 串行数据输出 IC 引脚 图 1-1 JTAG 边界扫描测试法 可编程逻辑器件规模的不断发展,使其可以实现电子系统的高度集成,为了快速准确地设计复杂 的电子系统,必须采用计算机自顶向下的设计和综合工具。综合工具一般包括从原理图和高层描述工 具、逻辑仿真器,到底层综合工具的一系列软件包。底层的综合工具对设计进行逻

8、辑描述,并执行逻 辑优化、器件映射、布局布线的网表优化,从而产生最终的设计结果。对于简单的设计,采用原始图 输入或布尔方程输入是比较合适的。但对于复杂系统的设计,这两种输入方法变得繁琐而复杂并容易 产生错误,而必须考虑高层次的设计输入方法。因此很多综合工具支持硬件描述语言(HDL) ,寄存 器转换语言(RTL)或有限状态机(FSM) 。 高层综合工具可以采用高层的行为描述,如 VHDL 或编程语言。行为描述语言不需要说明一个设 计具体采用何种方式实现。高层综合包括选择特定的结构模板,然后执行资源分配,寄存器分配和定 时。所以在高层设计期间,设计者基本是在速度和资源之间所取舍。例如,相同的行为设

9、计,当速度 要求不高时,可以采用完全的流水线方式的逻辑设计来实现。从一个满意的行为描述开始的设计,使 设计者能够有更广泛的选择余地,来找出哪一个最适合特定的实现环境。高层设计方法的另一个主要 优点是更容易理解和维护。 目前,电子设计自动化软件不再是简单的 CAD 或 CAT,已经发展到“电子系统设计自动化 (EDA) ” ,软件平台也已从小型机覆盖到工作站到高性能微机,一般都包含了符合 IEEE-1076 标准的 VHDL 高层综合工具,这些都为可编程 ASIC 的设计带来了极大的方便。特别对于中小规模系统的集 成,可编程逻辑器件成为首选的方案。这也是可编程逻辑器件得到广泛应用的原因之一。1.

10、2 可编程逻辑器件的分类 可编程逻辑器件包括一个未配置的逻辑单元阵列,此阵列可以编程实现所需的逻辑功能,并通过 可编程互连接到所要求的输入、输出。这些逻辑单元可以是门、反相器、触发器或较大的宏单元,并 且有它自身的可编程局部互连系统。可编程互连是由可编程的开关阵列和连接逻辑单元的固定信号线 组成。可编程逻辑器件有许多不同的分类方法,下面主要介绍四种: 1.2.1 从互连特性上分类 从互连特性上,可编程逻辑器件结构可以分为确定型和统计型两大类。确定型的 PLD 包括 PROM、PLA、PAL、FPLA、GAL、EPLD 和 EEPLD。它们所提供的互连结构每次都用相同的互连线 实现布线。所以这类

11、可编程逻辑器件的延时特性常常可以从数据手册上直接查到,而不需通过设计软 件来确定。 统计型的器件主要是现场可编程门阵列(FPGA) 。FPGA 的设计软件每次完成相同的功能却给出 不同的布线结果,所以称为统计型的结构。因此在电路设计时必须允许设计者限制功能中关键路径的 时序变化,确保它们不超出系统的技术要求。 1.2.2 从可编程特性上分类: 目前为用户提供的编程手段主要有四种: 4 *一次编程熔丝或逆熔丝; *EPROM 结构,即紫外线擦除电报编程存储单元(UVEPROM)采用紫外线互补金属氧化半导体 (UVCMOS) ; *电擦除和再编程存储单元。一类是 EEPROM,为电擦除式互补金属氧

12、化半导体(EECMOS) ;另 一类是结构与 UVEPROM 类似,但采用电擦除的闪速存储单元(FLASH MEMORY) ; *基于静态存储器(SRAM)的编程结构。 所以根据编程能力可以将它们分为两大类,一类是不可以再编程的,确定型的 PAL 和统计型采用 逆熔丝的 FPGA 都是不可再编程的;另一类是可再编程的,确定型的 GAL 和统计型的采用 SRAM 的 FPGA 属于此类。 1.2.3 从器件容量上分类 由于可编程逻辑器件本身结构上和半导体生产工艺的不断改进和提高,器件的密度不断增加,性 能亦不断提高,目前可编程逻辑器件的容量已达到百万门以上。从容量上对可编程逻辑器件的分类是 将复

13、杂的可编程逻辑器件(CPLD)和现场可编程门阵列(FPGA)统称为高容量可编程逻辑器件 (HCPLD) 。 1.2.4 从结构的复杂程度上分类 从结构上对可编程逻辑进行分类是最常用的方法,而且各类可编程逻辑器件的开发系统都是针对 其结构来设计的,了解和掌握可编程逻辑器件的结构对合理、有效地选用开发软件来设计可编程逻辑 器件就很重要。从结构上可将可编程逻辑器件分为以下三类: *简单可编程逻辑器件(PLD) ; *复杂可编程逻辑器件(CPLD) ; *可编程门阵列(FPGA) 。 5 第二章 可编程逻辑器件的结构和特点2.1 概述 可编程逻辑器件(PLD)是一个逻辑电路,可由用户编程来实现特定的逻

14、辑功能。许多 PLD 器件 的功能已经或多或少变成工业标准,即可以像标准 74 系列中小规模器件那样。设计人员可以按照产品 手册,根据速度、功耗、成本进行选择,并能从不同的厂家购买到。而且,PLD 器件还提供了标准 74 系列器件无法提供的可编程功能,用户可以将一些中小规模器件的功能集成到一个或几个 PLD 中,极 大的简化了印制板的设计,因此 PLD 成为最早实现可编程 ASIC 的器件。2.2 PLD 的结构 PLD 的主要部分由两个逻辑阵列构成,一个与阵和一个或阵。输入到 PLD 的信号首先通过与阵, 形成输入信号的组合,每组与项称为布尔代数的最小项或乘积项,这些乘积项在或阵中进行逻辑或

15、后 由输出宏单元输出。输入信号的反码由输入缓冲器产生,PLD 的布线由阵列实现,所以只要逻辑功能 能够放进 PLD 器件,布线就能够成功。 PLD 器件的与或阵列结构可以有效地利用硅片的面积,对于逻辑设计也非常方便。因为任何布尔 函数都可以表示为最小项的逻辑表达式,而这正是 PLD 器件的结构。基于与或阵的 PLD 有三种基本 类型,由哪个阵列可编程来区分这三种器件: 可编程只读存储器PROM:与阵固定,或阵可 编程 可编程阵列逻辑PAL,GAL:与阵可编程,或 阵固定 可编程逻辑阵列PLA:与阵、或阵都可编程图 2-1 是 PLA 的结构示意图,图中的表示可编程的 熔丝连接。PROM、PAL

16、 等的结构和 PLA 基本相同,只是 可编程的阵列不同,不同的具体型号的输出结构和输出电 平也略有区别,有的器件具有三态输出、寄存器输出、反 馈输入特性,进一步增强了器件的功能。下表列出了 PAL 器件的编号方法,具体特性请参考器件手册或相关资料。表 21 常用 PAL 器件编号方法结构代码含义器件编号H L P R V高电平输出有效 低电平输出有效 输出电平可编程 带寄存器输出 单元乘积项数目不同或宏单元输出PAL10H8 PAL16L8 PAL16P8 PAL16R8 PAL20V8例如,编号 PAL16H8 的 PAL 器件表示有最多可以有 16 个输入端,8 个输出端,输入输出端口可 组合编程,输出高电平有效。2.3 CPLD 的结构 PLD 器件的共同缺点是逻辑阵列规模小,每个器件仅相当于几十个等效门,不适用于较复杂的逻 辑电路的设计,并且也不能完全杜绝编程数据的非法抄袭。随着集成电路工艺的发展,PLD 的规模越 来越大,已经发展到百万门级的复杂可编程逻辑器件 CPLD(Complex Programmable Lo

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 电子/通信 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号