high-speed 4-bit inter-processor comms?

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
I've always used SPI for this sort of thing in the past, but I need
something *much* faster.

I need to transfer 4-bit data between two MCUs, in one direction, between a
slave and master, as fast as possible (I actually need to transfer 24 bits
in total). Both are on the same PCB and share the same clock. Would it be
feasible to, say, raise an output on the master when it needs the data, the
slave, when it sees the corresponding input go high, will then send six
nibbles one after the other and the master will receive them, without any
additional handshaking. I can't see any problems with this arrangement, can
anyone else?

MCUs are AVR 2313s, BTW.

The actual application is a software DDS running on the master (generating
sinusoidal 17 kHz to 25 kHz), which needs updating with frequency data in
the main program loop, without generating any glitches in the output. The
slave handles the user I/O - two push-buttons (up and down) and an LED.

Thanks for any input.

Leon
--
Leon Heller, G1HSM
leon snipped-for-privacy@hotmail.com
We've slightly trimmed the long signature. Click to see the full one.
Re: high-speed 4-bit inter-processor comms?

Quoted text here. Click to load it

That works if the variation of the time to recognize the request line is
less than the nybble clock interval.  That should work if either the
slave is sitting in a tight loop, or sleeping and the request generates
an interrupt.

Quoted text here. Click to load it

What is your output update rate?  The transfer will generate some glitch
in the output if the update rate is high enough.  A possible alternative
is to make the master loop execution time constant, but it would grab a
single (or more) nybble in the loop if it is ready.  With that design,
the transfer takes longer, but could be completely seamless.  I have
used that technique with a processor which was doing data encoding for
transmission, in which output bit timing could not vary, but data was
coming into the encoder while encoded data was being transmitted.

Another alternative is to use a DDS chip.

Thad

Re: high-speed 4-bit inter-processor comms?

Quoted text here. Click to load it
between a
bits
be
the
any
can

I was intending to have the slave in a tight loop.


Quoted text here. Click to load it
(generating
Quoted text here. Click to load it
in

I was going to make the master loop time constant. I've got plenty of time
with an 8 MHz clock.

Quoted text here. Click to load it

I wanted to use the Fairchild ML2036, but no-one has them in stock in the
UK. Also, I might want to modulate the signal, which I can do easily in
software.

Thanks, Thad.

Leon
--
Leon Heller, G1HSM
leon snipped-for-privacy@hotmail.com
We've slightly trimmed the long signature. Click to see the full one.
Re: high-speed 4-bit inter-processor comms?
Quoted text here. Click to load it

 It's the same as a SW UART, but you have a separate line for START
and sample 4 bits wide, instead of one.
 Time domain issues are identical. Response to start will have
a min value, plus opcode + (interrupt path) jitter - bit sampling
will have the same jitter.
-jg

Site Timeline