嵌入式系统原理及应用教程
主讲内容第1章 嵌入式系统概述 第2章 ARM微处理器概述与编程模型
第3章 第4章 第5章 第6章 第7章
ARM9指令系统 嵌入式程序设计基础 嵌入式内部可编程模块 嵌入式接口技术应用 软件开发环境
第5章 嵌入式内部可编程模块S3C2440A 内部除了 ARM920T 内核外,还包括很多模块如:
存储器I/O端口 中断系统 看门狗 RTC
Timer部件UART ADC及触摸屏接口
其中许多是可编程控制的,下面将介绍其中的重要模块。
5.1 存储控制模块嵌入式系统中,存储系统差别很大,可包含多种类型 的存储器件,如FLASH,SRAM,SDRAM,ROM 等,这些不同类型的存储器件速度和宽度等各不相同;
在访问存储单元时,可能采取平板式的地址映射机制 对其操作,或需要使用虚拟地址对其进行读写; 系统中,需引入存储保护机制,增强系统的安全性。 为适应如此复杂的存储体系要求,ARM处理器中引 入了存储管理单元来管理存储系统。
5.1.1 存储器控制器S3C2440A片内集成了存储器控制器,提供了访问存储器 所需的全部控制信号。
1.外部存储空间特点S3C2440A芯片外部可寻址的存储空间是1GB,被分成8个存储 模块,每块128MB。如图5-1所示。S3C2440A外部存储空间有 如下特点: 支持小端/大端模式。 8个存储块中,其中6 个用于ROM,SRAM;2个用于ROM、 SRAM、SDRAM。 8个存储块中,其中7 个有固定的起始地址;最后1个起始地址 可调整。并且最后2个存储块的大小可以编程。 所有存储器块的访问周期可编程。 可用nWAIT(等待)信号来扩展外部存储器的读/写周期。 在SDRAM中支持自主刷新和省电模式。
5.1.1 存储器控制器0x40000_0000 0x3800_0000 0x3000_0000 0x2800_0000 0x2000_0000 0x1800_0000 0x1000_0000 0x800_0000 OM(1:0)=01,10 SROM/SDRAM (nGCS7) SROM/SDRAM (nGCS6)
OM(1:0)=00 SROM/SDRAM (nGCS7)SROM/SDRAM (nGCS6)
2M/4M/8M/16M /32M/64M/128M 2M/4M/8M/16M /32M/64M/128M 128M
SROM (nGCS5)SROM (nGCS4) SROM/SDRAM (nGCS3) SROM (nGCS2) SROM (nGCS1) SROM (nGCS0)
SROM (nGCS5)SROM (nGCS4) SROM/SDRAM (nGCS3) SROM (nGCS2) SROM (nGCS1) BOOT Internal SRAM(4KB)
1GB HADDR[29:0] 128M Accessible Region128M
128M 128M 128M
0x0000_0000
图5-1 S3C2440 存储空间分配图
5.1.1 存储器控制器0号存储块可以外接SDRAM类型的存储器或者具有 SDRAM接口特性的ROM存储器,其数据总线宽度应 设定为16位或32位中的一种。 因为0号存储块作为启动ROM区工作时,存储块的总 线宽度应该在第一次ROM 访问之前被决定,其依赖 于OM[0:1]在重启时的逻辑电平,如表5-1所示。
5.1.1 存储器控制器
表5-1 OM[0:1]逻辑电平的作用OM1(操作模式1)0 0 1 1
OM2(操作模式2)0 1 0 1
启动ROM 数
据宽度Nand Flash 模式 16 位 32 测试模式
5.1.1 存储器控制器
1号存储块到5号存储块也可以外接SRAM类型的存储器或者具 有SDRAM接口特性的ROM存储器,其数据总线宽度应设定为 8位、16位或32位。6号存储块、7号存储块可以外接SDRAM类 型的存储器,它们的块容量可改变,且7号存储块的起始地址 也可改变,如表5-2所示。由于数据总线的宽度可以设臵位8/16/32位中的一种,因此 S3C2440A的地址总线与存储块地址线的连接有 3种不同的方法, 如表5-3所示。 如表5-3所示,当数据总线为8位时,S3C2440A地址总线A0与 存储块A0连接,地址总线A1连接。当数据总线为16位或32位 时,地址总线A0不用,地址总线A1与存储块地址线A0连接, 地址总线A2与存储块A1连接,依此类推。
5.1.1 存储器控制器0x40000_0000 0x3800_0000 0x3000_0000 0x2800_0000 0x2000_0000 0x1800_0000 0x1000_0000 0x800_0000 OM(1:0)=01,10 SROM/SDRAM (nGCS7) SROM/SDRAM (nGCS6)
OM(1:0)=00 SROM/SDRAM (nGCS7)SROM/SDRAM (nGCS6)
2M/4M/8M/16M /32M/64M/128M 2M/4M/8M/16M /32M/64M/128M 128M
SROM (nGCS5)SROM (nGCS4) SROM/SDRAM (nGCS3) SROM (nGCS2) SROM (nGCS1) SROM (nGCS0)
SROM (nGCS5)SROM (nGCS4) SROM/SDRAM (nGCS3) SROM (nGCS2) SROM (nGCS1) BOOT Internal SRAM(4KB)
1GB HADDR[29:0] 128M Accessible Region128M
128M 128M 128M
0x0000_0000
图5-1 S3C2440 存储空间分配图
5.1.1 存储器控制器表5-2 6号和7号存储块地址地址 6号地址 2MB 4MB 8MB 16MB 32MB 64MB 128MB
起始 地址地址 起始 7号地址 地址 起始 结束 地址
0x3000 _00000x301f _ffff
0x3000 _00000x303f _ffff
0x3000 _00000x307f _ffff
0x3000 _00000x30ff _ffff
0x3000 _00000x31ff _ffff
0x3000 _00000x33ff _ffff
0x3000 _00000x37ff _ffff
0x3020 _0000 0x303f _ffff
0x3040 _0000 0x307f _ffff
0x3080 _0000 0x30ff _ffff
0x3100 _0000 0x31ff _ffff
0x3200 _0000 0x33ff _ffff
0x340 0 _0000 0x37ff _ffff
0x3800 _0000 0x3fff _ffff
5.1.1 存储器控制器表5-3 地址总线与存储块地址线的连接
存储器地址引脚
S3C2440A 地址 @8 位数据总线
S3C2440A 地址 @16 位数据总线
S3C2440A 地址 @32 位数据总线
A0
A0
A1
A1
A1
A1
A2
A2
……
…
…
…
5.1.1 存储器控制器2.存储器控制器特殊功能寄存器
(1)总线宽度和WAIT控制寄存器总线宽度和WAIT控制寄存器(BWSCON)用于
设定各个存储块的数据宽度及WAIT使能。地址为0x48000000,复位后的值为0x000000,此 寄存器可读可写。寄存器的具体定义见表5-4所示。
5.1.1 存储器控制器表5-4 BWSCON寄存器定义引脚名称 ST7 位 [31] 描述 SRAM对7号存 …… 此处隐藏:2733字,全部文档内容请下载后查看。喜欢就下载吧 ……