USER GUIDE / IMAGE INPUT & ENCODING / JPEG DEC / REGISTER DESCRIPTION

寄存器描述

配置寄存器和字段说明

JPEG_DEC_TRIG 寄存器(JPEG_DEC_TRIG, 0x0000)

JPEG_DEC_TRIGJPEG_DEC BASE + 0x0000
Bit313029282726252423222120191817161514131211109876543210
字段RESET_ENDReservedSW_SEQ_RST_REGSSW_RESET_CYCLESW_FSM_RESETSW_SEQ_RESETSW_FRM_RESETSTART
RST00000000000000000000000000000000
位名称说明RW
31RESET_END只读电平信号,用于标识JPEG软件复位完毕R
30:9Reserved写入无影响,读取为零。R
8SW_SEQ_RST_REGS当配置[2] SW_SEQ_RESET时,配置成1表示同时复位
jpeg_slv中寄存器,如一帧宽高,nmcu等序列级通用参数,
qp base表。如果需要使用,请在硬件启动前配置成1,当
sw_frm_reset或sw_seq_reset为1时,复位才生效。
默认为0。
R/W
7:4SW_RESET_CYCLE软件配置reset持续时钟数-1。
默认为10。
R/W
3SW_FSM_RESET状态机复位寄存器,默认为0。
如果需要使用,请在reset状态机非idle期间配置成1.
R/W
2SW_SEQ_RESETJPEG硬件内部所有寄存器进行reset。
(序列级reset +帧级reset)
所谓序列级就是帧与帧交替时不需要进行reset。例,每帧
ocm首地址计算。
所谓帧级,就是每帧正常或异常结束需要reset一次。
功能等同于接口中i_wrst_n。
如果需要使用,请配置成1。
R/W
1SW_FRM_RESETJPEG硬件内部所有帧级寄存器reset。
所谓帧级,就是每帧正常或异常结束需要reset一次。
如果需要使用,请配置成1。
R/W
0STARTJPEG一帧解码的启动信号,每帧都需要配置R/W

JPEG_DEC_CTRL 寄存器(JPEG_DEC_CTRL, 0x0004)

JPEG_DEC_CTRLJPEG_DEC BASE + 0x0004
Bit313029282726252423222120191817161514131211109876543210
字段ReservedCROSS_4K_DISTIME_OUT_ENQT_VHA_VHD_VQT_UHA_UHD_UQT_YHA_YHD_Y
RST00000000000000000000000000000000
位名称说明RW
31:14Reserved写入无影响,读取为零。R
13CROSS_4K_DIScross 4k boundary disable
0:打开跨4K边界处理逻辑;
1:关闭跨4K边界处理逻辑;
default 0
R/W
12TIME_OUT_ENtime out enable
0:关闭TIME OUT功能
1:打开TIME OUT功能
默认为0
R/W
11:10QT_VQuant table number for V. default 1R/W
9HA_VHuffman AC table number for U.default 1R/W
8HD_VHuffman DC table number for V.default 1R/W
7:6QT_UQuant table number for U. default 1R/W
5HA_UHuffman AC table number for U.default 1R/W
4HD_UHuffman DC table number for U.default 1R/W
3:2QT_YQuant table number for Y.default 0R/W
1HA_YHuffman AC table number for Y.default 0R/W
0HD_YHuffman DC table number for Y.default 0R/W

JPEG_DEC_NMCU 寄存器(JPEG_DEC_NMCU, 0x0008)

JPEG_DEC_NMCUJPEG_DEC BASE + 0x0008
Bit313029282726252423222120191817161514131211109876543210
字段ReservedFRM_MCU_NUMBER
RST00000000000000000000000000000000
位名称说明RW
31:26Reserved写入无影响,读取为零。R
25:0FRM_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
R/W

JPEG_DEC_FRM_INFO 寄存器(JPEG_DEC_FRM_INFO, 0x000C)

JPEG_DEC_FRM_INFOJPEG_DEC BASE + 0x000C
Bit313029282726252423222120191817161514131211109876543210
字段FRM_HEIGHTFRM_WIDTH
RST00000000000000000000000000000000
位名称说明RW
31:16FRM_HEIGHTFrame height, unit in pixel.要求8对齐(422和单Y格式)或16
对齐(420格式)
R/W
15:0FRM_WIDTHFrame width,unit in pixel.要求8对齐(单Y格式)或16对齐(422/420
格式)
R/W

