1、FPGA与MCU学习曲线和应用灵活性
MCU的学习曲线并不陡峭,所用的开发工具都可以轻易获得,开发和调试的过程简单,设计很容易上手。不过,MCU在处理复杂事务、运行速度和接口的多样性上是很有限的。对于一般的项目,由于功能既不复杂,也没有重要的处理需求,MCU是很理想的选择。
FPGA是包含可编程逻辑元件(LE)的集成电路,其可编程单元已经内置在芯片中,功能十分灵活。例如, 这些LE 可以通过编程作为加速器或者ARM来提高系统性能,可以通过编程实现新的标准或算法,也可以根据需求添加各种通信接口,所有这些都有助于降低系统成本并延长产品生命周期。但是这种设计的缺点是学习去下陡峭,对于MCU开发人员来说,在刚刚学习FPGA的时候,因IO端口和编码方式的变换,学起来会比较困难。
另外, FPGA的另一个设计特点: 它可以在单个芯片上实现多个PCB板上芯片的功能,从而,使得后续的设计更加灵活。
2、FPGA的IO口是并行处理的
对于MCU来说,在同一时刻,只能实现一个或一组IO的翻转,并且所有的IO只有一个电压标准。
而FPGA的IO是并行处理的,并且不同bank的IO可以遵循不同电压标准。实现FPGA开发的语言verilog是并行语言
3、怎样规划FPGA开发
规划MCU开发 :在规划MCU开发的时候,我们首先确定需要哪些接口,如SPI,I2C,Wi-Fi等,然后根据MCU的电压,引脚数量,提供的通信接口,支持的库和价格作出MCU的选型。
规划FPGA开发 :在使用FPGA的时候,所有的通信