Technical discussions about the TI C6000 DSPs (including the c62x, c64x and c67x DSPs).
|
Dear all, I’m a newbie working with c6711 dsk. I encountered a lot of problem trying to burn my program into ROM. Will any expert please kindly give me some advice or help? I’ve followed the application notes SPRU743, contacted Texas Technical help and tried for a few weeks too.. but I still couldn’t solve the problem. I am REALLY DESPERATE and lost…. Please help me if you can. Thanks a million…. I’m willing to pay too if anyone can offer a solution. Below is some other information which you might find useful. I have tested the program in the CCS environment and it works fine. However when I burn the program to ROM timer 0 fails to call the function blink1. I’ve attached a zip copy of my test program. It is not the actual one as my actually program requires other hardware as well. Platform: windows 98 CCS version: Code Composer Studio v1.23 Test program uses only the CLK manager in the configuration manager file (.cdb). The MEM segment for the ROM and internal RAM was added under the MEM manager Timer 0 is operating at 1Hz Function blink1 will cause the LED1 and LED2 on the dsk to light up alternately at every timer 0 interupt LED3 will light up on boot up Many Thanks, CK | |||
|
|
Hello CK,
It looks like you have been burned by a 'quirk' of the 6711 DSK.
To execute from FLASH, you must configure CE1 for 8 bits; but to address the LEDs or
switches, you must configure CE1 for 32 bits.
Some tips-
1. add a couple of options to the GEL menu - 'CE1_8bits' and 'CE1_32bits'. You can
fiure this out from the DSK GEL file.
2. doing that, you should be able to select 'CE1_8bits' and look at the disassembly of
your code in FLASH.
3. To do what you want, you need to copy a small function into RAM that does
set CE1 to 32 bits
light the LEDs
set CE1 to 8 bits
return to flash.
mikedunn
Ong Chee Kiong <m...@yahoo.com.sg> wrote: Dear all, |
|
Hi all, Anyone has the experience of connecting one 32bit SDRAM to EMIFA of C6415? My questions are: 1) Is this OK, given the fact that 32bit data lines of EMIFA will be left unconnected? 2) If the answer to the 1) is yes, then which set of data lines should I use? The lower 32 bits? Then the connection would be: using ABE[3:0]+AEA[18:3]+AED[31:0]. Does that sound right? I guess all I want is a confirmation from the gurus that this design is OK. Given the fact that the address line starts from A3, I have a hard time to understand how C6415 addresses a memory at 0x05 byte wide. TIA, Jane |
|
Hi
Mike, Thank you so much for the
advice. I did
something like this: /*========================================================*/ #define LED_PORT
*((volatile unsigned int *)0x90080000) #define LED1
0x0e000000; #define LED2
0x0d000000; #define LED3
0x0b000000; int onflag=0; /*functions
prototype*/ void
blink1(); void
wait_a_while(); void
main() {
*(unsigned
volatile int *)0x01800004 = 0xffffff23;
/*
CE1_32 */
LED_PORT=LED3;
*(unsigned
volatile int *)0x01800004 =
0xffffff03;
/*
CE1_8 */ } void
blink1() {
if(onflag ==
0)
{
&nbs
p;
LED_PORT=LED1; &nbs
p; onflag = 1;
}
else if(onflag ==
1)
{ &nbs
p;
LED_PORT=LED2; &nbs
p; onflag = 0;
} } /*========================================================*/ Blink1 is called by timer0
ISR, but it’s
not working. Without the CE1_8 line, LED3 in main routine could light up. However,
with CE_8, even LED3 did not response. Please advice me further. I
really
appreciated it very very much. Many
Thanks, CK From: Mike Dunn
[mailto:m...@sbcglobal.net] Hello
CK, It looks like you have been
burned by a 'quirk' of the 6711 DSK. To execute from FLASH, you
must configure CE1 for 8 bits; but to
address the LEDs or switches, you must configure CE1 for 32 bits. Some
tips- 1. add a couple of options to
the GEL menu - 'CE1_8bits' and
'CE1_32bits'. You can fiure this out from the DSK GEL file. 2. doing that, you should be
able to select 'CE1_8bits' and look at the
disassembly of your code in FLASH. 3. To do what you want, you
need to copy a small function into RAM that
does set CE1 to 32
bits light the
LEDs set CE1 to 8
bits return to
flash. mikedunn
|
Hi Jane, The C64x family has a 64bit BUS on EMIFA that is way the address lines start at A3 and not A0 (the dsp shifts the address lines). The answers are: 1) yes. 2) ABE[3:0]+AEA[18:3]+AED[31:0]. I have attached a n image that is from my company design with the same 32bit SDRAM and DM642 dsp. --- Jane Shen <j...@signalogic.com> wrote:Hi all, Anyone has the experience of connecting one 32bit SDRAM to EMIFA of C6415? My questions are: 1) Is this OK, given the fact that 32bit data lines of EMIFA will be left unconnected? 2) If the answer to the 1) is yes, then which set of data lines should I use? The lower 32 bits? Then the connection would be: using ABE[3:0]+AEA[18:3]+AED[31:0]. Does that sound right? I guess all I want is a confirmation from the gurus that this design is OK. Given the fact that the address line starts from A3, I have a hard time to understand how C6415 addresses a memory at 0x05 byte wide. TIA, JaneTal Avidor Unisor LTD __________________________________
(You need to be a member of c6x -- send a blank email to c6x-subscribe@yahoogroups.com )