《数字电路EDA设计》课件第二章 典型的CPLD fpga芯片结构_第1页
《数字电路EDA设计》课件第二章 典型的CPLD fpga芯片结构_第2页
《数字电路EDA设计》课件第二章 典型的CPLD fpga芯片结构_第3页
《数字电路EDA设计》课件第二章 典型的CPLD fpga芯片结构_第4页
《数字电路EDA设计》课件第二章 典型的CPLD fpga芯片结构_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章

典型的cpldfpga芯片结构ALTERA公司CPLD芯片CPLD传统CPLD的主要缺点在于:当器件内部的宏单元个数超过512个,或者门密度超过几千门时,宏单元之间的互连线规模将呈指数级增长,限于CPLD器件的面积约束,全局布线结构的CPLD内部密度有限。采用了新的结构,仍然以LABs为主要结构,但布线方法摒弃了以前的全局布线结构,而是采用了行列布线结构内部还集成了FLASH存储器,这使得MAXII系列芯片本身就具备了存储功能MAXII传统CPLD的乘积项结构与MAXII系列芯片对比传统的乘积项结构MAXII系列芯片各款芯片的引脚数目与封装基于LUT的LE结构这种结构以逻辑单元LE(Logicelements)为基础单位,每个LE又包括一个4输入查找表与一个寄存器MAXII系列芯片的逻辑阵列由LAB(逻辑阵列块)构成,每个LAB包括10个逻辑单元,每个逻辑单元都能实现一部分用户期望的逻辑功能。MAXII系列芯片芯片的内部结构MAXII系列芯片提供了一个全局时钟网络,该网络包括的全局时钟线为整个芯片内部的各部分提供时钟,不作时钟时可作诸如复位、预置位、输出使能等全局控制信号。注意:上图中并未给出FLASH存储器的位置,因为不同型号芯片的FLASH位置不同。EPM240器件的FLASH块位置在器件左侧,EPM570、EPM1270和EPM2210器件的FLASH块在左下区域。FLASH存储空间被划分为指定的配置间CFM,CFM提供了SRAM配置信息,使得MAXII系列芯片器件上电时能自动配置逻辑功能。MAXII系列芯片内置FLASH中的一部分,约8192位的存储空间被划分给用户作为用户存储器使用,这一区域称为UFM(UserFlashMemory),UFM可以与其附近的3行LAB相接,由这些LAB进行读写。MAXII系列芯片的底层布局

LAB局部互连能够驱动同一LAB的所用LE。LAB局部互连线的信号来自于整个芯片的行列互连线与各LE输出信号的反馈。通过直接互连的形式,与LAB相邻的其他LAB也能驱动LAB的局部互连线。直接互连的形式体现了高性能与灵活的特点,能够显著减轻整个芯片行列互连线的负担。借助于局部互连与直接互连,每个LE能够驱动30个LE。每个LAB能在同一时刻发出10种控制信号给其内部的逻辑单元。这些控制信号包括两条时钟信号、两条时钟使能信号、两条异步复位信号、一条同步复位信号、一条异步预置信号、一条同步预置信号以及加/减控制信号。例如当需要实现计数器功能时,一般需要这些信号中的同步预置与同步复位信号。

每个逻辑阵列块包括10个LE(逻辑单元),逻辑单元进位链、LAB控制信号、LAB局部互连线、一个查找表链以及寄存器互连链。每个LAB可含多达26个专用输入信号,还包括由同一LAB中其他逻辑单元的输出反馈回来的10个反馈信号。内部互连线用于同一LAB内部各LE之间的信号传递。查找表链用于将同一LAB的相邻LE的LUT输出信号进行互连传递。寄存器互连链将某一LE寄存器的输出与相邻LE寄存器进行互连传递。ALTERA公司的EDA开发软件QuartusII能够充分利用这些进位链自动将逻辑功能配置到相应的LE内。逻辑阵列块

每个逻辑阵列块包括10个LE(逻辑单元),逻辑单元进位链、LAB控制信号、LAB局部互连线、一个查找表链以及寄存器互连链。每个LAB可含多达26个专用输入信号,还包括由同一LAB中其他逻辑单元的输出反馈回来的10个反馈信号。内部互连线用于同一LAB内部各LE之间的信号传递。查找表链用于将同一LAB的相邻LE的LUT输出信号进行互连传递。寄存器互连链将某一LE寄存器的输出与相邻LE寄存器进行互连传递。ALTERA公司的EDA开发软件QuartusII能够充分利用这些进位链自动将逻辑功能配置到相应的LE内。逻辑阵列块

