综合资讯 技术文章 原文阅读 在线商城 下载专区 DATASHEET 技术论坛 商务频道

电子技术 | 技术资料 | 嵌入式系统 | 单片机专题 | DSP专题
EDA/PLD专题 | 电源技术专题 | 电子制作专题 | 其他综合 | 芯片选型

所在的位置:首页在线阅读嵌入式系统S3C44b0 ARM7开发板入门[电子图书]正文
 
第五章ARM开发板_s3c44b0基础实验_5.1.2. 实验原理-1

5.1.2. 实验原理

内存控制器

S3C44B0X 处理器的内存控制器可以为片外内存存取提供必要的控制信号,它主要包括以下特点:

*        

支持数据存储器的大/少端选择(通过外部引脚来选择)。

*         地址空间:包含8 个地址空间,每个地址空间的大小为32M 字节,总共有256M 字节的地址空间。 

*         所有地址空间都可以通过程序设定为8 位、16 位或32 位存取方式。

*         8个地址空间中,Bank0~Bank5可支持ROM、SRAM 等内存,2 个用于ROM、SRAM和FP/EDO/SDRAM 等内存。

*         7 个地址空间的起始地址及空间大小是固定的。1 个地址空间的起始地址和空间大小是可变的。

*         所有内存空间的存取周期都可以通过程序设定。

*         提供外部扩充总线的等待周期。

*         支持DRAM/SDARM 自动刷新。

*         支持地址对称或非地址对称的DRAM。

5-1 S3C44B0X 复位后的内存地址分配

 

3-1 S3C44B0X 复位后的内存地址分配图。从图中可以看出,特殊功能寄存器位于0X01C00000 0X02000000 4M 空间内。Bank0-Bank5 的起始地址和空间大小都是固定的,Bank6的起始地址是固定的,但是空间大小和Bank7一样是可变的,可以设定为2/4/8/16/32MBank6 Bank7 的详细的地址和空间。大小的关系可以参考表5-1

5-1

地址

2M

4M

8M

16M

32M

Bank6

开始地址

0xc00_0000

0xc00_0000

0xc00_0000

0xc00_0000

0xc00_0000

结束地址

0xc1f_ffff

0xc3f_ffff

0xc7f_ffff

0xcff_ffff

0xdff_ffff

Bank7

开始地址

0xc20_0000

0xc40_0000

0xc80_0000

0xd00_0000

0xe00_0000

结束地址

0xc3f_ffff

0xc7f_ffff

0xcff_ffff

0xdff_ffff

0xfff_ffff

 

大/小ENDIAN 模式选择

处理器复位时(nRESET 为低),通过ENDIAN 引脚选择所使用的ENDIAN模式。ENDIAN引脚通过下拉电阻与Vss 连接,定义为Little endian 模式;ENDIAN引脚通过上拉电阻和Vdd 连接,则定义为Big endian 模式。如表5-2 所示。

 

 

5-2 /endian 模式

ENDIAN

模式

0

Little endian

1

Big endian

 

 

BANK0 总线宽度

BANK0nGCS0)的数据总线宽度可以设定为8 位、16 位或32 位。因为BANK0为启动ROM(映像地址为0X00000000)所在的空间,所以必须在第一次存取ROM 前设定BANK0 数据宽度,该数据宽度是由复位后OM[1:0]的逻辑电位决定的,表5-3 所示。

5-3 数据宽度选择

OM1

OM0

模式

0

0

8-bit

0

1

16-bit

1

0

32-bit

1

1

Test Mode

 

内存控制专用寄存器

寄存器

地址

R/W

描述

复位值

BWSCON

0X01C80000

R/W

总线宽度/等待控制寄存器

0X000000

5-4 总线宽度/等待控制寄存器(BWSCON

 

 

内存控制专用寄存器

BWSCON

描述

初始状态

ST7

[31]

该位确定BANK7上的SRAM 是否使用UB/LB

0- 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS7

[30]

该位确定BANK7上的SRAM存储器的等待状态

0- WAIT disable

1 = WAIT enable

0

DW7

[29:28]

该两位确定BANK7的数据总县宽度

00 = 8-bit

01 = 16-bit

10 = 32-bit

0

ST6

[27]

该位确定BANK6上的SRAM 是否使用UB/LB

0- 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS6

[26]

该位确定BANK6上的SRAM存储器的等待状态

0- WAIT disable

1 = WAIT enable

0

DW6

[25:24]

该两位确定BANK6的数据总县宽度

00 = 8-bit

01 = 16-bit,

10 = 32-bit

0

ST5

[23]

该位确定BANK5上的SRAM 是否使用UB/LB

0- 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS5

[22]

该位确定BANK5上的存储器的等待状态

0- WAIT disable

1 = WAIT enable

0

DW5

[21:20]

该两位确定BANK5的数据总县宽度

00 = 8-bit

01 = 16-bit

10 = 32-bit

0

ST4

[19]

该位确定BANK4上的SRAM 是否使用UB/LB6

0 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS4

[18]

该位确定BANK4上的存储器的等待状态

0- WAIT disable

1 = WAIT enable

0

DW4

[17:16]

该两位确定BANK4的数据总县宽度

00 = 8-bit

 01 = 16-bit,

10 = 32-bit

0

ST3

[15]

该位确定BANK3上的SRAM 是否使用UB/LB

0- 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS3

[14]

该位确定BANK3上的存储器的等待状态

0- WAIT disable

1 = WAIT enabl

0

DW3

[13:12]

该两位确定BANK3的数据总县宽度

00 = 8-bit

01 = 16-bit,

10 = 32-bit

0

ST2

[11]

该位确定BANK2上的SRAM 是否使用UB/LB

00- 不使用(PIN[14:11] 作为nWBE[3:0])

11- 使用(PIN[14:11] 作为nBE[3:0])

0

WS2

[10]

该位确定BANK2上的存储器的等待状态

0- WAIT disable

1 = WAIT enable

0

DW2

[9:8]

该两位确定BANK2的数据总县宽度

00 = 8-bit

01 = 16-bit

10 = 32-bit

0

ST1

[7]

该位确定BANK1上的SRAM 是否使用UB/LB

0- 不使用(PIN[14:11] 作为nWBE[3:0])

1- 使用(PIN[14:11] 作为nBE[3:0])

0

WS1

[6]

该位确定BANK1上的存储器的等待状态

0- WAIT disable

1 = WAIT

0

DW1

[5:4]

该两位确定BANK1的数据总县宽度

00 = 8-bit

01 = 16-bit

10 = 32-bit

0

DW0

[2:1]

两位指示BANK0的数据总县宽度(ONLY READ,由OM[1:0] 脚确定)

00 = 8-bit

01 = 16-bit

10 = 32-bit

_

[ENDIAN]

[0]

指示系统选定的大/小端模式,

0 表示小端模式

1表示大端模式。

-


返回 上一页 下一页   信息发布:工号01   转引自: 【 】 【打印】 【关闭

关于我们 ┋ 友情链接


深圳市福田区海滨广场福业大厦12C
电话:0755-88305872 传真:0755-88305880
Copyright©2005-2007 无忧电子开发网版权所有

粤ICP备05064233号