JPEG_DEC_LINE_STRD 寄存器(JPEG_DEC_LINE_STRD, 0x0010)

JPEG_DEC_LINE_STRDJPEG_DEC BASE + 0x0010
Bit313029282726252423222120191817161514131211109876543210
字段ReservedLINE_STRD
RST00000000000000000000000000000000
位名称说明RW
31:16Reserved写入无影响,读取为零。R
15:0LINE_STRD420格式配置:帧宽度16对齐
422格式配置:帧宽度16对齐x2
420单Y格式配置:帧宽度8对齐
R/W

JPEG_DEC_RAWY_ADDR 寄存器(JPEG_DEC_RAWY_ADDR, 0x0014)

JPEG_DEC_RAWY_ADDRJPEG_DEC BASE + 0x0014
Bit313029282726252423222120191817161514131211109876543210
字段FRM_RAWY_ADDR
RST00000000000000000000000000000000
位名称说明RW
31:0FRM_RAWY_ADDRFrame output Y pixel start address. (need to be 16Byte align)
开辟的空间大小至少为frm_stride x帧高
R/W

JPEG_DEC_RAWC_ADDR 寄存器(JPEG_DEC_RAWC_ADDR, 0x0018)

JPEG_DEC_RAWC_ADDRJPEG_DEC BASE + 0x0018
Bit313029282726252423222120191817161514131211109876543210
字段FRM_RAWC_ADDR
RST00000000000000000000000000000000
位名称说明RW
31:0FRM_RAWC_ADDRFrame output UV pixel start address. (need to be 16 Byte
align) (YUV422 is useless)
R/W

JPEG_DEC_BS_ADDR 寄存器(JPEG_DEC_BS_ADDR, 0x001C)

JPEG_DEC_BS_ADDRJPEG_DEC BASE + 0x001C
Bit313029282726252423222120191817161514131211109876543210
字段JPEG_BS_ADDR
RST00000000000000000000000000000000
位名称说明RW
31:0JPEG_BS_ADDR输入的码流首地址,码流首地址没有对齐要求,首地址
需要从码流中去掉header部分开始的。
R/W

JPEG_DEC_TIMEOUT_THRD 寄存器(JPEG_DEC_TIMEOUT_THRD, 0x0020)

JPEG_DEC_TIMEOUT_THRDJPEG_DEC BASE + 0x0020
Bit313029282726252423222120191817161514131211109876543210
字段JPEG_TIMEOUT_THRD
RST00000000000000000000000000000000
位名称说明RW
31:0JPEG_TIMEOUT_THRDJPEG timeout阈值
当关闭timeout机制时默认为0;
当打开timeout机制时以1080p为例,建议配置为
0x0105dad3(1080p经验值3432183 x 5);
R/W

JPEG_DEC_FORMAT_CTRL 寄存器(JPEG_DEC_FORMAT_CTRL, 0x0024)

JPEG_DEC_FORMAT_CTRLJPEG_DEC BASE + 0x0024
Bit313029282726252423222120191817161514131211109876543210
字段DEC_FORMAT_CTRL
RST00
位名称说明RW
1:0DEC_FORMAT_CTRL输出图像格式选择
0: yuv420
1: yuv422
2: yuv420 + only y encode
R/W

JPEG_DEC_CODE_PIX_TOTAL 寄存器(JPEG_DEC_CODE_PIX_TOTAL, 0x0028)

JPEG_DEC_CODE_PIX_TOTALJPEG_DEC BASE + 0x0028
Bit313029282726252423222120191817161514131211109876543210
字段CODE_PIXEL_TOTAL_NUM
RST00000000000000000000000000000000
位名称说明RW
31:0CODE_PIXEL_TOTAL_NUM将一帧宽高以jpeg解码规则进行对齐
(420:宽高均为16,
422:宽16高8,
420单Y:宽8高8)
后,
JPEG解码输出一帧的YUV像素总数。
R/W

JPEG_DEC_MARKERS 寄存器(JPEG_DEC_MARKERS, 0x002C)

JPEG_DEC_MARKERSJPEG_DEC BASE + 0x002C
Bit313029282726252423222120191817161514131211109876543210
字段Markers_numberReservedMarkers_enable
RST00000000000000000000000000000000
位名称说明RW
31:16Markers_numberRestart Markers MCU number减1,不开启时默认为0。开启时
最小值为1,最大值为MCU个数减1。
注意:其值等于码流中header部分DRI标志(码流值为0xFFDD)
的MCU个数-1,不能任意配置。
R/W
15:1Reserved写入无影响,读取为零。R
0Markers_enableRestart Markers使能,不开启时默认为0。
注意:需要查看码流中header部分是否含有DRI标志(码流值
为0xFFDD),如果有restart marker,则配置1;否则配置0,
不能任意配置。
R/W

