FPGA与MCU的区别 - FPGA开发者技术社区 - 电子技术论坛 - 广受欢迎的专业电子论坛
分享 收藏 返回

[文章]

FPGA与MCU的区别

FPGA和单片机 (MCU)的区别

  • 结构上的区别
  • 单片机(MCU)是一种微处理器,类似于电脑CPU的,它一般采用的是哈佛总线结构,或者冯诺依曼结构,对单片机的编程很大程度上要考虑到它的结构和各个寄存器的作用,单片机用途比较广,一般用在控制流水线上。
  • FPGA 它的结构是查找表结构,其程序不用去太考虑芯片的结构,要注意的是时序上问题,它的结构比较复杂,功能也很强大,一般应用在**通信**领域等比较高端的场合。
  • 单片机是一个微控制器,通过加载模块软件来实现某种功能,单片机是成型的芯片;
  • FPGA是用来设计芯片的芯片。
  • 速度上的区别
    FPGA由于是硬件电路,运行速度直接取决于晶振速度,系统稳定,特别适合高速接口电路。单片机由于是单线程,哪怕是常用的M3系列流水线也是单线程执行,程序语句需要等待单片机周期才能执行。
  • 本质上的区别
  • FPGA和单片机的区别,本质上是软件和硬件的区别,FPGA更偏向于硬件电路,而单片机更偏于软件。
  • 单片机设计属软件范畴;它的硬件(单片机芯片)是固定的,通过软件编程语言描述软件指令在硬件芯片上的执行;
  • FPGA设计属硬件范畴,它的硬件(FPGA)是可编程的,是一个通过硬件描述语言在FPGA芯片上自定义集成电路的过程;
  • 应用上的区别
    应用上,差别更大。MCU(Microcontroller Unit,微控制单元)最终所有的指令在一个MCU中都是顺序执行的,而FPGA由于是逻辑单元,很容易做到并行执行。
    MCU:微控制单元(Microcontroller Unit;MCU) ,又称单片微型计算机(Single Chip Microcomputer )或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
  • 入门的难易程度
    单片机比FPGA简单些,价格也低一些。要做PID算法控制的用单片机可以,STM32H7系列已经到600M+跑PID完全足够,如果是跑嵌入式的话可以上ARM芯片。涉及通信、图像等高速部分可以采用单FPGA模块。

更多回帖

×
发帖