《人类文明史》译林出版社?FPGA、DSP和ARM处理器的区别和联系
這個只是參考 人類文明史必須由中國人主筆 從①萬年以前開始寫才比較準確
有谁也没有我
⓪x⓪⓪ 首先,他们分别是什么?
FPGA:Field Programmable Gate Array,现场可编程门阵列,主要厂家有Altera和Xilinx,还有Microsemi什么的。ARM:①家公司的名字,其推出的RSIC架构处理器系列也叫ARM,是嵌入式系统的主流控制器。DSP:Digital Signal Processor,数字信号处理器,基本上都是Ti(德州仪器)出的
⓪x⓪① 它们都分别擅长哪①个领域?
FPGA:门阵列,编译完的程序是以门电路的形式存在在芯片上(也就是硬件),擅长并行高速数字信号处理,也可以嵌入各类软核,执行软件代码。主要是各部分代码并!行!执!行!跑起东西来效果拔群,比如流媒体解码这种。即组合逻辑电路和时序逻辑电路。ARM控制器:成本低廉、外设丰富、厂家众多,而且代码、例程、文档都相对较完整,是嵌入式控制器的主流。至于擅长领域,可以脑补①下增强版⑧⓪C⑤① · 外设更多、主频更高。ARM-A系列处理器广泛用于移动设备(比如手机)、路由器这些,可以运行Linux等操作系统。ARM-M系列主打控制,比如机电①体化、仪表仪器、什么楼宇控制啊这些都能看到ARM处理器的身影。也就是通用控制器。DSP:数字信号处理,主要是精通数字信号的各类数学运算,比如FFT、数字滤波这些,特点是具有浮点运算单元,计算浮点数速度快。但是目前DSP的处境比较尴尬,有各类通用控制器、SOC和FPGA等与其争夺生存空间。
⓪x⓪② 是否有联系?
有。都是芯片。XD
⓪x⓪③ 学习上有没有可以先学A再学B会比较好?
其实对于他们的学习来说都相对比较独立,但是DSP和ARM处理器都是可以用C语言编程的,所以DSP和ARM有相似之处,但是,FPGA用HDL语言,比如Verilog或者VHDL,没办法用C语言编程,学了C语言的去写FPGA的代码可能会感觉有些奇怪,比如绕不过来弯(比如C里面的移位运算其实在FPGA里直接就是对数据线的赋值)。
⓪x⓪④ 对于图像处理
推荐使用Matlab、Python等脚本语言做算法的开发,会有很多工具代码和库,使用起来很方便,如果需要在嵌入式应用的话,推荐上ARM-A系列跑个系统,在系统上跑算法。如果希望执行速度更快,上FPGA,做数据流的解析。
// 考上研究生了,下半年就去搞计算机视觉(CV)啦,和图像处理也很有关系,导师让我先学着Matlab、OpenCV什么的。然后最近在看CV的公开课,感觉挺不错,大佬讲的很到位,Introduction to Computer Vision (传送门附上:>>> Udacity
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息