计算机软件及应用基于ARMT核微处理器三星SCX处理器详解PPT课件_第1页
计算机软件及应用基于ARMT核微处理器三星SCX处理器详解PPT课件_第2页
计算机软件及应用基于ARMT核微处理器三星SCX处理器详解PPT课件_第3页
计算机软件及应用基于ARMT核微处理器三星SCX处理器详解PPT课件_第4页
计算机软件及应用基于ARMT核微处理器三星SCX处理器详解PPT课件_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、S3C2410X及片内外围简介第1页/共30页S3C2410X支持大、小端模式,将存储空间分成8组(Bank),每组大小是128MB,共计1GB。第2页/共30页表表2.7 62.7 6组组/7/7组的存储器映射组的存储器映射地址地址第3页/共30页2.3.2 特殊功能寄存器 1内存控制器(Memory Controller)内存控制器为访问外部存储空间提供存储器控制信号,共有13个寄存器。 表2.8 内存控制器 第4页/共30页 (1)BWSCON 总线宽度控制寄存器 用来控制各组存储器的总线宽度和访问周期,各位定义: 3131 ST7 ST7 确定存储器确定存储器7 7组对应组对应 UB/

2、LB UB/LB 端接口,端接口,0 =0 =不使用不使用 UB/LB UB/LB ,UB/LBUB/LB端与端与nWBE3:0nWBE3:0相连;相连;1 = 1 = 使用使用UB/LB UB/LB ,UB/LBUB/LB端与端与nBE3:0nBE3:0相连。相连。 2727 ST6 ST6、2323 ST5 ST5、1919 ST4 ST4、1515 ST3 ST3、11 ST211 ST2、77 ST1 ST1同上,同上, 3030 WS7 WS7 确定存储器组确定存储器组7 7的的WAITWAIT状态,状态,0=0=禁止禁止WAITWAIT,1=1=使能使能 WAIT WAIT 。 2

3、626 WS6 WS6、2222 WS5 WS5、1818 WS4 WS4、1414 WS3 WS3、1010 WS2 WS2、6 WS16 WS1同上。同上。 0 = WAIT disable 1 = WAIT enable0 = WAIT disable 1 = WAIT enable第5页/共30页29:28 DW7 确定存储器7组的数据总线宽度。00=字节(8位)、01=半字(16位)、10=字(32位)、11=保留。25:24 DW6、21:20 DW5、17:16 DW4、13:12 DW3、9:8 DW2、5:4 DW1。同上。 2:1 DW0 确定存储器0组的数据总线宽度,只读

4、位,由OM1:0状态决定。01=半字(16位)、10=字(32位)。(2 2)BANKCONn BANKCONn 控制寄存器控制寄存器 BANKCONn 控制寄存器用于控制各组nGCS的时序,各位定义如下:14:13 Tacs nGCSn有效前地址的建立时间。00 = 0 个时钟、01 = 1个时钟、10 = 2个时钟、11 = 4个时钟第6页/共30页 12:1112:11 Tcos nOE Tcos nOE有效前芯片选择信号的建有效前芯片选择信号的建立时间。立时间。 00 = 0个时钟、01 = 1个时钟、10 = 2个时钟、11 = 4个时钟 10:810:8 Tacc Tacc 访问周

5、期访问周期000 = 1个时钟、001 = 2个时钟、010 = 3个时钟、011 = 4个时钟100 = 6个时钟、101 = 8个时钟、110 =10个时钟、111 =14个时钟 7:67:6 Tcoh nOE Tcoh nOE无效后芯片选择信号的保持无效后芯片选择信号的保持时间。时间。00 = 0个时钟、01 = 1个时钟、10 = 2个时钟、11 = 4个时钟第7页/共30页 5:45:4 Tcah nGCSn Tcah nGCSn无效后芯片地址信号的保持时间。无效后芯片地址信号的保持时间。00 = 0个时钟、01 = 1个时钟、10 = 2个时钟、11 = 4个时钟 3:23:2 T

6、acp Tacp 页模式的访问周期。页模式的访问周期。00 = 2个时钟、01 = 3个时钟、10 = 4个时钟、11 = 6个时钟 1:01:0 页模式的配置(每次读写周期数)页模式的配置(每次读写周期数)00 = 1个时钟、01 = 4个时钟、10 = 8个时钟、11 = 16个时钟第8页/共30页 当当BANKCON6BANKCON6和和BANKCON7BANKCON7中的中的MT=11MT=11时,时,BANKCON0BANKCON0BANKCON5BANKCON5的的14:014:0定义与以上相同。定义与以上相同。BANKCON6BANKCON6和和BANKCON7BANKCON7的

