Forums

Re: working on dm642 with pci

Started by paul...@generaldynamics.uk.com January 26, 2009
Hi,

I saw this old thread on a forum and wanted to ask you if you resolved the problem you were having with the code starting to execute?

I have a similar problem myself with the DM642, except that I am using the HPI interface to load my software on a bespoke PCB design.

The steps I follow are:
1. Take the processor out of reset and into host boot mode.
2. Configure the EMIF.
3. Load the code via the HPI (and verify it is correct).
4. Assert the DSPINT bit in the HPIC register.

Everything seems to work fine, but the code does not start executing. I know the hardware is OK because I can run the code on my emulator. I can also use the emulator to view the memory space, so I know the code is programmed and the DSPINT bit is being set.

Any help would be appreciated,

Many thanks,

Paul.
hello
>is it possible to burn your aplication/code by a pci when the card is
>in the computer? or the pci is only for send/recieve data?
>
>thanks
>amitai

_____________________________________
Paul,

On Mon, Jan 26, 2009 at 12:31 PM, wrote:
> Hi,
>
> I saw this old thread on a forum and wanted to ask you if you resolved the
> problem you were having with the code starting to execute?
>
> I have a similar problem myself with the DM642, except that I am using the
> HPI interface to load my software on a bespoke PCB design.
>
> The steps I follow are:
> 1. Take the processor out of reset and into host boot mode.
> 2. Configure the EMIF.
> 3. Load the code via the HPI (and verify it is correct).
> 4. Assert the DSPINT bit in the HPIC register.
>
> Everything seems to work fine, but the code does not start executing. I know
> the hardware is OK because I can run the code on my emulator. I can also use
> the emulator to view the memory space, so I know the code is programmed and
> the DSPINT bit is being set.


The most common cause of this symptom is the lack of a vector table.
DSPINT goes to address 0 to execute - when load a program from CCS, it
goes to the entry point defined in the COFF file. The easiest way to
fix it is to put a branch to the entry point at address 0.
Search under the 'examples' dir for 'vec*.asm' for an example file
[make sure you use one for 62xx/670x/671x/641x].
If you are using interrupts, you will need to set those up
appropriately. If you are not using interrupts at this point, I like
to plug the unused ones with a branch to self.

mikedunn
>
> Any help would be appreciated,
>
> Many thanks,
>
> Paul.
>
> hello
>>is it possible to burn your aplication/code by a pci when the card is
>>in the computer? or the pci is only for send/recieve data?
>>
>>thanks
>>amitai

--
www.dsprelated.com/blogs-1/nf/Mike_Dunn.php

_____________________________________