linux笔记-基础部分 联系客服

发布时间 : 星期一 文章linux笔记-基础部分更新完毕开始阅读

2. ARM汇编设计

a) u-boot(开始时使用到) b) uImage(开始时使用到) 3. GEC210 sch 4. s5pv210特点:

a) 地址分配 b) 启动 c) 功能 5. ARM模块

a) GPIO b) 中断 c) Timer d) LCD e) I2C

f) nand flash

二、目的:

1. 了解ARM知识

2. 会使用C/汇编设计ARM外围模块程序 3. 驱动 三、特点:

1. 针对一个具体平台部分问题,不具有普遍性 2. 重点学习思路和方法

------------------------------------------------------ 内核 uImage

1. 初级驱动 2. 高级驱动

3. linux内核基础 4. linux内核移植

------------------------------------------------------ 应用程序 rootfs

1. 文件I/O 2. 系统编程 3. 网络编程 4. Androcd 5. Java

==================================== 嵌入式系统核心

硬盘(nand) ?内存(DDR2) ? cpu( ARM s5pv210) copy 取指、执行

=====================================

37

什么是ARM:

1. ARM是一种处理器的架构,与ARM相对应的概念有x86、DSP、Powerpc、MIPS

2. ARM---Advanced RISC Machine RISC:精简指令集计算机系统 特点:1.每条指令执行的机器周期是一致的; 2.每条指令的机器码长度是固定; 3.汇编指令比较少,比较精简,指令执行效率高 CISC:复杂指令集 CISC----------》X86

3. ARM是一家英国公司的名字,公司设计ARM处理器的架构,不做芯

片生产

ARM芯片生产商:atmel、freesale、TI、nxp、microchip、bandcom

====================================== ARM的7种工作模式:

1. User (用户模式) 2. FIQ (快速中断) 3. Supervisor (管理模式) 4. Abort (中断模式) 5. IRQ (普通中断) 6. Undefined (未定义模式) 7. Securemonitor (安全模式)

====================================== ARM的特点

1.高性能、低成本; 2.低功耗、体积小;

3.多种汇编指令的寻址方式;

4.大量使用寄存器,指令的执行效率高; 5.多种操作系统支持;

====================================== ARM处理器的系列

1. MCU (嵌入式微控制器)

a) ARM7

b) cortex-M系列(M0, M1, M3, M4)

M: microcontroler

2. MPU (嵌入式微处理器)

a) ARM9 b) ARM9E c) ARM10E d) AMR11

e) cortex-A系列

38

1. A8(s5pv210 、i.MX37) 2. A9 (单核、双核、四核) 3. A15(八核)

f) cortex-A50系列:(64位) g) cortex-R系列:(secore 稳定性、安全性好) h) ON/AP:ARM+DSP

===================================== ARM+linux环境下: C语言的数据类型: char: 8bits short: 16bits int: 32bits

long: 和cpu的字长相同 unsigned、signed

===================================== cpu结构:

冯. 诺依曼 :ARM7 哈佛: ARM9

====================================== 流水线

1.无流水线: 执行完一条指令再执行第二条指令。 2.有流水线: 三级流水线:(F— fetch D—decode E—excute ) 五级流水线:

3. ARM7:三级流水线 ARM9:五级流水线

======================================== MMU---Memory Management Unit(内存管理单元) 作用:

1.内存访问权限设置

2.虚拟 地址到物理地址的映射

没有 MMU的系统: uc/os uclinux

=======================================

39

开发ARM的裸机程序 1.基于库的

库由原厂提供

cortex-M系列做C库

2.基于寄存器的

直接对寄存器ID赋值

=============================================================

2014.08.06

============================================================= 存储器类型:

----------------------------------------------------

1.RAM(内存):

a)SRAM(静态): 缺点:容量小,价格高(在SoC内部:单片机内部有

SRAM )

优点:访问速度快,功耗低

b)DRAM(动态):需要刷新时钟

a) SDRAM: 100MHZ(访问速度) b) DDSDRAM: 400 MHZ c) DDR2 SDRAM: 800 MHZ d) DDR3 SDRAM: 1600 MHZ 注:内在访问速度=2^(代数)*200M

----------------------------------------------------

2. ROM(硬盘)

a) flash:

1. NOR flash 2. one nand

3. Nand flash ( inamd : sd卡,mmc等)

b) EEPROM:(24c04 I2C)

---------------------------------------------------- 电感:

3R3 ? 3.3 uH (微亨)

101 ? 10 * 10^1 = 100 uH

电阻: 100 ? 10 *10^0 = 10 欧 103 ? 10 * 10^3 = 10k 欧 5R1 ? 5.1 欧 电容: 大电容(体积较大的电容):容积一般直接标元件上:220 ? 220 uF\\ 小电容:104 ? 10*10^4 pF = 0.1uF 103 ? 10*10^3 pF

40