SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
DPC is able to work with NSF3V module. In that case, the data comes from DPC input port and goes out from DPC output port. When DPC is working with NSF3V, DPC and NF-1 function are skipped inside IPIPE. In other words, DPC in NSF3V and DPC+NF-1 in IPIPE are mutually exclusive.
Also, it must be noted that the clock to DPC/NF-1 is driven by DPC_CLK instead of by pixel clock (PCLK) directly. If DPC works with the rest of IPIPE, DPC_CLK is exactly the same as PCLK. If DPC works with NSF3V, and if NSF3V works with ISP, DPC_CLK is same is ISIF_CLK. IF DPC works with NSF3V, and if NSF3V works with CAL, DPC_CLK is same as CAL_PCLK. The DPC_CLK is generated at ISS level accordingly (ISS_MAIN_FCLK).
In addition, the image width must be 32 pixels or more if DPC works before NSF3V.
DPC Use Case | DPC_CLK source | Description |
---|---|---|
IPIPE | PCLK | Conventional case. DPC works inside IPIPE. |
ISP-NSF3V | ISIF_FCLK | DPC works with NSF3V, and NSF3V works inside ISP. DPC gets the pixels from ISIF, and sends them to NSF3V. The image width must be 32 pixel or more. |
CAL-NSF3V | CAL_PCLK | DPC works with NSF3V, and NSF3V works with CAL. DPC gets the pixels from CAL interface, and sends them to NSF3V. The image width must be 32 pixel or more. |
The input from DPC-input port must comply with IPIPE’s internal signal protocol.
There are several control signals beside 12-bit data signal (Table 6). These signals need to follow the IPIPE internal signal protocol. HD lasts for one clock. VD, VWE, and VWI can only change on HD signal. EN is asserted on the next clock of HD, and keeps high status for n-clocks, where n is the width of the valid image area. The size of the valid width (the length of asserted EN signal) must be consistent throughout each frame. EN cannot be negated in the middle of the line
When DPC works before NSF3V, ID signal from NSF3V path is used instead of the ones generated by IPIPE.
When DPC is used with NSF3V, there are a couple of points that SW must obey. First, NF-1 must be turned off (IPIPE_D2F_1ST_EN . EN=0). Second, since turning off LUT-DPC/OTF-DPC/NF-1 all off force IPIPE to skip line buffers, SW must make sure the change of latency caused by turning on/off LUT-DPC/OTF-DPC does not affect the following processes. To avoid this point, SW can virtually disable the OTF-DPC by setting in a way that OTF does not filter any pixel. One example of such setting is as following.
DPC_OTF_TYP [TYP] =0
DPC_OTF_TYP [ALG] =0
DPC_OTF_2_C_THR_x = 4095 (x=R, Gr, Gb, and B)
DPC_OTF_2_D_THR_x = 4095 (x=R, Gr, Gb, and B)