Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1723842
  • 博文数量: 98
  • 博客积分: 667
  • 博客等级: 上士
  • 技术积分: 1631
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-27 15:59
个人简介

一沙一世界 一树一菩提

文章分类

全部博文(98)

文章存档

2021年(8)

2020年(16)

2019年(8)

2017年(1)

2016年(11)

2015年(17)

2014年(9)

2013年(4)

2012年(19)

2011年(1)

2009年(4)

分类: 嵌入式

2021-01-11 20:48:28

最近排查stm32F7的疑难杂症,研究到汇编,所以涉及到指令集,忽然发现竟然对arm的isa各版本不是很清楚。为了搞明白isa与stm32系列芯片的对应关系,特地查了查相关资料,做记录如下,至于每个版本的体系结构或者某款芯片的详细使用情况,查阅对应资料即可:

arm微体系架构发展一共经历了armv1--armv8阶段,从armv7开始体系结构分为cortex-A/R/M系列。
A系列主要应用于复杂处理场景;
R系列主要应用于实时处理场景;
M系列主要应用于针对成本和功耗敏感的场景;

ARMv1 -- arm1
armv2 -- arm2/arm3
armv3 -- arm6/arm7
armv4 -- atrongARM/arm7/arm9
armv5 -- arm9e/arm10e/xscale
armv6 -- arm11/cortex-M0/1
armv7 -- arm cortex-A/R/M
A -- arm cortex-A32/17/15/9/8/7/5
R -- arm cortex-R4/5/7
M -- m3/m4
armv8-A -- arm cortex-A35/53/57/72/73

m0、m1属于armv6指令集 冯诺依曼 STM32F0xx 三级流水线
m3属于armv7指令集 哈佛     STM32Lxxx/F1xx/F2xx  三级流水线
m4属于armv7指令集 哈佛     STM32F4xx  三级流水线、分支预测
m7属于armv7指令集     哈佛     STM32F7xx/H7xx 6级超标量、分支预测
哈佛结构: 指令空间和数据空间分开存储,允许同时取指和取数,提高吞吐量,运算能力。以dsp/arm为代表。
冯诺依曼结构:指令空间和数据空间统一存储,总线简单,计算机发展初期都是这种结构,简单成本低。分时复用总线,取指和取数容易冲突。以intel x86为代表。
但是后来随着i-cache和d-cache空间的添加,使得冯诺依曼结构和哈佛结构界限不是那么明显了。也可以说cache的应用是2者的结合产物。
阅读(1639) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~