TUM-LIS / glip

Generic Logic Interfacing Project
http://glip.io
Other
44 stars 15 forks source link

Create generic multi-channel protocol #58

Open imphil opened 6 years ago

imphil commented 6 years ago

Create a protocol which we can layer on top of the current FIFO protocols to support multiple channels through a shared connection.

wallento commented 6 years ago

Hi,

this is a great thing. We should consider accomodating more functionality into a common protocol layer. For example we have the credit based flow control or the packetization into wider interfaces. In the end we may up with the glip physical/data link and with the glib transport layer or so.

Cheers, Stefan

yaorong0921 commented 6 years ago

Hi, I am currently working on this issue. I want to implement channel multiplexing module into the communication between the host and the target (nexys4ddr) using uart backend.

Main idea is using special words to trigger the channel multiplexing.

Here is short proposal about the channel multiplexing protocol ( taken target receiving data as example):

  1. Data is read from FIFO and send to the (small) FIFO of each channel.
  2. If control word 0xBABE occurs, the next is 0xCDxx, so change the channel and send the following data until the next control word . If the next word is 0xBABE, then skip this one and continue. If the next is neither of them, a error flag will be set.

What do you think? I hope this makes sense and really look forward to hearing your opinions. Thank you very much!

Best regards, Yao

imphil commented 6 years ago

The protocol sounds good. But please choose another control word than 0xBABE. How about 0xC001?

yaorong0921 commented 6 years ago

Hi @imphil Sure, let's set as 0xC001