Re: [uCsimm] Interfacing 8bit sram on a 16bit bus

From: Tom Walsh (tom@cyberiansoftware.com)
Date: Fri Dec 08 2000 - 22:02:55 EST


daniel haensse wrote:
>
> Hi
>
> I would like to use the /CSB1 chipselect on the uCSimm to interface an 8 bit
> SRAM.
> I plan to connect A0-A14, D8-15, /UWE, /OE and /CSB1 to the SRAM.
> Is this correct to interface the device for continuous address locations in 8
> bit mode? I'm a little bit confused of all that addressing stuff.
>
> /CSB0 is used by the ethernet controller using 16 bit interfacing.
> Is it possible by toggling bit BSW in the CSB register (maybe also WS0-2) to
> interface both devices? I just would like to use memcpy to copy data from the
> dram to the sram and vice-versa (memcpy will be called by an interrupt routine
> with higher priority than the ethernet controller) and in this case does memcpy
> use 16bit access to the dram and translate it to two 8 bit access to DB8-15?
>
> I don't understand a lot about the compact flash discussion, but is this the
> same idea behind the 8 and 16 bit access.
>
> Thanks Dani
> This message resent by the ucsimm@uclinux.com list server http://www.uClinux.com/

Yes, you are correct, by toggling the BSW bit for the Port B chip select
config register (at location: 0xffff113) you can switch the chipselect
between 8 bit & 16 bit mode of operation. If you AND it with 0x7f it
will be an 8bit, while ORing it with 0x80 will make it 16bit again. I
would not recommend that you change the mode of any of the chip selects
that are in use, unless you carefully estimate how / what impact it will
have upon your running system! If you just switch the CSB mode to 8bit
and linux attempts to access the ethernet chip, guess what, you may just
lose the ethernet device (goes away) or BLAM! you could crash the
system.

TomW

-- 
Tom Walsh - WN3L - Embedded Systems Consultant
'www.openhardware.net', 'www.cyberiansoftware.com'
"Windows? No thanks, I have work to do..."
This message resent by the ucsimm@uclinux.com list server http://www.uClinux.com/



This archive was generated by hypermail 2b30 : Sun Apr 07 2002 - 00:01:39 EST