This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: AEB-1 RAM extendable?


Hi,

I got this answer on my question on how to expand the RAM on AEB-1. So now
there is hope again for my master thesis :)

Anyway what do I have to change in the eCos sources when doing this
expansion?

brgds

Andreas





>-----Original Message-----

>From: Neil Puthuff [mailto:neil@ghs.com]

>Sent: Monday, April 05, 1999 1:45 PM

>To: ARM Evaluation Board - List Server

>Subject: [aeb] EASY 1MB RAM expansion for the AEB-1

>

>

>Hi all,

>

>I have a (somewhat) easy way to give your AEB-1 board an additional

>512K x 16 of SRAM.

>

>Components needed:

>----------------------------------------------------------------

>(2) 512K x 8 SRAM, select a speed that is reasonable for your

>    needs and budget.

>    I ordered from Digi-Key ( http://www.digikey.com ) the Toshiba

>    TC554001FL-70, which is slow at 70nS, but only costs $17.60 each.

>

>(as needed) Wire and solder.

>

>

>Installation:

>----------------------------------------------------------------

>These 2 RAM chips are to be mounted piggy-back style on top of

>the two SRAM

>IC's that are already on the AEB-1.  All of the leads of the new RAM IC's

>(with the exception of pins 1, 2, 22, and 30) are to be soldered to the

>corresponding pins of the SRAM IC's they are mounted on.

>

>OK, there is one part of this that is a little scary: you will need to

>flatten the S-curved leads of the SOIC RAM package so they're straight and

>can reach the pins of the IC below.  Also, you will need a steady hand to

>solder the pins.  Avoid coffee.

>

>This will connect all of the Data bus (D0--D15), most of the Address bus

>(A1--A16), plus /OE, /WR, Power and GND.

>This leaves only 8 wires that need to be manually connected to

>complete the

>expansion.  Here is a list of the connections to be made:

>Signal		From			To

>---------------------------------------------------------------

>Address A17	JP1 pin 26		pin 2 of added RAM chips

>Address A18	JP1 pin 27		pin 30 of added RAM chips

>Address A19	JP1 pin 28		pin 1 of added RAM chips

>Chip Select 2	JP2 pin 23		pin 22 of added RAM on U4

>Chip Select 3	JP2 pin 24		pin 22 of added RAM on U3

>

>total of 8 wire segments.

>use 30 ga. wire, and glue the wires to the board to avoid breakage.

>

>

>Memory Configuration and testing:

>-------------------------------------------------------------------

>The memory interface logic in the Sharp LH77790 must be

>configured for this

>new memory.  It is also a good idea to test the memory to be sure that all

>connections are OK (I had several solder connections that didn't quite

>connect).

>

>

>Here is a small code sample that does this:

>-------------------------------------------------------------------

>#defineXMSTART	0x20000

>#define XMSTOP	0x120000

>#define SEED	0xC0FFEE42		/* don't set this to 0x0000 !! */

>    int count;

>    int test;

>

>    *START3 = XMSTART;			/* defined in 'lh77790.h' */

>    *STOP3 =  XMSTOP;

>    *SDR3 =   0x7C08;			/* set for maximum wait */

>    *BCR3 =   0xF090;

>

>    /* and now for a (ahem) quick memory test ....

>     * This test will write a pseudorandom sequence into all of

>     * the expanded memory, and then go back and make sure that

>     * the sequence is correct.

>     */

>    test = SEED;

>    for(count = XMSTART; count < XMSTOP ; count += 4) {

>	*((volatile int *) (count)) = test;

>	if(test)

>	    test = ((test << 1) + (((test & 0x80000000) >>

>31)^((test & 0x10000000)

>>> 28)));

>	else

>	    test = SEED;

>#ifdef EMA_SHOW

>    	if(!(count % 0x10000))

>    	    printf("Count = %X (write pattern)\n",count);

>#endif

>    }

>

>    /* check the pattern we just wrote */

>    test = SEED;

>    for(count = XMSTART; count < XMSTOP ; count += 4) {

>	if(*((volatile int *) (count)) != test) {

>    	    printf("memory error! Pattern = %X at location %X

>\n",test, count);

>    	    count = XMSTOP;

>    	    break;

>    	}

>    	if(test)

>	    test = ((test << 1) + (((test & 0x80000000) >>

>31)^((test & 0x10000000)

>>> 28)));

>	else

>	    test = SEED;

>

>#ifdef EMA_SHOW

>    	if(!(count % 0x10000))

>    	    printf("Count = %X (read pattern)\n",count);

>#endif

>    }

>

>-  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

>Neil Puthuff, Field Applications Engineer        neil@ghs.com

>Green Hills Software                       http://www.ghs.com

>



> -----Original Message-----
From: Jesper Skov [mailto:jskov@redhat.com]
Sent: den 18 oktober 2000 16:26
To: Karlsson Andre

> as
Cc: ecos-discuss@sourceware.cygnus.com
Subject: Re: [ECOS] AEB-1 RAM extendable?


>>>>> "Andreas" 

> == Andreas Karlsson <Andreas.Karlsson@combitechsystems.com> writes:

> 

> Andreas> If this is impossible which evaluation board can you

> Andreas> recommend with bigger RAM-memory?

> 

> AFAIK the AEB-2 should have more memory, but I don't know the details

> - and there's no eCos support for it (yet - I think that's one of the

> boards I have in the board stack somewhere).

> 

> Anyway, as a short-term resolution, I suggest you have a look at the

> Linux synthetic target, or one of the simulators. That'll keep you

> hacking until you've found replacement hardware [and you'll probably

> find the development to be smoother and faster, btw].

> 

> Jesper

> 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]