JPEG_DEC_POST_RDY_KEY0 寄存器(JPEG_DEC_POST_RDY_KEY0, 0x0030)

JPEG_DEC_POST_RDY_KEY0JPEG_DEC BASE + 0x0030
Bit313029282726252423222120191817161514131211109876543210
字段JPEG_POST_RDY_KEY0
RST00000000000000000000000000000000
位名称说明RW
31:0JPEG_POST_RDY_KEY0用于debug或测试使用,default 0。当
JPEG_POST_RDY_KEY0为32’h01234567,
JPEG_POST_RDY_KEY1为32’h76543210,AW/W/B
相关控制输入一直为高
R/W

JPEG_DEC_POST_RDY_KEY1 寄存器(JPEG_DEC_POST_RDY_KEY1, 0x0034)

JPEG_DEC_POST_RDY_KEY1JPEG_DEC BASE + 0x0034
Bit313029282726252423222120191817161514131211109876543210
字段JPEG_POST_RDY_KEY1
RST00000000000000000000000000000000
位名称说明RW
31:0JPEG_POST_RDY_KEY1用于debug或测试使用,default 0。当
JPEG_POST_RDY_KEY0为32’h01234567,
JPEG_POST_RDY_KEY1为32’h76543210,AW/W/B
相关控制输入一直为高
R/W

JPEG_DEC_VERSION_NUM 寄存器(JPEG_DEC_VERSION_NUM, 0x0038)

JPEG_DEC_VERSION_NUMJPEG_DEC BASE + 0x0038
Bit313029282726252423222120191817161514131211109876543210
字段JPEG_DEC_VERSION_NUM
RST00000000000000000000000000000000
位名称说明RW
31:0JPEG_DEC_VERSION_NUM用于识别代码的版本号R

JPEG_DEC_INTR_ENABLE 寄存器(JPEG_DEC_INTR_ENABLE, 0x003C)

JPEG_DEC_INTR_ENABLEJPEG_DEC BASE + 0x003C
Bit313029282726252423222120191817161514131211109876543210
字段ReservedINTERRUPRENABLEJPEGTIMEOUTJPEGFRAMEENABLEEND
RST00000000000000000000000000000000
位名称说明RW
31:2Reserved写入无影响,读取为零。R
1INTERRUPRENABLEJPEGTIMEOUTJPEG timeout触发中断使能。
高有效,默认关闭
注:当JPEG一帧的工作时间超过所设置的timeout阈值时
视为异常现象。
R/W
0JPEGFRAMEENABLEENDJPEG一帧结束中断使能。
高有效,默认开启。
R/W

JPEG_DEC_INTR_STAT 寄存器(JPEG_DEC_INTR_STAT, 0x0040)

JPEG_DEC_INTR_STATJPEG_DEC BASE + 0x0040
Bit313029282726252423222120191817161514131211109876543210
字段ReservedJPEGTIMEOUTSTATJPEGFRAMEENDSTAT
RST00000000000000000000000000000000
位名称说明RW
31:2Reserved写入无影响,读取为零。R
1JPEGTIMEOUTSTATJPEG timeout触发中断状态。
注:当JPEG一帧的工作时间超过所设置的timeout
阈值时视为异常现象。
R
0JPEGFRAMEENDSTATJPEG一帧结束触发中断状态。R

JPEG_DEC_INTR_CLR 寄存器(JPEG_INTR_CLR, 0x0044)

JPEG_INTR_CLRJPEG_DEC BASE + 0x0044
Bit313029282726252423222120191817161514131211109876543210
字段Reserved1JPEGTIMEOUTCLEAR0JPEGFRAME
RST00000000000000000000000000000000
位名称说明RW
31:2Reserved写入无影响,读取为零。R
11JPEGTIMEOUTCLEAR清除JPEG timeout触发中断状态。W
00JPEGFRAMEEND CLEAR清除JPEG一帧结束中断状态。W

JPEG_DEC_GLB_STAT 寄存器(JPEG_DEC_GLB_STAT, 0x0100)