7、的3:03:0定义有所变化,具定义有所变化,具体如下:体如下:3:23:2 Trkd:RAS Trkd:RAS到到CASCAS的延时。的延时。00 = 2个时钟、01 = 3个时钟、10 = 4个时钟1:01:0 SCAN SCAN:列地址数目:列地址数目00 = 8位、01 = 9位、10 = 10位第9页/共30页(3 3)REFRESH REFRESH 刷新控制寄存器刷新控制寄存器 23 REFEN 刷新使能SDRAM:0 = 禁止 1 = 使能SDRAM 的刷新 22 TREFMD 设置SDRAM 的刷新方式0=自动刷新方式 1=自刷新方式 21:20 Trp 控制SDRAM 的行周期

8、 00 = 2个时钟周期 01 = 3个时钟周期 10 = 4个时钟周期 11 = 未定义第10页/共30页 19:18 Tsrc控制SDRAM 的列周期00 = 4个时钟周期 01 = 5个时钟周期 10 = 6个时钟周期 11 = 7个时钟周期 17:16 保留位 15:11 保留位 10:0 SDRAM 的刷新计数值。刷新周期刷新周期= (2= (21111 刷新计数值刷新计数值 + 1)/HCLK+ 1)/HCLK例如:如果刷新周期是例如:如果刷新周期是15.6 us15.6 us, HCLK HCLK 是是 60 MHz,60 MHz,则则: : 刷新计数器的值刷新计数器的值 = 2

9、= 21111 + 1 - 60 x15.6 = 1113 + 1 - 60 x15.6 = 1113第11页/共30页在在LinuxLinux系统的系统的/include/asm-arm/arch-/include/asm-arm/arch-s3c2410/S3C2410.hs3c2410/S3C2410.h头文件中定义了各寄存头文件中定义了各寄存器,器,其源代码如下:其源代码如下: #define bMEMCON(Nb)#define bMEMCON(Nb)_REG(0 x48000000 + _REG(0 x48000000 + (Nb)(Nb) #define BWSCON#defin

10、e BWSCONbMEMCON(0)bMEMCON(0) #define bBANKCON(Nb)#define bBANKCON(Nb)bMEMCON(Nb+1)bMEMCON(Nb+1)* *4)4) #define BANKCON0#define BANKCON0 bBANKCON(0)bBANKCON(0) #define BANKCON1#define BANKCON1 bBANKCON(1)bBANKCON(1) #define BANKCON2#define BANKCON2 bBANKCON(2)bBANKCON(2) #define BANKCON3#define BANKC

11、ON3 bBANKCON(3)bBANKCON(3)第12页/共30页 #define BANKCON4#define BANKCON4bBANKCON(4)bBANKCON(4) #define BANKCON5#define BANKCON5bBANKCON(5)bBANKCON(5) #define BANKCON6#define BANKCON6bBANKCON(6)bBANKCON(6) #define BANKCON7#define BANKCON7bBANKCON(7)bBANKCON(7) #define REFRESH#define REFRESHbMEMCON(0 x24)

12、bMEMCON(0 x24) #define BANKSIZE#define BANKSIZEbMEMCON(0 x28)bMEMCON(0 x28) #define MRSRB6#define MRSRB6bMEMCON(0 x2C)bMEMCON(0 x2C) #define MRSRB7#define MRSRB7bMEMCON(0 x30)bMEMCON(0 x30)第13页/共30页2 2Nand Flash Nand Flash 控制器控制器S3C2410XS3C2410X支持支持Nand FlashNand Flash启动,启动代码存储在启动,启动代码存储在Nand Nand F

13、lashFlash上。启动时,上。启动时,Nand FlashNand Flash的前的前4KB4KB(OM1:0=0OM1:0=0,地址,地址为为0 x000000000 x00000000) 将被装载到内部的固定地址中,然后开始将被装载到内部的固定地址中,然后开始执行其中的启动代码。一般情况下,该启动代码会把执行其中的启动代码。一般情况下,该启动代码会把Nand Nand FlashFlash中的内容拷贝到中的内容拷贝到SDRAMSDRAM中去,拷贝完后,主程序将在中去,拷贝完后,主程序将在SDRAMSDRAM中执行。操作流程如图中执行。操作流程如图2.102.10所示。所示。 第14页/

14、共30页自动引导模式流程: 复位; 如果自动引导模式使能,Nand Flash中的前4KB代码拷贝到内部的小石头区域; 小石头映射到nGCS0; CPU开始执行小石头区域中的代码。Nand Flash模式: 通过NFCONF寄存器设置Nand Flash配置; 把Nand Flash命令写入NFCMD寄存器; 把Nand Flash地址写入NFADDR寄存器; 读/写数据同时通过NFSTAT寄存器检测Nand Flash状态。读操作前或者程序执行后检查R/nB信号。 第15页/共30页 (1) NFCONF (1) NFCONF 配置寄存器配置寄存器15 Enable/Disable15 En

