USER GUIDE / IMAGE INPUT & ENCODING / JPEG ENC / REGISTER DESCRIPTION
寄存器描述
配置寄存器和字段说明
JPEG_TRIG 寄存器(JPEG_TRIG, 0x0000)
JPEG_TRIGJPEG_TRIG BASE + 0x0000
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | FRM_END_CYCLES | JPEG frame_end状态会持续多少个cycle数后,进入 reset状态机进行reset动作。 default : 0x100 | R/W |
| 15:13 | reserved | 写入无影响,读取为零。 | R |
| 12 | SW_SEQ_RST_REGS | 当配置[2] SW_SEQ_RESET时,配置成1表示同时复位 jpeg_slv中寄存器,如一帧宽高,nmcu等序列级通用参 数,qp base表。 默认为0。 | R/W |
| 11:8 | SW_RESET_CYCLE | 软件配置reset持续时钟数-1。 默认为10。 | R/W |
| 7 | SHADOW_NEXT_START_EN | 当SHADOW_FLAG为1,此位表示:配置的寄存器下一 帧frm_start时生效。 理论上,得到当前帧码流长度后,进行码率控制算法,得 到量化表索引或QP,与之前配置的值不一致会触发 SHADOW功能。 非frame0时,shadow时默认打开此bit。 | R/W |
| 6 | SHADOW_NEXT_END_EN | 当SHADOW_FLAG为1,此位表示:配置的寄存器下一 帧frm_end时生效。 用于:JPEG在工作中的任意时刻。 | R/W |
| 5 | SHADOW_CUR_EN | 当SHADOW_FLAG为1,此位表示:配置的寄存器当前 帧立即生效。 用于:frm0时。 | R/W |
| 4 | SHADOW_FLAG | Shadow寄存器功能使能flag。 用于: 1,frm0时。 2,更改其他配置时 | R/W |
| 3 | SW_FSM_RESET | 状态机复位寄存器,默认为0。 必要的时候进行状态机复位配置 | R/W |
| 2 | SW_SEQ_RESET | JPEG硬件内部所有寄存器进行reset。 (序列级reset +帧级reset) 所谓序列级就是帧与帧交替时不需要进行reset。例,每 帧ocm首地址计算。 所谓帧级,就是每帧正常或异常结束需要reset一次。 功能等同于接口中i_wrst_n。 如果需要使用,请配置成1。 SCALER开启时每帧必须配置为1 | R/W |
| 1 | SW_FRM_RESET | JPEG硬件内部所有帧级寄存器reset。 所谓帧级,就是每帧正常或异常结束需要reset一次。 如果需要使用,请配置成1。 | R/W |
| 0 | START | JPEG一帧编码启动信号,但仅在非auto_mode下使用; 或者SCALER关闭时每帧都需要配置;或者BAYER格 式时每帧都需要配置。 该位用于JPEG初次启动时,或SW_RESET之后。 | R/W |
JPEG_CTRL 寄存器(JPEG_CTRL, 0x0004)
JPEG_CTRLJPEG_CTRL BASE + 0x0004
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31 | AUTO_MODE | 目前JPEG支持两种启动模式: 1,自动模式。JPEG编码完一帧,不需要看trig[0]的start 信号,而是将ISP的frame_start作为一帧编码的启动信 号。 2,Trig模式,JPEG每次编码一帧之前要看trig[0]的start 信号作为启动信号。 如果使用自动模式,请配置成1 BAYER格式时,改配置需配置为0,不支持自动模式。 | R/W |
| 30 | AUTO_RESET | 当触发中断或一帧编码完成时,自动触发reset,使帧级regs 相关自动复位,与sw_frm_reset功能相同。 而序列级regs不进行reset。 如果使用,请配置成1。 | R/W |
| 29 | TABLE_MODE | 序列开始时配置 0代表,当想更改量化表时,sw来配置表或表索引。 1代表,当想更改量化表时,sw来配置一个QP值,量化表 在硬件内部进行计算。 default : 1 | R/W |
| 28:22 | QP | 当TABLE_MODE=1且需要改变量化表时进行配置 有效值0~98。 可以进行shadow配置。 | R/W |
| 21:20 | QK_TAB_SEL | 当TABLE_MODE=0时使用,default 0 选择哪一组量化表供硬件使用,总共有3组量化表可以选择, 量化表压缩程度依次从高到低,每组分别包含Y和UV所用 的量化表 0:压缩程度高 1:压缩程度中 2:压缩程度低 可以进行shadow配置。 | R/W |
| 19 | Reserved | 写入无影响,读取为零。 | |
| 18 | TIME_OUT_EN | time out enable 0:关闭TIME OUT功能 | R/W |
| 17:16 | AWLEN | AXI AWLEN配置如下: 0: awlen =3,表示burst length =4 1: awlen =7,表示burst length =8 2: awlen =15,表示burst length =16 3:awlen =31,表示burst length =32 默认为0 | R/W |
| 15 | SAME_FRM_SEL | 相同帧选择,选择哪种帧数计算逻辑,default 0: 0:选择新的帧数计算逻辑,start时加1,overflow时清零 1:选择旧的帧数计算逻辑,序列级reset,start时加1,产 生不同帧中断时加2 | R/W |
| 14 | ISP_EN | SCALERenable 0:关闭SCALER,JPEG直接从DDR取数,不经过SCALER; 1:开启SCALER,JPEG需要看SCALER相关信号来从 DDR取数; BAYER模式时,该配置需为0,不支持ISP_EN为1 default 1 | R/W |
| 13 | CROSS_4K_DIS | cross 4k boundary disable default 0 | R/W |
| 12 | Reserved | 写入无影响,读取为零。 | R |
| 11:10 | QT_V | Quant table number for V. default 1 | R/W |
| 9:8 | Reserved | 写入无影响,读取为零。 | R |
| 7:6 | QT_U | Quant table number for U. default 1 | R/W |
| 5:4 | Reserved | 写入无影响,读取为零。 | R |
| 3:2 | QT_Y | Quant table number for Y.default 0 | R/W |
| 1:0 | Reserved | 写入无影响,读取为零。 | R |
JPEG_NMCU 寄存器(JPEG_NMCU, 0x0008)
JPEG_NMCUJPEG_NMCU BASE + 0x0008
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:26 | Reserved | 写入无影响,读取为零。 | R |
| 25:0 | FRM_MCU_NUMBER | 配置:MCU个数减1。 若420格式: 【MCU个数计算】首先将一帧宽高按16对齐。 MCU个数= (对齐后的宽/16)*(对齐后的高/16)。 例:256x128,则MCU个数为=16*8=128个。配置127 若422格式: 【MCU个数计算】首先将一帧宽按16对齐,高度8对齐。 MCU个数=(对齐后的宽/16)*(对齐后的高/8) 例:256x128,则MCU个数为=16*16=256个。配置255. 若420单Y格式: 【MCU个数计算】首先将一帧宽高按8对齐。 MCU个数= (对齐后的宽/8)*(对齐后的高/8)。 例:256x128,则MCU个数为=32*16=512个。配置511. 若bayer格式: 【MCU个数计算】首先将一帧宽高按16对齐。 MCU个数= (对齐后的宽/16)*(对齐后的高/16)。 例:256x128,则MCU个数为=16*8=128个。 配置127。 | R/W |
JPEG_FRM_INFO 寄存器(JPEG_FRM_INFO, 0x000C)
JPEG_FRM_INFOJPEG_FRM_INFO BASE + 0x000C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | FRM_HEIGHT | Frame height, unit in pixel.原始尺寸 420/422/420单Y/bayer:帧宽度4对齐。 | R/W |
| 15:0 | FRM_WIDTH | Frame width,unit in pixel.原始尺寸 420/422/420单Y/bayer:帧高度4对齐。 | R/W |
JPEG_LINE_STRD 寄存器(JPEG_LINE_STRD, 0x0010)
JPEG_LINE_STRDJPEG_LINE_STRD BASE + 0x0010
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:12 | Reserved | 写入无影响,读取为零。 | R |
| 11:0 | LINE_STRD | 420格式配置:帧宽度16对齐 422格式配置:帧宽度16对齐x2 420单Y格式配置:帧宽度8对齐 bayer格式配置:帧宽度16对齐 | R/W |
JPEG_RAWY_ADDR 寄存器(JPEG_RAWY_ADDR, 0x0014)
JPEG_RAWY_ADDRJPEG_RAWY_ADDR BASE + 0x0014
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FRM_RAWY_ADDR | Frame input Y pixel start address. (need to be 256 Byte align) OCM分配给ISP/JPEG像素空间的首地址。 | R/W |
JPEG_RAWC_ADDR 寄存器(JPEG_RAWC_ADDR, 0x0018)
JPEG_RAWC_ADDRJPEG_RAWC_ADDR BASE + 0x0018
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FRM_RAWC_ADDR | Frame input UV pixel start address. (need to be 256 Byte align) (YUV422/BAYER is useless) | R/W |
JPEG_FORMAT_CTRL 寄存器(JPEG_FORMAT_CTRL, 0x001C)
JPEG_FORMAT_CTRLJPEG_FORMAT_CTRL BASE + 0x001C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:8 | Reserved | 写入无影响,读取为零。 | R |
| 7:4 | AR_OUTSTANDING | Axi读总线outstanding能力。(范围:0~15)(默认值:15) 含义: 0:表示outstanding能力是1,或者叫无outstanding能力。 1:表示outstanding能力是2 2:表示outstanding能力是3. …. 0xf:表示outstanding能力是16 | R/W |
| 3:2 | BAYERFORMAT | 00: RGGB 01:BGGR 10:GBRG 11:GRBG | R/W |
| 1:0 | FORMAT_SEL | Input Picture format selection. 0: yuv420 1: yuv422 2: yuv420 + only y encode 3:bayer | R/W |
JPEG_WRAP 寄存器(JPEG_WRAP, 0x0020)
JPEG_WRAPJPEG_WRAP BASE + 0x0020
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:8 | Reserved | 写入无影响,读取为零。 | R |
| 7:0 | JPEG_WRAP | 表示OCM中ISP/JPEG有多少个8行像素空间可用。 420格式:至少需要配置为4(即2个16行可用) 422格式:至少需要配置为2(即2个8行可用) 420单Y格式:至少需要配置为2(即2个8行可用) bayer格式无需配置该寄存器。 下一帧首地址跳到到OCM首地址。 | R/W |
JPEG_MARKERS 寄存器(JPEG_MARKERS, 0x0024)
JPEG_MARKERSJPEG_MARKERS BASE + 0x0024
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Markers_number | Restart Markers MCU number减1,不开启时默认为0。开 启时最小值为1,最大值为MCU个数减1。 标记值为两个重启标记之间(若启用)的MCU数量减1,若 Re位未置位,则忽略该寄存器的内容。 | R/W |
| 15:1 | Reserved | 写入无影响,读取为零。 | R |
| 0 | Markers_enable | Restart Markers使能,不开启时默认为0。 当RE位置位时,使能重启标记(Restart Markers)处理。 当CODEC作为编码器工作时,每(Markers_number+1) 个MCU会在输出的ECS(熵编码段,Entropy Coded Segment)中插入一个重启标记。 | R/W |
JPEG_CODE_PIX_TOTAL 寄存器(JPEG_CODE_PIX_TOTAL, 0x0028)
JPEG_CODE_PIX_TOTALJPEG_CODE_PIX_TOTAL BASE + 0x0028
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | CODE_PIXEL_TOTAL_NUM | 将一帧宽高以jpeg编码规则进行对齐 (420:宽高均为16, 422:宽16高8, 420单Y:宽8高8 Bayer:宽16高16) 后, JPEG需要编码一帧的YUV像素总数。 | R/W |
JPEG_POST_RDY_KEY0 寄存器(JPEG_POST_RDY_KEY0, 0x002C)
JPEG_POST_RDY_KEY0JPEG_POST_RDY_KEY0 BASE + 0x002C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_POST_RDY_KEY0 | 用于debug或测试使用,default 0。当 JPEG_POST_RDY_KEY0为32’h01234567, JPEG_POST_RDY_KEY1为32’h76543210,AW/W/B 相关控制输入一直为高 | R/W |
JPEG_POST_RDY_KEY1 寄存器(JPEG_POST_RDY_KEY1, 0x0030)
JPEG_POST_RDY_KEY1JPEG_POST_RDY_KEY1 BASE + 0x0030
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_POST_RDY_KEY1 | 用于debug或测试使用,default 0。当 JPEG_POST_RDY_KEY0为32’h01234567, JPEG_POST_RDY_KEY1为32’h76543210,AW/W/B 相关控制输入一直为高 | R/W |
JPEG_BS_ADDR 寄存器(JPEG_BS_ADDR, 0x0034)
JPEG_BS_ADDRJPEG_BS_ADDR BASE + 0x0034
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_BS_ADDR | 输出的码流首地址(need to be 256 Byte align)。 | R/W |
JPEG_TIMEOUT_THRD 寄存器(JPEG_TIMEOUT_THRD, 0x0038)
JPEG_TIMEOUT_THRDJPEG_TIMEOUT_THRD BASE + 0x0038
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_TIMEOUT_THRD | JPEG timeout阈值 当关闭timeout机制时默认为0; 当打开timeout机制时以1080p为例,建议配置为 0x0105dad3(1080p经验值3432183 x 5); | R/W |
JPEG_DEBUG_BS0_LF 寄存器(JPEG_DEBUG_BS0_LF, 0x0130)
JPEG_DEBUG_BS0_LFJPEG_DEBUG_BS0_LF BASE + 0x0130
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DEBUG_BS0_LF | 所检索的第一笔8byte码流数据的低31位数值 | R |
JPEG_VERSION_NUM 寄存器(JPEG_VERSION_NUM, 0x0040)
JPEG_VERSION_NUMJPEG_VERSION_NUM BASE + 0x0040
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_VERSION_NUM | 用于识别代码的版本号 | R |
JPEG_GLB_STAT 寄存器(JPEG_GLB_STAT, 0x0100)
JPEG_GLB_STATJPEG_GLB_STAT BASE + 0x0100
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31 | FRM_END | JPEG编码一帧结束信号,高电平有效。 JPEG编码器已完成当前帧的编码。 当JPEG编解码器完成当前帧的编码并输出所有比特流后, 将FRM_END位拉高。(FRM_END为电平信号) | R |
| 30:24 | QP_IN_CUR_FRAME | 当硬件计算量化表时,表示当前帧编码使用的QP值 | R |
| 23:0 | BS_LEN | 码流长度,一帧结束时有多少个Byte。 Bit-steam length. It’s stable when frame_end done. | R |
JPEG_GLB_FSM 寄存器(JPEG_GLB_FSM, 0x0104)
JPEG_GLB_FSMJPEG_GLB_FSM BASE + 0x0104
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:29 | Reserved | 写入无影响,读取为零。 | R |
| 28 | RESET_FSM_DONE | RESET FSM结束 | R |
| 27:24 | DHT_FSM | DHT FSM,0表示空闲 | R |
| 23:20 | DQT_FSM | DQT FSM,0表示空闲 | R |
| 19:16 | HEADER_FSM | HEADER FSM,0表示空闲 | R |
| 15:12 | SLV_FSM1 | SLV FSM1,7表示空闲 | R |
| 11:8 | SLV_FSM0 | SLV FSM0,0表示空闲 | R |
| 7:4 | RESET_FSM | RESET_FSM,0表示空闲 | R |
| 3:0 | CTRL_FSM | 全局状态机,0表示空闲 | R |
JPEG_GLB_FE_FRM_CNT 寄存器(JPEG_GLB_FE_FRM_CNT, 0x0108)
JPEG_GLB_FE_FRM_CNTJPEG_GLB_FE_FRM_CNT BASE + 0x0108
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | ISP_FE_FRM_CNT | 表示ISP正工作在第几帧。 Seq_rst下清0 | R |
| 15:0 | JPGE_FE_FRM_CNT | 表示jpeg正工作在第几帧。 Seq_rst下清0 | R |
JPEG_INTR_ENABLE 寄存器(JPEG_INTR_ENABLE, 0x010C)
JPEG_INTR_ENABLEJPEG_INTR_ENABLE BASE + 0x010C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:4 | Reserved | 写入无影响,读取为零。 | R |
| 3 | JPEG_TIMEOUT_INTERRUPR_ENABLE | JPEG timeout触发中断使能。 高有效,默认关闭 注:当JPEG一帧的工作时间超过所设置的 timeout阈值时视为异常现象。 | R/W |
| 2 | START_ABNORMAL_ENABLEISP_FRAME | ISP一帧开始信号异常触发中断使能。 高有效,默认关闭。 注:当ISP的一帧开始信号出现在JPEG工作 状态期间视为异常现象。 | R/W |
| 1 | JPEG_OVERFLOW_ENABLE | JPEG overflow触发中断使能。 高有效,默认关闭。 注:当ISP向DDR的写数据覆盖JPEG读数 据区域,视为异常现象。 | R/W |
| 0 | JPEG_FRAME_ENDENABLE | JPEG一帧结束中断使能。 高有效,默认开启。 | R/W |
JPEG_INTR_STAT 寄存器(JPEG_INTR_STAT, 0x0110)
JPEG_INTR_STATJPEG_INTR_STAT BASE + 0x0110
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:4 | Reserved | 写入无影响,读取为零。 | R |
| 3 | JPEG_TIMEOUT_STAT | JPEG timeout触发中断状态。 注:当JPEG一帧的工作时间超过所设置的 timeout阈值时视为异常现象。 | R |
| 2 | ISP_FRAME_START_ABNORMAL_STAT | ISP一帧开始信号异常触发中断状态。 注:当ISP的一帧开始信号出现在JPEG工 作状态期间视为异常现象。 | R |
| 1 | JPEG_OVERFLOW_STAT | JPEG overflow触发中断状态。 注:当ISP向DDR的写数据覆盖JPEG读数 据区域,视为异常现象。 | R |
| 0 | JPEG_FRAME_END_STAT | JPEG一帧结束触发中断状态。 | R |
JPEG_INTR_CLR 寄存器(JPEG_INTR_CLR, 0x0114)
JPEG_INTR_CLRJPEG_INTR_CLR BASE + 0x0114
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:4 | Reserved | 写入无影响,读取为零。 | R |
| 3 | JPEG_TIMEOUT_CLEAR | 清除JPEG timeout触发中断状态。 | W |
| 2 | ISP_FRAME_START_ABNORMAL_CLEAR | 清除ISP一帧开始信号异常中断状态。 | W |
| 1 | JPEG_OVERFLOW_CLEAR | 清除JPEG overflow触发中断状态。 | W |
| 0 | JPEG_FRAME_END_CLEAR | 清除JPEG一帧结束中断状态。 | W |
debug 寄存器和字段说明
JPEG_DEBUG_RT_LINE_END_CNT 寄存器(JPEG_DEBUG_RT_LINE_END_CNT, 0x0118)
JPEG_DEBUG_RT_LINE_END_CNTJPEG_DEBUG_RT_LINE_END_CNT BASE + 0x0118
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Reserved | 写入无影响,读取为零。 | R |
| 15:8 | ISP_FRM_LINE_END_CNT | ISP写完DDR中8行(YUV422)或16行 (YUV420)数据的个数,帧级reset | R |
| 7:0 | JPEG_READ_LINE_END_C | JPEG读完DDR中8行(YUV422)或16行 NT(YUV420)数据的个数,帧级reset | R |
JPEG_DEBUG_FE_LINE_END_CNT 寄存器(JPEG_DEBUG_FE_LINE_END_CNT, 0x011C)
JPEG_DEBUG_FE_LINE_END_CNTJPEG_DEBUG_FE_LINE_END_CNT BASE + 0x011C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Reserved | 写入无影响,读取为零。 | R |
| 15:8 | ISP_FRM_LINE_END_CNT | ISP写完DDR中8行(YUV422)或16行 (YUV420)数据的个数,序列级reset, frm end 或中断时锁存 | R |
| 7:0 | JPEG_READ_LINE_END_CNT | JPEG读完DDR中8行(YUV422)或16行 (YUV420)数据的个数,序列级reset, frm end 或中断时锁存 | R |
JPEG_DEBUG_RBUF_STAT 寄存器(JPEG_DEBUG_RBUF_STAT, 0x0120)
JPEG_DEBUG_RBUF_STATJPEG_DEBUG_RBUF_STAT BASE + 0x0120
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:27 | Reserved | 写入无影响,读取为零。 | R |
| 26 | BUF0_RAM0_WR_RDY | Buffer0组中的ram0准备好写数据 | R |
| 25 | BUF0_RAM1_WR_RDY | Buffer0组中的ram1准备好写数据 | R |
| 24 | BUF1_RAM0_WR_RDY | Buffer1组中的ram0准备好写数据 | R |
| 23 | BUF1_RAM1_WR_RDY | Buffer1组中的ram1准备好写数据 | R |
| 22 | NV12_PRE_BUFOUT_SEL | nv12格式时pre buffer输出选择 | R |
| 21 | NV12_PRE_BUFIN_SEL | nv12格式时pre buffer输入选择 | R |
| 20 | PRE_PIX_BUFIN_SEL | pre pixel输入buffer选择 | R |
| 19 | PIX_BUFOUT_SEL | pixel输出buffer选择 | R |
| 18 | PIX_BUFIN_SEL | pixel输入buffer选择 | R |
| 17 | BUFOUT_GRP_SEL | 输出的buffer组选择,0选择buffer0,1选择buffer1 | R |
| 16 | BUFIN_GRP_SEL | 输入的buffer组选择,0选择buffer0,1选择buffer1 | R |
| 15 | PIX_BUF1_EMPTY | pixel buffer1空状态 | R |
| 14 | PIX_BUF1_FULL | pixel buffer1满状态 | R |
| 13 | PIX_BUF0_EMPTY | pixel buffer0空状态 | R |
| 12 | PIX_BUF0_FULL | pixel buffer0满状态 | R |
| 11 | NV12_PRE_BUF1_EMPTY | nv12格式时pre buffer1空状态 | R |
| 10 | NV12_PRE_BUF1_FULL | nv12格式时pre buffer1满状态 | R |
| 9 | NV12_PRE_BUF0_EMPTY | nv12格式时pre buffer0空状态 | R |
| 8 | NV12_PRE_BUF0_FULL | nv12格式时pre buffer0满状态 | R |
| 7 | BUF1_GRP_RAM1_EMPTY | Buffer1组中的ram1空状态 | R |
| 6 | BUF1_GRP_RAM1_FULL | Buffer1组中的ram1满状态 | R |
| 5 | BUF1_GRP_RAM0_EMPTY | Buffer1组中的ram0空状态 | R |
| 4 | BUF1_GRP_RAM0_FULL | Buffer1组中的ram0满状态 | R |
| 3 | BUF0_GRP_RAM1_EMPTY | Buffer0组中的ram1空状态 | R |
| 2 | BUF0_GRP_RAM1_FULL | Buffer0组中的ram1满状态 | R |
| 1 | BUF0_GRP_RAM0_EMPTY | Buffer0组中的ram0空状态 | R |
| 0 | BUF0_GRP_RAM0_FULL | Buffer0组中的ram0满状态 | R |
JPEG_DEBUG_BSB_STAT 寄存器(JPEG_DEBUG_BSB_STAT, 0x0124)
JPEG_DEBUG_BSB_STATJPEG_DEBUG_BSB_STAT BASE + 0x0124
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Reserved | 写入无影响,读取为零。 | R |
| 15:8 | BS_BYTE_EN | 表示8个byte码流哪一个是有效的 | R |
| 7:4 | Reserved | 写入无影响,读取为零。 | R |
| 3 | 3RAM_FIFO_EMPTY | ram fifo空状态 | R |
| 2 | 2RAM_FIFO_FULL | ram fifo满状态 | R |
| 1 | 1BS_DATA_EMPTY | 输入的bs data fifo空状态 | R |
| 0 | 0BS_DATA_FULL | 输入的bs data fifo满状态 | R |
JPEG_DEBUG_KEY_INFO 寄存器(JPEG_DEBUG_KEY_INFO, 0x0128)
JPEG_DEBUG_KEY_INFOJPEG_DEBUG_KEY_INFO BASE + 0x0128
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:6 | Reserved | 写入无影响,读取为零。 | R |
| 5 | TAIL_END | tail编码结束 | R |
| 4 | HEADER_EN | header码流有效 | R |
| 3 | CORE_ENC_VLD | core核码流有效 | R |
| 2 | PIXIN_REQ | core核准备好接受像素 | R |
| 1 | CORE_OVER | core核编码结束 | R |
| 0 | CORE_EN | core核启动 | R |
JPEG_DEBUG_BS_IDX 寄存器(JPEG_DEBUG_BS_IDX, 0x012C)
JPEG_DEBUG_BS_IDXJPEG_DEBUG_BS_IDX BASE + 0x012C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Reserved | 写入无影响,读取为零。 | R |
| 15:0 | BS_IDX | 8byte码流数据的索引 | R/W |
JPEG_DEBUG_BS0_HF 寄存器(JPEG_DEBUG_BS0_HF, 0x0134)
JPEG_DEBUG_BS0_HFJPEG_DEBUG_BS0_HF BASE + 0x0134
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DEBUG_BS0_HF | 所检索的第一笔8byte码流数据的高31位数值 | R |
JPEG_DEBUG_ETC_ADDR 寄存器(JPEG_DEBUG_ETC_ADDR, 0x0140)
JPEG_DEBUG_ETC_ADDRJPEG_DEBUG_ETC_ADDR BASE + 0x0140
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DEBUG_ETC_ADDR | OCM中像素的地址 | R/W |
JPEG_DEBUG_ETC_INFO 寄存器(JPEG_DEBUG_ETC_INFO, 0x0144)
JPEG_DEBUG_ETC_INFOJPEG_DEBUG_ETC_INFO BASE + 0x0144
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:23 | Reserved | 写入无影响,读取为零。 | R |
| 22:16 | DEBUG_ETC_WRAP_CNT | etc wrap个数的索引,每8行为一个wrap | R/W |
| 15:3 | Reserved | 写入无影响,读取为零。 | R |
| 2:0 | DEBUG_ETC_RDATA_IDX | 水平方向在1个burst传输中读数据的索引 | R/W |
JPEG_DEBUG_ETC_RDATA0 寄存器(JPEG_DEBUG_ETC_RDATA0, 0x0148)
JPEG_DEBUG_ETC_RDATA0JPEG_DEBUG_ETC_RDATA0 BASE + 0x0148
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DEBUG_ETC_RDATA0 | etc读数据的低32位数值 | R/W |
JPEG_DEBUG_ETC_RDATA1 寄存器(JPEG_DEBUG_ETC_RDATA1, 0x014C)
JPEG_DEBUG_ETC_RDATA1JPEG_DEBUG_ETC_RDATA1 BASE + 0x014C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DEBUG_ETC_RDATA1 | etc读数据的高32位数值 | R/W |
JPEG_DEBUG_ETC_STAT 寄存器(JPEG_DEBUG_ETC_STAT, 0x0150)
JPEG_DEBUG_ETC_STATJPEG_DEBUG_ETC_STAT BASE + 0x0150
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:29 | Reserved | 写入无影响,读取为零。 | R |
| 28 | 28CROSS_4K_FLAG | ETC跨4K flag | R |
| 27:24 | ETC_EDGE_STAT | etc右边界状态 bit [27] : frm_width[4:0]等于0 bit [26] : frm_width[4:0]小于16 bit [25] : frm_width[4:0]等于16 bit [24] : frm_width[4:0]大于16 | |
| 23:20 | ETC_ARLEN | burst长度 | R |
| 19:16 | ETC_BURST_CNT | etc busrt个数 | R |
| 15 | 15Reserved | 写入无影响,读取为零。 | R |
| 14:12 | ETC_FSM_STAT | etc状态机 | R |
| 11 | 11EXI_BUS_FREE | exi bus free状态 | R |
| 10 | 10ETC_BUS_FREE | etc bus free状态 | R |
| 9 | 9HSTOP_RSYN | DDR读地址是否握手成功 | R |
| 8 | 8DDR_ACMD_EMPTY | DDR读通道为空 | R |
| 7:6 | Reserved | 写入无影响,读取为零。 | R |
| 5 | 5ETC_WEN | etc写数据使能 | R |
| 4 | 4ETC_RLAST | 读busrt中的最后一个传输 | R |
| 3 | 3ETC_RREADY | etc读数据ready | R |
| 2 | 2ETC_RVALID | etc读数据有效 | R |
| 1 | 1ETC_ARREADY | etc读地址ready | R |
| 0 | 0ETC_ARVALID | etc读地址有效 | R |
JPEG_DEBUG_WRAP_IDX 寄存器(JPEG_DEBUG_WRAP_IDX, 0x0154)
JPEG_DEBUG_WRAP_IDXJPEG_DEBUG_WRAP_IDX BASE + 0x0154
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:8 | Reserved | 写入无影响,读取为零。 | R |
| 7:0 | DEBUG_WRAP_IDX | 表示OCM中ISP/JPEG 8行像素空间的索引。 | R |
JPEG_DEBUG_FRM_Y_ADDR 寄存器(JPEG_DEBUG_FRM_Y_ADDR, 0x0158)
JPEG_DEBUG_FRM_Y_ADDRJPEG_DEBUG_FRM_Y_ADDR BASE + 0x0158
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FRM_Y_ADDR | 一帧图像Y分量的首地址。 | R |
JPEG_DEBUG_FRM_C_ADDR 寄存器(JPEG_DEBUG_FRM_Y_ADDR, 0x015C)
JPEG_DEBUG_FRM_Y_ADDRJPEG_DEBUG_FRM_Y_ADDR BASE + 0x015C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FRM_C_ADDR | 一帧图像C分量的首地址。 | R |
JPEG_DEBUG_RT_ARRDY_UNRESP_CNT 寄存器(JPEG_DEBUG_RT_ARRDY_UNRESP_CNT, 0x0160)
JPEG_DEBUG_RT_ARRDY_UNRESP_CNTJPEG_DEBUG_RT_ARRDY_UNRESP_CNT BASE + 0x0160
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_ARRDY_UNRESP_CNT | 一帧ARVLD有效时,arready为低的cycles,帧级reset | R |
JPEG_DEBUG_FE_ARRDY_UNRESP_CNT 寄存器(JPEG_DEBUG_FE_ARRDY_UNRESP_CNT, 0x0164)
JPEG_DEBUG_FE_ARRDY_UNRESP_CNTJPEG_DEBUG_FE_ARRDY_UNRESP_CNT BASE + 0x0164
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_ARRDY_UNRESP_CNT | 每帧ARVLD有效时,arready为低的cycles,序列级reset | R |
JPEG_DEBUG_RT_RVLD_UNRESP_CNT 寄存器(JPEG_DEBUG_RT_RVLD_UNRESP_CNT, 0x0168)
JPEG_DEBUG_RT_RVLD_UNRESP_CNTJPEG_DEBUG_RT_RVLD_UNRESP_CNT BASE + 0x0168
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_RLVD_UNRESP_CNT | 一帧rready有效时,rvld为低的cycles,帧级reset | R |
JPEG_DEBUG_FE_RVLD_UNRESP_CNT 寄存器(JPEG_DEBUG_FE_RVLD_UNRESP_CNT, 0x016C)
JPEG_DEBUG_FE_RVLD_UNRESP_CNTJPEG_DEBUG_FE_RVLD_UNRESP_CNT BASE + 0x016C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_RLVD_UNRESP_CNT | 每帧rready有效时,rvld为低的cycles,序列级reset | R |
JPEG_DEBUG_RT_ISP_WORK_CYCLE 寄存器(JPEG_DEBUG_RT_ISP_WORK_CYCLE, 0x0170)
JPEG_DEBUG_RT_ISP_WORK_CYCLEJPEG_DEBUG_RT_ISP_WORK_CYCLE BASE + 0x0170
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_ISP_WORK_CYCLE | 一帧ISP工作的cycles,帧级reset | R |
JPEG_DEBUG_FE_ISP_WORK_CYCLE 寄存器(JPEG_DEBUG_FE_ISP_WORK_CYCLE, 0x0174)
JPEG_DEBUG_FE_ISP_WORK_CYCLEJPEG_DEBUG_FE_ISP_WORK_CYCLE BASE + 0x0174
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_ISP_WORK_CYCLE | 每帧ISP工作的cycles,序列级reset | R |
JPEG_DEBUG_RT_WAIT_ISP_CYCLE 寄存器(JPEG_DEBUG_RT_WAIT_ISP_CYCLE, 0x0178)
JPEG_DEBUG_RT_WAIT_ISP_CYCLEJPEG_DEBUG_RT_WAIT_ISP_CYCLE BASE + 0x0178
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_RT_WAIT_ISP_CYCLE | 一帧JPEG等待ISP更新数据的cycles,帧级reset | R |
JPEG_DEBUG_FE_WAIT_ISP_CYCLE 寄存器(JPEG_DEBUG_FE_WAIT_ISP_CYCLE, 0x017C)
JPEG_DEBUG_FE_WAIT_ISP_CYCLEJPEG_DEBUG_FE_WAIT_ISP_CYCLE BASE + 0x017C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | JPEG_FE_WAIT_ISP_CYCLE | 每帧JPEG等待ISP更新数据的cycles,序列级reset | R |
JPEG_DEBUG_RT_BUF_FULL_CNT 寄存器(JPEG_DEBUG_RT_BUF_FULL_CNT, 0x0180)
JPEG_DEBUG_RT_BUF_FULL_CNTJPEG_DEBUG_RT_BUF_FULL_CNT BASE + 0x0180
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_BUF_FULL_CNT | 一帧JPEG内部buffer满的次数,帧级reset | R |
JPEG_DEBUG_FE_BUF_FULL_CNT 寄存器(JPEG_DEBUG_FE_BUF_FULL_CNT, 0x0184)
JPEG_DEBUG_FE_BUF_FULL_CNTJPEG_DEBUG_FE_BUF_FULL_CNT BASE + 0x0184
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_BUF_FULL_CNT | 每帧JPEG内部buffer满的次数,序列级reset | R |
JPEG_DEBUG_RT_AWRDY_UNRESP_CNT 寄存器(JPEG_DEBUG_RT_AWRDY_UNRESP_CNT, 0x0188)
JPEG_DEBUG_RT_AWRDY_UNRESP_CNTJPEG_DEBUG_RT_AWRDY_UNRESP_CNT BASE + 0x0188
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_AWRDY_UNRESP_CNT | 一帧AWVALID有效,awready为低的cycles,帧级reset | R |
JPEG_DEBUG_FE_AWRDY_UNRESP_CNT 寄存器(JPEG_DEBUG_FE_AWRDY_UNRESP_CNT, 0x018C)
JPEG_DEBUG_FE_AWRDY_UNRESP_CNTJPEG_DEBUG_FE_AWRDY_UNRESP_CNT BASE + 0x018C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_AWRDY_UNRESP_CNT | 一帧AWVALID有效,awready为低的cycles,序列级reset | R |
JPEG_DEBUG_RT_WORK_CYCLE 寄存器(JPEG_DEBUG_RT_WORK_CYCLE, 0x0190)
JPEG_DEBUG_RT_WORK_CYCLEJPEG_DEBUG_RT_WORK_CYCLE BASE + 0x0190
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_JPEG_WORK_CYCLE | 一帧JPEG总的工作cycles,帧级reset | R |
JPEG_DEBUG_FE_WORK_CYCLE 寄存器(JPEG_DEBUG_FE_WORK_CYCLE, 0x0194)
JPEG_DEBUG_FE_WORK_CYCLEJPEG_DEBUG_FE_WORK_CYCLE BASE + 0x0194
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_JPEG_WORK_CYCLE | 每帧JPEG总的工作cycles,序列级reset | R |
JPEG_DEBUG_RT_COREDIS_CYCLE 寄存器(JPEG_DEBUG_RT_COREDIS_CYCLE, 0x0198)
JPEG_DEBUG_RT_COREDIS_CYCLEJPEG_DEBUG_RT_COREDIS_CYCLE BASE + 0x0198
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_JPEG_COREDIS_CYCLE | 一帧CORE核未工作的cycles,帧级reset | R |
JPEG_DEBUG_FE_COREDIS_CYCLE 寄存器(JPEG_DEBUG_FE_COREDIS_CYCLE, 0x019C)
JPEG_DEBUG_FE_COREDIS_CYCLEJPEG_DEBUG_FE_COREDIS_CYCLE BASE + 0x019C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_JPEG_COREDIS_CYCLE | 每帧CORE核未工作的cycles,序列级reset | R |
JPEG_DEBUG_RT_DDR_CNT 寄存器(JPEG_DEBUG_RT_DDR_CNT, 0x01A0)
JPEG_DEBUG_RT_DDR_CNTJPEG_DEBUG_RT_DDR_CNT BASE + 0x01A0
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | DDR_RT_BURST_CNT | 读数据通道握手的次数,帧级reset | R |
| 15:0 | DDR_RT_AR_CNT | AR通道握手的次数,帧级reset | R |
JPEG_DEBUG_FE_DDR_CNT 寄存器(JPEG_DEBUG_FE_DDR_CNT, 0x01A4)
JPEG_DEBUG_FE_DDR_CNTJPEG_DEBUG_FE_DDR_CNT BASE + 0x01A4
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | DDR_FE_BURST_CNT | 读数据通道握手的次数,序列级reset, frm end锁存 | R |
| 15:0 | DDR_FE_AR_CNT | AR通道握手的次数,序列级reset, frm end锁存 | R |
JPEG_DEBUG_DDR_RLST_CNT 寄存器(JPEG_DEBUG_DDR_RLST_CNT, 0x01A8)
JPEG_DEBUG_DDR_RLST_CNTJPEG_DEBUG_DDR_RLST_CNT BASE + 0x01A8
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | DDR_FE_RLST_CNT | 数据通道中rlast的次数,序列级reset | R |
| 15:0 | DDR_RT_RLST_CNT | 数据通道中rlast的次数,帧级reset | R |
JPEG_DEBUG_RT_RBUF_OUT_CNT 寄存器(JPEG_DEBUG_RT_RBUF_OUT_CNT, 0x01AC)
JPEG_DEBUG_RT_RBUF_OUT_CNTJPEG_DEBUG_RT_RBUF_OUT_CNT BASE + 0x01AC
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_RBUF_OUT_CNT | rawbuf传输的像素数,帧级reset | R |
JPEG_DEBUG_FE_RBUF_OUT_CNT 寄存器(JPEG_DEBUG_FE_RBUF_OUT_CNT, 0x01B0)
JPEG_DEBUG_FE_RBUF_OUT_CNTJPEG_DEBUG_FE_RBUF_OUT_CNT BASE + 0x01B0
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | FE_RBUF_OUT_CNT | rawbuf传输的像素数,序列级reset | R |
JPEG_DEBUG_FSM_RST_CNT 寄存器(JPEG_DEBUG_FSM_RST_CNT, 0x01B4)
JPEG_DEBUG_FSM_RST_CNTJPEG_DEBUG_FSM_RST_CNT BASE + 0x01B4
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | RST_FSM_DONE_CNT | reset状态机结束的次数,序列级reset | R |
| 15:0 | NEED_RST_CNT | jpeg需要reset的次数,序列级reset | R |
JPEG_DEBUG_EXI_STAT 寄存器(JPEG_DEBUG_EXI_STAT, 0x01B8)
JPEG_DEBUG_EXI_STATJPEG_DEBUG_EXI_STAT BASE + 0x01B8
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:12 | BS_WDATA_CNT | bs wdata的计数,每8Bytes码流为一组 | R |
| 11 | HSTOP_WSYN | DDR写地址是否握手成功 | R |
| 10 | DDR_ACMD_EMPTY | DDR写通道为空 | R |
| 9 | IS_CROSS_4K | 是否处于跨4K | R |
| 8 | CROSS_4K_CNT | 跨4K的计数 | R |
| 7 | IS_4K_DATA | burst data处于跨4K | R |
| 6 | JPEG_POST_KEY_EN | jpeg post key enable | R |
| 5 | BS_OUT_DONE | BS输出完成 | R |
| 4 | TAIL_END | tail end | R |
| 3 | Reserved | 写入无影响,读取为零。 | R |
| 2:0 | EXI_FSM | EXI FSM,0表示空闲 | R |
JPEG_DEBUG_RT_OVERFLOW_INFO 寄存器(JPEG_DEBUG_RT_OVERFLOW_INFO, 0x01BC)
JPEG_DEBUG_RT_OVERFLOW_INFOBASE + 0x01BC
| Bit | 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 字段 | Reserved | JPEG_FRM_CNT | ISP_FRM_CNT | NEW_SAME_FRM_JUDGE | ISP_ETC_SAME_FRM | SAME_FRM_SEL | OVERFLOW | OVERFLOW_RR | ETC_SAME_LCU | ISP_FRM_START | OVERFLOW_UNSAME | OVERFLOW_SAME | JPEG_SAME_FRM_ISP | JPEG_INTC_PULSE | JPEG_INTC_STA | |||||||||||||||||
| RST | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:20 | Reserved | 写入无影响,读取为零。 | R |
| 19:16 | JPEG_FRM_CNT | JPEG 的帧数。 | R |
| 15:12 | ISP_FRM_CNT | ISP 的帧数。 | R |
| 11 | NEW_SAME_FRM_JUDGE | 新的相同帧判断。 | R |
| 10 | ISP_ETC_SAME_FRM | ISP 与 JPEG 处于相同帧。 | R |
| 9 | SAME_FRM_SEL | 相同帧计算方式选择。 | R |
| 8 | OVERFLOW | Overflow。 | R |
| 7 | OVERFLOW_RR | 锁存两拍的 overflow。 | R |
| 6 | ETC_SAME_LCU | ISP 与 JPEG 处于相同的 LCU。 | R |
| 5 | ISP_FRM_START | ISP 开始新的一帧。 | R |
| 4 | OVERFLOW_UNSAME | 不同帧 overflow。 | R |
| 3 | OVERFLOW_SAME | 相同帧 overflow。 | R |
| 2 | JPEG_SAME_FRM_ISP | ISP 与 JPEG 处于相同帧。 | R |
| 1 | JPEG_INTC_PULSE | JPEG 中断,脉冲。 | R |
| 0 | JPEG_INTC_STA | JPEG 中断状态,电平。 | R |
JPEG_DEBUG_FE_OVERFLOW_INFO 寄存器(JPEG_DEBUG_FE_OVERFLOW_INFO, 0x01C0)
JPEG_DEBUG_FE_OVERFLOW_INFOJPEG_DEBUG_FE_OVERFLOW_INFO BASE + 0x01C0
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:20 | Reserved | 写入无影响,读取为零。 | R |
| 19:16 | JPEG_FRM_CNT | JPEG的帧数 | R |
| 15:12 | ISP_FRM_CNT | ISP的帧数 | R |
| 11 | NEW_SAME_FRM_JUDGE | 新的相同帧判断 | R |
| 10 | ISP_ETC_SAME_FRM | ISP与JPEG处于相同帧 | R |
| 9 | SAME_FRM_SEL | 相同帧计算方式选择 | R |
| 8 | OVERFLOW | Overflow | R |
| 7 | OVERFLOW_RR | 锁存两拍的overflow | R |
| 6 | ETC_SAME_LCU | ISP与JPEG处于相同的LCU | R |
| 5 | ISP_FRM_START | ISP开始新的一帧 | R |
| 4 | OVERFLOW_UNSAME | 不同帧overflow | R |
| 3 | OVERFLOW_SAME | 相同帧overflow | R |
| 2 | JPEG_SAME_FRM_ISP | ISP与JPEG处于相同帧 | R |
| 1 | JPEG_INTC_PULSE | JPEG中断,脉冲 | R |
| 0 | JPEG_INTC_STA | JPEG中断状态,电平 | R |
JPEG_DEBUG_FRM_START_CNT 寄存器(JPEG_DEBUG_FRM_START_CNT, 0x01C4)
JPEG_DEBUG_FRM_START_CNTJPEG_DEBUG_FRM_START_CNT BASE + 0x01C4
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | ISP_FRM_START_CNT | ISP启动的次数,序列级reset | R |
| 15:0 | JPEG_FRM_START_CNT | JPEG启动的次数,序列级reset | R |
JPEG_DEBUG_INTC_CNT 寄存器(JPEG_DEBUG_INTC_CNT, 0x01C8)
JPEG_DEBUG_INTC_CNTJPEG_DEBUG_INTC_CNT BASE + 0x01C8
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:16 | Reserved | 写入无影响,读取为零。 | R |
| 15:0 | DEBUG_INTC_CNT | JPEG异常中断的次数(包括ISP fast/jpeg_overflow/jpeg_timeout),序列级reset | R |
JPEG_DEBUG_RT_INTC_INFO 寄存器(JPEG_DEBUG_RT_INTC_INFO, 0x01CC)
JPEG_DEBUG_RT_INTC_INFOJPEG_DEBUG_RT_INTC_INFO BASE + 0x01CC
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:24 | Reserved | 写入无影响,读取为零。 | R |
| 23 | JPEG_TIMEOUT_R | 锁存一拍的timeout | R |
| 22 | JPEG_TIMEOUT_RR | 锁存两拍的timeout | R |
| 21 | JPEG_TIMEOUT | jpeg timeout,脉冲 | R |
| 20 | JPEG_TIMEOUT_INTC | jpeg timeout中断,脉冲 | R |
| 19:16 | INTR_STAT | 中断状态 | R |
| 15:12 | JPEG_INTR_STAT | jpeg中断状态 | R |
| 11 | ETC_UNINTC_STAT | ETC非中断状态,电平 | R |
| 10 | Reserved | 写入无影响,读取为零。 | R |
| 9 | JPEG_OVERFLOW | jpeg overflow,电平 | R |
| 8 | IF_INTC_GEN_LEVEL | 接口中断 | R |
| 7 | INTC_GEN_UNSAME | 不同帧中断 | R |
| 6 | ABN_M1 | jpeg处于idle_abn状态 | R |
| 5:4 | ISP_START_CNT | isp start的次数 | R |
| 3 | ISP_FAST_R | 锁存一拍的isp fast | R |
| 2 | ISP_FAST_RR | 锁存两拍的isp fast | R |
| 1 | ISP_FAST | isp fast,脉冲 | R |
| 0 | ISP_FAST_EN | isp fast使能,脉冲 | R |
JPEG_DEBUG_FE_INTC_INFO 寄存器(JPEG_DEBUG_FE_INTC_INFO, 0x01D0)
JPEG_DEBUG_FE_INTC_INFOJPEG_DEBUG_FE_INTC_INFO BASE + 0x01D0
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:24 | Reserved | 写入无影响,读取为零。 | R |
| 23 | JPEG_TIMEOUT_R | 锁存一拍的timeout | R |
| 22 | JPEG_TIMEOUT_RR | 锁存两拍的timeout | R |
| 21 | JPEG_TIMEOUT | jpeg timeout,脉冲 | R |
| 20 | JPEG_TIMEOUT_INTC | jpeg timeout中断,脉冲 | R |
| 19:16 | INTR_STAT | 中断状态 | R |
| 15:12 | JPEG_INTR_STAT | jpeg中断状态 | R |
| 11 | ETC_UNINTC_STAT | ETC非中断状态,电平 | R |
| 10 | Reserved | 写入无影响,读取为零。 | R |
| 9 | JPEG_OVERFLOW | jpeg overflow,电平 | R |
| 8 | IF_INTC_GEN_LEVEL | 接口中断 | R |
| 7 | INTC_GEN_UNSAME | 不同帧中断 | R |
| 6 | ABN_M1 | jpeg处于idle_abn状态 | R |
| 5:4 | ISP_START_CNT | isp start的次数 | R |
| 3 | ISP_FAST_R | 锁存一拍的isp fast | R |
| 2 | ISP_FAST_RR | 锁存两拍的isp fast | R |
| 1 | ISP_FAST | isp fast,脉冲 | R |
| 0 | ISP_FAST_EN | isp fast使能,脉冲 | R |
JPEG_DEBUG_RT_BS_LEN 寄存器(JPEG_DEBUG_RT_BS_LEN, 0x01D4)
JPEG_DEBUG_RT_BS_LENJPEG_DEBUG_RT_BS_LEN BASE + 0x01D4
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_BS_LEN | BSB输入的码流长度,帧级reset | R |
JPEG_DEBUG_RT_BS_TAIL 寄存器(JPEG_DEBUG_RT_BS_TAIL, 0x01D8)
JPEG_DEBUG_RT_BS_TAILJPEG_DEBUG_RT_BS_TAIL BASE + 0x01D8
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | RT_BS_TAIL | BSB输出的码流长度,帧级reset | R |
JPEG_DEBUG_RST_KEY_INFO 寄存器(JPEG_DEBUG_RST_KEY_INFO, 0x01DC)
JPEG_DEBUG_RST_KEY_INFOJPEG_DEBUG_RST_KEY_INFO BASE + 0x01DC
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:24 | ISP_FSM_START_CNT | reset时所保存的isp启动次数 | R |
| 23:16 | JPEG_FSM_START_CNT | reset时所保存的jpeg启动次数 | R |
| 15:8 | DEBUG_KEY_INFO | reset时所保存的关键信号 | R |
| 7 | Reserved | 写入无影响,读取为零。 | R |
| 6:4 | RESET_FSM | reset时所保存的RESET状态机信息 | R |
| 3 | Reserved | 写入无影响,读取为零。 | R |
| 2:0 | CTRL_FSM | reset时所保存的CTRL状态机信息 | R |
JPEG_DEBUG_BUS_STOP_INFO 寄存器(JPEG_DEBUG_BUS_STOP_INFO, 0x01E0)
JPEG_DEBUG_BUS_STOP_INFOJPEG_DEBUG_BUS_STOP_INFO BASE + 0x01E0
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:5 | Reserved | 写入无影响,读取为零。 | R |
| 4 | WRST_N | wclk reset | R |
| 3 | BUS_STOP_REQ_N | bus stop请求,低有效 | R |
| 2 | EXI_BUS_FREE | exi bus free状态,写地址通道和写数据通道idle | R |
| 1 | ETC_BUS_FREE | etc bus free状态,读地址通道和读数据通道idle | R |
| 0 | STOP_ACK_N | bus stop的响应,低有效 | R |
JPEG_QT_BASE_TAB 寄存器(JPEG_QT_BASE_TAB, 0x0300~0x037c)
- 当需要通过硬件计算量化表时,需要将此表在序列开始时配置。
- 0x300~0x33c,为亮度基础表,共64 个8bits 数据。
- 0x340~0x37c,为色度基础表,共64 个8bits 数据。