JPEG_DEC_GLB_STATJPEG_DEC BASE + 0x0100
Bit313029282726252423222120191817161514131211109876543210
字段FRM_ENDReservedRAW_LEN
RST00000000000000000000000000000000
位名称说明RW
31FRM_ENDJPEG解码完一帧的结束信号,高电平有效。R
30:24Reserved写入无影响,读取为零。R
23:0RAW_LEN像素总长度,一帧结束时有多少个Byte。
原始像素长度,当帧结束(frame_end)完成后,该值保持稳定
R

JPEG_DEC_GLB_FSM 寄存器(JPEG_DEC_GLB_FSM, 0x0104)

JPEG_DEC_GLB_FSMJPEG_DEC BASE + 0x0104
Bit313029282726252423222120191817161514131211109876543210
字段ReservedRESET_FSM_DONESLVFSM1SLVFSM0RESET_FSMCTRL_FSM
RST00000000000000000000000000000000
位名称说明RW
31:17Reserved写入无影响,读取为零。R
16RESET_FSM_DONERESET FSM结束R
15:12SLVFSM1SLV FSM1,7表示空闲R
11:8SLVFSM0SLV FSM0,0表示空闲R
7:4RESET_FSMRESET_FSM,0表示空闲R
3:0CTRL_FSM全局状态机,0表示空闲R

debug 寄存器和字段说明

JPEG_DEC_DEBUG_KEY_INFO 寄存器(JPEG_DEC_DEBUG_KEY_INFO, 0x0108)

JPEG_DEC_DEBUG_KEY_INFOJPEG_DEC BASE + 0x0108
Bit313029282726252423222120191817161514131211109876543210
字段ReservedTAIL_ENDHEADER_ENCORE_ENC_VLDPIXIN_REQCORE_OVERCORE_EN
RST00000000000000000000000000000000
位名称说明RW
31:6Reserved写入无影响,读取为零。R
5TAIL_ENDtail编码结束R
4HEADER_ENheader码流有效R
3CORE_ENC_VLDcore核码流有效R
2PIXIN_REQcore核准备好接受像素R
1CORE_OVERcore核编码结束R
0CORE_ENcore核启动R

JPEG_DEC_DEBUG_BS_IDX 寄存器(JPEG_DEC_DEBUG_BS_IDX, 0x010C)

JPEG_DEC_DEBUG_BS_IDXJPEG_DEC BASE + 0x010C
Bit313029282726252423222120191817161514131211109876543210
字段ReservedBS_IDX
RST00000000000000000000000000000000
位名称说明RW
31:16Reserved写入无影响,读取为零。R
15:0BS_IDX8byte码流数据的索引R/W

JPEG_DEC_DEBUG_BS0_LF 寄存器(JPEG_DEC_DEBUG_BS0_LF, 0x0110)

JPEG_DEC_DEBUG_BS0_LFJPEG_DEC BASE + 0x0110
Bit313029282726252423222120191817161514131211109876543210
字段DEBUG_BS0_LF
RST00000000000000000000000000000000
位名称说明RW
31:0DEBUG_BS0_LF所检索的第一笔8byte码流数据的低31位数值R

JPEG_DEC_DEBUG_BS0_HF 寄存器(JPEG_DEC_DEBUG_BS0_HF, 0x0114)

JPEG_DEC_DEBUG_BS0_HFJPEG_DEC BASE + 0x0114
Bit313029282726252423222120191817161514131211109876543210
字段DEBUG_BS0_HF
RST00000000000000000000000000000000
位名称说明RW
31:0DEBUG_BS0_HF所检索的第一笔8byte码流数据的高31位数值R

JPEG_DEC_DEBUG_RAW_IDX 寄存器(JPEG_DEC_DEBUG_RAW_IDX, 0x0118)

JPEG_DEC_DEBUG_RAW_IDXJPEG_DEC BASE + 0x0118
Bit313029282726252423222120191817161514131211109876543210
字段ReservedDEBUG_RAW_IDX
RST00000000000000000000000000000000
位名称说明RW
31:24Reserved写入无影响,读取为零。R
23:0DEBUG_RAW_IDX8byte码流数据的索引R/W

JPEG_DEC_DEBUG_RAW_LF 寄存器(JPEG_DEC_DEBUG_RAW_LF, 0x011C)

JPEG_DEC_DEBUG_RAW_LFJPEG_DEC BASE + 0x011C
Bit313029282726252423222120191817161514131211109876543210
字段DEBUG_RAW_LF
RST00000000000000000000000000000000
位名称说明RW
31:0DEBUG_RAW_LF所检索的第一笔8byte像素数据的低31位数值R/W

