Hi Nick,
Thanx for the reply . I have read  last month's mail regarding this.

> Have you checked bit 18 (K0DB2) of the MDREFR register (SA1110
> developer's manual pg. 10-15, section 10.2.2)??
Bit 18 says SMROM clock pin 0 (SDCLK 0) divide by 2 control /status.
Why should I check it ? Am I missing any thing here?

>
> In order for your RAM to work at 60MHz, it should have a "Tac" of
> about 6ns or better (and *not* use delayed latching). Otherwise forget
> it. In general if you are not using delayed latching you must make
> sure that:
>
>    SDRAM's(Tac) <= Tmem - 9.3ns

 I am having a Winbond W986416DH-7. The Tac is given as 5.5ns at CS=3 and 
it is 6 ns at CS=2.  Since I am running at 103.2 Mhz then Tmem=19.379ns
Tmem-7.2(for 133 Mhz processor) = ~12ns and hence I must be able to run at 
half the clock speed but I am not able to. 
>
> This means that for speeds *above* about 60Mhz you *should* use
> delayed latching. And it's funny that it is still not sure that it
> will work (strange as it may sound)!  As a rule of thumb, when using
> *delayed latching*, at say ~69MHz, the critical thing is to make sure
> that you RAM has a Toh >= ~4.7ns.
This factor depends whether you use a 133 Mhz or a 206 Mhz SA1110. 
If you see the specification update April 2001 page 69 section 13.6
The data input set up time to SDCLK <2:0> rise (Tsdis) 28-66 Nondelayed- 7.2 
ns
and when you use a 206 Mhz processor it differs .
28-62 -Nondelayed- 9.3ns
62-103- Delayed. - 2.7ns

Coming to the hold time(tsdis) here also it differs whether it is a 133 or a 
206 one according to the specification update
28-66 - 2.7 ns -133 Mhz -Nondelayed latching
If you use a 206 Mhz processor
28-62  - 2.7ns- Nondelayed
62-69- 5.5ns- Delayed

So here my SDRAM's Toh=3ns hence it should run at half the clock speed 
without trouble but it is not running.
-
My problem is that I am getting problem only during SDRAM reads. 
The following  code runs at 1/4 clock speed properly and not at half the 
clock speed. During memory  verify( *only * when running at 50% clock 
frequency ) it gives wrong values at some locations and hence a memory 
failure  occurs.
         mov     r7, #0xC0000000
        add     r6, r7, #0x1000000 /* 16 MB SDRAM */
        mov     r4, r7
        
memoryload:
        str     r4, [r4]
        add     r4, r4, #0x400  /* Each row is only 1K */
        adr     r0, del10       /* backspace */
        bl      print_str         /* Priting via UART1*/
        mov  r0, r4
        bl      print_hex
        cmp     r4, r6
        blt     memoryload

        mov     r4, r7
        
        adr     r0, memoryverify
        bl      print_str
memorytest:
      ldr     r5, [r4]
        mov     r0, r4
        bl      print_hex
        adr     r0, del10
        bl      print_str
        cmp     r5, r4
        bne     memoryfail
        add     r4, r4, #0x400
        cmp     r4, r6
        blt     memorytest 
        b       alias_done
       
memoryfail:
        adr     r0, memoryfailure
                bl      print_str
                mov     r0, r5
                bl      print_hex
done:
        b       done    
             
Also I would like to know about the Errata mentioned in April 2001 
specification update.
Problem 13 page 23 says
Corruption of internal register reads/writes following SDRAM/SMROM reads
PRoblem:
"Reads and  writes from and to internal registers other than memory 
controller registers can be conrrupted if they immediately follow reads
from SDRAM or SMROM 
REgister reads following reads from SDRAM or SMROM on 32 bit data 
buses with SDCLK running at full memory clock frequency and using 
nondelayed data latching. "

It does not mention whether it is for  a 133 Mhz one or a 206 Mhz one.
They have mentioned a work around which says
" For SDRAM at 32 bit data buses
a higher core clock frequency and delayed data latching
set the SDCLK to run at half memory clock frequency (MDREFR:KnDB2 =1)"

and it says the status is fixed. Does this mean that the workaround is the 
fix mentioned ? BEcause it doesn't say fixed on B2 . Whereas for some errata 
they have carefully mentioned that Fixed on a particular stepping.
what am I missing ?
Harishankkar



_______________________________________________
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
Please visit the above address for information on this list.

Reply via email to