5
\$\begingroup\$

I need to select a System on Module that will be used to stream a HD video stream over WIFI. Ideally it should support two camera input.

When researching the various modules on the market, I find some SOCs exposing either Camera Serial Interface (CSI) or Camera Parallel Interface (CPI), or both.

I understand CSI is newer (and I assume 'better', but in which terms ?). Thus, from a system architecture standpoint, when should someone choose CSI over CPI ? Or the opposite ?

\$\endgroup\$
1
  • 1
    \$\begingroup\$ At higher data-rates it gets difficult to have the timing on all signals in a parallel bus identical. Small differences in track length start to count and so does the difference in electrical impedance. This negatively influences the maximum bus speed. With higher data-rates it is easier to have a serial bus that doesn't suffer from these effects. Also the cost of a parallel bus is higher due to pin count required on the device and it gets increasingly more difficult to route all the signals on a PCB. Hence higher data-rates often start using a serial bus. \$\endgroup\$
    – jippie
    Commented Feb 10, 2015 at 21:33

2 Answers 2

1
\$\begingroup\$

You should go with CSI-capable SoMs when possible. As jippie said, parallel interface adds a variety of issues that can result in reduced performance. In addition, some SoMs (iMX6 Quad) have CSI inputs that have the bandwidth to support more than one camera, provided they are multiplexed properly.

Make sure to take a close look at any SoM datasheets before committing to ensure they have the interface you want, as parallel interfaces sometimes get the CSI label and can cause confusion.

\$\endgroup\$
2
\$\begingroup\$

Parallel is older, but perhaps a little easier to understand and interface to. Serial is an attempt to go faster, ie more data higher resolution, use less pins, and less power. Some sensors come with both modes, also most of the serial interfaces I've seen are under NDA.

So your application will determine the right choice, as will what you want to use as a controller.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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