一、关于FPGA的几个基本概念1.FPGA是什么? 简而言之,就是可以重复编程的逻辑设备。
2.fpga/ASIC/ASSP asic和assp的功能是固定的,就像打印的纸一样,但FPGA是随时可以擦掉的白纸。
3.FPGA/ARM/dsp fpga、arm、DSP都或多或少集成了asic的功能。
arm :价格低廉,功能多,功耗低,擅长控制和管理。
dsp :有进行高速、高吞吐量数字信号处理的专用命令系统。
fga :可以实现arm和dsp无法实现的功能,也可以实现它们无法实现的功能,但功耗高、成本高、编程复杂。
4.Verilog和VHDL verilog适合初学者,VHDL严格,需要后期掌握
5.altera(Intel )/Xilinx/lattice altera (Intel )/Xilinx占全球60%左右的市场份额,各厂商的FPGA设备正在开发过程中,开发工具不换药
二、FPGA基本结构1 .基本单元(1)查找表(LUT )逻辑操作,LUT可以用于实现真值表,生成特定的输出不同的组合,比特扩展可以实现多比特的数据存储单元。 关于具体的扩展,请参照RAM的存储容量、地址线、数据线
(2)触发器) FF )存储LUT结果的寄存器单元。 包括数据输入、时钟输入、使能输入、复位输入、数据输出。
(3)线) Wires ) :用于连接不同模块的单元
(4)输入输出端口) IO ) :连接FPGA和外部的端子
2 .附加单元由基本单元组成工程常用模块,方便直接使用。
)1)片上存储器)块ram(BRAM )、LUT、移位寄存器
)2)为了生成锁相环(PLL )时钟
)3)高速串行收发器:
)4)片外存储控制器:
)5)将累加模块(DSP48 ) :加减乘法器乘以累加加法器
其中CLB由两个slice组成。
每个slice由4个6输入LUT和8个寄存器组成。 (中间应该也有选择器、与非门、与非门等。 LUT只有一个时钟端口和一个写使能端口。 因此,对LUT-RAM的写入是同步的,但读取数据是异步的。 因此,只要追加追加寄存器就可以实现同步读取。 这增加了延迟,但改善了时机,提高了系统的性能。
目前主流的FPGA结构发展如下。