有关FPGA、单片机、ARM、DSP
发布网友
发布时间:2022-12-23 09:54
我来回答
共5个回答
热心网友
时间:2024-04-17 17:30
其中FPGA是一类(硬件编程),剩下的是一类(软件编程)。
单片机、ARM、DSP都是固定的(ASIC),并且内部都有CPU,依靠不同种类的CPU运行用户自定义的程序(软件)来控制不同种类的片上外设(定时器、Flash控制器、串口)执行操作。
而FPGA跟他们都不同的是他的硬件结构是可以依靠特殊的编程语言来重构的,比如可以在FPGA上放入一个单片机的核,或者将其改为ARM的核。配置好后和以上ASIC一样。
对于一个特定的问题,我们可以考虑使用硬件来实现(FPGA)或者软件来实现(单片机、ARM、DSP等)
具体实现途径取决于具体所需要处理的问题。
FPGA:具有最高的灵活性,可以根据应用来重新编程内部结构,在一些对速度要求苛刻且成本不敏感(价格最贵)的应用中例如军工、通信等较多。只是程序比较难编写。基础课是EDA。
单片机:通常是指51或者其他8位或16位MCU。具有最低的成本和最广阔的用户基础(推出时间较早)。在一些简单或成本高度敏感的应用中很常见。能够占到80%。基础课是单片机
ARM:其实和单片机类似,是由剑桥的ARM公司设计的CPU的core性能很强,大部分是32位,然后各大IC厂商拿来后再和其他片上外设(如串口、Memory控制器、GPIO、DMA控制器等)相拼接,然后组成的一个片上系统。由于出货量也不小,仅仅次于单片机。主要应用与成本相对敏感的应用中,如各种嵌入式系统(手机、平板电脑等)。基础课是单片机和ARM
DSP:也是一种处理器,其内部结构对于数字信号处理应用做了不少优化,执行时的效率提高不少,但是总体处理速度还是无法和FPGA相比。只是程序相对好编写。出货量适中,价格适中。基础课是数字信号处理。
热心网友
时间:2024-04-17 17:30
FPGA:简单的讲就是在这个片子里可以设计出你想要的简单 数字电路门电路,速度很快,应用对时间要求苛刻的地方,如采样等,还可以保密,就是把电路封装在这个片子里了,别人学不到;理论基础:数字电路、模拟电路、FPGA编程的很吃香,人才少。
单片机:适合简单的逻辑判断,加少量的简单的运算,这个网上资料很多,比较容易掌握。
ARM:片内资源丰富,应用于应用电子领域,网上资料也很多,学会了单片机这个应该没问题,只要肯花点时间。
DSP:简单点讲:适合运算,速度快,这个数学理论有一定要求,英文阅读能力强,DSP数据手册等都是英文编写的,多练手也是能比较快掌握的。
热心网友
时间:2024-04-17 17:31
前面的大神们讲的差不多啦,我就不啰嗦了
我朋友有参加过FPGA的培训,期间我也跟着TA差不多玩儿过,TA用的赛灵思,我用的altera
这个跟单片机其实没有太大关系,但是还是有些联系的,就比如说你可以在FPGA上写个单片机的电路逻辑,然后从外面的flash读入根据你定义的指令集写的程序然后运行,后面对外设的操作基本就跟单片机差不多了
但是一般FPGA都是用于大规模数字逻辑电路的设计(对于大型的半导*造业公司而言)
另外一些领域使用FPGA是看在它的数据吞吐量上,这些领域的应用一般会合DSP结合使用,一般用于图像或者有较高数据吞吐量和运算量上
做FPGA方面的工作有个特点,基本就是坐在电脑前面不停的“综合”“仿真”“测试”,这个是比较枯燥的(这个我是听说的,不一定准确),所以还是去一些FPGA专业辅导机构去问问,一般这些辅导机构都是对口的,培训完基本就有合作企业就把你要走了,我朋友的那个辅导机构就是,一般最后会有一个像模像样的项目会让你做完,但是好像有一些待毕业的硕士生就去那些机构然后就直接去一些公司了,呵呵,当时我朋友还没有毕业,后面的项目就没有参加完
根据TA的反馈,感觉培训的过程其实没什么,主要靠自己,但是关键是有一些志同道合的人一起在搞这个,交流起来学习进步还是比较快的
要不要学这个还要看跟自己的兴趣是不是跟自己的性格相符合,如果你能一天到晚坐在那儿从一堆逻辑分析仪出来的时序图上面看的不眼花的话还是可以考虑的,呵呵,我朋友表示,这个很有意思,呵呵
热心网友
时间:2024-04-17 17:31
通俗说
相同:都是可以编程的CPU
不同:fpga相当于逻辑电路性质的硬件级别处理,简单处理能力很强,做其他事肯能就不太适合
ARM:很完善的CPU各种资源很多,一般消费类电子都用这个
DSP:最好用来做算法,很贵的片子
热心网友
时间:2024-04-17 17:32
我是做FPGA的。它是可编程器件,所需要的编程语言叫做硬件描述语言Verilog或者VHDL。目前国内比较多的应用方面是网络,视频之类的。做这行的其实严格来说算是集成电路的前端设计的。很多ASIC开发公司都是拿它做原型验证的。也就是说你如果对IC前端设计有兴趣的话,是可以转做ASIC设计的。做这个需要你拥有比较扎实的电路基础。尤其是数字电路基础。需要对时序要有清晰的概念。