Xilinx 异步FIFO核实现FPGA与DSP通过UPP(通用并口)进行数据传输
一、Xilinx FIFO IP核介绍
1.
因为采用异步FIFO,因此我们必须采用独立的读写时钟,同时为了节省LUTs资源,选用Block RAM
2.模式的话我比较喜欢使用标准FIFO,明德扬老师喜欢用First-word fall through,这个区别是 FWFT模式是数据先出现在输出总线上,再使能读信号,为了低延迟,只有7系列和 virtex 5系列支持 ,我目前使用的spartan6系列并不支持,英文翻译再下面:
接下来是位宽的设置,因为我的输入为32位的IQ两路信号,因此我的输入位宽为64,输出位宽由UPP输出数据位宽决定,8位传输。最大512的存储空间,本来想设置为读写分时,后面决定阉割版的读写分时没什么意思,此处的空间其实可以将512改成2,但是我懒得改了~
我的写时钟频率为500KHz,读时钟频率为5MHz,差距在10倍,因为将64位数据拆成8位进行发送需要8次才能发送完毕,为了保证不会写满FIFO,因此我选了一个差距为10位的