配置顺序如下:

索引由低到高,每4 个数据为1 个word,每个数据各占8bits 进行配置。
JPEG_QT_TAB 寄存器(JPEG_QT_TAB, 0x0400~0x09fc)
- 当前JPEG 硬件支持最多配置三组量化表,每组表供Y 与UV 使用,即3 组Y+3 组UV=6 个表。
- 配置给硬件的量化表存储地址和值在verification/TB/jpeg_tab_cfg.svh。
- addr_ofst: 0x0400~0x09fc。
- JPEG_CTRL 寄存器中QT_Y,QT_U,QT_V 就是用于选择三组量化表中的索引。
- 配置给硬件的qt_table 共有384 个数据(word),每个表有64 个量化系数。
- Qt_table 低16 位数据给core 核使用,高16 位数据给jpeg header 使用
即,每32bits: [23:16] for head 的压缩量化表,[13:0] for core 的量化表。
当软件配置量化表(qt table)时,不允许在JPEG 工作时进行shadow 配置。此时JPEG 内部只有一个ram,避免数据被覆盖。
【码率控制下的量化表配置】
现假设有(QP_IDX)1~100 组量化表,每组包含Y、UV。UV 共用相同量化表。

1,序列编码开始之前,码率控制算法会根据图像特征计算出使用1~100 中的哪一组量化表(USE_IDX),假设USE_IDX = 64, 那么需要将QP_IDX: 63,64,65 这三组表配置给硬件,并告诉硬件需要用的索引(USE_IDX)为1。

2,在任意帧、任意时刻,码率控制结合已编码的码流大小,需要调整USE_IDX 为63, 那么需要进行以下配置,保证硬件中包含USE_IDX,USE_IDX-1, USE_IDX+1 的量化表。即,只需配置QP_IDX=62 的表到硬件QP_IDX=2 对应的寄存器地址空间,并告知硬件USE_IDX=0。
3,同样,需要调整USE_IDX 为73,那么需要重复1 操作。
//特殊情况,如果软件中USE_IDX 为边界值,如100,则需配置98,99,100。