I found an old PCI ISDN card that contains an Analog Devices ADSP-2181.
Aside from being difficult (desoldering and soldering a SMD and Difficult to program) would it be POSSIBLE to remove the chip and it's Crystal and capacitors for the clock signal, and use it together with my Arduino Duemilanova?
I read in the specs it has two serial ports, would they allow me to send simple commands from my Arduino to the DSP to do some more power stuff?
Does anybody know if there's a (free) toolchain available for this relatively old DSP? I read the VisualDSP software was based on gnu-gcc?
Does anybody know if there's a (free) toolchain available for this relatively old DSP?
What do you want to tool chain to run on the arduino?
It is unlikely that you could do anything with this board or the chip. You need to supply it with an system memory of RAM and ROM, in fact you need to construct a whole development system. The fine pitch on the IC means you stand little chance in transplanting it to a board of your own design and you need a custom PCB just to access the pins.
The chip has (program and data) RAM on board.
I read there is a development board for it that enables it to be programmed via serial, so i don't see why it wouldn't be possible to do that myself?
Like i said, I think the transplanting won't be easy, but maybe by using dragsoldering it's doable...
I'm more concerned about the interfacing.
I haven't yet seen any specifications about the serial ports (SPORT0 and SPORT1).
I have no idea if they support rs232 or i2c or ttl or other serial form.
That's putting it on, you will need a hot air gun to take it off.
I haven't yet seen any specifications about the serial ports
page 19 of the data sheet has all the information.
Also it says on page 3:-
Serial Ports
The ADSP-2181 incorporates two complete synchronous serial
ports (SPORT0 and SPORT1) for serial communications and
multiprocessor communication.
Here is a brief list of the capabilities of the ADSP-2181 SPORTs.
Refer to the ADSP-2100 Family User's Manual, Third Edition for
further details.
? SPORTs are bidirectional and have a separate, doublebuffered
transmit and receive section.
? SPORTs can use an external serial clock or generate their
own serial clock internally.
? SPORTs have independent framing for the receive and transmit
sections. Sections run in a frameless mode or with frame
synchronization signals internally or externally generated.
Frame sync signals are active high or inverted, with either of
two pulsewidths and timings.
OUTPUT ALU
SPORTs support serial data word lengths from 3 to 16 bits
and provide optional A-law and m-law companding according
to CCITT recommendation G.711.
? SPORT receive and transmit sections can generate unique
interrupts on completing a data word transfer.
? SPORTs can receive and transmit an entire circular buffer of
data with only one overhead cycle per data word. An interrupt
is generated after a data buffer transfer.
? SPORT0 has a multichannel interface to selectively receive
and transmit a 24- or 32-word, time-division multiplexed,
serial bitstream.
? SPORT1 can be configured to have two external interrupts
(IRQ0 and IRQ1) and the Flag In and Flag Out signals. The
internally generated serial clock may still be used in this
configuration.
For additional information on the architecture and
instruction set of the processor, refer to the ADSP-2100 Family
User's Manual, Third Edition. For more information about the
development tools, refer to the ADSP-2100 Family Development
Tools Data Sheet.
I used to develop systems based on the ADSP-218x chips. They need a flash device for program storage, or they could be loaded from an Arduino with a suitable memory device. Development software is expensive, and an expensive JTAG interface is needed for debugging and software development.
hmm interesting...
So I guess in theory it might be possible, just not a hobby-type project.
Does anybody know of another, easier, way to get a bit more power?
I'm at the moment mainly working with audio-signals. DDS oscillator, filtering, synth-stuff.
The basics are working at the Arduino, but it hits its limits pretty fast.
Anybody have experience with beagleboard or gumstix for this kind of stuff? what about interfacing one of those two with arduino for knob/button/stuff?
Or any FPGA or CPLD options?
Wow, that XMOS looks impressive.
I'll have to see if there's a good supplier here in Netherlands.
I don't want to ditch the arduino completely as it is still an amazing system and so easy to use and develop for.
And of course the huge community is fantastic and a big help.
Something I don't see in other devices like XMOS.
And open-source hardware/software is fantastic!
Chips and boards are available from Digi-Key and XMOS has a useful forum. They aren't suitable for beginners, unlike the Arduino. Someone has put an XMOS chip on an Arduino-compatible board that can use standard shield boards. The XMOS development software is open-source, as are some of the boards, and many of the applications.