首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

FPGA的基本结构:六大组成部分简介

FPGA的基本结构:六大组成部分简介

FPGA由6部分组成,分别为可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。
每个单元简介如下:

1.可编程输入/输出单元(I/O单元)

目前大多数FPGA的I/O单元被设计为可编程模式,即通过软件的灵活配置,可适应不同的电器标准与I/O物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等。

2.基本可编程逻辑单元

FPGA的基本可编程逻辑单元是由查找表(LUT)和寄存器(Register)组成的,查找表完成纯组合逻辑功能。FPGA内部寄存器可配置为带同步/异步复位和置位、时钟使能的触发器,也可以配置成为锁存器。FPGA一般依赖寄存器完成同步时序逻辑设计。一般来说,比较经典的基本可编程单元的配置是一个寄存器加一个查找表,但不同厂商的寄存器和查找表的内部结构有一定的差异,而且寄存器和查找表的组合模式也不同。

学习底层配置单元的LUT和Register比率的一个重要意义在于器件选型和规模估算。由于FPGA内部除了基本可编程逻辑单元外,还有嵌入式的RAM、PLL或者是DLL,专用的Hard IP Core等,这些模块也能等效出一定规模的系统门,所以简单科学的方法是用器件的Register或LUT的数量衡量。

3.嵌入式块RAM

目前大多数FPGA都有内嵌的块RAM。嵌入式块RAM可以配置为单端口RAM、双端口RAM、伪双端口RAM、CAM、FIFO等存储结构。

CAM,即为内容地址存储器。写入CAM的数据会和其内部存储的每一个数据进行比较,并返回与端口数据相同的所有内部数据的地址。简单的说,RAM是一种写地址,读数据的存储单元;CAM与RAM恰恰相反。

除了块RAM,Xilinx和Lattice的FPGA还可以灵活地将LUT配置成RAM、ROM、FIFO等存储结构。
返回列表