DSPRelated.com
Forums

How to set the EA[21:2] pins of the C6711 DSP?

Started by Gerrit Albrecht September 23, 2003
Hi. I'm using a C6711 mainboard together with the TLV 5614 EVM
daugtherboard. On the 5614 EVM board are 3 DAC chips (5614/5610/5630)
and I want to select one of them using the built-in address decoder.
To do this I've to set several address lines. The problem occours
while setting the EA_xy (or DC_Axy on the daughterboard) address bus
pins. I simply get never a positive result while testing such a pin on
the connectors. Unfortunately there are no example sources (with News,
Google and the TI website) which demonstrate how to use the address
decoder practically.

I thougt I set only the needed bits on the address bus accessing the
value at *variable_holding_address (in C). Is this the correct way or
do I need a special function to do this? I've tried to wait some time
but it didn't helped.

What is with jumper settings? Are there jumpers (on the mainboard TMS
320C6711 DSK)which disable the EA on the connectors?

Do I have to initialize the EMIF with special values and if yes, which
values (CE2/CE3 are very interesting)?

If I'm calculating the address via:

adr = (void *)((bit_pd   << 12) +
               (bit_ldac << 13) +
               (bit_cs   << 15) +
               (bit_a0   << 16) +
               (bit_a1   << 17));

then the value is (cs=1, a0=1, a1=1) for example 0x38000 which even
"looks" wrong (not high enough IMHO).

Can anybody please explain me how to correctly set the EA-pins to send
signals to the daugtherboard? A piece of source would be wonderful :-)

Regards, Gerrit
albrecht@igam-mbh.de (Gerrit Albrecht) writes:

<snip>
> Can anybody please explain me how to correctly set the EA-pins to send > signals to the daugtherboard? A piece of source would be wonderful :-) >
*((volatile unsigned *)0xAxxxxxxx) = 0xsomething; is the way for CE2, unles my C-syntax is flawed - I wrote this off the top of my head and its been a while since my C hat has been out of the upcboard :-). Change the A to B for CE3. Does that help? Martin -- martin.j.thompson@trw.com TRW Conekt, Solihull, UK http://www.trw.com/conekt
Hello.

Martin Thompson <martin.j.thompson@trw.com> wrote in message news:<uisnirzpb.fsf@trw.com>...
> *((volatile unsigned *)0xAxxxxxxx) = 0xsomething; > is the way for CE2, unles my C-syntax is flawed - I wrote this off > the top of my head and its been a while since my C hat has been out > of the upcboard :-). Change the A to B for CE3.
Thank you very much! It was the base address, which I didn't set correctly. I already assumed such an error but I found no explicit advice how the EMIF works with my addresses. Thanks + Regards, Gerrit
albrecht@igam-mbh.de (Gerrit Albrecht) writes:

> Hello. > > Martin Thompson <martin.j.thompson@trw.com> wrote in message news:<uisnirzpb.fsf@trw.com>... > > *((volatile unsigned *)0xAxxxxxxx) = 0xsomething; > > is the way for CE2, unles my C-syntax is flawed - I wrote this off > > the top of my head and its been a while since my C hat has been out > > of the upcboard :-). Change the A to B for CE3. > > Thank you very much! It was the base address, which I didn't set > correctly. I already assumed such an error but I found no explicit > advice how the EMIF works with my addresses. >
Its in the peripherals guide - somewhere - I've just had a quick look to find you a reference and I can;t find it either! Cheers, Martin -- martin.j.thompson@trw.com TRW Conekt, Solihull, UK http://www.trw.com/conekt