关于MCU下位替换FPGA的经验与方案
故事:
那年~遇到FPGA是在大一电赛的那段时间了,我的方向是做高频题。
我的技术栈 从单片机基本外设到FSMC的8080屏幕、到LTDC的RGB屏幕、到FreeRTOS、到TouchGFX图形库、到BL和外部Flash、到内外部SDRAM混合使用
解决了很多问题,学到了也攻克了很多困难。
但是遇到这个FPGA我是真没法了,一个并行接口驱动外部高速ADC,无解。
即使使用TIM+DMA+GPIO配合H750超频,也只能发挥外部高速ADC的七分之一的性能。
也尝试过双重ADC+DMA+TIM,但采样率依旧不满意。
缓存数据少,我攻克了内外部SDRAM,内存随便用了
无限点FFT被Flash限制了,我攻克了BL和外部Flash,Flash也解决了
屏幕不够大不够流程,就用TouchGFX+FreeRTOS。
但是采样率就是令我不满意。
即使可以用FPGA驱动高速ADC,与FPGA的高速通信又是问题,非实时数据、丢包的问题。
TIM+DMA+GPIO方案
https://www.cnblogs.com/helesheng/p/18197183
这个方案就是个坑,AI都说能实现,其实只是解决了并行高低电平的问题,通过寄存器统一操作一片IO的上下拉,确实是并行了
但是无论如果速率也拉不上去,速度就是上不去
举例,硬件高速SPI速率10Mhz,你却想用软件SPI跑10Mhz的速率(极限也就3~4M)。而且还是并行。这样的资源调用,实现不了,又不能成为一个长期工程。
有可行性。但是速率不能完美拉满高速ADC(如AD9226)
FSMC+DMA方案
资料少
DCMI+MCO+DMA方案
有论文和博客实现了,桂电电赛方案也听说用了,但是资料太少。
可行性高,但是采样率限制48M,只能并行接收
PIO+DMA方案
可行性非常高,有很多Pico示波器项目实现了。
8位高速ADC,100M+的采样率。
PSSI+DMA方案
最近也发现这个官方这些新外设,真的强,有较高可行性。
就是用来解决这类问题的,准备试一试。用H723(志远家 主频高 有屏幕 有外Flash 有外SDRAM)
ZYNQ方案
不用单片机了,上ZYNQ。普通FPGA性能太拉,数学信号处理能力差。
ZYNQ就是万能的!!!。
FPGA+MCU方案
传统方案,并行靠FPGA,串行和处理靠MCU