SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
The IPIPEIF module can read RAW data from memory. The RAW data can be previously packed/compressed into memory. Unpack, A-Law decompression, and DPCM decompression are available in the IPIPEIF module.
Figure 9-50 shows the DPCM subblock.
Figure 9-50 ISS ISP IPIPEIF DPCM SubblockTable 9-176 provides the possible configuration of the DPCM block.
| Number of Bits per Pixel at DPCM Block Input | Number of Bits per Pixel at DPCM Block Output | Description | Registers |
|---|---|---|---|
| 16 | 16 | It can correspond to YUV4:2:2 or RAW16 data. | IPIPEIF_CFG1[9:8] UNPACK = 0x0 In this configuration, IPIPEIF_CFG1[3:2] INPSRC2 = 0x3. In this configuration data bypasses the DPCM block. |
| 8 | 8 | PACK8: YUV | IPIPEIF_CFG1[9:8] UNPACK = 0x1 IPIPEIF_DPCM[0] ENA = 0x0 IPIPEIF_CFG1[13:11] DATASFT = 0x01 In this configuration an 8-bit packed RAW data is used in DFS mode or YUV4:2:0 pass through. (See Section 9.3.3.4.14, ISS ISP IPIPEIF YUV4:2:2 8-bits Packed Data Input Coming From ISIF Module.) |
| 8 | 10 | DPCM10: The 8-bit input data are DPCM-decompressed in 10 bits. | IPIPEIF_CFG1[9:8] UNPACK = 0x1 IPIPEIF_DPCM[0] ENA = 0x1 IPIPEIF_DPCM[2] BITS = 0x0 Set the IPIPEIF_DPCM[1] PRED(1) (2) IPIPEIF_CFG1[13:11] DATASFT = 0x2 |
| 8 | 12 | DPCM12: The 8-bit input data are DPCM-decompressed in 12 bits. | IPIPEIF_CFG1[9:8] UNPACK = 0x1 IPIPEIF_DPCM[0] ENA = 0x1 IPIPEIF_DPCM[2] = 0x1 Set the IPIPEIF_DPCM[1] PRED(1) (2) IPIPEIF_CFG1[13:11] DATASFT = 0x0 |
| 8 | 10 | ALAW10: The 8-bit input data were previously A-law compressed. The 8 bits are A-law decompressed and padded with 0. | IPIPEIF_CFG1[9:8] UNPACK = 0x2 IPIPEIF_CFG1[13:11] DATASFT = 0x2 |
| 12 | 12 | PACK12: The input is coded on 12 bits and is packed in the SDRAM. This mode is compatible with the ISIF module packing capability. If inverse A-law and DPCM decompression are not enabled, the data read from the SDRAM can be shifted by the IPIPEIF_CFG1[13:11] DATASFT bit field to select which 12 bits to use. MSB input data bit must be shifted such that it corresponds to bit 11 after the shift. | IPIPEIF_CFG1[9:8] UNPACK = 0x3 Set the IPIPEIF_CFG1[13:11] DATASFT |