Noway2
Electrical
- Apr 15, 2005
- 789
In my design, I have two system boards that I am planning to connect via a serial link. On a hardware level, I am planning on using two LVDS transmitters and receivers on both ends to implement a varient of SPI. The varient comes into play in that I am planning on using the second transmitter on the 'slave' device as a form of interrupt line to signal that either the device is ready or that it requires some attention. I am also planning on utilizing a CRC on the data with some form of handshaking to know that data has been transmitted and received correctly.
At the moment, I am starting to work on the implementation details of this protocol and have run into a question that I could use a suggestion on. My concern is, how to handle the start and end of message framing. While the electrical properties are such that missing or extra bits should be rare, I need a way to detect this. Basically I need a way for the receiver to know that the sender is done transmitting and the message is ready for processing.
I have considered using a form of "start" and "stop" bits or the method of X amount of idle comm time means end of message (like Modbus) but I am wondering if there is a better method. Both sides will have their own clocks, in addition to the "data" clock that is used to communicate the bits.
If any of you have some suggestions of what works well, perhaps soemthing that you have implemented before I would greatly appreciate it if you would be willing to share your ideas.
At the moment, I am starting to work on the implementation details of this protocol and have run into a question that I could use a suggestion on. My concern is, how to handle the start and end of message framing. While the electrical properties are such that missing or extra bits should be rare, I need a way to detect this. Basically I need a way for the receiver to know that the sender is done transmitting and the message is ready for processing.
I have considered using a form of "start" and "stop" bits or the method of X amount of idle comm time means end of message (like Modbus) but I am wondering if there is a better method. Both sides will have their own clocks, in addition to the "data" clock that is used to communicate the bits.
If any of you have some suggestions of what works well, perhaps soemthing that you have implemented before I would greatly appreciate it if you would be willing to share your ideas.