FPGA1214学习

Altera Xilinx Lattice
1.2 FPGA/CPLD的基本结构


简化的FPGA基本由6部分组成:
1)可编程输入/输出单元
2)基本可编程逻辑单元
基本可编程逻辑单元是可编程逻辑的主体,可以根据设计灵活地改变其内部连接与配置,
完成不同的逻辑功能。FPGA一般是基于SRAM工艺的,其基本可编程逻辑单元几乎都是由查找表
(LUT, Look Up Table)和寄存器(Register)组成的。FPGA内部查找表一般为4输入,查找表一般
完成纯组合逻辑功能。FPGA内部寄存器结构相当灵活,可以配置为带同步、异步复位或置位、时钟使能的触发器
(FF, Flip Flop),也可以配置称为锁存器(Latch)。FPGA一般依赖寄存器完成同步时序逻辑设计。
比较经典的基本可编程单元的配置是一个寄存器加一个查找表,但是不同厂商的寄存器和查找表的内部结构有一定的差异,
而寄存器和查找表的组合模式也不同。可编程逻辑单元通常被称为LE(Logic Element, 逻辑单元),由一个Register加一个LUT
构成。Altera的大多数FPGA将10个LE有机地结合起来,构成更大的功能单元---逻辑阵列模块(LAB, Logic Array Block),LAB中除了LE
还包含LE间的进位链、LAB控制信号、局部互联线资源、LUT级联链、寄存器级联链等连线与控制资源。
Xilinx 可编程逻辑单元叫Slice,它由上下连个部分构成,每个部分都由一个Register加一个LUT组成,被称为LC(Logic Cell,逻辑单元),
两个LC之间有一些共用逻辑,可以完成LC之间的配合与级联。
最新的一些可编程逻辑器件常常根据设计需求推出一些新的LUT和Register的配置比率,并优化器内部的连接构造。


学习底层配置单元的LUT和Register比率的一个重要意义在于器件选型和规模估算。很多前进手册上用器件的ASIC门数或等效的系统门
数标志器件的规模,单目前FPGA内部除了基本可编程逻辑单元外,还包含有丰富的嵌入式RAM、PLL或DLL,以及专用Hard IP Core(硬知识产权功能核)等。
这些功能模块也会等效出一定规模的系统门,所以用锡系统门权衡基本可编程逻辑单元的数量是不准确的,常常混了设计者。




3)嵌入式块RAM
FPGA内嵌的块RAM一般可以灵活配置为单端口RAM(SPRAM,Single Port RAM)、双端口RAM、伪双端口RAM
、CAM、FIFO等常用存储结构。FPGA中其实并没有专用的ROM硬件资源,实现ROM的思路是对RAM赋予初值,
并保持该初值。所谓CAM,即内容地址存储器。CAM这种存储器在其每个存储单元都包含了一个内嵌的比较逻辑,
写入CAM的数据会和其内部存储的每一个数据进行比较,并返回与端口数据相同的所有内部数据的地址。
概括的讲,RAM是一种根据地址读、写数据的存储单元;而CAM和RAM恰恰相反,它返回的是与端口数据相匹配
的内部地址;CAM的应用也非常广泛,比如在路由器中的地址交换表等。


FPGA内部实现RAM、ROM、CAM、FIFO等存储结构都可以基于嵌入式块RAM单元,并根据需求自动生成相应
的粘合逻辑以完成地址和片选灯控制逻辑。




4)丰富的布线资源


5)底层嵌入功能单元
底层嵌入式功能单元的概念比较笼统,这里我们指的是那些通用程度标高的嵌入式功能模块,比如
PLL(Phase Locked Loop)、DLL(Delay Locked Loop)、DSP、CPU等。
目前大多数FPGA厂商都在FPGA内部集成了DLL或者PLL硬件电路,用以完成时钟的高精度、低抖动的倍频
、分频、占空比调整、移相等功能。




6)内联专用硬核







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值