3第2章2 FPGACPLD基本结构及原理

2019-03-29 15:30

第二章FPGA基本概念 2.2 Cyclone II系列FPGA

1、Cyclone II系列FPGA概述

EP2C35F672C6,是Altera的DE2教育平台选用的Cyclone II系列FPGA。Cyclone II系列是低成本的FPGA,它将低成本FPGA的密度扩展到了68416个逻辑单元(LEs),从而可以在低成本FPGA上实现复杂的数字系统。

Cyclone II系列FPGA采用TSMC(台积电)的90nm工艺,与竞争对手采用的90nm工艺的FPGA相比,其性能高出60%而功耗减低一半,而其价格则几乎可以与ASIC产品竞争。优异的性价比使Cyclone II系列FPGA可以广泛地应用于汽车电子、消费电子、音/视频处理、通信以及测试测量等终端产品市场。

Cyclone II系列FPGA支持Altera公司的Nios II嵌入式软核处理器。Nios II具有灵活的可配置特性而且可以非常容易地实现各种外设的扩展。对于并行事务处理,可以在一个FPGA上放置多个Nios II软核,大大提高了处理器的效率,也方便多个小组同时开发,进一步加快了新产品的研发速度。

在数字信号处理方面,Cyclone II系列FPGA也具有明显的优势。Cyclone II系列FPGA可以内置多达150个18x18的硬件乘法器,片上大容量的M4K RAM以及经过专门优化的对外部存储器的高速存取特性,使它们非常适合于数字信号处理器或协处理器的应用场合。Altera公司提供的数字信号处理器IP核以及DSP Builder软件包使数字信号处理产品的开发非常容易。

Cyclone II系列主要性能见表2.2。

表2.2 Cyclone II系列FPGA的性能比较 特性 EP2C5 EP2C8 EP2C20 EP2C35 EP2C50 EP2C70 LE数量 4608 8256 18752 33216 50528 68416 M4K RAM块数量 26 36 52 105 129 250 RAM总量/位 11980165888 239616 483840 594432 1152008 0 内嵌乘法器数量 13 18 26 35 86 150 锁相环数量 2 2 4 4 4 4 可用最大I/O口数量 158 182 315 475 450 622 图2.6是Cyclone II系列FPGA的内部结构排列方式。

图2.6 Cyclone II系列内部结构示意图

Cyclone II系列器件主要由以行列形式排列的逻辑阵列块(Logic Array Block, LAB)、嵌入式存储器块及嵌入式乘法器组成,锁相环(PLL)为FPGA提供时钟,输入/输出单元(Input/Output Elements,IOEs)提供输入/输出接口逻辑。逻辑阵列、嵌入式存储器块、嵌入式乘法器、输入输出单元及锁相环之间可实现各种速度的信号互连。 2、逻辑单元

逻辑单元是Cyclone II系列FPGA逻辑的最小单元,它能够完成各种复杂的逻辑应用。一个逻辑单元的主要特性如下:

(1)4输入查找表相当于一个4输入的函数发生器,能够实现4变量输入的所有逻辑。(2)一个可编程寄存器。(3)一个进位链连接(Carry Chain Connection)。(4)一个寄存器链连接(Register Chain Connection)。(5)能够驱动所有可能的互连,包括本地互连、列间、行间、寄存器链以及直接互连。(6)支持寄存器打包。(7)支持寄存器反馈。

Cyclone II逻辑单元的结构如图2.7所示。

图2.7 Cyclone II逻辑单元的结构

每个逻辑单元(LE)都可以配置成D、T、JK或SR模式,每一个LE都有独立的数据输入(datal、data2、data3、data4)、清除(labclrl、labclr2、DEV-CLRn)、时钟(labclkl、labclk2)及时钟使能输入(labclkenal、labclkena2)。时钟网络、GPIO(General Purpose Input/Output,通用输入/输出)及内部逻辑都可以驱动寄存器的时钟及清除信号。内部逻辑及GPIO可以驱动时钟使能信号。用于组合逻辑时,查找表旁路掉寄存器而直接驱动输出。

