fpga讲义
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
F3 A B
PLA结构
PLA的内部结构在 简单PLD中有最高 的灵活性。
PAL结构
与阵列可编程使 输入项增多,或 阵列固定使器件 简化。 或阵列固定明显 影响了器件编程 的灵活性
用PAL实现全加器
An Bn Cn “或”阵列 (固定)
AnBnCn
AnBnCn
AnBnCn
AnBnCn AnBn AnCn
d[3..0] 查找表 与门
d[7..4]
查找表
与门
d[11..0]
查找表
与门
FPGA中的嵌入式阵列(EAB)
可灵活配置的RAM块 用途
实现比较复杂的函数的查找表,如正弦、余 弦等。 可实现多种存储器功能,如RAM,ROM,双 口RAM,FIFO,Stack等 灵活配置方法:256×8,也可配成512×4
编码器(74LS148) 译码器(74LS154) 比较器(74LS85) 计数器(74LS193) 移位寄存器(74LS194) ………
脉冲与数字电路课程的回顾
设计方法的局限
卡诺图只适用于输入比较少的函数的化简。 采用“搭积木”的方法的方法进行设计。必 须熟悉各种中小规模芯片的使用方法,从中 挑选最合适的器件,缺乏灵活性。 设计系统所需要的芯片种类多,且数量很大。
FPGA结构原理图
内部结构称为 LCA(Logic Cell Array)由三个部 分组成: 可编程逻辑块 (CLB) 可编程输入输出 模块(IOB) 可编程内部连线 (PIC)
PIC
IOB
CLB包含多 个逻辑单元
LE内部结构
查找表的基本原理
实际逻辑电路 LUT的实现方式
a,b,c,d 输入
体积小,集成度高,速度高,易加密,抗干扰,耐 高温 只能一次编程,在设计初期阶段不灵活 可反复编程,实现系统功能的动态重构 每次上电需重新下载,实际应用时需外挂EEPROM 用于保存程序 可反复编程 不用每次上电重新下载,但相对速度慢,功耗较大
SRAM--大多数公司的FPGA器件
EEPROM--大多数CPLD器件
实验成绩(实验报告) 理论笔试(考试) 上机考试(上机操作)
参考书
王金明,数字系统设计与Verilog HDL, 电子工业出版社。 杨晖,大规模可编程逻辑器件与数字系 统设计,北京航空航天大学出版社。 褚振勇,FPGA设计及应用,西安电子科 技大学出版社。
PLD器件的命名与选型
EPM7 128 S L C 84-10
EPM7:产品系列为EPM7000系列 128:有128个逻辑宏单元 S:电压为5V,AE为3.3V,B为2.5V L:封装为PLCC,Q代表PQFP等 C:商业级(Commercial)0~70度, I:工业级(Industry),-40~85度 M:军品级(Military),-55~125度 84:管脚数目 10:速度级别
管脚数目:
208个 3.3V(I/O) 2.5V(内核) 250MHz
电源:
速度
内部资源
4992个逻辑单元 10万个逻辑门 49152 bit的RAM
PLD的发展趋势
向高集成度、高速度方向进一步发展
最高集成度已达到400万门
向低电压和低功耗方向发展, 5V3.3V2.5V1.8V更低 内嵌多种功能模块
脉冲与数字电路课程的回顾
布尔函数--数字系统数学基础(卡诺 图) 数字电路设计的基本方法
组合电路设计 问题逻辑关系真值表化简逻辑图 时序电路设计 列出原始状态转移图和表状态优化状态分 配触发器选型求解方程式逻辑图
脉冲与数字电路课程的回顾
使用中、小规模器件设计电路(74、54 系列)
逻辑输出
地址
RAM中 存储的内容
0000
0001
....
0
0 0 1
0000
0001
...
0
0 0 1
1111
1111
N个输入的逻辑函数需要2的N次方的容量的SRAM 来实现,一般多个输入的查找表采用多个逻辑块 级连的方式
查找表的基本原理
N个输入的逻辑函数需要2的N次方的容量的SRAM 来实现,一般多于输入的查找表采用多个逻辑块 级连的方式
计算机技术的发展使EDA技术得到广泛应用 设计方法的发展
自下而上自上而下 专用集成电路(ASIC-Application Specific Integrated Circuits)开发周期长,投入大,风险大 可编程器件PLD:开发周期短,投入小,风险小
用户需要设计自己需要的专用电路
PLD器件的优点
RAM,ROM,FIFO,DSP,CPU
向数、模混合可编程方向发展
大的PLD生产厂家
最大的PLD供应商之一 FPGA的发明者,最大的PLD供应 商之一 ISP技术的发明者 提供军品及宇航级产品
数字电路的基本组成
任何组合电路都可表示为其所有输入信 号的最小项的和或者最大项的积的形式。 时序电路包含可记忆器件(触发器), 其反馈信号和输入信号通过逻辑关系再 决定输出信号。
输入项
输入 电路
与 阵 列
乘积项
或 阵 列
或项
输出 电路
PLD的逻辑符号表示方法
与门
乘积项
PROM结构
集成度高,可以替代多至几千块通用IC芯片
极大减小电路的面积,降低功耗,提高可靠性 提供语言、图形等设计方法,十分灵活 通过仿真工具来验证设计的正确性
具有完善先进的开发工具
可以反复地擦除、编程,方便设计的修改和升 级 灵活地定义管脚功能,减轻设计工作量,缩短 系统开发时间 保密性好
FPGA与CPLD的区,易于 实现时序逻辑,如果要求实现较复杂的 组合电路则需要几个CLB结合起来实现。 CPLD的与或阵列结构,使其适于实现大 规模的组合功能,但触发器资源相对较 少。
FPGA与CPLD的区别
FPGA为细粒度结构,CPLD为粗粒度结构。 FPGA内部有丰富连线资源,CLB分块较 小,芯片的利用率较高。CPLD的宏单元 的与或阵列较大,通常不能完全被应用, 且宏单元之间主要通过高速数据通道连接, 其容量有限,限制了器件的灵活布线,因 此CPLD利用率较FPGA器件低。
1.2~0.5um,5V 0.35um,3.3V 0.25um,internal 2.5V,I/O3.3V 0.18um,internal 1.8V,I/O2.5V and 3.3V
可编程连线阵列
在各个逻辑宏单元之间以及逻辑宏单元 与I/O单元之间提供信号连接的网络 CPLD中一般采用固定长度的线段来进行 连接,因此信号传输的延时是固定的, 使得时间性能容易预测。
可编程逻辑器件--PLD
电信系数字视频中心 鲁放
课程简介
《脉冲与数字电路》为基础:学习了数 字电路的基本设计方法。 《可编程逻辑器件》:面向实际工程应 用,紧跟技术发展,掌握数字系统新的 设计方法。 《数字信号处理》:后续课程,应用的 一个方面,由FPGA代替DSP来实现算法, 提高系统的速度。
与阵列为全译码阵 列,器件的规模将 随着输入信号数量 n的增加成2n指数 级增长。因此 PROM一般只用于 数据存储器,不适 于实现逻辑函数。 EPROM和EEPROM
用PROM实现组合逻辑电路功能 编程连接点 固定连接点 (或) (与)
实现的函数为:
F A B A B 1
F2 A B A B
课程宗旨
更新数字电路的设计观念,建立用PLD器 件取代传统TTL器件设计数字电路的思想 更新数字系统设计手段,学会使用硬件 描述语言(Hardware Description Language)代替传统的数字电路设计方 法来设计数字系统。
可编程逻辑器件的定义
逻辑器件:用来实现某种特定逻辑功能的电子 器件,最简单的逻辑器件是与、或、非门 (74LS00,74LS04等),在此基础上可实现 复杂的时序和组合逻辑功能。 可编程逻辑器件(PLD--Programmable Logic Device):器件的功能不是固定不变的, 而是可根据用户的需要而进行改变,即由编程 的方法来确定器件的逻辑功能。
逻辑阵 列模块
I/O单元
连线资源
逻辑阵列模块中包含多个宏单元
乘积项逻辑阵列
可编程 触发器
乘积项选择矩阵 宏单元内部结构
可编程的I/O单元
能兼容TTL和CMOS多种接口和电压标准 可配置为输入、输出、双向、集电极开路和三 态等形式 能提供适当的驱动电流 降低功耗,防止过冲和减少电源噪声 支持多种接口电压(降低功耗)
PLD器件的分类--按结构特点
基于与或阵列结构的器件--阵列型
PROM,EEPROM,PAL,GAL,CPLD CPLD的代表芯片如:Altera的MAX系列 FPGA
基于门阵列结构的器件--单元型
PLD器件的分类--按编程工艺
熔丝或反熔丝编程器件--Actel的FPGA器件
FPGA与CPLD的区别
FPGA为非连续式布线,CPLD为连续式布线。 FPGA器件在每次编程时实现的逻辑功能一样, 但走的路线不同,因此延时不易控制,要求开 发软件允许工程师对关键的路线给予限制。 CPLD每次布线路径一样,CPLD的连续式互连 结构利用具有同样长度的一些金属线实现逻辑 单元之间的互连。连续式互连结构消除了分段 式互连结构在定时上的差异,并在逻辑单元之 间提供快速且具有固定延时的通路。CPLD的 延时较小。
脉冲与数字电路课程的回顾
采用中小规模器件的局限
电路板面积很大,芯片数量很多,功耗很大, 可靠性低--提高芯片的集成度 设计比较困难--能方便地发现设计错误 电路修改很麻烦--提供方便的修改手段
PLD器件的出现改变了这一切
PLD出现的背景
电路集成度不断提高
SSIMSILSIVLSI
GAL器件的OLMC Output Logic Macro Cell
输出使 能选择
每个OLMC包含或阵列 中的一个或门 组成: 异或门:控制输出 信号的极性 D触发器:适合设 计时序电路 4个多路选择器
或门控 制选择
输出 选择
反馈信 号选择
CPLD内部结构(Altera的MAX7000S系列)
PLD器件的分类--按集成度
低密度
PROM,EPROM,EEPROM,PAL,PLA,GAL 只能完成较小规模的逻辑电路 EPLD ,CPLD,FPGA 可用于设计大规模的数字系统集成度高,甚 至可以做到SOC(System On a Chip)
高密度,已经有超过400万门的器件
课程内容
器件为什么能够编程
了解大规模可编程逻辑器件的结构及工作原 理 熟悉一种EDA软件的使用方法(工具)
怎样对器件编程
以Altera公司的MaxPlusII为例
掌握一种硬件描述语言(方法),以设计软 件的方式来设计硬件(重点)
以VHDL语言为例
教学安排
理论教学(12学时) 上机实践(20学时) 考核方式
Sn An BnCn An Bn Cn An Bn Cn An BnCn Cn1 An Bn AnCn BnCn
“与”阵列 (可编程) Sn Cn+1
BnCn
GAL结构
逻辑宏单元
OLMC
GAL器件与 PAL器件的 区别在于用 可编程的输 出逻辑宏单 元(OLMC) 代替固定的 或阵列。可 以实现时序 电路。
内部晶体震荡器
高速反向放大 器用于和外部 晶体相接,形 成内部晶体振 荡器。 提供将振荡波 形二分频成对 称方波的功能。
CPLD与FPGA的区别
CPLD
内部结构 Product-term
FPGA
Look-up Table
程序存储 内部EEPROM
资源类型 组合电路资源丰富 集成度 低 使用场合 完成控制逻辑 速度 慢 其他资源 -
SRAM,外挂EEPROM
触发器资源丰富 高 能完成比较复杂的算法 快 EAB,锁相环
保密性
可加密
一般不能保密
FPGA与CPLD的区别
FPGA采用SRAM进行功能配置,可重复 编程,但系统掉电后,SRAM中的数据丢 失。因此,需在FPGA外加EPROM,将配 置数据写入其中,系统每次上电自动将数 据 引 入 SRAM 中 。 CPLD 器 件 一 般 采 用 EEPROM存储技术,可重复编程,并且系 统掉电后,EEPROM中的数据不会丢失, 适于数据的保密。