1、并行执行:FPGA 是靠控制每个时钟(Cycle) 来驱动信号与寄存器传输的,也就是说可以通过时钟来精确控制任务。而且,FPGA 是并行 执行的,每个 Cycle 可以同时执行上百万个数据流任务。
2、嵌入式块RAM:
FPGA 一般是基于 SRAM (静态随机存取存储器)工艺,其基本可编程逻辑单元几乎都是由查找表(LUT, Look Up Table) 和寄存器(Register) 组成。
查找表:FPGA 内部的查找表一般为 4 输入,一般完成纯组合逻辑功能。
寄存器:FPGA 内部寄存器结构相当灵活,可以配置为带同步/异步复位或置位,时钟使能的触发器,也可以配置成锁存器,FPGA 依赖寄存器完成同步时序逻辑设计。
比较经典的基本可编程逻辑单元的配置是一个寄存器加一个查找表,但是不同厂商的寄存器与查找表也有一定的差异,而且这两者组合模式也 不同。 例如, Altera 可编程逻辑单元通常被称为 LE(Logic Element) ,由一个寄存器加 一个 LUT 构成。
RAM(随机存取存储器—主存):根据地址读、写数据的存储单元;与 CPU 直接交换数据。
分布式RAM:除了块 RAM,还可以灵活地将 LUT 配置成 RAM, ROM, FIFO 等存储结构,这种技术被称为分布式 RAM。