FPGA查找表实现原理分析

一.查找表(look-up-table)的原理与结构 采用这种结构的pld芯片我们也可以称之为fpga:如xilinx的spartan,virtex系列等。
查找表(look-up-table)简称为lut,lut本质上就是一个ram。 目前fpga中多使用4输入的lut,所以每一个lut可以看成一个有4位地址线的16x1的ram。 当用户通过原理图或hdl语言描述了一个逻辑电路以后,pld/fpga开发软件会自动计算逻辑电路的所有可能的结果,并把结果事先写入ram,这样,每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内容,然后输出即可。下面是一个4输入与门的例子:
二.基于查找表(lut)的fpga的结构 我们看一看xilinx spartan-ii的内部结构,如下图:
xilinx spartan-ii 芯片内部结构
slices结构
spartan-ii主要包括clbs,i/o块,ram块和可编程连线(未表示出)。在spartan-ii中,一个clb包括2个slices,每个slices包括两个lut,两个触发器和相关逻辑。 slices可以看成是spartanii实现逻辑的最基本结构 (xilinx其他系列,如spartanxl,virtex的结构与此稍有不同,具体请参阅数据手册)
三.查找表结构的fpga逻辑实现原理
我们还是以这个电路的为例:
a,b,c,d由fpga芯片的管脚输入后进入可编程连线,然后作为地址线连到到lut,lut中已经事先写入了所有可能的逻辑结果,通过地址查找到相应的数据然后输出,这样组合逻辑就实现了。 该电路中d触发器是直接利用lut后面d触发器来实现。时钟信号clk由i/o脚输入后进入芯片内部的时钟专用通道,直接连接到触发器的时钟端。触发器的输出与i/o脚相连,把结果输出到芯片管脚。这样pld就完成了图3所示电路的功能。(以上这些步骤都是由软件自动完成的,不需要人为干预)
这个电路是一个很简单的例子,只需要一个lut加上一个触发器就可以完成。对于一个lut无法完成的的电路,就需要通过进位逻辑将多个单元相连,这样fpga就可以实现复杂的逻辑。
由于lut主要适合sram工艺生产,所以目前大部分fpga都是基于sram工艺的,而sram工艺的芯片在掉电后信息就会丢失,一定需要外加一片专用配置芯片,在上电的时候,由这个专用配置芯片把数据加载到fpga中,然后fpga就可以正常工作,由于配置时间很短,不会影响系统正常工作。 也有少数fpga采用反熔丝或flash工艺,对这种fpga,就不需要外加专用的配置芯片。

中美贸易战升级将影响LED照明订单回流?
如何提升车规级功率半导体热性能可靠性?
三相电计算功率方法总结
voc在线监测系统有几种方法
声光催眠器,Hypnotic device
FPGA查找表实现原理分析
pcb设计怎样利用好BGA
汇川技术亮相2021“风电领跑者”技术创新论坛
应用在汽车倒车影像中的环境光传感芯片
实现了多键齐按和重复按键的嵌入式系统键盘驱动设计
移动通信转售业务将由试点转为正式商用
马斯克:SpaceX将在2026年前让人类登陆火星
真会玩!1916个电子元器件组成的电子钟
特斯拉让丰田汽车急眼了?
人工智能持续创新,助力人脸识别技术产业发展
2008沙特摩托车展
光电传感器在无人车上有什么运用
RC522刷卡模块原理简介
PND价格走势:大品牌挑起价格战
健身房中的智能镜子可帮助我们进行更好的智能健身