《FPGA原理与结构》读书笔记(1)

1、先验知识

1.1、FPGA的组成

如下图片是岛形FPGA的大致组成。如下几种模块,可以分为以下三类。
1、输入输出部分: I/O块-其通常包括上拉、下拉、输入/输出的方向核极性、转换速率(slew rate)、开漏等控制电路,商用FPGA还包括LVTTL、PCI、PCIe 、SSTL等。
2、布线部分: 包含布线通道、连接块(CB)、开关块(SB)等几个部分组成。布线的主要作用是利用如上几个部分,通过编程实现任意的布线通路。
3、其他部分: 逻辑块(LB)、IO块、开关块、连接块全部由配置存储单元控制,以实现任意逻辑函数和连接关系。所有的配置存储单元前后相连,形成配置链
《FPGA原理与结构》读书笔记(1)_第1张图片

1.2、可编程技术

**闪存(EEPROM):**属于非易失存储器(即断电不丢失),写入方式可以分为NAND和NOR型,NAND在写入时需要高电压,而NOR在写入时需要大电流。闪存具有以下特点:非易失、尺寸比SRAM小、可重复编程、容错性强;

反熔丝: 指的是在通电后,反熔丝熔断(熔合)后才导通,其与常见的熔丝(保险丝)特性相反。反熔丝具有以下特点:尺寸小、密度高、接通电阻和负载电容小、非易失、容错性强、不能被逆向(物理)、一次性操作、需要专用编程器;

静态存储器: 由两个CMOS反相器构成的触发器和两个传输晶体管PT(Pass-Transistor)组成,其由触发器的双稳态(0 1)记录数据,而数据的写入使用PT进行。静态存储器根据地址信号来驱动字线(与图中的Write相连),数据的读取也通过PT,由于FPGA需要一直读取数据,所以数据读取时,采用的是触发器。
《FPGA原理与结构》读书笔记(1)_第2张图片
采用静态存储器作为可编程开关的FPGA,大都在逻辑块中使用查找表(LUT),并且使用数据选择器来切换布线连接。查找表在存储器中保存的就是真值表本身,由多个静态存储器构成。目前主流的FPGA是SRAM型。
其具有以下特点:可以采用陷阱的CMOS工艺、可重配置、重写次数无限制、易失存储器、对软件错误比较敏感、接有电阻。
《FPGA原理与结构》读书笔记(1)_第3张图片

1.3、查找表(Look-Up-Table,LUT)

LUT一般指4输入SRAM,SRAM的地址为输入信号,SRAM中存储的值为对应的输出,其实相当于用大量SRAM模拟数字电路。当我们编写了一个逻辑电路以后,编译器(如Vivado)会自动计算逻辑电路的所有结果(真值表),并把结果写入RAM。在使用该逻辑电路时,输入信号就相当于根据地址进行查表,找出地址对应的结果即可。图中的MUX为数据选择器
《FPGA原理与结构》读书笔记(1)_第4张图片

1.4、PLA (Programmable Logic Array)

PLA是由AND门与OR门所组成的(仅有AND门可编程),用来实现复杂的组合逻辑电路。在PLA中,解码器都被一组AND门所取代,而每个AND门都可以编程以生成输入变量的乘积项(AND)。在许多时候,我们使用PLA替代ROM,可以使得电路更加紧凑,同时开关速度更快,
《FPGA原理与结构》读书笔记(1)_第5张图片
以下为例,对与门编程(穷举ABC的八种状态-八条竖线),获得所有“逻辑函数”。
如第一条线就是000
第二条线是001
之后一条线是111
以此类推
或阵列的结果,满足当前所有真值输出,具体如何得到,我无法很好的解释,可以理解为是三个端口的全部组合结果
《FPGA原理与结构》读书笔记(1)_第6张图片

2、FPGA的逻辑实现

概述:多路表决器目的是为了在真值>=2时,输出对应结果(真假)。
如两人为真,输出为真。

2.1、简单实现电路

以一个多路表决器为例
《FPGA原理与结构》读书笔记(1)_第7张图片
《FPGA原理与结构》读书笔记(1)_第8张图片
最后部分的输出缓冲器,是为了提高驱动能力。
《FPGA原理与结构》读书笔记(1)_第9张图片
《FPGA原理与结构》读书笔记(1)_第10张图片

2.2、乘积项的多数表决器

其中(Programmable Logic Array,PLA)
《FPGA原理与结构》读书笔记(1)_第11张图片
《FPGA原理与结构》读书笔记(1)_第12张图片
《FPGA原理与结构》读书笔记(1)_第13张图片

2.3、查找表的逻辑实现

查找表存储单元大都使用SRAM(一个单元储存一个字)实现,下图采用的是三输入的查找表,其由2^3个SRAM单元和一个2 ^3个输入数据选择器组成。查找表输入为内存地址信号,输出为所选字得1位数据。K输入查找表可以实现2的2次的k次种逻辑函数,如K=2时为16种,k=3时为256种,K=4时为65536种逻辑函数。
《FPGA原理与结构》读书笔记(1)_第14张图片
通过将多路选择器的三个输入作为地址,同时将结果f提前写入到配置内存,即可使用查找表实现多路选择器。
《FPGA原理与结构》读书笔记(1)_第15张图片

你可能感兴趣的:(FPGA,fpga开发,读书笔记,FPGA基础)