15、able/Disable:NAND Flash NAND Flash 控制使能。控制使能。 0 =禁止 NAND Flash 控制器 1 = 使能 NAND Flash 控制器 复位后该位自动清零,访问复位后该位自动清零,访问NAND FlashNAND Flash,必须使,必须使该位置该位置1 1。14:13 14:13 保留位保留位12 12 初始化初始化ECC ECC 解码解码/ /编码编码 0 =0 =不初始化不初始化ECCECC,1= 1= 初始化初始化 ECCECC,因为,因为S3C2410 S3C2410 只支持只支持512512字节的字节的ECCECC检测检测, , 所以,每初

16、始化所以,每初始化512512字节需初始化字节需初始化 ECC ECC 。11 NAND Flash11 NAND Flash存储器的存储器的nFCE nFCE 控制使能位:控制使能位:第16页/共30页0= NAND flash nFCE0= NAND flash nFCE(使能(使能) )、1=NAND flash 1=NAND flash nFCE (nFCE (无效无效) ),( (复位后复位后, nFCE , nFCE 自动为无效。自动为无效。) )10:810:8 TACLS TACLS :设置:设置TACLS CLE & ALE TACLS CLE & ALE 的

17、持续时的持续时间,设置值为间,设置值为0 07 7。持续时间持续时间 = HCLK = HCLK * * (TACLS + 1) (TACLS + 1)77 保留位保留位6:46:4 TWRPH0TWRPH0 :设置:设置TWRPH0TWRPH0的持续时间,设置的持续时间,设置值为值为0 07 7。持续时间持续时间 = HCLK = HCLK * * (TWRPH0 + 1) (TWRPH0 + 1)33 保留位保留位2:02:0 TWRPH1 TWRPH1 :设置:设置TWRPH1TWRPH1的持续时间,设置的持续时间,设置值为值为0 07 7 。持续时间持续时间 = HCLK = HCLK

18、 * * ( (TWRPH1TWRPH1 + 1) + 1)第17页/共30页(2 2)NFCMD NFCMD 命令设置寄存器命令设置寄存器15:815:8 保留位保留位7:07:0 Command Command :NAND Flash NAND Flash 存储器命令值。存储器命令值。(3 3)NFADDRNFADDR地址设置寄存器地址设置寄存器15:8 15:8 保留位保留位7:0 Address 7:0 Address :NAND flash NAND flash 存储器地址值。存储器地址值。(4 4)NFDATA NFDATA 数据寄存器数据寄存器15:815:8 保留位保留位7:0

19、7:0 Data Data :NAND FlashNAND Flash存储器的读出数据或写入编程数据。存储器的读出数据或写入编程数据。(5 5)NFSTAT NFSTAT 操作状态寄存器操作状态寄存器16:116:1 保留位保留位0 RnB0 RnB:NAND FlashNAND Flash存储器就绪存储器就绪/ /忙标志位,由忙标志位,由R/nBR/nB引脚检测引脚检测0 = NAND Flash 0 = NAND Flash 存储器为存储器为“忙忙”, 1 = NAND Flash1 = NAND Flash存储器为存储器为“准备就绪准备就绪”。第18页/共30页(6 6)NFECC NF

20、ECC 纠错码寄存器纠错码寄存器 23:16 ECC223:16 ECC2:纠错码:纠错码 #2#2。 15:8 ECC115:8 ECC1:纠错码:纠错码 #1#1。 7:0 ECC07:0 ECC0:纠错码:纠错码 #0#0。第19页/共30页 在在LinuxLinux系统的系统的/include/asm-arm/arch-/include/asm-arm/arch-s3c2410/S3C2410.hs3c2410/S3C2410.h头文件中定义了各头文件中定义了各Nand Nand FlashFlash控制寄存器控制寄存器. . 其源代码如下:其源代码如下:#define bNAND_C

