Arduino,C51,STM32,ARM和FPGA有什么联系和区别?

Arduino,C51,STM32,ARM和FPGA有什么联系和区别?,第1张

首先51是最古老的芯片(指8051),专利过期了其他厂家兼容芯片琳琅满目。在你列出的这几种里面速度慢,内存小(排除有些厂家出的魔改的型号)。常见的厂家stc的,atmel的正统89c51系列以及后期魔改型号。国产的st89,10,11,12,以及最新的15。还有c8051系列,以及高速usb接口的芯片,以及有很多无线收发芯片的核心是8051的。但是指令集兼容但是寄存器的复杂度就不一样了。\x0d\\x0d\说arduino的话,arduino算是一个平台,他的早起,也是最广泛的核心是基于avr单片机的。我们都戏说arduino团队是给avr收买了帮avr买芯片。既然你没问avr的我就只说说arduino的情况。他简单易懂,做毕业,原型,快速开发的时候,硬件搭设方便,基本不用你去画板子,导线连接模块就是了。代码也全是简单易懂的。基本不涉及到寄存器级。总得来说就是开发快。小量定制化还是划算。真的做产品或者研究就算了,成本高,简单高度抽象化带来就是效率底下以及资源开销大,模块数量上去后系统就撑不住了。\x0d\虽然现在也有基于stm32,fpga,lpc,pic等芯片做的arduino,但是开源库和ide的开发很多没跟上,不兼容也没办法继承avr的arduino遗产。虽然官方也出了avr32位单片机的arduino,以及arm m0,还有配合嵌入式openwrt系统的arduino yun。但是价格以及方便性简直了(更何况新的芯片大多是低压io,外接模块很少兼容。\x0d\说stm32之前要说arm,上面的人也说过了,arm有分好几个版本。只说最近的划分,一个就是带mmu内存管理的,一般需要外接ram,flash才能工作。就是你听到的手机处理器arm多少多少,还有的路由器的处理器,以及服务器的处理器。特点是跑系统。还有就是不带mmu的嵌入式,和8051一样带ram,flash。现在划分了m0 m3 m4 m7等用在嵌入式,以及m0+升级版和其他特殊版本。总之就是比8051高了不知道哪里去了的芯片。然后stm32是st意法半导体公司向arm公司购买了核心(嵌入式)版权,加上自己的外设生产的一个系列的芯片。功能强大速度快外设多。但是寄存器复杂度等和8051就不能比了。所以官方也出了库,现在还出了专门的代码生成软件cube来简化 *** 作。\x0d\\x0d\fpga就厉害多了,前面说的几种都是单片机,做运算都是一步步来的,逻辑上是串联的。fpga是并行的,单片机一次同一时间只能做一次运算,fpga只要资源够(芯片买的贵),你心情好,同时进行成百上千的运算都可以的。所以一般用在速度要求高的地方,比如视频压缩,高速网络设备等。8051,arduino,stm32,10元左右就能上,fpga不上百就没啥资源可用,连前面三都比不过。fpga也不是用c来开发的,你可以想象成是一个数学的算法然后转到电路去执行(视频压缩就是一种)。更考数学,算法类的。\x0d\\x0d\总结1,8051系列已经是辉煌的末日了。构架上已经拉后腿了,除了老代码,老系统升级,就是特定领域的芯片上使用。但是他至今还占用很大份额的原因是——大学的课本是他。\x0d\总结2,arduino就是一个玩具,玩玩可以,艺术类学生用来做互动的比较多。很多是不懂嵌入式硬件的程序员用来做东西玩。真正懂的要么直接用底层的avr要么用stm32或者其他了\x0d\总结3stm32杠杠的,值得学。在同性质的单片机里面最具性价比的。学习资料也多。\x0d\总结4 没的说太大范围了,都攘括了上一条总结的东西。\x0d\总结5高大上。学好饭碗不愁,高薪。但是怎么也得博士硕士才能干出点成绩,野路子的话是享受不到这个的。同时资料也少,入门成本高。

1、数字电路基础。做FPGA一定要有数字硬件的概念。FPGA是硬件设计,而不是软件设计,首先要有这个概念

2、硬件描述语言,Verilog或VHDL,推荐Verilog

3、主流厂家的芯片底层结构,如LogicCell、DSPBlock、时钟、IO单元等

4、EDA工具的使用,如主流厂家的集成编译环境(QuartusII、Vivado等)、仿真软件(ModelSim等)的使用

5、熟悉FPGA设计流程(仿真,综合,布局布线,时序分析)。

6、熟练掌握资源估算(特别是slice,lut,ram等资源的估算)。

7、同步设计原理。

一个合格的FPGA工程师至少在以下三个方面的一个非常熟悉:?

嵌入式应用?2DSP应用?3高速收发器应用

扩展资料

FPGA工程师的核心竞争力

1、RTL设计实现能力。也就是算法实现能力,RTL实现是FPGA工程师或者说HDL开发人员的入门首先接触到的东西;

2、硬件调试能力。包括问题定位分析能力和系统调试能力,FPGA工程师真正的核心竞争力,因为这不仅仅需要经验的积累,同时还需要很好的逻辑思维和分析能力。

另外一方面是整个硬件软件系统层次的调试能力,要看得懂原理图PCB,懂硬件,了解软件接口,现在FPGA越来越讲究-design,软件硬件这个系统层次的调试能力对人的要求更加高。

3、更加高层次的能力。还是系统层次的东西。算法和架构,怎样将一系列数学公式,转换为算法,在最终形成系统硬件的实现;

整个系统采用什么样的架构,纯FPGA,armFPGA,DSPFPGA,SOCFPGA;FPGA顶层采用什么架构,通用总线还是自定义总线,如何考虑通用性和可扩展性等等,再大至什么样的应用适合用FPGA实现。

什么样的问题适合软件实现,怎样的组合能更加低成本高效率的解决问题,这一些列问题涉及的东西有很多,基本上都是以FPGA为核心做开发要面临的问题,其实其他平台的硬件、软件产品都是类似,系统层面的问题都是复杂的问题,同时,从系统层面去优化,解决问题才是最高效率的方式。

问题是够专业了。从前端的估计到后端应用,而且连扩展资料都问了(笑~)
先来个简单的。
功能比较:
FPGA:
时序控制能力强。(时序能力强,没有指令周期,速度快)
控制能力较强(由于没有指令集,不如ARM和单片机)。
数字信号处理及算法弱(这里讲的弱是指内部不集成DSP的前提下)
DSP:
时序控制能力较弱。(没办法。有了指令集,就有指令周期。而且受到时钟约束)
控制能力较强(有指令集。但是不是专业搞控制的)
数字信号处理及算法强(专业特长嘛)
DSP和FPGA开发的概述:
DSP,专用电路(内部结构已经固定)通过对RAM内部的指令和数据工作(这个是CPU和ARM等等的工作方式)所以开发遵循嵌入式软件的设计原则。调试应更注重于算法的实现。
FPGA,ASIC一种,经典FPGA的内部结构是寄存器+组合逻辑(查找表)。最后是按照逻辑电路进行设计。所以是属于硬件设计原则。调试除了需要关心功能以外,还需要关心电路方面的特性。比如说延迟,整体功率等等。
开发工具:
DSP仿真器,开发板。仿真器比较多,网上查吧,DSP仿真器,网上大堆的,嫌不够正规,TI网站自己找教程和datasheet。
FPGA:开发工具比较多,他分成综合工具,仿真工具和开发板,综合工具altera的Quartus和xilinx的ISE以及synplicity的synplify用的比较多。仿真么,modelsim,时序仿真利器。也是网上去找吧。多滴很~~
技术支持你不用担心~TI和Xilinx和Altera的支持非常非常地道。就一个问题。英文要好。至少你能静下心来看。上了他们的网站。你就知道什么叫专业。fpga还好,因为就几家大公司才有能力出。dsp么,具体问题具体分析咯。
选择策略方面。这个是经验谈啊:不能绝对的说。DSP么,专业性比较强。而且的确能做别的IC做不了的事情(人家里面乘法器资源没话说稳定性和效率在数字信号处理这块基本无人能出其右)FPGA呢相对来说可以运用的面比较广泛(不过也是近期的事情。其实FPGA很早就有。只是当初设计领域都是通信方面的。现在有集成CPU和DSP以及公司提供的软核的强力支持,设计面越来越广)
也就能讲这点~~希望对你有用。真正的经验。只有在你动手以后~才知道。选择那条路无所谓。关键是在这条路上走的多好。

移知FAE工程师为您解答
fpga开发板有CPU,自然能跑c。soc的原型验证必然有CPU综合到fpga去。
(后续还有问题的话,可以搜索“移知”,里面有问答专区可以提问IC行业相关的问题)

1、FPGA——现场可编程门阵列

FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

ASIC具有高性能、低功耗的优势,但它们包含的任何算法——除了那些在软件内部处理器内核执行的——其余都是“冻结的”。所以这个时候我们就需要现场可编程门阵列(FPGA)了。早期的FPGA器件的架构相对简单——只是一系列通过可编程互连的可编程模块。

用于深度学习加速的FPGA(XilinxKintex7Ultrascle)

FPGA最厉害的地方是,我们可以配置它的可编程架构来实现任意我们需要的数字功能组合。另外,我们可以以大规模并行的方式实施算法,这意味着我们可以非常迅速和有效地执行大数据的处理。

2、ASIC——特定应用集成电路

目前,在集成电路界ASIC被认为是一种为专门目的而设计的集成电路。是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。ASIC的特点是面向特定用户的需求,ASIC在批量生产时与通用集成电路相比具有体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。

用于深度学习加速的ASIC(MovidiusMyriad)

让我们从特定应用集成电路(ASIC)开始。正如其名称所表示的,这是因特定目的而创建的设备,一旦设计制造完成后电路就固定了,无法再改变。当大多数人听到这个词ASIC时,他们的“下意识”反应是,假设它是数字设备。事实上,不论它是模拟的、数字的,或两者的混合,任何定制的芯片都是一个ASIC。然而,对于这些讨论的目的,我们应该假设这是一个完全或主要部分是数字性质的芯片,任何模拟和混合信号功能是沿着物理接口线(物理层)或锁相回路(PLL)的。

FPGA设计优势

ASIC设计优势


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13510162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-22
下一篇 2023-08-22

发表评论

登录后才能评论

评论列表(0条)

保存