S3C2410简介
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.7.3 存储器控制器(续1)
— 可通过软件选择大小端 — 地址空间:每个Bank 128Mbytes (总共 1GB) —除 bank0 (16/32-bit) 外,所有的Bank都可以通过编程选择总线宽度 = (8/16/32-bit) — 共 8 个banks
前6个Bank用于控制 ROM, SRAM, etc.
通过提供一系列完整的系统外围设备,S3C2410A大大减少了
整个系统的成本,消除了为系统配置额外器件的需要。
S3C2410X和S3C2410A的区别
(1) A/D 9位升到10位; (2) MMC 的接口频率从10M 升到 20M。 其他功能一样!管脚兼容,封装一样。
S3C2410A可以替代S3C2410X。 S3C2410X01已经停产。
OM [1:0] = 00 OM [1:0] = 01 从Nand Flash 启动; 从16位宽的ROM启动;
OM [1:0] = 10
OM [1:0] = 11
从32位宽的ROM启动;
TEST模式。
2.7.3 存储器控制器
FLASH ROM属于真正的单电压芯片,在使用上很类似 EPROM,因此,有些书籍上便把FLASH ROM作为EPROM的一 种。事实上,二者还是有差别的。 FLASH ROM在擦除时,也要执行专用的刷新程序,但是在 删除资料时,并非以Byte为基本单位,而是以Sector(又称Block)为 最小单位,Sector的大小随厂商的不同而有所不同;只有在写入时 ,才以Byte为最小单位写入; FLASH ROM芯片的读和写操作都是在单电压下进行,不需 跳线,只利用专用程序即可方便地修改其内容。 DRAM,动态随机存取存储器,需要不断的刷新(ms级),才 能保存数据。而且是行列地址复用的,许多都有页模式。
NAND Flash与NOR Flash是有很大不同的。 NOR Flash带有SRAM接口,有足够的地址引脚来寻址,可以 很容易地存取其内部的每一个字节。
NAND Flash用复杂的I/O口来串行地存取数据,各个产品或
厂商的方法各不相同。8个引脚用来传送控制、地址和数据信息。
所 有 Flash 器 件 都 受 位 交 换 现 象 的 困 扰 , 此 问 题 更 多 见 于
I2S
GPIO RTC
LCD DMA LCD Cont.
4 Channel DMA Controller
Memory Cont.
ADC
S3C2410A的272 脚FBGA 封装
2.7.2 S3C2410A 的启动
S3C2410A支持从NAND Flash启动,NAND Flash具 有容量大,比NOR Flash价格低等特点。系统采用NAND Flash与SDRAM组合,可以获得非常高的性价比。 S3C4120X具有三种启动方式,可通过OM [1:0]管脚 (OM0为管脚U14, OM1为管脚U15)进行选择。
2.7.5 时钟和电源管理
时钟和电源由3部分组成:时钟控制、USB控制和 电源控制。
(3) 电源控制 S3C2410A通过4种电源管理模式有效地控制了功耗:
NORMAL模式
SLOW模式 ID 输入/输出口
S3C2410A 有117多功能I/O口,它们分别是:
NAND Flash。必须采用错误检测/错误更正(EDC/ECC)算法确保 可靠性。
2.7.5 时钟和电源管理
时钟和电源由3部分组成:时钟控制、USB控制和 电源控制。
(1) 时钟控制 S3C2410A能够产生3种时钟信号,分别是: FCLK应用于CPU的时钟, HCLK用于AHB Bus各种外围设备, PCLK 用于APB Bus各种接口设备。 其中FCLK 应用的就是MPLL的频率,不用设置。 (2) USB控制 主要对USB的时钟参数进行配置。
0x4800000c
0x48000010 0x48000014 0x48000018 0x4800001c 0x48000020
R/W
R/W R/W R/W R/W R/W
BANK2 控制
BANK3 控制 BANK4 控制 BANK5 控制 BANK6 控制 BANK7 控制
0x0700
0x0700 0x0700 0x0700 0x18008 0x18008
2.7.3 存储器控制器
SRAM,静态的随机存取存储器,加电情况下,不需要刷 新,数据不会丢失,而且,一般不是行列地址复用的。需要更 大的硅片面积,成本较高。它的存取时间比DRAM要短得多, 经常用于Cache。 SDRAM,同步的DRAM,即数据读写需要时钟来同步。 因而能够工作在较高的时钟频率下。数据从存储元(memory cell) 被流水化地取出,最后突发式(burst)输出到总线。 DRAM和SDRAM由于实现工艺问题,容量较SRAM大。 但是读写速度不如SRAM。
2.7.1 内部结构
UARTS
Power Management
USB Devices
SDI/MMC Watchdog Timer
Clock Cont.
Interrupt Cont.
ARM920T Core 200MHz
JTAG
BUS Cont.
Bridge SPI I2C
AHB
Bus Cont. Arbiter/Decoder USB HostCONT. NandFlash Cont.
(1)总线宽度和等待控制寄存器BWSCON
寄存器 BWSCON 地址 0x48000000 读/写 R/W 功能 总线宽度和等待控制 复位后的值 0x000000
bank0的数据总线(nGCS0)必须首先设置成16 位或32 位的。因为 bank0 通常作为引导ROM 区(映射到地址0x0000-0000),在复位时,系 统将检测OM[1:0]上的逻辑电平,并据此来决定bank0 的总线宽度。 BWSCON寄存器描述了bank1~bank7数据总线宽度和等待控制。总 线宽度可以是8位、16位和32位。每个bank_n(n=1~7)用该寄存器的4位 来描述,分别是UB/LB(即高8位和低8位)、是否需要总线访问等待周 期、数据总线宽度的是多少(占用了2位)。 如果对每个bank使能WAIT功能,当对某个bank区进行访问时, nOE的低电平有效时间就会在nWAIT引脚的控制下延长。从tacc-1时 刻开始检测nWAIT的状态。在采样到nWAIT为高电平后的下一个时钟 ,nOE将恢复高电平。nWAIT对nWE信号的作用与对nOE信号相同。
2.7.6 输入/输出口
(2) 输入/输出口数据寄存器(GPADAT-GPHDAT) 如果管脚被置成输出方式则可以向相应的位写数据;如果
管脚被置成输入方式则可以从相应的位读数据。
2.7.4 NAND Flash控制器
当前,NOR flash存储器的价格比较昂贵,而SDRAM和 NAND flash存储器的价格相对来说比较合适,这样就激发了 一些用户产生希望从NAND flash启动和引导系统,而在 SDRAM上执行主程序代码的想法。 S3C2410A恰好满足这一要求,它可以实现从NAND flash上 执行引导程序。 S3C2410A具备一个内部SRAM缓冲器--“Steppingstone”。 当系统启动时,NAND flash存储器的前面4KByte字节将被自 动载入到Steppingstone中,然后系统自动执行这些载入的引 导代码。
★ 1个LCD控制器(支持STN和TFT带有触摸屏的液晶显示器); ★ SDRAM控制器; ★ 3个通道的UART; ★ 4个通道的DMA;
2.7 S3C2410 ARM微处理器简介
★ 4个具有PWM功能的计时器和1个内部时钟;
★ 8通道的10位ADC;
★ 触摸屏接口; ★ I2C总线接口; ★ 1个USB主机接口,1个USB设备接口; ★ 2个SPI接口; ★ SD接口和MMC卡接口; ★ 117位通用I/O口和24位外部中断源。
嵌入式系统的原理及应用
2.7 S3C2410 ARM微处理器简介
Samsung 公司推出的16/32位RISC处理器S3C2410A, 为手持设备和一般类型应用提供了低价格、低功耗、高性 能小型微控制器的解决方案。采用272 脚FBGA 封装,内含 一个ARM920T 内核。为了降低系统成本,S3C2410A 提供 了以下丰富的片内外围:
2.7 S3C2410 ARM微处理器简介
S3C2410A采用了ARM920T内核,0.18um工艺的CMOS标准 宏单元和存储器单元。它的低功耗、精简和出色的全静态设计特 别适用于对成本和功耗敏感的应用。同样它还采用了一种叫做 AMBA新型总线结构。 S3C2410A显著特性是CPU核心。 ARM920T实现了MMU,AMBA BUS和Harvard高速缓冲体 系结构。这一结构具有独立的16kB指令Cache和16kB数据Cache, 每个都是由8字长的行(line)构成。
2.7.3 存储器控制器(续1)
存储器控制是通过相关的寄存器来实施的。
寄存器分为控制寄存器和状态寄存器。可以给控制寄
存器赋值以得到所需要的状态,而状态寄存器会根据情况自
行产生变化。不要试图控制状态寄存器。
存储器控制器是由若干寄存器组成。了解这些寄存器 ,就可以阅读或编写Bootloader程序了。
写NAND flash命令到NFCMD寄存器;
写NAND flash地址到NFADDR寄存器; 在读写数据时,通过NFSTAT寄存器来获得NAND flash 的状态信息。应该在读操作前或写入之后检查R/nB信号 (准备好/忙信号); 通过NFDATA读写数据。
NAND Flash与NOR Flash
— Port A (GPA): 23-输出口 — Port B (GPB): 11-输入/输出口 — Port C (GPC): 16-输入/输出口 — Port D (GPD): 16-输入/输出口 — Port E (GPE): 16-输入/输出口
— Port F (GPF): 8-输入/输出口
— Port G (GPG): 16-输入/输出口 — Port H (GPH): 11-输入/输出口
2.7.6 输入/输出口
每个口通过三个寄存器进行配置及读写数据。分别是: GPxCON、GPxDAT、GPyUP,其中x为A~H,y为B~H。
(1) 输入/输出口配置寄存器(GPACON-GPHCON) 在S3C2410A中大多数输入/输出口引脚是复用的,因此需要 用输入/输出口控制寄存器来确定每个引脚的功能。 如果GPF0 – GPF7 和 GPG0 – GPG7为Power-OFF模式下的 唤醒信号,那么这些管脚必须被配置成中断模式。
(2) 组控制寄存器(nGCS0~ nGCS7)
寄存器 地址 读/写 功能 BANK0 控制 BANK1 控制 复位后的值 BANKCON0 BANKCON1 0x48000004 0x48000008 R/W R/W 0x0700 0x0700
BANKCON2
BANKCON3 BANKCON4 BANKCON5 BANKCON6 BANKCON7
CPU操作 (boot代码) Steppingstone (4KB Buffer)
自动启动模式
Nand Flash 控制器 用户程序操作
Nand Flash 存储器
特殊功能寄存器
Nand Flash模式
图2.9 Nand Flash 工作方式
NAND FLASH 模式配置
通过NFCONF寄存器配置NAND flash;
最后2个Bank用于控制 ROM, SRAM, SDRAM, etc . — 7个Bank固定起始地址;
— 最后一个Bank可调整起始地址;
— 最后两个Bank大小可编程; —所有Bank存储周期可编程控制。
2.7.3 存储器控制器(续2)
与存储器有关的寄存器主要有: (1) 总线宽度和等待控制寄存器BWSCON ; (2) 组控制寄存器BANKCONn ; (3) REFRESH控制寄存器; (4) BANKSIZE控制寄存器; (5) SDRAM模式控制寄存器MRSRB6,MRSRB7 。