02 arm7 体系结构3学时2 2-2 3-arm7存储器组织_第1页
02 arm7 体系结构3学时2 2-2 3-arm7存储器组织_第2页
02 arm7 体系结构3学时2 2-2 3-arm7存储器组织_第3页
02 arm7 体系结构3学时2 2-2 3-arm7存储器组织_第4页
02 arm7 体系结构3学时2 2-2 3-arm7存储器组织_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2.2ARM存储器模型与内存IO映射1. ARM存储结构2.地址空间3. 存储器格式4. 存储器对齐5. 存储器映射的I/Ou 1. ARM存储结构特点(1) 采用冯诺依曼(Von Neumann)结构指令和数据共用0x8008一条32位数据总线;(2) 只有装载、保存和交换指令可访问存储器中的数据;(3) ARM仅定义了处理器核与存储系统之间的信号及时序(局部总线);字(word)intunigned int0x8004半字(half word)short intunsigned sh0x8002字节(byte)char unsigned c0x8000并把存储空间映射成一个线性字节空间WB

2、3WB2WB1WB0HB1HB0BYTE(字节)u(4)ARM存储结构特点现实的芯片在外部总线与处理器核的局部总线 之间有一个存储器管理部件将局部总线的信号和 时序转换为外部总线信号和时序;(5)外部总线的信号和时序与具体的芯片相关,不是ARM的标准;(6) 具体到某个芯片的外部存储系统的设计需要参考其芯片的数据手册或使用手册等资料。ARM7TDMI-S处理器edICE-RT调试访问端口存储器管理接口协处理器接口 DBGTCKEN DBGTMS DBGTDI DBGnTRSTDBGTDOCLK时钟同步CLKENEmbed扫描nIRQ DBGnTDOEN nFIQ中断nRESETADDR31:0

3、CFGBIGEND总线控制 WDATA31:0 RDATA31:0存储器接口DMORE ABORT仲裁LOCKWRITESIZE1:0DBGINSTRVALIDPROT1:0DBGRQTRANS1:0DBGBREAKDBGACKCPnTRANSDBGnEXECCPnOPCDBGEXT1 DBGEXT0 DBGENDBGRNG1调试CPnMREQCPSEQCPTBITDBGRNG0CPnIDBGCOMMRXCPADBGCOMMTXARM7将存储器看作是从0开始的线性递增的字节集合:字节0到3保存第1个存储的字字节4到7保存第2个存储的字字节8到11保存第3个存储的字依此类推一般在两者之间加入存储

4、器控制器CPB各芯片厂商制定了自己的接口时序存储器控制器存储器的 ARM7定义了局部总线的接口时序ARM7内核ARM7局部总线2.地址空间uARM结构使用单个平面的232个8位字节地址空间;字节地址按照无符号数排列,从0到2321;地址空间可以看作是包含230个32位字,或231个16位半字; 如果地址向上或向下溢出地址空间,通常会发生翻转;跳转目标的计算方法:(当前指令的地址) + 8 + 偏移量 ;下一条指令位置的计算方法:(当前指令的地址) + 4。注意:如果在取指操作时地址发生溢出,只要没有执行预取的无效指令,不会导致异常。字3. 存储器格式u半字半字地址AA+1A+2A+3地址空间的

5、规则:位于地址A的字:包含的字节位于地址A,A+1,A+2和A+3;位于地址A的半字: 包含的字节位于地址A和A+1;位于地址A+2的半字:包含的字节位于地址A+2和A+3; 位于地址A的字:A可被整除包含的半字位于地址A和A+2;0x8008半字ARM两中存储格式:字大端格式(Big-endian)小端格式(Little-endian)半字0x8004半字0x8002字节字节0x8000B3B2B1B0B1B0B1B0字节字节字节字节小端存储器系统:在小端格式中,高位数字存放在高位字节中。因 此存储器系统字节0连接到数据线70。 大端存储器系统:在大端格式中,高位数字存放在低位字节中。因 此

6、存储器系统字节0连接到数据线3124。大端模式低位地址高位地址小端模式低位地址高位地址0x12345678字数据的大小端存储方式0x780x560x340x120x120x340x560x78小端格式大端格式地址增长方向0x80040x80040x80020x80020x80000x800032位字:0x1122334432位字:0x112233440x440x220x330x440x440x330x220x11一个基于ARM内核的芯片可以只支持大端模式或小端模式,也可以两者都支持。在ARM指令集中不包含任何直接选择大小端的指令, 但是一个同时支持大小端模式的ARM芯片可以通过硬件配置(一般使

7、用芯片的引脚来配置)来匹配存储器 系统所使用的规则。注意:如果实际的存储器格式与芯片的存储器格式不符时,只有以字节为单位的数据存取才正确,否则将出现不可预期的结果。4. 存储器对齐uARM结构通常希望所有的存储器访问都合理的对齐。字访问的地址通常是字对齐的,而半字访问使用的地址是半 字对齐的。不按上述方式对齐的存储器访问称为非对齐的存储器访问。将一个非字对齐的地址写入R15寄存器,将引起非对齐的指令取指;读写一个非字对齐字地址单元,将引起非对齐的数据访问;存取半字也类似会引起非对齐访问。5.存储器映射的I/O基于ARM内核的芯片,外设访问的标准方法是使用存储器映射的I/O,为外设的每个寄存器都分配一个地址。通常,从这些地址装

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论