查看: 4236|回复: 7

[分享] 8051和ARM Cortex-M处理器系列主要差异

[复制链接]

该用户从未签到

1

主题

2

帖子

0

新手上路

Rank: 1

积分
13
最后登录
2016-10-31
发表于 2016-10-31 15:49:04 | 显示全部楼层 |阅读模式

Cortex-M处理器系列包括广泛使用的Cortex-M3处理器、针对FPGA的Cortex-M1处理器、2009年初推出的Cortex-M0处理器(最小的 ARM 处理器)和2010年初推出的 C o r tex-M4处理器(支持浮点和数字信号处理增强指令)。这些处理器具有先进的功能特点和简单易用的编程模型,对于想从8051微控制器迁移到ARM架构的开发人员来说,极具吸引力。本文是一篇入门指南,目的是帮助8051微控制器的开发人员了解8051和A R M Cor tex-M处理器系列在架构、软件和硬件设计上的主要差异,从而加快迁移过程。

      架构概述

  对于一些嵌入式程序员(尤其是那些习惯使用汇编语言编程的程序员),首先要做的事情就是了解编程模型。

      寄存器

  ARM Cortex-M处理器具有一个32位寄存器库和一个xPSR(组合程序状态寄存器)。而8051具有ACC(累加器)、B、DPTR(数据指针)、P SW(处理器状态字)和四个各含八个寄存器的寄存器库 (R0-R7)。

  在8051中,一些指令会频繁使用某些寄存器,如ACC和 DPTR。

  这种相关性会极大降低系统的性能,而在ARM处理器中,指令可使用不同的寄存器来进行数据处理、内存存取和用作内存指针,因此不会有这个问题。

  从根本上说,ARM 架构是一个基于加载(Load)和存储(STore)的RI S C架构,处理器寄存器加载数据,然后将数据传给A LU进行单周期执行。而8051寄存器(ACC、B、PSW、SP和DPTR)可在SFR(特殊功能寄存器)的内存空间中访问。

  为了确保普通的C函数能够用作中断处理程序,在需要处理中断时,C o r t e x- M的寄存器(R 0 - R 3、R12、L R、P C和xPSR)会被自动压入堆栈,而软件仅需在必要时将其他寄存器压入堆栈。虽然8051具有4个寄存器库,但是ACC、B、D P T R和PSW寄存器并不会自动压栈,因此通常需要通过中断处理程序对这些寄存器进行软件压栈。

  寄存器

  ARM处理器具有32位寻址,可实现一个4GB的线性内存空间。该内存空间在结构上分成多个区。每个区都有各自的推荐用法(虽然并不是固定的)。统一内存架构不仅增加了内存使用的灵活性,而且降低了不同内存空间使用不同数据类型的复杂性。

  相反地,8051微控制器具有多个内存空间。内存空间的分割使得有效地利用全部内存空间变得困难,而且需要借助C语言扩展来处理不同的内存类型。


回复

使用道具 举报

  • TA的每日心情

    2021-7-13 18:31
  • 签到天数: 127 天

    连续签到: 1 天

    [LV.7]常住居民III

    19

    主题

    1229

    帖子

    1

    金牌会员

    Rank: 6Rank: 6

    积分
    6124
    最后登录
    2024-12-19
    发表于 2016-10-31 18:04:32 | 显示全部楼层
    不是一个级别的东西
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    连续签到: 1 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    16860
    最后登录
    1970-1-1
    发表于 2016-10-31 22:01:07 | 显示全部楼层
    多谢分享
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-2-13 07:08
  • 签到天数: 18 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    1

    主题

    264

    帖子

    0

    高级会员

    Rank: 4

    积分
    596
    最后登录
    2017-8-24
    发表于 2016-11-1 00:22:40 | 显示全部楼层
    签到签到,楼主,谢谢。
    来签到,来签到,早上好!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2021-7-30 13:41
  • 签到天数: 28 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    1

    主题

    161

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    387
    最后登录
    2021-12-16
    发表于 2016-11-1 09:14:13 | 显示全部楼层
    Cortex -M3 是 32 位的!
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-1-4 08:05
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    85

    主题

    1629

    帖子

    1

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2569

    优秀版主

    最后登录
    2019-3-28
    发表于 2016-11-1 09:16:43 | 显示全部楼层
    申请个LPC824,你给我扯了这么多没用的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2017-1-24 08:47
  • 签到天数: 49 天

    连续签到: 1 天

    [LV.5]常住居民I

    0

    主题

    524

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1267
    最后登录
    2017-4-19
    发表于 2016-11-1 10:07:28 | 显示全部楼层
    还是经典的入门51 好                              
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-11-13 14:54
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    1

    主题

    70

    帖子

    0

    注册会员

    Rank: 2

    积分
    137
    最后登录
    2016-11-13
    发表于 2016-11-3 21:10:21 | 显示全部楼层
    受益颇多
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-9-4 16:58 , Processed in 0.100701 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表