Jump to content
IGNORED

Falcon's DSP


ClausB

Recommended Posts

I recently learned that the Falcon had a Motorola DSP56k inside. The 56k is just about the coolest micro I've ever programmed. Has anyone done anything cool with it in the Falcon?

 

At Meridian Instruments in the 1990s we built laser scanning microscopes based on x86 PCs running PharLap DOS Extender and custom WIMP apps written in C and assembler. To help with real-time chores we added several microcontrollers: a Z80 to run the stepper motor XY stage; some MCS48s to run the Argon gas laser and more motors; and a Motorola DSP56k for data collection from the photomultiplier tubes.

 

For us the 56k was less a DSP and more a fast controller which happened to have a multiplier. It had lots of cool features:

- Easy interface to host CPU over ISA bus

- On-board RAM and bootstrap ROM - could download its own firmware from the host - very advanced in the days of UV EPROMs

- Many peripheral ports and variable speed bus

- Parallelism - up to 3 independent operations per instruction

- Fast interrupts - up to 2 instructions inserted into the pipeline without context switching

- High precision up to 56 bits, and saturation arithmetic

- Hardware DO loops with no execution time overhead

- Lots of registers and useful addressing modes

 

It was a fun and interesting challenge to program. For our next generation instrument we chose a newer 56k which included a bus mastering PCI interface. We finished the prototypes but the company died before we could produce it.

Edited by ClausB
Link to comment
Share on other sites

  • 1 month later...

The DSP is used by FalcAMP for decoding mp3 files, used by several graphics programs and CAB for fast jpeg decoding, used by Cubase Audio Falcon 16 to on-the-fly decode the existing compressed audio tracks while new ones are recorded using the 68030 CPU (btw.: we talk of unaccelerated Falcons here and up to 16 tracks altogether), and as you've already seen to let bulk Falcons do amazing stuff if programmed by proper demo sceners.

I can imagine that it is also used for decoding mpeg videos in Aniplayer and similar programs, but I'm not certain about that.

 

*edit*

 

There are several pieces of hardware that plug into the Falcons' DSP port, such as nice audio interfaces like the Cubase audio clock, the Falcon Digital Interface or the Falcon8 of which I own the first two devices.

I also have a Heatseeker, which is attached to the DSP to connect an Atari Laser printer which without it can't be used on the Falcon.

Edited by jens
Link to comment
Share on other sites

  • 2 weeks later...

Yes, quite a lot of stuff on the Falcon using the 56k now... I felt like I was alone playing with it back in the mid '90s but things have changed since :-)

 

I recently unearthed quite a bit of 3D code I wrote for this chip including a portal engine, texture mapping and some other stuff I'm still identifying. Having to get data in and out via the 8-bit triplet host port on an already slow bus, or via audio-bandwidth DMA was the biggest annoyance for me (a fast path would have been nice for graphics or GPDSP tasks!) but that aside it was a great feature of the F030 and it's nice to see so much good stuff surfaced for it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...