JPEG_DEC_DEBUG_RAW_HF 寄存器(JPEG_DEC_DEBUG_RAW_HF, 0x0120)

JPEG_DEC_DEBUG_RAW_HFJPEG_DEC BASE + 0x0120
Bit313029282726252423222120191817161514131211109876543210
字段DEBUG_RAW_HF
RST00000000000000000000000000000000
位名称说明RW
31:0DEBUG_RAW_HF所检索的第一笔8byte像素数据的高31位数值R/W

JPEG_DEC_DEBUG_ETC_STAT 寄存器(JPEG_DEBUG_DEC_ETC_STAT, 0x0124)

JPEG_DEBUG_DEC_ETC_STATJPEG_DEC BASE + 0x0124
Bit313029282726252423222120191817161514131211109876543210
字段bs_ofifo_emptyfifo_data_emptybs_ofifo_fullpre_bs_ofifo_fullbs_ofifo_wpbs_ofifo_rprd_ram_cntwr_ram_cntReservedbs_ram_fifo_rpReservedbs_ram_fifo_wpbs_ram_fifo_fullbs_ram_fifo_emptyetc_fsm
RST00000000000000000000000000000000
位名称说明RW
31bs_ofifo_emptybs ofifio为空R
30fifo_data_emptyfifo中没有数据R
29bs_ofifo_fullbs ofifio为满R
28pre_bs_ofifo_fullbs ofifo预满R
27:24bs_ofifo_wpbs ofifo写指针R
23:20bs_ofifo_rpbs ofifo读指针R
19:16rd_ram_cnt读ram的个数R
15:12wr_ram_cnt写ram的个数R
11Reserved保留位,无意义R
10:8bs_ram_fifo_rpbs ram fifo读指针R
7Reserved保留位,无意义R
6:4bs_ram_fifo_wpbs ram fifo写指针R
3bs_ram_fifo_fullbs ram fifo为满R
2bs_ram_fifo_emptybs ram fifo为空R
1:0etc_fsmDEC ETC状态机R

JPEG_DEC_DEBUG_RT_WORK_CYCLE 寄存器(JPEG_DEC_DEBUG_RT_WORK_CYCLE, 0x0128)

JPEG_DEC_DEBUG_RT_WORK_CYCLEJPEG_DEC BASE + 0x0128
Bit313029282726252423222120191817161514131211109876543210
字段RT_JPEG_WORK_CYCLE
RST00000000000000000000000000000000
位名称说明RW
31:0RT_JPEG_WORK_CYCLE一帧JPEG总的工作cycles,帧级resetR

JPEG_DEC_DEBUG_FE_WORK_CYCLE 寄存器(JPEG_DEC_DEBUG_FE_WORK_CYCLE, 0x012C)

JPEG_DEC_DEBUG_FE_WORK_CYCLEJPEG_DEC BASE + 0x012C
Bit313029282726252423222120191817161514131211109876543210
字段FE_JPEG_WORK_CYCLE
RST00000000000000000000000000000000
位名称说明RW
31:0FE_JPEG_WORK_CYCLE每帧JPEG总的工作cycles,序列级resetR

JPEG_DEC_DEBUG_RT_COREDIS_CYCLE 寄存器(JPEG_DEC_DEBUG_RT_COREDIS_CYCLE, 0x0130)

JPEG_DEC_DEBUG_RT_COREDIS_CYCLEJPEG_DEC BASE + 0x0130
Bit313029282726252423222120191817161514131211109876543210
字段RT_JPEG_COREDIS_CYCLE
RST00000000000000000000000000000000
位名称说明RW
31:0RT_JPEG_COREDIS_CYCLE一帧CORE核未工作的cycles,帧级resetR

JPEG_DEC_DEBUG_FE_COREDIS_CYCLE 寄存器(JPEG_DEC_DEBUG_FE_COREDIS_CYCLE, 0x0134)

JPEG_DEC_DEBUG_FE_COREDIS_CYCLEJPEG_DEC BASE + 0x0134
Bit313029282726252423222120191817161514131211109876543210
字段FE_JPEG_COREDIS_CYCLE
RST00000000000000000000000000000000
位名称说明RW
31:0FE_JPEG_COREDIS_CYCLE每帧CORE核未工作的cycles,序列级resetR

