SIPL: ISPs devices and slave mode configuration

Please provide the following info:
Hardware Platform: DRIVE AGX Xavier™ Developer Kit
Software Version: DRIVE Software 10
Host Machine Version: native Ubuntu 18.04
SDK Manager Version: Example: 1.0.1.5538

Hi all,

I wanted to discuss some information related to NvSIPL that is not specified in the “Understanding SIPL framework”.

It is mentioned that there are 2 ISP outputs for a single sensor, my understanding is that each Xavier on the Nvidia Drive has 2 ISP devices, is this correct?

Since the Nvidia Drive has 2 Xavier, then the devkit has 4 ISPs in total, right?

Any clarification here about the amount of ISPs devices and ISP availability on the Nvidia Drive will be appreciated since it is not mentioned in the documentation.

We captured in slave mode with both Xaviers using the same configuration for ISP0 and ISP1, but the output of ISP1 is really dark compared to ISP0’s output, see more details about this specific case in this post: SIPL: Output differences between ISP0 and ISP1

Just to clarify the above test:

Master Xavier A:

  • ISP0 -> NV12 (okay)
  • ISP1 -> RGBA (dark output)

Slave Xavier B:

  • ISP0 -> NV12 (okay)
  • ISP1 -> RGBA (dark output)

So, since ISP0 is meant for Human Vision, and we assume 4 total ISPs (2 for each Xavier) with the possibility to configure each ISP to output different colorspaces, we meet the following scenario:

  • Master ISP0 -> NV12
  • Slave ISP0 -> RGBA

ISP1 is not used at all due to Machine Vision purpose.

Then, from our tests the configuration worked as expected and images were correct in different colorspaces:


Xavier A, ISP0 in NV12 colorspace


Then Xavier B, ISP0 in RGBA colorspace

We just wanted to confirm and get an official response about this case, it works for our requirements but the documentation doesn’t mention the possibilities about ISPs configurations. The documentation only mentions that Master and Slave must have the same exact configuration, here: https://docs.nvidia.com/drive/drive_os_5.1.6.1L/nvvib_docs/index.html#page/DRIVE_OS_Linux_SDK_Development_Guide/NvMedia/nvmedia_nvsipl_camera.html#wwpID0E0WB0HA in the slave capture section.

So, in conclusions:

  • Nvidia Drive has 2 Xaviers AGX, each one with 2 ISP devices so 4 ISP in total.
  • ISP1 is not able to output clear images as output ISP0, this happens in both Xaviers.
  • ISP0 from Xavier A is able to output different colorspaces than ISP0 from Xavier B in Slave capture mode on SIPL framework.
  • Just to follow the same previous idea, then the CSI output is shared between Xaviers in SIPL Slave mode, instead of buffers in the SIPL framework.

Could you please confirm our findings and add any additional information just to clarify this topic.

Thanks in advance.

Hi @greivin.fallas,

Please take a look at the other topic from your colleague I just replied and see if any questions still need to be clarified. Thanks!

Hi @VickNV,

Thanks for the answers,
So, from the previous conclusions:

  • Nvidia Drive has 4 ISP outputs from 2 HW devices, one ISP HW per Xavier, is this right?

  • Regarding the ISP1 output, is there a way to get similar image output like ISP0? This wasn’t mentioned on the replies.

  • From shared buffers between Xaviers, then SIPL slave mode shares buffers from the CSI output, correct?

Just to clarify topics that aren’t explicit in the documentation.

Thanks.

Please check my reply in DRIVE AGX Xavier ISP units doubts.

Could you point out where in our documentation you’re asking about? Thanks!

Hi,

Slave mode information here:

Thanks for your answers to the other post.

Xavier B also fetch frames from CSI to its local system memory.