21、TL(Nb) _REG(0 x4e000000 + (Nb)#define bNAND_CTL(Nb) _REG(0 x4e000000 + (Nb)#define NFCONF#define NFCONF bNAND_CTL(0 x00) bNAND_CTL(0 x00)#define NFCMD bNAND_CTL(0 x04)#define NFCMD bNAND_CTL(0 x04)#define NFADDR bNAND_CTL(0 x08)#define NFADDR bNAND_CTL(0 x08)#define NFDATA bNAND_CTL(0 x0c)#define NF

22、DATA bNAND_CTL(0 x0c)#define NFSTAT bNAND_CTL(0 x10)#define NFSTAT bNAND_CTL(0 x10)#define NFECC bNAND_CTL(0 x14)#define NFECC bNAND_CTL(0 x14)第20页/共30页3 3时钟和电源管理时钟和电源管理 S3C2410XS3C2410X的主时钟由外部晶振或者的主时钟由外部晶振或者外部时钟提供,选择后可以生成外部时钟提供,选择后可以生成3 3种时钟种时钟信号,分别是信号,分别是CPUCPU使用的使用的FCLKFCLK,AHBAHB总总线使用的线使用的HCLKHC

23、LK和和APBAPB总线使用的总线使用的PCLKPCLK。时钟管理模块同时拥有两个锁相环,一时钟管理模块同时拥有两个锁相环,一个称为个称为MPLLMPLL,用于,用于FCLKFCLK、HCLKHCLK和和PCLKPCLK;另一个称为;另一个称为UPLLUPLL,用于,用于USBUSB设备。设备。第21页/共30页(1 1)时钟源选择对时钟的选择是通过)时钟源选择对时钟的选择是通过OM3:2OM3:2实现的,如表实现的,如表2.102.10所示。所示。 表2.10 时钟源选择 OM3:2=00B时,晶体为MPLL CLK和UPLL CLK提供时钟源;OM3:2=01B时,晶体为MPLL CLK提

24、供时钟源,EXTCLK为UPLL CLK提供时钟源;OM3:2=10B时,EXTCLK为MPLL CLK提供时钟源,晶体为UPLL CLK提供时钟源;OM3:2=11B时,EXTCLK为MPLL CLK和UPLL CLK提供时钟。 第22页/共30页(2 2)时钟控制逻辑。)时钟控制逻辑。时钟控制逻辑决定了所使用的时钟源,是采用MPLL作为FCLK,还是采用外部时钟。复位后,Fin直接传递给FCLK,即使不想改变默认的PLLCON值,也需要重新写一遍。FCLK由ARM920T核使用,HCLK提供给AHB总线,PCLK提供给了APB总线。S3C2410X支持HCLK、FCLK和PCLK的分频选择

25、,其比率是通过CLKDIV寄存器中的HDIVN和PDIVN控制的,如表2.11所示。表2.11 分频设定表 第23页/共30页(3 3)电源管理。)电源管理。S3C2410X电源管理模块通过4种模式有效地控制功耗,即:Normal模式、Slow模式、Idle模式和Power-off模式。图2.12所示了S3C2410电源管理模式的转换关系。图2.12 S3C2410电源管理转换模式 第24页/共30页NormalNormal模式:模式:为为CPUCPU和所有的外设提供时钟,所和所有的外设提供时钟,所有的外设开启时,该模式下的功耗最大。这种模式有的外设开启时,该模式下的功耗最大。这种模式允许用户

26、通过软件控制外设,可以断开提供给外设允许用户通过软件控制外设,可以断开提供给外设的时钟以降低功耗。的时钟以降低功耗。SlowSlow模式:模式:采用外部时钟生成采用外部时钟生成FCLKFCLK的方式,此时的方式,此时电源的功耗取决于外部时钟。电源的功耗取决于外部时钟。IdleIdle模式:模式:断开断开FCLKFCLK与与CPUCPU核的连接,外设保持正核的连接,外设保持正常,该模式下的任何中断都可唤醒常,该模式下的任何中断都可唤醒CPUCPU。Power-offPower-off模式:模式:断开内部电源,只给内部的唤醒断开内部电源,只给内部的唤醒逻辑供电。一般模式下需要两个电源,一个提供给逻

27、辑供电。一般模式下需要两个电源,一个提供给唤醒逻辑,另外一个提供给唤醒逻辑,另外一个提供给CPUCPU和内部逻辑,在和内部逻辑,在Power-offPower-off模式下,后一个电源关闭。该模式可以通模式下,后一个电源关闭。该模式可以通过过EINT15:0EINT15:0和和RTCRTC唤醒。唤醒。 第25页/共30页(4 4)时钟和电源管理寄存器)时钟和电源管理寄存器 S3C2410XS3C2410X通过控制寄存器实现对时钟和电源的管通过控制寄存器实现对时钟和电源的管理,相关寄存器如表理,相关寄存器如表2.122.12所示。所示。表2.12 时钟控制器第26页/共30页表2.12 时钟控制

28、器( (续) )第27页/共30页#define Olocktime #define Olocktime 0 x000 x00 / /* * R/W, PLL lock R/W, PLL lock time count register time count register * */ /#define oMPLLCON#define oMPLLCON0 x040 x04 / /* * R/W, MPLL R/W, MPLL configuration register configuration register * */ /#define oUPLLCON#define oUPLLCON0 x080 x08 / /* * R/W, UPLL R/W, UPLL confi

温馨提示

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

最新文档

评论

0/150

提交评论