TA的每日心情 | 开心 2019-11-19 15:19 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
都了解一下ARM; e! e- v' m4 s5 @, z L w
最近想学学Arm,找了点资料,共享下。9 O( V: Y' O8 h; |6 a
ARM简介% D5 }! x: ^4 f4 t( @6 s
1. ARM只卖知识产权,不卖(物理的,实质的)产品。
, s8 L+ q6 l3 a) s; D2. 全世界100多家公司购买了ARM授权,包括三星,Freescale、NXP Semiconductors、STMicroelectronics、Texas Instruments ,Toshiba,Analog Device,atmel,microsemi...具体参看ARM官网3 C* A& z# C7 R% Y
3. ARM processor family:ARM7,ARM9,ARM11,Cortex-A,Cortex-R,Cortex-M,SecurCore, |. O- u9 r* w4 \- y
4. 为了清楚地表达每个ARM应用实例所使用的指令集,ARM公司定义了6种主要的ARM指令集体系结构版本,以版本号V1~V6表示
; v& U: W* z; V% hARM架构(或内核):ARMv1,ARMv2...到ARMv8,比如ARM9,10架构为ARMv5,ARM11为ARMv6,Cortex系列为ARMv7; e% ?3 H5 C0 U4 g/ q: \" I4 A# M
(Cortex系列又包括Cortex-A,Cortex-R,Cortex-M三系列,架构也分别为ARMv7-A,ARMv7-R,ARMv7-M).
( |6 b k9 H5 ]2 O* q0 g5 I最小的64位arm架构为ARMv8。。。(细分的ARMv4T,v5E等就不说了) w' w, ~* v: p3 J/ n- i4 U
处理器 内核、
2 E0 P; G) B2 B6 a% O8 lARM7 ARMv4& ^) `" N @6 w u/ O0 f, [
ARM9,10 ARMv5: B% X+ D2 R7 U; {. C1 Z
ARM11 ARMv6
$ O) }8 {. a/ p/////////////////////
+ U# B# d& f8 Q- k/ r/ w7 BCortexA8 ARMv7
# F8 g, L/ z& M8 c* ?# V/ F" R" e0 @5 Z64bit ARMv8
8 c) [3 u0 K& J+ m$ b* W% o/ L5. ARM7是冯 诺依曼体系结构,ARM9。ARM11等是哈佛体系结构(数据和指令分开存储,分开访问速度更快)。; ]2 k$ m( F4 f, f
6. 其他分类6 _% r+ p* U( G$ I% ^9 E7 b7 i: d6 E
经典 ARM 处理器
3 v5 ^! \9 T7 I7 }- e: \2 uARM11™ 系列 - 基于 ARMv6 架构的高性能处理器7 \/ U; I. b) V8 m1 O* l
ARM9™ 系列 - 基于 ARMv5 架构的常用处理器2 ?$ F' y4 x7 r2 E9 g
ARM7™ 系列- 面向普通应用的经典处理器
, D8 n' d8 u$ k2 `4 RARM 专家处理器
n& v- x6 ^$ I5 ESecurCore™ - 面向高安全性应用的处理器。# U6 x' z4 x9 i' H
FPGA Cores - 面向 FPGA 的处理器. a7 b8 S0 H- C G! N O2 w( |
ARM Cortex 应用程序处理器
7 z' x8 f( K* T* e @0 g: FARM Cortex 嵌入式处理器
9 K7 n% j: [: D7. 授权数:! W F2 X- w* N4 ^7 f' O- P
经典 ARM 处理器 许可证数
]6 M) ~0 f( M7 m! U6 G; zARM11 系列 827 R0 k; O, ]! \& E' r# V- O
ARM9 系列 271$ U; f9 J' E4 \' T! E9 Q5 `! S
Cortex 处理器 许可证数 x$ p: a4 L( I( w
Cortex-A 86; k- z. U7 z6 b( M- ~" t( l# L5 ~
Cortex-R 22
: o* [ k9 ]$ S/ eCortex-M 123
& ~) g2 z7 T/ u: b! l0 M8. 经典 ARM 处理器:ARM7,ARM9,ARM11.
! _7 X+ C) t7 P' B% z& E4 uARM 11 之後分成三类:
* h) A& |# ?" U5 ~! t7 E/ F, e5 `Cortex - A/R/M
# Q1 p6 Q) y& l0 W7 fCortex - A 系列面向尖端的基于虚拟内存的操作系统和用户应用;
: Y1 v1 \+ d- dCortex - R 系列针对实时系统;: u; o0 s( N! y7 s- q
Cortex - M 系列对微控制器。
1 ~- D3 ?, J4 L4 S' v9.ARM7,9,11区别(网友):( b$ I! Z! w2 i6 }% o
ARM7是冯诺依慢结构
. m' {. y# C3 jARM9、ARM11是哈佛结构,所以性能要高一点。
" Z, B4 F: {% l9 q( {ARM9和ARM11大多带内存管理器,跑操作系统好一点,ARM7适合裸奔。+ r+ G0 h4 o% T! F# Y2 h$ z
不跑操作系统,价格低一点的:ARM7、cortex-M3等等。
, U4 n0 B0 p5 {( Q" V% K性价比高,可跑也可不跑操作系统的:ARM9、cortex-Rx等等。( m( D8 C% B8 {3 s% [' S
性能高的,通常要跑操作系统的:ARM10、ARM11、Cortex-A8等等。
, X7 ~$ o" D+ c5 {4 r1 z `0 U成熟的:ARM7\ARM9\ARM11。
! b+ o& |# E$ Q9 D发展趋势:Cortex-A、Cortex-R、Cortex-M。
% w" c1 T# Q7 y2 i$ j i# O. A其实弄ARM大多还是在嵌入式领域,不过现在很多上网本也开始ARM了,
g( T' i, [! j2 ~- R5 ~$ N& W估计与intel竞争的时候快来了。: Y$ t; h; o- [; ?# w2 L% r1 ~4 @* _
2410和2440都是三星公司生产的基于ARM9内核的芯,资源上相差不大,- A( G3 n/ o" V K0 O- \
2440多了camara接口,速度要更快一些。上边讲的版本是指内核版本,+ K k- | }0 n7 T4 w/ Q
而各个公司出的发行号又各有不同。比如三星的2440,atmel的9260.
6 c( {9 v% K2 p$ w# f6 Z- a就好比linux的内核版本号与红帽子的发行号不一样是一个道理。' C7 Z5 u" F9 t/ I2 f
10. cortex-m3和ARM11区别:
* ^+ @- d, _% w8 |1 lcortex-m3的架构(ARMv7)比ARM11(ARMv6)的版本高,但是cortex—m系列的芯片的应用主要在低端(就相当于一个单片机,不跑OS),( A* G2 C) u- @+ ~$ \0 X+ E, R
从性能上来说ARM11要比cortex-m3要好不少.2 M# K9 B) v# |
11.7 |4 y3 U' L# ?" N0 k
ARM7 工控用的一般是ST公司的如STR73x STM32F系列,三星的44b0,atmel的AT91系列;. b# N1 C8 {$ A) `) G& {) u
ARM9系列一般是三星公司 S3C24407 p! c! w/ d+ W" b O* u* M9 N* z6 p1 _& h
ARM11 一般是手机上用的。
( V# r) L/ @8 l处理器以架构分类可以这样分:
2 o% _% Q5 @ A, \- F(1)ARM7,ARM9属于v4T或v5E架构(2)ARM11属于v6架构
- K! E9 n! o9 k( D6 s2 w j(3)Contex属于v7架构ARM7,ARM9的区别在于是否有MMU(存储器管理单元)) s. N: M U* x" P6 ?8 i4 R" j3 o+ l
或MPU(存储器保护单元)架构上v5E相比v4T则是在于v5E新加入的增强型DSP
3 X- Q* x* e s(数字信号处理)指令,v4T则是Thumb指令集的加入,
P% ?- i% J# e5 xv6架构则是开始支持SIMD以及Thumb2的问世新指令的加入 v) E% B6 e9 h g7 \
,增强了处理器的性能或实时性
6 D7 ~6 K y3 ]# T* Y5 V12. 51单片机寄存器比较少,指令只有111条;而arm芯片寄存器较多,指令集也多,要掌握它需要耐心和时间,! G# p2 g/ Z/ j1 k+ Z# E
所以,为了简化嵌入式软件的编程工作量,生产公司把寄存器的操作搞定,封装成函数,这就是固件函数库。
6 [8 z- M9 z. H" j$ Z5 W比如意法半导体(ST.COM)的《STM32F10xxx固件函数库.pdf》。- h% ?2 ~5 t. T& ?6 H$ _
13. 学习arm编程,买开发板的话一般用arm9,arm11太贵(一般2k以上),arm7不能跑操作系统。
) v+ j1 B* |+ X- {' P2 p9 L. s: L4 ^比如:三星S3C2440开发板,mini2440开发板% Z. w+ n5 G* y
14. ARM开发需要1,硬件(带arm芯片的开发板),2,下载线或仿真器(J-Link等)及其驱动,3.集成开发环境8 D3 @+ r. x2 y5 \+ g8 R- ]
ADS(好像用的少了),MDK412-keil( arm收购),IAR Embedded Workbench for arm.6 Y: d/ u+ E: o
15. 常用系列7 n' ^+ p: ^+ P: o, B9 n( G
ST系列 ,NXP系列 , TI系列 ,ATMEL系列,Samsung 系列
* A1 A+ ~6 l8 V. e: ]" w/ G b9 [先熟悉GPIO,再熟悉串口,中断,定时器,flash等,熟悉好具体的外设操作,然后是stm32里搭建uCos系统,Linux系统。6 |6 Q* R! F# I/ e ]; z; U
最后以一句话勉励:3 y5 x) @' v! h" F) G2 z
天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。
) e) A- ^/ I9 }# L1 x V, w2 O! H | % Z' W. |8 J* d; E
|
|