USER GUIDE / IMAGE PROCESSING / TOP / REGISTER DESCRIPTION
寄存器描述
按偏移地址顺序给出 TOP 全部 17 个寄存器的位域定义。位图中的 Reserved 字段写入无影响、读取为零。TOP 有两个基地址 0x13350000(TOP0)和 0x13360000(TOP1),下列偏移地址均相对于所属通道的基地址。
VERSION 寄存器
VERSION(硬件版本号),偏移 0x0000,访问属性 RO,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | version | 硬件版本号:0x2601_1289 | RO |
TOP_CON 寄存器
TOP_CON(顶层关键配置寄存器),偏移 0x0020,访问属性 RW,复位值 0x00000000。配置顶层控制关键的信息。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:13 | Reserved | 写入无影响,读取为零。 | RW |
| 12 | bypass_sel | 控制硬件使用顶层配置byps是否使用shd后的结果 0:使用配置立刻生效的结果 1:使用shadow后的结果 * 建议配置1 | RW |
| 11:0 | Reserved | 写入无影响,读取为零。 | RW |
TOP_RST 寄存器
TOP_RST(顶层复位),偏移 0x0024,访问属性 RW,复位值 0x00000000。配置可以实现不同的复位方式和复位时间长短。
| config_reg_rst |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:24 | rst_cnt | 控制当前复位时间长度 * 建议配置64个cycle | RW |
| 23:3 | Reserved | 写入无影响,读取为零。 | RW |
| 2 | fun_reg_rst | 只对ISP各个模块计算部分复位,不会复位配置参数 复位完成自动清零 * 建议使用此复位 | RW |
| 1 | config_reg_rst | 复位ISP各个模块配置参数部分 复位完成自动清零 * 不建议使用 | RW |
| 0 | all_reg_rst | ISP所有模块计算+参数一起复位 复位完成自动清零 * 不建议使用 | RW |
BYPASS 寄存器
BYPASS(顶层 bypass寄存器),偏移 0x0040,访问属性 RW,复位值 0x00000000。控制算法模块是否bypass。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:10 | Reserved | 写入无影响,读取为零。 | RW |
| 9 | dmsc_byps | dmsc模块是否bypass 0:模块正常计算 1:模块bypass | RW |
| 8:0 | Reserved | 写入无影响,读取为零。 | RW |
BYPASS1 寄存器
BYPASS1(顶层 bypass寄存器 1),偏移 0x0044,访问属性 RW,复位值 0x00000000。控制test pattern模块是否启动color bar
| tpyuv_pat_byps | tprgb_pat_byps | tpraw_pat_byps |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:9 | Reserved | 写入无影响,读取为零。 | RW |
| 8:3 | Reserved | 写入无影响,读取为零。 | RW |
| 2 | tpyuv_pat_byps | yuv域color bar有效使能 0:打开color bar替换数据 1:关闭color bar数据正常 | RW |
| 1 | tprgb_pat_byps | rgb域color bar有效使能 0:打开color bar替换数据 1:关闭color bar数据正常 | RW |
| 0 | tpraw_pat_byps | raw域colorbar有效使能 0:打开color bar替换数据 1:关闭color bar数据正常 | RW |
REG_CON 寄存器
REG_CON(顶层控制子模块寄存器使用选择),偏移 0x0048,访问属性 RW,复位值 0x00000000。顶层控制子模块使用的是寄存器shadow前还是shadow后的
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31 | Reserved | 写入无影响,读取为零。 | RW |
| 30:0 | write_sel | 写shadow控制寄存器 bit对应关系: [9] :dmsc 其他为空 对于bit功能如下 0:写入shadow寄存器。shadow功能不生效 1:写入shadow前寄存器。shadow 功能生效 * 建议配置1 shadow寄存器是为了保证一些无法在帧中间被修改的寄存器而设置的寄存器。这些寄存器会在每帧开头统一load一次shadow前寄存器。这样来保证使用的值一帧不会改变。 | RW |
STATIC_EN 寄存器
STATIC_EN(统计使能),偏移 0x0060,访问属性 RW,复位值 0x00000000。控制模块是否统计的开关
| ae_static_en |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:2 | Reserved | 写入无影响,读取为零。 | RW |
| 1 | ae_hist_en | ae的hist统计开关 | RW |
| 0 | ae_static_en | ae模块统计开关 | RW |
STATIC_STOP 寄存器
STATIC_STOP(统计模块停止),偏移 0x0064,访问属性 RW,复位值 0x00000000。给统计模块发送stop信号。
| ae_hist_stop | ae_static_stop |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:2 | Reserved | 写入无影响,读取为零。 | RW |
| 1 | ae_hist_stop | 都用于给ae模块统计发送stop信号 | RW |
| 0 | ae_static_stop | 都用于给ae模块统计发送stop信号 | RW |
STATIC_RST 寄存器
STATIC_RST(统计模块复位信号),偏移 0x0068,访问属性 RW,复位值 0x00000000。将统计模块单独复位。
| ae_static_rstn |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | ae_static_rstn | 复位ae统计模块 模块复位前,需要先stop模块,并且通过子模块自己的debug寄存器(详见子模块寄存器)确认模块stop成功后才可以复位。 | RW |
STATIC_POS 寄存器
STATIC_POS(统计位置选择),偏移 0x006C,访问属性 RW,复位值 0x00000000。配置统计模块位置
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:3 | Reserved | 写入无影响,读取为零。 | RW |
| 2:0 | ae_pos_sel | ae模块输入源选择 0:ipc输出(sensor是yuv数据时候选择) 1:dmsc输出(sensor是raw数据时候选择) | RW |
FRM_SIZE 寄存器
FRM_SIZE(图像分辨率寄存器),偏移 0x0080,访问属性 RW,复位值 0x00000000。配置档期算法使用的图像分辨率
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | fm_width | 图像宽度寄存器 * 最小值640,必须是 4的倍数 | RW |
| 15:0 | fm_height | 图像高度寄存器 * 最小值360,必须是4的倍数 | RW |
BAYER_TYPE 寄存器
BAYER_TYPE(顶层类型配置),偏移 0x0088,访问属性 RW,复位值 0x00000000。顶层bayer类型wdr/ir等类型配置寄存器。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:10 | Reserved | 写入无影响,读取为零。 | RW |
| 9:8 | data_type | 数据类型寄存器 0:RAW8 1:RAW10 2:RAW12 3:YUV | RW |
| 7:5 | Reserved | 写入无影响,读取为零。 | RW |
| 4:0 | bayer_type | bayer类型寄存器 * 本项目只支持0~3种类的Bayer类型。 | RW |
LINE_SPACE_0 寄存器
LINE_SPACE_0(顶层行间隔控制寄存器),偏移 0x0090,访问属性 RW,复位值 0x00000000。控制模块两行最小间隔。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | nml_line_space | 控制算法模块之间两行最小间隔 | RW |
| 15:0 | ipc_line_space | 控制IPC输出两个最小间隔 | RW |
STOP_CON 寄存器
STOP_CON(顶层停止寄存器),偏移 0x0100,访问属性 RW,复位值 0x00000000。控制顶层stop的寄存器。
| tiziano_stop |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | tiziano_stop | tizianostop+ reset寄存器 配置后所有dma会停止,并等待总线安全后复位整个ISP 在复位完成后,会发出复位完成中断,对应resp 中的 stop_int中断 * 复位只进行function_reset。配置参数不复位 | RW |
STOP_STATE 寄存器
STOP_STATE(顶层停止状态寄存器),偏移 0x0104,访问属性 RO,复位值 0x00000000。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | stop_state | 表示当前stop过程的状态 1:IDLE:表示当前空闲状态 4:STOP_CHK_CLEAN:表示当前等待总线安全(如果长时间在此状态,表示当前总线异常,需要更加细致检查) * 为了安全,stop_state 在配置 tiziano_stop 后,需要连续读取两次stop_state,以后一次状态为准。 | RO |
SHD_TEST_CTRL 寄存器
SHD_TEST_CTRL(SHD_TEST_CTRL 控制寄存器),偏移 0x0320,访问属性 RW,复位值 0x00000000。用于寄存器测试时候触发shd寄存器的load。
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | shd_trige | 配置后所有算法模块的配置参数shd寄存器都会load一次 内部测试寄存器,正常使用无需关心。 * 自清零 | RW |
OVERFLOW_STOP_EN 寄存器
OVERFLOW_STOP_EN(OVERFLOW_STOP_EN控制寄存器),偏移 0x0330,访问属性 RW,复位值 0x00000000。overflow后是继续还是stop。
| overflow_stop_en |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:1 | Reserved | 写入无影响,读取为零。 | RW |
| 0 | overflow_stop_en | 是否在overflow后停止 0:不停止 1:停止 | RW |