Hi all.
I have to connect a remote device to an existing board. The interface includes:
- a 4-wire SPI port (SCK, MISO, MOSI, SS), where the board is master and the device is slave; the SPI maximum rate is 2 MHz: at the moment I am using it at lower rates (500 kHz), but it could be good to have room for higher speeds
- a “loopback” SPI SCK signal, carried back from the device in order to take into account all the delays
- a 1 MHz clock signal (generated on the board and used by the device)
- an interrupt line generated by the device
- power and ground lines.
The main problems are:
- I have only a 2.5V source on the board
- I have to reach a distance up to 100 meters
- I have to transfer power, so I need the lowest power solution available in order to keep the voltage drop across cables as small as possible.
The device contains only a digital accelerometer which draws < 1 mA and can be powered up to 3.6V. Moreover, the device should be as small as possible.
I was thinking about using LVDS, but I don’t know if it is a good idea for such a distance. Using SN65LVDS047 and SN65LVDT348 (4 drivers and 4 receivers), which I found to be the lowest power ones, on the device side, I have almost 50 mA at 3.3V. With an AWG26 cable I have 13.4ohm x 50 mA x2 = 1.34 V drop, which would prevent all devices to work (provided that a 3.3V was generated in a way from the 2.5V source). Sure, I could use a lower gauge wire, but that would raise the cable dimension and weight…
Moreover, should I isolate all signals? The whole system will be used near a railway, so I’m afraid I could have interferences.
Any kind of suggestion will be welcome.
Thanks,
Stefano
Greetings -
It appears you have a need four signals to go 100m at a 500k to 2Mhz rate in a rugged enviroment. LVDS is generally more for higher speeds and shorter distances and it provides only a +/-1V common mode tolerance. If this is DC coupled, I suspect RS422 is a better solution due to the wider common mode range and also larger signal swing. The conservative how far / how fast curves indicate 1Mbps / 100m is in the range. I would recommed to look at the 3.3V RS422 line drivers and receivers and deremine if that can meet the power requirments, and perhaps a 2.5V to 3.3V boost can be used. If the enviroment requires more isolation, then that could be considered as well.
John GoldieDPS APPS / SVA / www.ti.com
Hi John,
thanks for your answer.
Yes, I have some signals (7 signals: SCK, MOSI, SS, CLOCK going from master to slave and MISO, SCK_BACK, DATA_READY going from slave to master) to go 100 m at a maximum rate of 2 MHz in a rugged environment.
After I had read your answer, I found this document by Thomas Kugelstadt on Analog Application Journal (4Q 2011): Extending the SPI bus for long-distance communication. This looks very close to what I need, and suggests some solutions similar to those you suggested.
I also found AM26LV31E and AM26LV32E (quad driver and quad receiver) which I think could be fine for my application.
On the driver data sheet I see that the typical voltage drop on a 100 ohm resistor is 2.6V, which means 26 mA. Considering all the seven drivers (both on master and on slave) I have 26 x 7 = 182 mA, which have to be added to the 8 mA typically drawn by the receivers, for a total of 190 mA (let's assume 200 mA). This means, with a 100 meter AWG26 cable (13.4 ohm), a voltage drop of 5.36 V, which means that even if I assume a 5 V boost for the power line I cannot do the job. With an AWG24 cable the voltage drop goes down to 200 mA x 8.42 ohm x2 = 3.37 V, which is still too much. To go under 1.7 V drop, I should use AWG20 or similar, but they are far too big to use in a similar application...
Am I missing something? Generally speaking, the RS422 idea seems more robust than LVDS, but how can I solve this power issue? Are there any different solutions I could look at?
Moreover, the document mentioned above suggests to use isolators, which I cannot put on the slave board (can I put them on the master board, just in case...?), and mean an extra power needed for the whole system...
Thanks again,
As John mentioned, most of our high speed interface solutions look at higher data rates than what you need. Is it a possibility to use a boost regulator to generate a local power supply at greater than your 2.5V rail, and then use something like RS-485 which falls nicely into your speed requirements?
See http://www.ti.com/lit/an/snla143/snla143.pdf
and http://www.ti.com/lit/an/snla042a/snla042a.pdf
for more info on RS-485.
Mark Sauerwald
Mark,
I can surely use a boost supply in order to go higher than 2.5V (3.3V or maybe 5V), but with RS485/RS422, as I previously wrote, the problem moves to the power supply lines. If there's a way to solve the power issue, I can go for RS422 with the two devices I mentioned in my previous post, but I was looking for LVDS more for its low-power features than for its speed.
You had expressed your desire for low power in terms of avoiding voltage drop along the cable - the voltage drop is proportional to the current, not the power, so boosting to a high voltage, and then regulating down actually helps you a lot - as an example, if the cable represented 10Ohms of resistance, and you needed 1W at your load, then with 2.5V, you would need to send 400mA and would have huge loss along the cable - but if you were to transfer your power at 25V, then you only need 40mA, and power lost along the cable is a factor of 100 lower.
Mark
Hi Mark,
to be honest I did not think about boosting voltage that high... I will give a look at the available boost devices and do some math and then I will come back here again to write down what I found... and get a little more help from you :)