JPEG_DEC_DEBUG_RT_DDR_CNT 寄存器(JPEG_DEC_DEBUG_RT_DDR_CNT, 0x0138)

JPEG_DEC_DEBUG_RT_DDR_CNTJPEG_DEC BASE + 0x0138
Bit313029282726252423222120191817161514131211109876543210
字段DDR_RT_RLST_CNTDDR_RT_AR_CNT
RST00000000000000000000000000000000
位名称说明RW
31:16DDR_RT_RLST_CNT数据通道中rlast的次数,帧级resetR
15:0DDR_RT_AR_CNTAR通道握手的次数,帧级resetR

JPEG_DEC_DEBUG_FE_DDR_CNT 寄存器(JPEG_DEC_DEBUG_FE_DDR_CNT, 0x013C)

JPEG_DEC_DEBUG_FE_DDR_CNTJPEG_DEC BASE + 0x013C
Bit313029282726252423222120191817161514131211109876543210
字段DDR_FE_RLST_CNTDDR_FE_AR_CNT
RST00000000000000000000000000000000
位名称说明RW
31:16DDR_FE_RLST_CNT数据通道中rlast的次数,序列级reset, frm end锁存R
15:0DDR_FE_AR_CNTAR通道握手的次数,序列级reset, frm end锁存R

JPEG_DEC_DEBUG_FSM_RST_CNT 寄存器(JPEG_DEC_DEBUG_FSM_RST_CNT, 0x0140)

JPEG_DEC_DEBUG_FSM_RST_CNTJPEG_DEC BASE + 0x0140
Bit313029282726252423222120191817161514131211109876543210
字段RST_FSM_DONE_CNTNEED_RST_CNT
RST00000000000000000000000000000000
位名称说明RW
31:16RST_FSM_DONE_CNTreset状态机结束的次数,序列级resetR
15:0NEED_RST_CNTjpeg需要reset的次数,序列级resetR

JPEG_DEBUG_DEC_EXI_STAT0 寄存器(JPEG_DEC_DEBUG_EXI_STAT0, 0x0144)

JPEG_DEC_DEBUG_EXI_STAT0JPEG_DEC BASE + 0x0144
Bit313029282726252423222120191817161514131211109876543210
字段Reservedpre_pxl_fifo_wpReservedpxl_fifo_rppre_pxl_fifo_fullpxl_fifo_wppxl_fifo_emptypxl_fifo_wr_readyrbuf1_ram2_fullrbuf1_ram1_fullrbuf1_ram0_fullrbuf0_ram2_fullrbuf0_ram1_fullrbuf0_ram0_fullReservedrbuf_ififo_emptyrbuf_ififo_fullrbuf_ififo_rp[3]rbuf_ififo_wpaw_fsmfsm_exi
RST00000000000000000000000000000000
位名称说明RW
31Reserved保留位,无意义R
30:28pre_pxl_fifo_wppixel fifo的写指针R
27Reserved保留位,无意义R
26:24pxl_fifo_rppixel fifo的读指针R
23pre_pxl_fifo_fullpixel fifo将要满R
22:20pxl_fifo_wppixel fifo的写指针R
19pxl_fifo_emptypixel fifo为空R
18pxl_fifo_wr_readypixel fifo准备写R
17rbuf1_ram2_fullbuf1 ram2为满R
16rbuf1_ram1_fullbuf1 ram1为满R
15rbuf1_ram0_fullbuf1 ram0为满R
14rbuf0_ram2_fullbuf0 ram2为满R
13rbuf0_ram1_fullbuf0 ram1为满R
12rbuf0_ram0_fullbuf0 ram0为满R
11Reserved保留位,无意义R
10rbuf_ififo_emptyrbuf输入fifo为空R
9rbuf_ififo_fullrbuf输入fifo为满R
8rbuf_ififo_rp[3]rbuf输入fifo读指针的最高位R
7:4rbuf_ififo_wprbuf输入fifo的写指针R
3:2aw_fsm写地址总线状态机R
1:0fsm_exiDEC EXI状态机R

JPEG_DEBUG_DEC_EXI_STAT1 寄存器(JPEG_DEC_DEBUG_EXI_STAT1, 0x0148)

