??? 03/16/05 19:49 Read: times |
#89799 - multiprocessor communication Responding to: ???'s previous message |
Grant Beattie said:
I'm trying to implement a communication link between two CPUs. I cannot afford dual port memory due to cost (but a 74xx type package or two "maybe") and it needs to be faster than bit-banged I2C or PS/2 et al. You want it all, and you want it for free! One thought is that you could use something like 74xx652 or 74xx646 registered transceivers as storage between the two processor data busses. I'm thinking really simply mailbox registers here. You'll need some glue for decoding and enabling. These guys have registers or latches (depending on which part you use) on each side of the transceiver, so for example each micro can store its data-to-write in the outgoing register on its side, which the other micro can read at will. These register writes can occur the same time. The second thing is you need some logic to allow each micro to tell the other that there's something new in the mailbox. It can be as simple as using the register write enable as an external interrupt source. Of course, by the time you add the decoders and glue to the register/transceiver, it may very well be cheaper to use a 32-macrocell CPLD and put it all in one chip. Remember you need 16 flops to implement the registers themselves and the spare flops might be useful for some other part of your design. -a |
Topic | Author | Date |
Contemplating multiprocessor | 01/01/70 00:00 | |
fifo | 01/01/70 00:00 | |
and also | 01/01/70 00:00 | |
multiprocessor communication | 01/01/70 00:00 | |
ACKs | 01/01/70 00:00 | |
You want it all and you want it for free | 01/01/70 00:00 | |
Why not HW I2C or SPI | 01/01/70 00:00 | |
Why not HW I2C or SPI | 01/01/70 00:00 | |
USB ??? | 01/01/70 00:00 | |
USB !!! | 01/01/70 00:00 | |
USB | 01/01/70 00:00 | |
You Correct Sir | 01/01/70 00:00 | |
USB != I2C | 01/01/70 00:00 | |
USB > I2C![]() | 01/01/70 00:00 | |
do not multimaster | 01/01/70 00:00 | |
hmm | 01/01/70 00:00 | |
concurrence | 01/01/70 00:00 | |
This is why | 01/01/70 00:00 | |
depends on data rate | 01/01/70 00:00 | |
Normally | 01/01/70 00:00 | |
Are You Sure | 01/01/70 00:00 | |
I would be | 01/01/70 00:00 | |
I would be | 01/01/70 00:00 | |
it works for me | 01/01/70 00:00 | |
Are You Sure | 01/01/70 00:00 | |
IIC speed - no limit | 01/01/70 00:00 | |
nixed by other team members | 01/01/70 00:00 | |
Multi-Proc Xface | 01/01/70 00:00 | |
exactly | 01/01/70 00:00 | |
Shift register (Mode 0)? | 01/01/70 00:00 | |
Time savers | 01/01/70 00:00 |