I currently have a system consisting of two PCB connected via a 5 cm cable.

Each PCB has a microcontroller, the two microcontrollers are communicating via SPI at 1Mbps Data rate.

Now the system will go into EMC and EMI testing, and i never dealt with a system were i should consider both the sourcing and receiving end, usually i only design the receiving end of the signal.

I considered adding an RC filter in the received signal and a series resistor to the sourced signal but i dont know if this would distort signal, can anyone suggest the best solution to pass the tests?


Radiation will depend mainly on two things.

The rise and fall time of your signals You can control this with something as simple as a series resistor at the driver output, or with a filter. The series resistor essentially creates an RC filter where the capacitance is provided by the load. If you're not using impedance-controlled lines, I wouldn't call this "termination" but rather just "rise-time control".

Given your 1 Mbps data rate, you should be able to increase rise and fall times to 100 or 200 ns without degrading performance, and this will substantially reduce the high frequency content of the signals.

The loop area between signal and ground wires in the cable You can minimize this by assigning wires in you ribbon cable (assuming it's a ribbon cable) in GSGSGSG arrangement, so each signal line has two ground wires as close as possible to it. With some experimentation you could likely reduce the number of ground wires, but that's a difficult change to make after you've already built your PCBs.

Edit: In comments you said, "the test would be done for emission and immunity, will adding a series resistor also help in immunity?"

In my experience an SPI circuit with ~5 cm trace length is not likely to fail radiated immunity testing.

However, I've never slowed down a rise time as much as I suggested doing above. Purely resistive edge rate slowing will degrade immunity as you suggested. Adding capacitance at the load end of the trace will improve immunity, but it will also require more current through the cable during transitions so it will degrade radiation. I think with your problem parameters you would be able to find a balance between the two that passes testing, provided you also have some kind of shielding around the whole circuit.

If this is a "one chance to get it right" problem and you don't mind a few extra dollars in costs, then one options is to use CMOS-to-LVDS translators and send the SPI signals over the cable as differential signals rather than single ended. This will improve both radiation and immunity. You could also design in the option to add common-mode chokes on the differential signals to further improve both.

| improve this answer | |
  • \$\begingroup\$ From what i understand from your answer, adding the resistor would only help in emission, maybe i wasn't clear in my question by using the term EMC, but the test would be done for emission and immunity, will adding a series resistor also help in immunity? \$\endgroup\$ – L. Lt. Dec 6 '17 at 17:02
  • \$\begingroup\$ @L.Lt., yes I interpret "EMC" to mean "electromagnetic compliance". In my experience radiated emissions testing is much more challenging than radiated immunity. If you are specifically interested in immunity, you should edit your question to clarify that. \$\endgroup\$ – The Photon Dec 6 '17 at 17:15

There is an EMC 'outgoing' radiation test (my term). All EMC signals emitted from your product should lay below a certain value. The value depends on the radiated frequency.
To prevent radiating you can using shielding (using a shielded cable). Another way is make that your signals do not have 'sharp' edges. The first step is to see if you can reduce the drive strength of your pads. Then you can add RC to the signals at the driving end but I would see that as a last resort. You have to be very careful as not to deteriorate the signal so much that the data transfer is hampered. In most cases meeting the EMC 'outgoing' radiation test is the most difficult to meet. Start with that.

Then there is an EMC 'incoming' test where your circuit should be immune to incoming radiation. That is where you have to 'protect your circuit from EMC'. Here is where I have no experience as I have never been in a situation where that happened. So using just theoretical knowledge: using a shielded cable will help prevent external signals coming in. My guess is that is probably sufficient but again: no experience there! To be immune it helps if your receivers have a low impedance. The lower the impedance the more energy is required to 'influence' the signal. You could just put a resistor at the receiver side to ground. But there I would also see that as a last resort. Same reason as with RC: your data transfer may not longer work reliably. (But your signal edges will get more 'rounded'). A better solution would be to add a driver IC at the source and then a low impedance IC at the receiving side.
The whole problem with EMC testing that you will not know until the test is done if what you have done is enough or not. Or overkill, increasing the product's price or reducing the reliability. Or more likely it is still radiating but the source is not where you expected it.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.