大规模可编程逻辑器件教学课件PPT.ppt_第1页
大规模可编程逻辑器件教学课件PPT.ppt_第2页
大规模可编程逻辑器件教学课件PPT.ppt_第3页
大规模可编程逻辑器件教学课件PPT.ppt_第4页
大规模可编程逻辑器件教学课件PPT.ppt_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

第2章大规模可编程逻辑器件 gal genericarraylogic通用阵列逻辑 相关专业名词 eda electronicdesignautomation电子设计自动化 pld programmablelogicdevice可编程逻辑器件 cpld complexprogrammablelogicdevice复杂可编程逻辑器件 epld erasableprogrammablelogicdevice可擦除可编程逻辑器件 fpga fieldprogrammablegatearray现场可编程门阵列 asic applicationspecificintegratedcircuit特定用途集成电路 pal programmablearraylogic可编程阵列逻辑 可编程逻辑器件的定义 逻辑器件 用来实现某种特定逻辑功能的电子器件 最简单的逻辑器件是与 或 非门 74ls00 74ls04等 在此基础上可实现复杂的时序和组合逻辑功能 可编程逻辑器件 pld programmablelogicdevice 器件的功能不是固定不变的 而是可根据用户的需要而进行改变 即由编程的方法来确定器件的逻辑功能 2 1可编程逻辑器件概述 数字电路课程的回顾 使用中 小规模器件设计电路 74 54系列 编码器 74ls148 译码器 74ls138 比较器 74ls85 计数器 74ls193 移位寄存器 74ls194 数字电路课程的回顾 采用中小规模器件的局限电路板面积很大 芯片数量很多 功耗很大 可靠性低 提高芯片的集成度设计比较困难 能方便地发现设计错误电路修改很麻烦 提供方便的修改手段pld器件的出现改变了这一切 pld出现的背景 电路集成度不断提高ssi msi lsi vlsi计算机技术的发展使eda技术得到广泛应用设计方法的发展自下而上 自上而下用户需要设计自己需要的专用电路专用集成电路 asic applicationspecificintegratedcircuits 开发周期长 投入大 风险大可编程器件pld 开发周期短 投入小 风险小 pld器件的优点 集成度高 可以替代多至几千块通用ic芯片极大减小电路的面积 降低功耗 提高可靠性具有完善先进的开发工具提供语言 图形等设计方法 十分灵活通过仿真工具来验证设计的正确性可以反复地擦除 编程 方便设计的修改和升级灵活地定义管脚功能 减轻设计工作量 缩短系统开发时间保密性好 管脚数目 208个电源 3 3v i o 2 5v 内核 速度250mhz内部资源4992个逻辑单元10万个逻辑门49152bit的ram 可编程逻辑器件的发展历程 70年代 80年代 90年代 prom和pla器件 pal器件 gal器件 fpga器件 epld器件 cpld器件 内嵌复杂功能模块的sopc pld的发展趋势 向高集成度 高速度方向进一步发展最高集成度已达到400万门向低电压和低功耗方向发展 5v 3 3v 2 5v 1 8v 更低内嵌多种功能模块ram rom fifo dsp cpu向数 模混合可编程方向发展 大的pld生产厂家 最大的pld供应商之一fpga的发明者 最大的pld供应商之一isp技术的发明者提供军品及宇航级产品 pld器件的分类 按集成度 低密度prom eprom eeprom pal pla gal只能完成较小规模的逻辑电路高密度 已经有超过400万门的器件epld cpld fpga可用于设计大规模的数字系统集成度高 甚至可以做到soc systemonachip 按集成度 pld 分类 pld器件的分类 按结构特点 基于与或阵列结构的器件 阵列型prom eeprom pal gal cpldcpld的代表芯片如 altera的max系列基于门阵列结构的器件 单元型fpga pld器件的分类 按编程工艺 熔丝或反熔丝编程器件 actel的fpga器件体积小 集成度高 速度高 易加密 抗干扰 耐高温只能一次编程 在设计初期阶段不灵活sram 大多数公司的fpga器件可反复编程 实现系统功能的动态重构每次上电需重新下载 实际应用时需外挂eeprom用于保存程序eeprom 大多数cpld器件可反复编程不用每次上电重新下载 但相对速度慢 功耗较大 数字电路的基本组成 任何组合电路都可表示为其所有输入信号的最小项的和或者最大项的积的形式 时序电路包含可记忆器件 触发器 其反馈信号和输入信号通过逻辑关系再决定输出信号 pld的逻辑符号表示方法 与门 乘积项 prom结构 与阵列为全译码阵列 器件的规模将随着输入信号数量n的增加成2n指数级增长 因此prom一般只用于数据存储器 不适于实现逻辑函数 eprom和eeprom 用prom实现组合逻辑电路功能 实现的函数为 固定连接点 与 编程连接点 或 pla结构 pla的内部结构在简单pld中有最高的灵活性 两个阵列均可编程 pal结构 与阵列可编程使输入项增多 或阵列固定使器件简化 或阵列固定明显影响了器件编程的灵活性 anbncn anbn ancn bncn 用pal实现全加器 gal结构 gal器件与pal器件的区别在于用可编程的输出逻辑宏单元 olmc 代替固定的或阵列 可以实现时序电路 逻辑宏单元 olmc gal器件的olmcoutputlogicmacrocell 每个olmc包含或阵列中的一个或门组成 异或门 控制输出信号的极性d触发器 适合设计时序电路4个多路选择器 输出使能选择 反馈信号选择 或门控制选择 输出选择 2 2复杂可编程逻辑器件 cpld 基于乘积项的可编程逻辑阵列 cpld大都采用各种分区阵列结构 每个区域内部相当于一个小规模的pld 各区域之间通过可编程全局互连总线连接 构成较大规模的cpld器件 1 max7000系列器件的基本结构 max7000系列器件主要由2 16个逻辑阵列块lab logicarrayblock 2 16个i o控制模块和一个可编程互连阵列pia programmableinterconnectarray 三部分构成 2 max7000系列器件的逻辑宏单元结构 max7000系列器件中的逻辑宏单元是器件实现逻辑功能的主体 它主要由逻辑阵列 乘积项选择矩阵和可编程寄存器三个功能块组成 每一个宏单元可以被单独地配置为时序逻辑或组合逻辑工作方式 2 max7000系列器件逻辑宏单元结构 续1 逻辑阵列功能模块每个lab有16个共享扩展项 每一个共享乘积项可以被lab内任何一个或全部宏单元使用和共享 以便实现复杂的逻辑函数 2 max7000系列器件逻辑宏单元结构 续2 逻辑阵列功能模块除共享乘积项外可使用并联扩展乘积项实现复杂逻辑函数 此时 最多允许20个乘积项直接传送到逻辑宏单元的 或 逻辑中 其中5个乘积项是由宏单元本身提供的 15个并联扩展项是从同一个lab中相邻宏单元借用的 2 max7000系列器件逻辑宏单元结构 续3 乘积项选择矩阵功能模块该模块接收来自逻辑阵列传送给本逻辑宏单元的各个乘积项 经过选择后 一部分经或门形成组合逻辑函数的输出 一部分作为控制信号 传送到可编程寄存器功能块 作为寄存器的置位 复位 时钟和时钟使能信号 可编程寄存器功能模块由可编程配置寄存器和时钟选择多路选择器 快速输入选择多路选择器 复位选择多路选择器 寄存器旁路选择多路选择器等组成 对寄存器的工作方式进行灵活配置 3 max7000系列器件的i o控制模块 i o控制块允许每个i o引脚单独被配置为输入 输出或双向工作方式 所有i o引脚都有一个三态缓冲器 三态缓冲器的使能控制信号来自一个4选1多路选择器 通过它可以选择使用两个全局的输出使能信号之一 或者是地 gnd 电平 或者是电源 vcc 电平作为三态缓冲器的使能信号 4 max7000系列器件的pia 器件上的所有的lab是通过在可编程互连阵列 pia 上布线 以相互连接构成所需的逻辑 pia这个全局总线是一种可编程的通道 它可以把器件中任何信号源连接到任何一个目的地 器件中的所有专用输入 i o引脚和逻辑宏单元输出都连接到pia 而由pia将这些信号传送到器件的各个地方 只有每个lab各自需要的信号才布置从pia到lab的连线 2 3现场可编程门阵列 fpga 2 3 1fpga的基本工作原理 基于查找表法的sram原理 查找表的基本原理 n个输入的逻辑函数需要2的n次方的容量的sram来实现 一般多个输入的查找表采用多个逻辑块级连的方式 查找表的基本原理 n个输入的逻辑函数需要2的n次方的容量的sram来实现 一般多于输入的查找表采用多个逻辑块级连的方式 2 3 2flex10k系列器件的基本结构 flex10k系列器件是工业界第一个嵌入式pld系列器件 它采用了sarm制造工艺和灵活逻辑单元阵列flex flexiblelogicelementmatrix 结构 2 3 2flex10k系列器件的基本结构 续1 1 逻辑阵列块lab 每个逻辑阵列块lab由8个相邻的逻辑单元le 以及与相邻的lab相连的进位链和级联链 lab控制信号 lab局部互连通道等组成 2 3 2flex10k系列器件的基本结构 续2 2 逻辑单元le 每个le包含一个能快速产生4变量的任意逻辑函数输出的4输入查找表lut 以及一个带同步使能的可编程触发器 与相邻le相连的进位链和级联链 2 3 2flex10k系列器件的基本结构 续3 2 逻辑单元le flex10k系列器件结构中提供了两条专用高速数据通道 用于连接相邻的le 并且不占用局部互连通道 这就是进位链和级联链 2 3 2flex10k系列器件的基本结构 续4 3 嵌入式阵列块eab flex10k系列器件的嵌入式阵列块是输入和输出端带有寄存器的片内ram阵列块 可用于实现通用阵列逻辑 eab相当于一个大规模的查找表lut 它可编程快速实现多位数字乘法器 数字滤波器和微控制器等复杂逻辑功能 比一般的外存储器有更大的灵活性 2 3 2flex10k系列器件的基本结构 续5 4 快速互连通道 快速互连通道是由遍布于整个器件中的 行互连 和 列互连 组成的 每行的lab有一个专用的 行互连 行互连 可以驱动i o引脚 并将信号传送到同一行中的其他lab中 列互连 连接各行 同时也能够驱动i o引脚 2 3 2flex10k系列器件的基本结构 续6 5 输入输出单元ioe 器件的i o引脚是由输入输出单元ioe驱动的 ioe位于快速互连通道行和列的末端 包含一个双向的i o缓冲器和一个触发器 这个触发器可以用作需要快速建立时间的外部数据输入寄存器 也可以作为要求快速 时钟到输出 性能的数据输出寄存器 cyclone 器件介绍 表cyclone 系列器件特性参数 cyclone 是altera公司在第一代cyclone系列的基础上开发的一款低成本 高性价比的fpga 采用了全铜层90nm低k绝缘工艺 1 2vsram工艺设计 在300nm园晶片上生产 提供了4608 68416个逻辑单元 le 并具有一整套最佳的功能 包括18 18位乘法器 专用外部存储接口电路 4k位嵌入式存储块 锁相环 pll 和高速差分i o等功能 cyclone 器件介绍 续 表cyclone 器件封装和最多用户i o管脚数 表cyclone fpga的专用配置器件 cpld与fpga的区别 fpga与cpld的区别 fpga采用sram进行功能配置 可重复编程 但系统掉电后 sram中的数据丢失 因此 需在fpga外加eprom 将配置数据写入其中 系统每次上电自动将数据引入sram中 cpld器件一般采用eeprom存储技术 可重复编程 并且系统掉电后 eeprom中的数据不会丢失 适于数据的保密 fpga与cpld的区别 fpga器件含有丰富的触发器资源 易于实现时序逻辑 如果要求实现较复杂的组合电路则需要几个clb结合起来实现 cpld的与或阵列结构 使其适于实现大规模的组合功能 但触发器资源相对较少 fpga与cpld的区别 fpga为细粒度结构 cpld为粗粒度结构 fpga内部有丰富连线资源 clb分块较小 芯片的利用率较高 cpld的宏单元的与或阵列较大 通常不能完全被应用 且宏单元之间主要通过高速数据通道连接 其容量有限 限制了器件的灵活布线 因此cpld利用率较fpga器件低 fpga与cpld的区别 fpga为非连续式布线 cpld为连续式布线 fpga器件在每次编程时实现的逻辑功能一样 但走的路线不同 因此延时不易控制 要求开发软件允许工程师对关键的路线给予限制 cpld每次布线路径一样 cpld的连续式互连结构利用具有同样长度的一些金属线实现逻辑单元之间的互连 连续式互连结构消除了分段式互连结构在定时上的差异 并在逻辑单元之间提供快速且具有固定延时的通路 cpld的延时较小 pld器件的命名与选型 epm7128slc84 10epm7 产品系列为epm7000系列128 有128个逻辑宏单元s 电压为5v ae为3 3v b为2 5vl 封装为plcc q代表pqfp等c 商业级 commercial 0 70度 i 工业级 industry 40 85度m 军品级 military 55 125度84 管脚数目10 速度级别 管脚的定义 特殊功能的管脚电源脚vcc和gnd vcc一般分为vccint和vccio两种jtag管脚 实现在线编程和边界扫描配置管脚 fpga 用于由eeprom配置芯片信号管脚专用输入管脚 全局时钟 复位 置位可随意配置其功能为 输入 输出 双向 三态 pld的设计步骤 设计输入 原理图输入使用元件符号和连线等描述比较直观 但设计大规模的数字系统时则显得繁琐hdl语言输入逻辑描述功能强成为国际标准 便于移植原理图与hdl的联系与高级语言与汇编语言类似 设计处理 综合和优化优化 将逻辑化简 去除冗余项 减少设计所耗用的资源综合 将模块化层次化设计的多个文件合并为一个网表 使设计层次平面化映射把设计分为多个适合特定器件内部逻辑资源实现的逻辑小块的形式布局与布线将已分割的逻辑小块放到器件内部逻辑资源的具体位置并利用布线资源完成各功能块之间的连接生成编程文件生成可供器件编程使用的数据文件 模拟仿真 功能仿真不考虑信号传输和器件的延时时序仿真不同器件的内部延时不一样 不同的布局 布线延时也会有比较大的不同在线验证利用实现手段测试器件最终功能和性能指标 在系统编程技术isp insystemprogram 对pld的逻辑功能可随时进行修改 由lattice公司率先发明优点 方便硬件的调试方便硬件版本的升级 类似于软件升级 在系统编程技术isp insystemprogram isp技术用编程器直接在用户的目标系统或印制板上对pld芯片下载 具有isp性能的器件是e2cmos工艺制造 其编程信息存储于e2prom内 可以随时进行电编程和电擦除 且掉电时其编程信息不会丢失 在系统编程技术 insystemprogrammable 边界扫描测试技术bst boundaryscantest 据ieee1149 1标准jtag 用于解决大规模集成电路的测试问题 现在新开发的可编程器件都支持边界扫描技术 并将其作为isp接口 在dsp开发和嵌入式处理器的开发中应用得非常广泛 fpga cpld测试技术 1内部逻辑测试 2jtag边界扫描测试 图边界扫描电路结构 jtag边界扫描测试 表边界扫描io引脚功能 2 3cpld和fpga的编程与配置2 3 1cpld和fpga的编程配置1 编程配置的概念可编程逻辑器件在利用开发工具设计好应用电路后 要将该应用电路写入pld芯片 将应用电路写入pld芯片的过程称为编程 而对fpga器件来讲 由于其内容在断电后即丢失 因此称为配置 但把应用电路写入fpga的专用配置rom仍称为配置 由于编程或配置一般是把数据由计算机写入pld芯片 因此 也叫下载 要把数据由计算机写入pld芯片 首先要把计算机的通信接口和pld的编程或配置引脚连接起来 一般是通过下载线和下载接口来实现的 也有专用的编程器 2 配置模式在fpga的配置之前 首先要借助于fpga开发系统 按某种文件格式要求描述设计系统 编译仿真通过后 将描述文件转换成fpga芯片的配置数据文件 选择一种fpga的配置模式 将配置数据装载到fpga芯片内部的可配置存储器 fpga芯片才会成为满足要求的芯片系统 fpga的配置模式是指fpga用来完成设计时的逻辑配置和外部连接方式 逻辑配置是指 经过用户设计输入并经过开发系统编译后产生的配置数据文件 将其装入fpga芯片内部的可配置存储器的过程 简称fpga的下载 只有经过逻辑配置后 fpga才能实现用户需要的逻辑功能 不同公司的配置模式有所不同 而同一公司的不同器件系列也有差异 具体配置模式应查相关器件的数据手册 比如lattice公司的ecp ec系列器件的配置模式由cfg 2 0 决定 包括七种配置模式 spi主动模式 spix主动模式 主动串行模式 从动串行模式 主动并行模式 从动并行模式 ispjtag模式 altera公司基于sramlut结构器件的配置模式由芯片引脚msel1和msel0的状态决定 包括六种配置模式 配置器件配置模式 ps被动串行模式 pps被动并行同步模式 ppa被动并行异步模式 psa被动串行异步模式 jtag模式 xilinx公司xc2000 xc3000等系列的fpga的配置模式由芯片引脚m0 m1和m2的状态决定 包括六种配置模式 主动串行配置模式 主动并行配置模式 高

温馨提示

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

评论

0/150

提交评论