Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
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

List of 31 messages in thread
TopicAuthorDate
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      

Back to Subject List