SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
Figure 9-165 shows the storage formatter block diagram.
Data are stored to the lower bits of a 16-bit SDRAM word, or can be 8- or 12-bit packed. The ISIF_HSIZE[11:0] HSIZE bit field can specify the memory address offsets between lines of memory (offset in 32-byte units). If set, the ISIF_HSIZE[12] ADCR bit can decrement the memory address line and the line can be horizontally flipped in memory.
In case of RAW data, a data shift module is used: data to be stored can be right-shifted according to the value set at the ISIF_MODESET[10:8] CCDW bit field, as described in Table 9-213.
ISIF_MODESET[10:8] CCDW | Output Format | |
---|---|---|
MSB | LSB | |
000 | 0000 &U12 data[11:0] | |
001 | 00000 &U12 data[11:1] | |
010 | 000000 &U12 data[11:2] | |
011 | 0000000 &U12 data[11:3] | |
100 | 00000000 &U12 data[11:4] |
Table 9-214 shows the format where data are stored to the lower bits of a 16-bit word and the format where data are packed to 8 bits. The unused bits are filled with zeros.
Upper Word | Lower Word | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MSB(31) | LSB(16) | MSB(15) | LSB(0) | |||||||||||||||||||||||||||||
12 bit | 0 | Pixel 1 | 0 | Pixel 0 | ||||||||||||||||||||||||||||
11 bit | 0 | Pixel 1 | 0 | Pixel 0 | ||||||||||||||||||||||||||||
10 bit | 0 | Pixel 1 | 0 | Pixel 0 | ||||||||||||||||||||||||||||
9 bit | 0 | Pixel 1 | 0 | Pixel 0 | ||||||||||||||||||||||||||||
8 bit | 0 | Pixel 1 | 0 | Pixel 0 | ||||||||||||||||||||||||||||
8-bit packed | Pixel 3 | Pixel 2 | Pixel 1 | Pixel 0 |
Table 9-215 shows the format where data are packed to 12 bits.
Upper Word | Lower Word | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MSB(31) | LSB(16) | MSB(15) | LSB(0) | |||||||||||||||||||||||||||||
Pixel2[7:0] | Pixel1 | Pixel 0 | ||||||||||||||||||||||||||||||
12 bit | Pixel5[3:0] | Pixel4 | Pixel3 | Pixel2[11:8] | ||||||||||||||||||||||||||||
Pixel7 | Pixel6 | Pixel5[11:4] |
In case of YUV, YUV data is stored in memory in packed YUV4:2:2 mode, using 2 pixels per 32 bits, as shown in Table 9-216.
The output formatter can configure to any image format by using the SDRAM line offset register and offset control registers. Figure 9-166 shows how to construct a frame format in SDRAM. The ISIF_CADU[10:0] CADU bit field specifies the memory destination (upper 11 bits) to SDRAM (the address is the value of the set bit multiplied by 32 bytes). On the other hand, the ISIF_CADL[15:0] CADL bit field sets the memory destination to SDRAM (lower 16 bits) (the address is the value of the set bit multiplied by 32 bytes).