资料介绍
2.4 I/O管理
ARM系统完成I/O功能的标准方法是使用存储器映射I/O。这种方法使用特定的存储器地址。当从这些地址加载或向这些地址存储时,它们提供I/O功能。某些ARM系统也可能有直接存储器访问(DMA,Direct Memory Access)硬件。
外围设备(如串行线控制器)中包含一些寄存器。在存储器映射系统中,这些寄存器就像特定地址的存储器一样。(在其他的系统组织中,I/O功能可能与存储器件有不同的寻址空间。)串行线控制器可能有以下5种寄存器。
① 发送数据寄存器(只写):写入这个位置的数据被送往串行线。
② 接受数据寄存器(只读):保存从串行线送来的数据。
③ 控制寄存器(读/写):设置数据速率,管理RTS(请求发送)和其他类似信号。
④ 中断使能寄存器(读/写):控制中断的硬件事件。
⑤ 状态寄存器(读/写):指示读数据是否有效、写缓存是否满等。
要接受数据,必须用软件适当地设置器件。通常在接收到有效数据或检测到错误时产生一个中断。中断程序必须将数据复制到缓存器中并进行错误检测。
应该注意的是,存储器映射外围寄存器的行为与存储器不同。连续两次读数据寄存器,即使对该寄存器没有写操作,其结果也很可能不同。而对真正存储器的读是幂等的(idempotent)(可多次重复读,结果一致)。对外围寄存器的读操作可能清除当前值,致使下一次读结果不同。这种寄存器称为读敏感(read-sensitive)的。
当涉及读敏感寄存器时,编程必须小心。特别是不能将这种寄存器的数据复制到Cache存储器。
在许多ARM系统中,不能在用户模式下访问I/O寄存器。要访问这些器件,只能通过监控调用(SWI)或通过使用这种调用的C库函数。
注意在ARM编程中,通常将存储器的I/O区域标记为非Cache区(uncacheable),并绕过Cache访问。通常Cache与读敏感(read-sensitive)器件相互排斥。显示帧缓存器(DisplayFrame Buffers)也需要仔细考虑,通常也设为不可Cache的。
ARM系统完成I/O功能的标准方法是使用存储器映射I/O。这种方法使用特定的存储器地址。当从这些地址加载或向这些地址存储时,它们提供I/O功能。某些ARM系统也可能有直接存储器访问(DMA,Direct Memory Access)硬件。
外围设备(如串行线控制器)中包含一些寄存器。在存储器映射系统中,这些寄存器就像特定地址的存储器一样。(在其他的系统组织中,I/O功能可能与存储器件有不同的寻址空间。)串行线控制器可能有以下5种寄存器。
① 发送数据寄存器(只写):写入这个位置的数据被送往串行线。
② 接受数据寄存器(只读):保存从串行线送来的数据。
③ 控制寄存器(读/写):设置数据速率,管理RTS(请求发送)和其他类似信号。
④ 中断使能寄存器(读/写):控制中断的硬件事件。
⑤ 状态寄存器(读/写):指示读数据是否有效、写缓存是否满等。
要接受数据,必须用软件适当地设置器件。通常在接收到有效数据或检测到错误时产生一个中断。中断程序必须将数据复制到缓存器中并进行错误检测。
应该注意的是,存储器映射外围寄存器的行为与存储器不同。连续两次读数据寄存器,即使对该寄存器没有写操作,其结果也很可能不同。而对真正存储器的读是幂等的(idempotent)(可多次重复读,结果一致)。对外围寄存器的读操作可能清除当前值,致使下一次读结果不同。这种寄存器称为读敏感(read-sensitive)的。
当涉及读敏感寄存器时,编程必须小心。特别是不能将这种寄存器的数据复制到Cache存储器。
在许多ARM系统中,不能在用户模式下访问I/O寄存器。要访问这些器件,只能通过监控调用(SWI)或通过使用这种调用的C库函数。
注意在ARM编程中,通常将存储器的I/O区域标记为非Cache区(uncacheable),并绕过Cache访问。通常Cache与读敏感(read-sensitive)器件相互排斥。显示帧缓存器(DisplayFrame Buffers)也需要仔细考虑,通常也设为不可Cache的。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- STM32(F407)—— 存储区映射和存储器重映射
- PLC系统存储器与用户存储器的功能
- 存储器介绍
- 如何配置存储器保护单元(MPU) 13次下载
- 存储器映射和多功能LCD控制/驱动芯片VK2C21 7次下载
- 单片机的片内存储器和片外存储器到底有什么区别
- 什么是存储器和寄存器映射?如何访问STM32寄存器内容? 58次下载
- SDRAM存储器相关资料下载 49次下载
- 嵌入式软件开发之映像文件存储器映射调整分析 0次下载
- ARM存储器 1次下载
- 浅谈ARM之片上存储器 4次下载
- ARM基础应用实验_Flash存储器 0次下载
- 存储器及I/O空间
- 存储器.ppt 0次下载
- 存储器的分类及原理
- 内存储器主要用来存储什么 998次阅读
- 内存储器分为随机存储器和什么 1354次阅读
- 内存储器与外存储器的主要区别 5552次阅读
- 只读存储器(ROM)和随机读写存储器(RAM)的区别 4417次阅读
- 存储器的定义和分类 1465次阅读
- 存储器和寄存器的区别 2422次阅读
- 随机访问存储器(RAM)和只读存储器(ROM)的区别 2726次阅读
- PLC的存储器、I/O单元、I/O扩展接口、外设接口和电源简介 3196次阅读
- 半导体存储器有哪些类型 1.6w次阅读
- 只读存储器有哪些类型及相变存储器的详细介绍 8311次阅读
- SYS/BIOS修改存储器映射的详细步骤 3893次阅读
- 寄存器和存储器的区别 1.5w次阅读
- 计算机的存储器主要作用_计算机的存储器的分类介绍 1.1w次阅读
- STM32的存储器映射详解 2.2w次阅读
- 常见的五大ARM存储器之一:协处理器CP15 1.5w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1490次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 92次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 10次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7蓝牙设备在嵌入式领域的广泛应用
- 0.63 MB | 3次下载 | 免费
- 89天练会电子电路识图
- 5.91 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多