USER GUIDE / IMAGE PROCESSING / IPC / REGISTER DESCRIPTION
寄存器描述
本节按偏移地址顺序给出 IPC 全部 8 个寄存器的位域定义。位图中的 Reserved 字段写入无影响、读取为零。IPC 的基地址为 0x13353000,下表偏移均相对于该基地址。
SOFT_VERSION 寄存器
SOFT_VERSION(软件版本号),偏移 0x0000,访问属性 RO,复位值 0x26012101。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | soft_version | 软件版本号 | RO |
HARD_VERSION 寄存器
HARD_VERSION(硬件版本号),偏移 0x0004,访问属性 RO,复位值 0x26012101。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | hard_version | 硬件版本号 | RO |
TRIGE 寄存器
TRIGE(触发寄存器),偏移 0x0020,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | trige | 用于在所有模块参数配置完成后,配置此寄存器1,可以让ipc开始接收数据。 IPC触发后,会从帧头开始接收完整的一帧数据。硬件在接收到帧头信息后将该bit位置0。 * 配置后读取如果是1,表示一定出现了多次触发,需要软件解决这个问题 | RW |
OUT_NUM 寄存器
OUT_NUM(输出 num 寄存器),偏移 0x0030,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:5 | Reserved | 写入无影响,读取为零。 | RW |
| 4:0 | out_num | 内部count每输出一帧会自己+1,计数范围是 [0,out_num],配置为0即可。 | RW |
OUT_MAP 寄存器
OUT_MAP(输出 map表),偏移 0x0034,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | out_map | 用于内部判断当前应该输出的是哪一个vic的数据帧。 out=out_map[count],其中count值是OUT_NUM控制的count计算器,配置为0即可。 | RW |
RESTART 寄存器
RESTART(重启控制),偏移 0x0040,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:5 | Reserved | 写入无影响,读取为零。 | RW |
| 4 | overflow_restart | 在数据溢出异常时候重启 0:异常不重启 1:异常重启 | RW |
| 3:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | size_err_restart | 在输入分辨率异常时候重启 0:异常不重启 1:异常重启 | RW |
TRIGE_SEL 寄存器
TRIGE_SEL(触发控制),偏移 0x0044,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:17 | Reserved | 写入无影响,读取为零。 | RW |
| 16 | trige_mode | 触发后的模式: 0:正常触发 1:触发并接收一帧后自动停止 | RW |
| 15:3 | Reserved | 写入无影响,读取为零。 | RW |
| 2:0 | ch0_vch0_trige_sel | ipc的trige模式: 0:不启动 other:配置TRIGE寄存器后立刻启动 通道启动后,才会开始等待输入的帧头,并不是启动就立刻接收数据。 | RW |
OFFSET 寄存器
OFFSET(输出 YUV 数据偏移),偏移 0x0050,访问属性 RW,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:25 | Reserved | 写入无影响,读取为零。 | RW |
| 24:16 | uv_offset | out_C= clip(0,255,in_C +uv_offset) | RW |
| 15:9 | Reserved | 写入无影响,读取为零。 | RW |
| 8:0 | y_offset | out_Y= clip(0,255,in_Y+ y_offset) | RW |