JPEG_DEC_DEBUG_EXI_STAT1JPEG_DEC BASE + 0x0148
Bit313029282726252423222120191817161514131211109876543210
字段is_cross_4kis_4k_dataexi_wr_uvram_wr_vram_rd_cram_wr_selbuf_rd_selbuf_wr_selReservedrd_ram_cntReservedwr_ram_cntReservedewda_cnt
RST00000000000000000000000000000000
位名称说明RW
31is_cross_4k是否进行跨4KR
30is_4k_data跨4K的数据R
29exi_wr_uvexi总线正在写uv数据R
28ram_wr_v向ram中写v数据R
27ram_rd_c读ram中c数据R
26ram_wr_sel写哪个ramR
25buf_rd_sel读哪个bufferR
24buf_wr_sel写哪个bufferR
23:21Reserved保留位,无意义R
20:16rd_ram_cnt写ram的个数R
15:13Reserved保留位,无意义R
12:8wr_ram_cnt写ram的个数R
7:5Reserved保留位,无意义R
4:0ewda_cnt写数据的个数R

JPEG_DEC_DEBUG_RST_KEY_INFO 寄存器(JPEG_DEC_DEBUG_RST_KEY_INFO, 0x014C)

JPEG_DEC_DEBUG_RST_KEY_INFOJPEG_DEC BASE + 0x014C
Bit313029282726252423222120191817161514131211109876543210
字段ReservedDEBUG_KEY_INFOReservedRESET_FSMReservedCTRL_FSM
RST00000000000000000000000000000000
位名称说明RW
31:16Reserved写入无影响,读取为零。R
15:8DEBUG_KEY_INFOreset时所保存的关键信号R
7Reserved写入无影响,读取为零。R
6:4RESET_FSMreset时所保存的RESET状态机信息R
3Reserved写入无影响,读取为零。R
2:0CTRL_FSMreset时所保存的CTRL状态机信息R

JPEG_DEC_DEBUG_BUS_STOP_INFO 寄存器(JPEG_DEC_DEBUG_BUS_STOP_INFO, 0x0150)

JPEG_DEC_DEBUG_BUS_STOP_INFOJPEG_DEC BASE + 0x0150
Bit313029282726252423222120191817161514131211109876543210
字段ReservedWRST_NBUS_STOP_REQ_NEXI_BUS_FREEETC_BUS_FREESTOP_ACK_N
RST00000000000000000000000000000000
位名称说明RW
31:5Reserved写入无影响,读取为零。R
4WRST_Nwclk resetR
3BUS_STOP_REQ_Nbus stop请求,低有效R
2EXI_BUS_FREEexi bus free状态,写地址通道和写数据通道idleR
1ETC_BUS_FREEetc bus free状态,读地址通道和读数据通道idleR
0STOP_ACK_Nbus stop的响应,低有效R

JPEG_DEC_DEBUG_ETC_OUT_CNT 寄存器(JPEG_DEC_DEBUG_ETC_OUT_CNT, 0x0154)

JPEG_DEC_DEBUG_ETC_OUT_CNTJPEG_DEC BASE + 0x0154
Bit313029282726252423222120191817161514131211109876543210
字段dec_etc_out_cnt
RST00000000000000000000000000000000
位名称说明RW
31:0dec_etc_out_cntDEC ETC输出的码流个数R

JPEG_DEC_DEBUG_EXI_RAWI_CNT 寄存器(JPEG_DEC_DEBUG_EXI_RAWI_CNT, 0x0158)

JPEG_DEC_DEBUG_EXI_RAWI_CNTJPEG_DEC BASE + 0x0158
Bit313029282726252423222120191817161514131211109876543210
字段dec_exi_rawi_cnt
RST00000000000000000000000000000000
位名称说明RW
31:0dec_exi_rawi_cntDEC EXI输入的像素个数R

JPEG_DEC_DEBUG_EXI_RAWO_CNT 寄存器(JPEG_DEC_DEBUG_EXI_RAWO_CNT, 0x015C)

JPEG_DEC_DEBUG_EXI_RAWO_CNTJPEG_DEC BASE + 0x015C
Bit313029282726252423222120191817161514131211109876543210
字段dec_exi_rawo_cnt
RST00000000000000000000000000000000
位名称说明RW
31:0dec_exi_rawo_cntDEC EXI输出的像素个数R

JPEG_DEC_DEBUG_ETC_CNT 寄存器(JPEG_DEC_DEBUG_ETC_CNT, 0x0160)

