Welcome, Guest. Please login or register.

Author Topic: Some questions about the Delfina DSP  (Read 3947 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Smack

  • Newbie
  • *
  • Join Date: Jul 2003
  • Posts: 16
    • Show all replies
Re: Some questions about the Delfina DSP
« on: April 30, 2007, 09:16:39 PM »
Karlos wrote:

Quote
If the card is attached via the clock port I am assuming that it can't access anything on the motherboard and that basically the CPU has to perform PIO on it.

Yes, the DSP can only access the small memory on the Delfina board. All Amiga<->Delfina transfers must be performed by the Amiga CPU. The DSP can send IRQ's to Amiga to trigger data transfers or any other action.

Quote
How fast is the CPU -> delfina transfer? Is it fast enough so that several streams of 16-bit audio can be written and then mixed by the DSP, or do the existing drivers do software mixing and then pass the mixed stream to the card? If it is the latter, then what role does the DSP play in normal use?
I don't remember the exact numbers anymore but I think the clockport limits Amiga<->Delfina transfers to something like 300 kBytes per second. Recording or playback of one CD-quality stream (stereo, 16 bit, 44100 or 48000 Hz) will work, but with quite high load on the Amiga CPU which is busy doing those slow transfers. Playback of several streams or using full-duplex mode (recording and playing at the same time) is not possible because of the slow clockport, although Delfina would be perfectly able to do this. Mixing of audio channels is done by the DSP, of course.

Quote
Additionally (and most importantly), can I, as a curious developer, write my own DSP code and run it on the card?
Yes, you can write and run your own code on the DSP. You have to write it in DSP assembly, though. There are several third-party programs for Delfina available on Aminet, some of them including full source codes: http://aminet.net/search?query=delfina

Quote
What technical limitations are there with respect to the interface to the DSP (ie what restrictions other than speed and address range does the clockport impose)?
I'm not aware of any functional differences between the Delfinas with Zorro and clockport interfaces. Delfina1200 and Delfina Flipper are crippled badly by the slow clockport interface, so if you have the choice then get a Zorro-Delfina, i.e. a Delfina Lite!
 

Offline Smack

  • Newbie
  • *
  • Join Date: Jul 2003
  • Posts: 16
    • Show all replies
Re: Some questions about the Delfina DSP
« Reply #1 on: April 30, 2007, 10:13:30 PM »
Quote
Mixing of which audio channels though? If the limit is 300KB/s, two 16-bit stereo channels at 44100Hz would max the interface out. A single 16-bit stereo 44100 stream needs ~173KB/s.
It can only be used on "real" Delfinas with Zorro interface. Clockport is too slow for more than one stream.

Delfina software usually works on all Delfina models because it uses the driver (delfina.library) API, only. At least all public software that I know works this way. The API hides the details, such as Zorro or clockport interface. These things are handled by the hardware driver.

Quote
Incidentally, is the clockport addressable by any of the custom chips?
Don't know. If you're thinking about replacing the API function Delf_CopyMem() then: good luck. ;-) All the details you need to know are in the hardware driver, there is no official user documentation about access to the hardware.