MIPI CSI协议中的像素数据到字节的映射(Mapping of pixel values to bytes)是指将图像传感器输出的像素值(通常以非8比特整数形式表示)转换成适合在8位宽的物理传输接口上传输的字节序列的过程15。
其核心含义和技术要点如下:
-
目的与必要性:
- 图像传感器输出的原始像素数据(如RAW格式的每个像素值可能是10比特、12比特或更高)无法直接通过8位宽的MIPI接口传输5。
- 映射过程就是将每个像素的非8比特整数值“打包”或“切割”成8比特的字节单位,以便在物理层以字节流的形式传输15。
-
映射方式(打包格式):
- 映射规则由具体的像素格式决定。常见的格式包括RAW8、RAW10、RAW12、YUV、RGB等5。
- 以RAW10格式为例:
- 每个像素的值占用10比特。
- 映射过程会将相邻的4个像素(4 * 10比特 = 40比特)切割并重新组合成5个字节(5 * 8比特 = 40比特)在总线上传输5。
- 具体字节排列顺序(高位在前/低位在前)也由协议规定。
- 其他格式(如RAW12、YUV422等)有各自对应的打包规则,确保所有像素数据都能无损且高效地转换成字节流5。
-
协议层级位置:
- 该映射操作发生在MIPI CSI-2协议栈的应用层(Application Layer)1。
- 应用层定义了像素数据的具体编码方式(如RAW、YUV、RGB)以及每个像素值占用多少比特,并负责执行这些值到字节流的转换规则1。
- 其下层——组包/打包层(Pixel to Byte Packing Formats Layer)则接收应用层输出的像素格式定义信息,并实际执行将像素值切割、打包成8比特字节流的工作,然后再交给更低层(如Low Level Protocol层)进行长包/短包的封装1。
总结来说:
“MIPI CSI像素数据到字节的映射”是解决图像传感器输出的原始像素值(位数不是8)与物理传输接口(宽度为8比特)之间不匹配的关键步骤。它定义了如何将这些像素值切割、组合、排序成连续的8比特字节流,以便在CSI接口上可靠传输15。这个过程由CSI-2协议的应用层规定格式,并由打包层具体执行1。
FR:徐海涛(hunkxu)