扩展SDRAM--64M----》128M

 

扩展SDRAM--64M----》128M  

2008-08-29 11:07:24|  分类: 硬件调试 |  标签: |字号 订阅

都是由两片构成,现在我还没有看过数据手册,在CSDN找到比较有价值的帖子。

http://topic.csdn.net/u/20080704/15/2b2b13ff-105e-47a2-b273-10fdfcd77638.html

http://forum.csdn.net/PointForum/SearchTopic.aspx?smallclassid=0cdf7b70-8fbc-4549-bf63-d23ec770a707&bigclassid=9a98fdff-e457-4ea4-badf-2a17e6b82dcd&subject=SDRAM&searchtype=small&pb=pb

http://topic.csdn.net/u/20080723/15/95154fa3-d81c-4a6c-8615-82e35fabe85c.html

/

首先,我的bootloader用的是优龙的bois,我现在已经改好了128M的sdram,正常启动。
现在我加载wince5.0 不能启动,电灯试验

BringUpWinCE  -----中点灯OK

add r0, pc, #OEMAddressTable - (. + 8)  之后点灯OK

之后就是
bl KernelStart

我为什么知道不到KernelStart在什么地方,找到了函数的实现确在eboot文件夹下,我现在直接用的是优龙的bois引导os,这个没有用吧,而且我在这个KernelStart里面进来就点灯就点不亮了。

哪位大侠知道现在程序走到什么地方呢?

我对wince的修改是
1改了OEMAddressTable 的地址映射,改原来的ram 64变为现在的128M 。

2config.bib文件中的
; RAM        8DE00000  02200000  RAM
; rework
        RAM        8DE00000  06200000  RAM
3 bank6的配置,B6_SCAN等 都是按照bois中的设置来的,肯定没有问题。

说的有点乱 这个bsp不能kitl debug 所以我就只能点灯了,大家帮帮我啊~!!!

-----------------------------------------------------

http://www.ucdragon.net/ucdragonbbs08/viewthread.php?tid=7665&extra=page%3D1
这个是我改bios的帖子。

/

前辈们好~

    我现在在s3c2440上做wince,原来的sdram是64M的,现在换成了128M的,在我开始改程序之前,wince是正常启动的,但是进入系统后看得出虽然换了128M的sdram,但是还是只认出来了64M。

    于是我开始改程序了:

    先是bois的设置,我的sdram接在bank6,我就把bank6的B6_SCAN 设置为0x2 ;代表的10bit的列地址

    wince的改动如下:

    map.a中:
    OEMAddressTable
    ;     DCD 0x8C000000, 0x30000000, 64  ; 64 MB DRAM BANK 0, 1
    DCD 0x8C000000, 0x30000000, 128  ; 128 MB DRAM BANK 0, 1
    改成了128的,然后把后面的映射的虚拟地址都后移了0x4000000,避免冲突了......

    config.bib

  ; RAM        8DE00000  02200000  RAM
  ;    rework by kw.gx
        RAM        8DE00000  06200000  RAM

    我改成了这样意思就是ram使用的大小也改大了。

    memcfg.a中的bank6的设置

    ;Bank 6 parameter
    B6_MT EQU 0x3 ;SDRAM
    B6_Trcd EQU 0x2 ;3clk  ; over 180M
    ;B6_SCAN EQU 0x1 ;9bit
    B6_SCAN EQU 0x2 ;10bit  rework by kw.gx

可是现在系统跑步起来了
Memory Test(30200000h-33800000h):O.K.
Memory Test OK...
Load Kernel in NandFlash...
NandFlash Start Page = 0x4000...
NandFlash Start Page = 0x4000,And Size = 29360128
run 0x30201000...

就没有反应了......

是在不知道是什么地方除了问题,试验了好久都没有解决,哪位大大出手相救啊!!!!!

解决不了的朋友,也希望给予我友好的一顶~!!!!!

谢谢大家了

                                        西安    小高

-------------------------------------------------------------------------

原来的sdram是MT48LC16M16A2,现在的是MT48LC32M16A2。。。它们的比较是...

MT48LC16M16A2
它的内部结构是:
13根行地址线(A0~A12)
9根列地址线(A0~A8)
2根bank线
其内存容量是 2的13次方 = 8192
2的9次方 = 512
8192 x 512 X 4 X2 = 32MB
at91sam9261EK使用了两片MT48LC16M16A2总共就是64MB


如果需要加大SDRAM到128MB可以选用:MT48LC32M16A2

它的内部结构是:
13根行地址线(A0~A12)
10根列地址线(A0~A9)
2根bank线
其内存容量是 2的13次方 = 8192
2的10次方 = 1024
8192 x 1024 X 4 X2 = 64MB
at91sam9261EK使用两片MT48LC32M16A2总容量就是128MB

注意:
只需要更换内存芯片,不需要重新布pcb的 MT48LC32M16A2 和 MT48LC16M16A2 是pin to pin 兼容的。
更换内存芯片后,相应的动态内存控制配置要改动到适合MT48LC32M16A2比如列地址多了一根。

----------------------------------------------------------------------------------------------------

记得以前看过一个高手的blog,就是24xx平台的SDRAM扩展。我在找。
你顺便可以做一件事:
在eboot下,从SDRAM的0地址开始,到128MB空间,来一次遍历校验,就是写一下读一下,看看是否能全部成功,尤其是高64MB空间。
为了防止写之后数据总线未释放,导致读的还是写的数据,而失去校验的意义,建议写至少2个地址,然后再读这2个地址,只要保证每个地址写的不一样就行。

-------------------------------------------------------------------------------------------------------

俺以前做过,依稀记得cpu是2440的话一个bank用128M,要改两根地址线bank地址选择25,24 变 26,25 ,当然还可以有其他很多经济性改法,不过硬件改动就比较大了.

---------------------------------------------------------------------------------------------------------

可参考 WindowsCe4.2 128M SDRAM 调整步骤,S3C2440的。
http://blog.csdn.net/slyzhang/archive/2007/07/03/1676889.aspx

---------------------------------------------------------------------------------------------------------

多谢 前辈 ~ 我现在就在做遍历sdram的测试  发现高端的SDRAM地址 确实不能正常写入 一写就崩溃 可能是sdram的配置还有问题 我再看看

可能是硬件上的信号脚不对应。好好看看原理图和datasheet

---------------------------------------------------------------------------------------------------------

改完以后要进入dos命令行,用Build -c 对你所更该的内容进行编译。

---------------------------------------------------------------------------------------------------------

仔细看了数据手册64 与 128的连接确实有不同 就像4楼大大说的一样

我现在改了硬件的定义 连接在 25 26 , 可是现在的板子却不能启动了,很奇怪 , 我用multi-ice连接 就可以单步,全速run都可以,可是我直接上电跑的话就起不来4斩跑马灯先点亮然后迅速熄灭,串口没有任何反应。

调试了很久 都没有找到问题的根源

希望得到点你们的经验之谈 谢谢

---------------------------------------------------------------------------------------------------------

可能是因为BOOT中的汇编部分,对SDRAM的配置出问题了。
要修改相应的寄存器,告诉CPU用的是128MB的SDRAM。然后CPU才知道从25 26产生BANK信号。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值