每个逻辑阵列块包括10个LE(逻辑单元),逻辑单元进位链、LAB控制信号、LAB局部互连线、一个查找表链以及寄存器互连链。每个LAB可含多达26个专用输入信号,还包括由同一LAB中其他逻辑单元的输出反馈回来的10个反馈信号。内部互连线用于同一LAB内部各LE之间的信号传递。查找表链用于将同一LAB的相邻LE的LUT输出信号进行互连传递。寄存器互连链将某一LE寄存器的输出与相邻LE寄存器进行互连传递。ALTERA公司的EDA开发软件QuartusII能够充分利用这些进位链自动将逻辑功能配置到相应的LE内。逻辑阵列块LAB的内部结构注意,LAB的时钟信号及其时钟使能信号一定是同时发挥作用的,例如,若LAB中某一个LE要用到时钟信号labclk1,则对应的时钟使能信号labclkena1必须有效。LAB的控制信号逻辑单元LE虽然是MAXII系列芯片最小的逻辑模块,却为实现逻辑功能提供了很多重要特性。MAXII系列芯片的逻辑单元结构MAXII系列芯片的逻辑单元结构,从图中可看出,逻辑单元内的可编程寄存器能够配置为DFF、TFF、JKFF或SRFF。每个寄存器都有异步预置信号、时钟信号与时钟使能信号、复位信号以及异步加载信号。其中寄存器时钟信号与复位信号可由全局信号、通用I/O引脚或任何逻辑单元驱动,而时钟使能信号、异步加载数据由通用I/O引脚或逻辑单元驱动。异步加载的数据来自于逻辑单元的data3输入。对于组合逻辑功能而言,查找表的输出将寄存器旁路,而直接送到逻辑单元的输出端。每个逻辑单元的三个输出端分别独立地输出到局部互连布线、行互连线、列互连线。由于三个输出可相互独立,因而在某些场合将发生查找表与寄存器同时输出数据的现象,这一现象也说明MAXII系列芯片可以将同一逻辑单元的查找表与寄存器用于不同功能的实现,这一特点与以往芯片相比显著提高了寄存器的利用效率。用户FLASH存储区

用户FLASH存储区(UFMblock)是MAXII系列芯片的一大特色,这种内部FLASH存储器的功能类似于串行EEPROM,它允许用户存储宽度最高为16位、容量为8192位的固定数据。UFM允许任何逻辑单元访问,下图给出了UFM的接口信号。UFM与LAB的接口电路

UFM与LAB的接口电路XILINX公司Virtex-5系列FPGA123可配置逻辑块CLB输入输出模块IOBBlockRAM

Virtex-5系列芯片均提供了数量巨大的CLB,如XC5VLX330芯片,有两万多个CLB。

每个CLB又包含了两个Slice。下图是CLB内的Slice排列示意图,其中的CIN是来自邻近的CLB的进位信号,COUT是送往其他CLB的进位输出信号。两个Slice相互独立,均可通过开关矩阵(SwitchMatrix)与全片的通用布线阵列(GeneralroutingMatrix)相连。CLB内部的Slice是真正实现逻辑功能的模块,每个Slice内部包括4个结构相同的部分,这四个模块分别用A~D区分。Slice又分为两种:SLICEM与SLICEL。二者的区别在于Slice是否支持用分布式RAM存储数据和能否寄存器进行数据移位。图2-13给出了SLICEM内部A部分的结构。若将该图左侧的DPRAM/SPRAM/SRL/LUT/RAM/ROM模块改为只具有LUT/ROM功能的模块,并将WE信号去除之后,即为SLICEL的结构。由于SLICEM支持用分布式RAM存储数据,即将数据分布存储于SLICEM内的各个查找表中,因此SLICEM适合于需要存储大量数据的场合。分布式RAM可以有很多种形式,比如单端口或双端口的32(或64或128)x1位RAM、四端口32x2位RAM、四端口64x1位RAM单端口、单端口256x1位RAM等。分布式RAM需要同步操作,通常可以用同一Slice中的一个存储元件或触发器实现同步写。通过合理设置这个触发器的位置,可以将触发器的延迟缩短到触发器的时钟输出范围内,从而提高分布式RAM的性能。多个CLB之间的连接关系及其坐标安排

上图右侧部分是寄存器,SR、CE、CLK是Slice内部四个寄存器的置位/复位、时钟使能和时钟信号,这些寄存器都可以被设置为同步或异步置位与复位。上图左侧存储部分可以以三种形式配置ROM:ROM64x1、ROM128x1、ROM256x1,显然如果配置为ROM64x1只需要某一个存储模块,而ROM128x1需要二个,ROM256x1需要Slice内部全部的四个存储模块。ROM内容在每次器件配置时加载。每个Slice除了能实现四个6输入布尔函数外,还能实现两个7输入布尔函数或一个8输入布尔函数。怎样实现两个7输入布尔函数或一个8输入布尔函数?利用多路选择器实现7输入或8输入布尔函数Virtex-5FPGA的输出模块支持业界大多数的标准接口,如LVCMOS、LVTTL、HSTL、SSTL、GTL、PCI等。与CLB包含两个Slice类似,Virtex-5采用了一种称为Tile的结构,每个Tile包含两个IOB,每个IOB外部有ILOGIC/ISERDES单元与OLOGICO/OSERDES单元,内部有输入缓冲INBUF、输出缓冲OUTBUF、焊盘PAD和三态SelectIO驱动器。I/OTile示意图IOB内部结构图OLOGIC结构图Virtex-5系列芯片IOB的ILOGIC/ISERDES可以配置为D触发器或锁存器,也可以配置为IDDR模式。IDDR是指输入双倍数据速率(DDR)寄存器,ILOGIC电路中有专用寄存器来实现,实用时需要通过例化IDDR单元来使用此功能。OLOGIC由两个主要模块组成,一个用于配置输出数据通路,另一个用于配置三态控制通路。这两个模块也可以配置为D触发器、锁存器或DDR模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论