JPEG_DEC_DEBUG_ETC_CNTJPEG_DEC BASE + 0x0160
Bit313029282726252423222120191817161514131211109876543210
字段Reservedearb_maskar_reqarvalidarreadystp_ddr_acmd_emptyddr_hstop_rsynbs_rdata_cnt
RST00000000000000000000000000000000
位名称说明RW
31:22Reserved保留位,无意义R
21earb_maskAR通道是否maskR
20ar_reqAR请求R
19arvalid读地址有效R
18arready读地址readyR
17stp_ddr_acmd_emptyAR通道的个数是否与R通道的个数想等R
16ddr_hstop_rsynarvalid发起时,arready是否为1R
15:0bs_rdata_cnt读码流的个数,每次读8bytes码流R

JPEG_DEC_DEBUG_EXI0_CNT 寄存器(JPEG_DEC_DEBUG_EXI0_CNT, 0x0164)

JPEG_DEC_DEBUG_EXI0_CNTJPEG_DEC BASE + 0x0164
Bit313029282726252423222120191817161514131211109876543210
字段Reservedexi_line_wcntstp_ddr_aw_cnt
RST00000000000000000000000000000000
位名称说明RW
31Reserved保留位,无意义R
30:27exi_line_wcntexi所写的行数R
26:0stp_ddr_aw_cntAW通道的个数R

JPEG_DEC_DEBUG_EXI1_CNT 寄存器(JPEG_DEC_DEBUG_EXI1_CNT, 0x0168)

JPEG_DEC_DEBUG_EXI1_CNTJPEG_DEC BASE + 0x0168
Bit313029282726252423222120191817161514131211109876543210
字段Reservedawreadyawvalidstp_ddr_acmd_emptyddr_hstop_wsynstp_ddr_bend_cnt
RST00000000000000000000000000000000
位名称说明RW
31Reserved保留位,无意义R
30awready写地址readyR
29awvalid写地址有效R
28stp_ddr_acmd_emptyAW通道的个数是否与B通道的个数想等R
27ddr_hstop_wsynawvalid发起时,awready是否为1R
26:0stp_ddr_bend_cntB通道的个数R

JPEG_DEC_DEBUG_EXI2_CNT 寄存器(JPEG_DEC_DEBUG_EXI2_CNT, 0x016C)

JPEG_DEC_DEBUG_EXI2_CNTJPEG_DEC BASE + 0x016C
Bit313029282726252423222120191817161514131211109876543210
字段Reservedddr_awlen_cnt
RST00000000000000000000000000000000
位名称说明RW
31:27Reserved保留位,无意义R
26:0ddr_awlen_cntawlen的个数,写地址握手成功,每次加awlen+1,R

JPEG_DEC_QT_TAB 寄存器(JPEG_DEC_QT_TAB, 0x0300~0x03BC)

  • JPEG 解码前,通过软件解析出待解码的码流中header 部分的qt 表(标志为DQT,对应码流值为0xFFDB)。如果DQT 有2 个,则UV 共用一个量化表;如果DQT 有3 个,则U 和V 各有1 个量化表。
  • 每个量化表共有64 个8bits 数据,将每4 个数据组成一个32bits 数据配置给寄存器。
  • 0x300~0x33c,为亮度量化表,共64 个8bits 数据。
  • 0x340~0x37c,为U 分量基础表,共64 个8bits 数据。
  • 0x380~0x3bc,为V 分量基础表,共64 个8bits 数据。

JPEG_DEC_HUFFMAN_TAB 寄存器(JPEG_DEC_HUFFMIN 0x0400~0x043C / JPEG_DEC_HUFFBASE 0x0500~0x05FC / JPEG_DEC_HUFFSYMB 0x0600~0x0B3C)

  • JPEG 解码需要三张huffman 表,即huffmin/huffbase/huffsymb 表。解码前,通过软件tabgen 函数提取码流中header 部分的huffman 表(标志为DHT,对应码流值为0xFFC4),并转换成huffmin/huffbase/huffsymb 表配置给寄存器。
Huffmin mapping offset说明
0x400~0x40CMIN AC 0 value
0x410~0x41CMIN DC 0 value
0x420~0x42CMIN AC 1 value
0x430~0x43CMIN DC 1 value
Huffbase mapping offset说明
0x500~0x53CBASE AC 0 value
0x540~0x57CBASE DC 0 value
0x580~0x5BCBASE AC 1 value
0x5C0~0x5FCBASE DC 1 value
Huffsymb mapping offset说明
0x600~0x884SYMB AC 0 value
0x88C~0x8B4SYMB DC 0 and 1values
0x8B8~0xB3CSYMB AC 1 value