每个LE有三个输出,可以用来驱动行、列布线,直接连接布线和本地布线。其中两个输出用来驱动行、列以及直接布线,一个输出用来驱动本地互连布线。查找表输出和寄存器输出可以完全独立地分别驱动三个输出中的两个,即用查找表驱动其中一个输出时,可以用寄存器的输出驱动另一个输出。由于这种做法可以让查找表和寄存器各自独立完成互不相干的功能,因此有效提高了器件的利用率。这种工作方式称作寄存器打包(Register Packing)。在寄存器打包模式下

工作时,LAB同步加载信号无效。

另外一种特殊的打包模式是把寄存器的输出反馈到同一逻辑单元的查找表的输入,也就是说,寄存器与同一逻辑单元的查找表打包。这个逻辑单元可以驱动被寄存的或未被寄存的查找表输出。

除上述的输入、输出之外,Cyclone II的逻辑单元还有一个进位链路输入和一个进位链路输出,这种LAB内的进位链路可以使同一个LAB中的逻辑单元级联起来。寄存器链路输出可以让同一个LAB中的查找表完成组合逻辑的任务,而用这个LAB中的寄存器可以完成移位寄存器的功能。这样可以提高LAB间互连的速度并节省布线资源。

LE有两种工作模式:普通模式和算术模式。将LE的六个输入(四个数据输入、进位输入和寄存器链输入)进行不同的处理可以实现不同的功能。LAB范围的信号(时钟输入、异步清除、同步清除、同步加载及时钟使能等信号)在两种工作模式下都是有效的。Quartus II软件通过参数化模块库(Library of Parameterized Modules,LPM)自动选择LE的工作模式,用户也可根据自己的应用来选择LE的工作模式,以提高设计的性能。

LE的普通工作模式如图2.8所示,其适用于通用逻辑以及组合逻辑的场合。在这种模式下,LE相当于一个4输入查找表,Quartus II编译器自动从data3或进位输入(Cin)中选择一个作为4输入查找表的输入。

图2.8 LE的普通工作模式

图2.9 LE的算术工作模式

LE的算术工作模式如图2.9所示,其适用于实现加法器、累加器、计数器和比较器。算术工作模式下的LE实际上是一个2输入查找表。算术模式下工作时,查找表输出可以是带寄存器的输出,也可以是不带寄存器的输出。 3、逻辑阵列块(LAB)

每一个LAB包括16个LE、LAB控制信号(清除、时钟、时钟使能、复位等)、LE进位链、寄存器进位链及LAB本地互连。LAB本地互连用以连接LAB内各个LE。寄存器链把LAB内一个LE寄存器的输出与相邻LE寄存器的输入连在一起。图2.10是Cyclone II系列的一个LAB的内部结构及可能的各种互连。

图2.10 LAB的结构

LAB本地互连可以驱动本LAB的LE,行互连、列互连及本LAB的LE的输出可以驱动本地互连。相邻的LAB、锁相环PLL、M4K RAM块、乘法器可以通过直接互连来驱动本地互连。直接互连减少了对列互连和行互连的占用,提高了使用的灵活性。每个LE可通过本地互连和直接互连驱动48个LE。图2.11是LAB互连的示意图。

图2.11 LAB互连示意图

LAB的控制信号主要有:2个时钟、2个时钟使能、2个异步清除、1个同步清除和1个同步加载。图2.12是LAB控制信号的示意图,其最多有7个控制信号同时可用。同步加载与寄存器打包不能同时使用。每个LAB最多可以有4个非全局控制信号,其他的控制信号只有是全局控制信号的才可用。

同步清除和同步加载信号是针对整个LAB范围而言的,即这两个信号对整个LAB范围内的所有寄存器有效。每个LAB可以使用2个时钟信号和2个时钟使能信号,时钟信号和时钟使能信号是同时使用的。例如,当一个LE选用了一个时钟信号labclkl时,意味着它同时选择了labclkenal。如图2.12所示,LAB行时钟和LAB本地互连共同产生LAB的控制信号。


3第2章2 FPGACPLD基本结构及原理.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:毛泽东思想和中国特色社会主义理论体系概论复习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: