打印
[新唐博主]

单片机、ARM、FPGA 嵌入式这些有什么区别?

[复制链接]
532|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
麻花油条|  楼主 | 2023-4-18 09:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机的特点:
(1)受集成度限制,片内存储器容量较小,一般内ROM:8KB以下;
(2)内RAM:256KB以内。
(3)可靠性高
(4)易扩展
(5)控制功能强

(6)易于开发


使用特权

评论回复
沙发
麻花油条|  楼主 | 2023-4-18 09:54 | 只看该作者
ARM的特点:
(1) 自带廉价的程序存储器(FLASH)和非易失的数据存储器(EEPROM)。这些存储器可多次电擦写,使程序开发实验更加方便,工作更可靠。
(2) 高速度,低功耗。在和M51单片机外接相同晶振条件下,AVR单片机的工作速度是M51单片机的30-40倍;并且增加了休眠功能及CMOS技术,使其功耗远低于M51单片机。
(3) 工业级产品。具有大电流输出可直接驱动SSR和继电器,有看门狗定时器,防止程序走飞,从而提高了产品的抗干扰能力。
(4) 超功能精简指令,具有32个通用工作寄存器,相当于M51单片机中32个累加器!从而克服了单一累加器工作的瓶颈效应。
(5) 程序下载方便。AVR单片机即可并行下载也可串行下载,无需昂贵的编程器。此外,还可以在线下载!也就是说可以直接在电路板上进行程序修改和烧录。
(6) 具有模拟比较器、脉宽调制器、模数转换功能。使得工业控制中的模拟信号处理更为简单方便。
(7) 并行口、定时计数器、中断系统等单片机内部重要资源的功能进行了大幅度提升,使之更适合工业生产过程的实时控制。
(8) 其时钟频率既可外接也可使用单片机内部自带的振荡器,其频率可在1MHz-8MHz内设置,使得硬件开发制作更为简洁。
(9) 强大的通讯功能,内置了同步串行接口SPI、通用串行接口UAST、两线串行总线接口TWI(I2C ),使网络控制、数据传送更为方便。
(10) 超级保密功能,应用程序可采用多重保护锁功能。可低价快速完成厂家产品商品化等等。除上述特点外“零外设”也是AVR嵌入式单片机的重要特征。由于该芯片已内置了程序存储器、晶振并增加了在线汇编功能。
所以AVR单片机芯片接上直流电源,下载个程序就可以独立工作。无需附加外部设备,无需使用昂贵的编程器和仿真装置。这给我们学习和开发带来了便利条件。
FPGA的特点:
(1)采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。  
(2)FPGA可做其它全定制或半定制ASIC电路的中试样片。  
(3)FPGA内部有丰富的触发器和I/O引脚。  
(4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 
(5)FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。  
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。  
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。  
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。

使用特权

评论回复
板凳
麻花油条|  楼主 | 2023-4-18 09:54 | 只看该作者
嵌入式系统的特点:
1、系统内核小
由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如Enea公司的OSE分布式系统,内核只有5K,而Windows的内核?简直没有可比性。  
2、专用性强
嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常 紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也 需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要 对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的 “升级”是完全两个概念。  
3、系统精简
嵌入式系统一般没有系统软件和应用软件的明显区分,不要求 其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。  
4、高实时性的系统软件(OS)是嵌入式软件的基本要求。而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。  
5、嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统
嵌入式系统的应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任 务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS (Real-Time Operating System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。  
6.嵌入式系统开发需要开发工具和环境。
由于其本身不具备自举开发能力, 即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套 开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬 件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的 概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。

使用特权

评论回复
地板
elephant00| | 2023-4-20 10:27 | 只看该作者
说能一句话总结一下三者的区别,我不想看那么多字

使用特权

评论回复
5
地瓜patch| | 2023-4-20 11:26 | 只看该作者
单片机裸奔,arm穿上了操作系统,fpga编程控逻辑

使用特权

评论回复
6
OKAKAKO| | 2023-4-20 13:12 | 只看该作者
个人感觉出来运算方面以及支持的外设有区别整体情况都是厂家相关的api接口,学习使用就好

使用特权

评论回复
7
jcky001| | 2023-4-20 15:38 | 只看该作者
地瓜patch 发表于 2023-4-20 11:26
单片机裸奔,arm穿上了操作系统,fpga编程控逻辑

好精辟啊

使用特权

评论回复
8
小小蚂蚁举千斤| | 2023-4-22 16:53 | 只看该作者
最大输出性能的差异吧

使用特权

评论回复
9
星辰大海不退缩| | 2023-4-23 20:12 | 只看该作者
MCU、DSP的内部结构都是由IC设计人员精心设计的,在完成相同功能时功耗和价钱都比FPGA要低的多。而且FPGA的开发本身就比较复杂,完成相同功能耗费的人力财力也要多。

使用特权

评论回复
10
中国龙芯CDX| | 2023-4-23 20:32 | 只看该作者
地瓜patch 发表于 2023-4-20 11:26
单片机裸奔,arm穿上了操作系统,fpga编程控逻辑

回答的经典到位

使用特权

评论回复
11
中国龙芯CDX| | 2023-4-23 20:33 | 只看该作者
个人感觉根本的区别其实就是额定频率下算力

使用特权

评论回复
12
星辰大海不退缩| | 2023-4-23 20:35 | 只看该作者
实质来说一般就是运行算力的差别都有API函数,核心还是二进制

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

279

主题

1448

帖子

2

粉丝