Edit online

H.264 寄存器描述

3 Mar 2025
Read time: 18 minute(s)

0x0100 AVC_RESET

默认值:0x00000000

AVC 软复位 (AVC RESET)

位域

类型

默认值

描述

31:1

-

-

-

0

R/W

0x0

VE_RESET
  • 0:软复位完成
  • 1:软复位进行中

由软件对本寄存器置位,硬件就会对 AVC 模块寄存器软复位。由于硬件复位需要一定时间,软件配置该寄存器后,需要等到该 bit 为 0 后,才能继续配置其它寄存器。

0x0104 AVC_SPS

默认值:0x00000000

AVC 序列参数集信息 (AVC Sequence PArameter Set)

位域

类型

默认值

描述

31

R/W

0x0

PIC_INIT

1:VE 内部图像初始化,只在图像的第一个 slice 才需要配置

30:23

-

-

-

22:21

-

-

-

20

R/W

0x0

UV_ALTER
  • 0: U 分量存放在 V 分量之前
  • 1: V 分量存放在 U 分量之前

19

R/W

0x0

UV_INTERLEAVE
  • 0: UV 分量不交错
  • 1: UV 分量交错

控制 MC 模块是否按交错方式读参考帧数据,需要与 dblk 寄存器 0x24C 中的交错值一致。

18

R/W

0x0

FRAME_MBS_ONLY_FLAG
  • 0: 编码序列里可能有帧结构、也可能有场结构。
  • 1: 编码序列的所有编码帧只有帧结构、帧 MB。

17

R/W

0x0

MB_ADAPTIVE_FRAME_FIELD_FLAG
  • 0: 不允许编码中出现帧 MB 与场 MB 切换。
  • 1: 允许编码中出现帧 MB 与场 MB 切换。

16

R/W

0x0

DIRECT_8X8_INFERENCE_FLAG

指定了 B_Skip,B_Direct_16x16 和 B_Direct_8x8 块的亮度运动向量的生成方法。如果 FRAME_MBS_ONLY_FLAG 为 0, 则 FLAG 应为 1。

15

-

-

-

14:8

R/W

0x000

PIC_WIDTH_IN_MBS_MINUS1

图像编码宽度,单位是 MB。如果以像素为单位,实际图像编码宽度为 PIC_WIDTH_IN_MBS * 16。

7

-

-

-

6:0

R/W

0x000

PIC_HEIGHT_IN_MBS_MINUS1
图像编码高度,单位是 MB。如果以像素为单位,实际图像编码高度为 PIC_HEIGHT_IN_MBS * 16。PIC_HEIGHT_IN_MAP_UNITS_MINUS1 仅对 H.264 有效,,解码帧/场中 slice 头中解码出来的图像高度。
注: FrameHeightInMbs = (2 – frame_mbs_only_flag) *PicHeightInMapUnits

0x0108 AVC_PPS

默认值:0x00000000

AVC 图像参数集信息 (AVC Picture Parameter Set)

位域

类型

默认值

描述

31:21

-

-

-

20:16

R/W

0x000

NUM_REF_IDX_L0_ACTIVE_MINUS1_PIC

指定参考图像列表 0 的最大参考图像个数。

15:13

-

-

-

12:8

R/W

0x000

NUM_REF_IDX_L1_ACTIVE_MINUS1_PIC

指定参考图像列表 1 的最大参考图像个数。

7:6

-

-

-

5

R/W

0x0

ENTROPY_CODING_MODE_FLAG
  • 0: Exp-Golomb 编码以及 CAVLC
  • 1: CABAC

4

R/W

0x0

WEIGHTED_PRED_FLAG
  • 0: 加权预测可以不按照 P/SP slices 的方式进行。
  • 1: 加权预测需按照 P/SP slices 的方式进行。

3:2

R/W

0x0

WEIGHTED_BIPRED_IDC
  • 00: 默认模式
  • 01: explicit 模式
  • 10: implicit 模式
  • 11: reserved

仅对 B slice 有效。

1

R/W

0x0

CONSTRAINED_INTRA_PRED_FLAG
  • 0: 帧内、帧间预测模式都允许
  • 1: 固定只能有帧内预测模式

0

R/W

0x0

TRANSFROM_8X8_MODE_FLAG
  • 0: 解码过程中不使用 8x8 变换
  • 1: 解码过程中可使用 8x8 变换

0x010C AVC_SH1

默认值:0x00000000

AVC Slice 头信息 1 (AVC Slice Header1)

位域

类型

默认值

描述

31

-

-

-

30:24

R/W

0x0_0000

FIRST_MB_X

当前 slice 第一个宏块在图像中的水平方向坐标值。

23

-

-

-

22:16

R/W

0x0_0000

FIRST_MB_Y

当前 slice 第一个宏块在图像中的垂直方向坐标值。

15:13

-

-

-

12

R/W

0x0

NAL_REF_FLAG
  • 0: 当前 slice 不用作后续参考图
  • 1: 当前 slice 可用做后续参考图

11:8

R/W

0x0

SLICE_TYPE
  • 0000: P slice
  • 0001: B slice
  • 0010: I slice
  • 0011: SP slice
  • 0100: SI slice
  • 0101: P slice
  • 0110: B slice
  • 0111: I slice
  • 1000: SP slice
  • 1001: SI slice
  • 其它:保留

7:6

-

-

-

5

R/W

0x0

FIRST_SLICE_IN_PIC
  • 0: 当前 slice 不是当前编码图的第一个 slice
  • 1: 当前 slice 是当前编码图的第一个 slice

4

R/W

0x0

FIELD_PIC_FLAG
  • 0: 当前 slice 是帧结构方式编码
  • 1: 当前 slice 是场结构方式编码

3

R/W

0x0

BOTTOM_FIELD_FLAG
  • 0: 当前 slice 是顶场
  • 1: 当前 slice 是底场

2

R/W

0x0

DIRECT_SPATIAL_MV_PRED_FLAG
  • 0: 采取时间 direct 模式预测
  • 1: 采取空间 direct 模式预测

1:0

R/W

0x0

CABAC_INIT_IDC

参数 cabac_init_idc 的值范围 [0,2]。

0x0110 AVC_SH2

默认值:0x00000000

AVC Slice 头信息 2 (AVC Slice Header2)

位域

类型

默认值

描述

31:29

-

-

-

28:24

R/W

0x00

NUM_REF_IDX_L0_ACTIVE_MINUS1

当前 slice 使用参考图列表 0 时的最大参考 index-1。

23:21

-

-

-

20:16

R/W

0x00

NUM_REF_IDX_L1_ACTIVE_MINUS1

当前 slice 使用参考图列表 1 时的最大参考 index-1。

15:13

-

-

-

12

R/W

0x0

NUM_REF_IDX_ACTIVE_OVERRIDE_FLAG
  • 0: 有效参考图个数不能被重写
  • 1: 有效参考图个数可被重写

    如果该位为 1,则表示参考图个数可能与 PPS 中设置的不同。

11:10

-

-

-

9:8

R/W

0x0

DISABLE_DEBLOCKING_FILTER_IDC

有效值范围 [0,2]

7:4

R/W

0x0

SLICE_ALPHA_C0_OFFSET_DIV2

FilterOffsetA = slice_alpha_c0_offset_div2 << 1

有效值范围 [-6,+6]

3:0

R/W

0x0

SLICE_BETA_OFFSET_DIV2

FilterOffsetB = slice_beta_offset_div2 << 1

有效值范围[-6,+6]

0x0114 AVC_SH_WP

默认值:0x00000000

AVC Slice 头加权预测参数信息 (AVC Weighted Pred Info)

位域

类型

默认值

描述

31

-

-

-

30:28

R/W

0x000

LUMA_LOG2_WEIGHT_DENOM

所有亮度加权因子的分母,以 2 为基的对数表示有效范围为 [0,7]。

27

-

-

-

26:24

R/W

0x000

CHROMA_LOG2_WEIGHT_DENOM

所有色度加权因子的分母,以 2 为基的对数表示有效范围为 [0,7]。

23:0

-

-

-

0x0118 AVC_WP

注:

此寄存器是一个端口寄存器,通过连续配置该寄存器把预测权重参数写入 VE 中的 SRAM。

一组预测权重参数由 8 bits 的 offset 和 9 bits 的 weight 组成。

先写前向参考 L0 预测参数,再写后向参考 L1 预测参数。

先存 Y 分量 32 组参数,再存 Cb 分量 32 组参数,最后存 Cr 分量 32 组参数。

默认值:0x00000000

AVC 加权预测权重参数 (AVC Weighted Pred Data)

位域

类型

默认值

描述

31:24

R/W

0x0

WEIGHT_PRED_SRAM_ADDR
  • 0x00-0x1F 是 Luma_L0 的地址
  • 0x20-0x3F 是 Chroma_Cb_L0 的地址
  • 0x40-0x5F 是 Chroma_Cr_L0 的地址
  • 0x60-0x7F 是 Luma_L1 的地址
  • 0x80-0x9F 是 Chroma_Cb_L1 的地址
  • 0xA0-0xBF 是 Chroma_Cr_L1 的地址

23:17

-

-

-

16:0

R/W

0x000

WEIGHT_PRED_DATA
  • [16:8]: weight
  • [7:0]: offset

bit[7:0]

bit[16:8]

Luma_offset_L0[0]

Luma_weight_L0[0]

Luma_offset_L0[1]

Luma_weight_L0[1]

……

……

Luma_offset_L0[31]

Luma_weight_L0[31]

Chroma_Cb_offset_L0[0]

Chroam_Cb_weight_L0[0]

Chroma_Cb_offset_L0[1]

Chroam_Cb_weight_L0[1]

……

……

Chroma_Cb_offset_L0[31]

Chroam_Cb_weight_L0[31]

Chroma_Cr_offset_L0[0]

Chroam_Cr_weight_L0[0]

Chroma_Cr_offset_L0[1]

Chroam_Cr_weight_L0[1]

……

……

Chroma_Cr_offset_L0[31]

Chroam_Cr_weight_L0[31]

Luma_offset_L1[0]

Luma_weight_L1[0]

Luma_offset_L1[1]

Luma_weight_L1[1]

…… ……

-

Luma_offset_L1[31]

Luma_weight_L1[31]

Chroma_Cb_offset_L1[0]

Chroam_Cb_weight_L1[0]

Chroma_Cb_offset_L1[1]

Chroam_Cb_weight_L1[1]

……

……

Chroma_Cb_offset_L1[31]

Chroam_Cb_weight_L1[31]

Chroma_Cr_offset_L1[0]

Chroam_Cr_weight_L1[0]

Chroma_Cr_offset_L1[1]

Chroam_Cr_weight_L1[1]

……

……

Chroma_Cr_offset_L1[31]

Chroam_Cr_weight_L1[31]

0x011C AVC_Scaling_Matrix

注: AVC_Scaling_Matrix 是端口寄存器,通过连续配置该寄存器可把量化参数写入 VE 中的 SRAM。 当所有数据都写入 SRAM 后,需要把 AVC_Scaling_Matrix 寄存器设置为 0,关闭 access,否则 VE 内部模块无法读该数据。

默认值:0x00000000

AVC 量化矩阵参数 (AVC Scaling Matrix)

位域

类型

默认值

描述

31

R/W

0x0

SCALING_MATRIX_ACCESS

1:请求写

30

R/W

0x0

SCALING_WRITE_ENABLE

1: 写使能

29:24

-

-

-

23:16

R/W

0x0

SCALING_MATRIX_ADDR

量化参数地址

15:9

-

-

-

8:0

R/W

0x000

SCALING_MATRIX_VALUE

量化矩阵参数数值

数据排列方式如下:

类型

地址范围

Sl_4x4_intra_Y

0x00-0x0f

Sl_4x4_intra_Cb

0x10-0x1f

Sl_4x4_intra_Cr

0x20-0x2f

Sl_4x4_inter_Y

0x30-0x3f

Sl_4x4_inter_Cb

0x40-0x4f

Sl_4x4_inter_Cr

0x50-0x5f

Sl_8x8_intra_Y

0x60-0x9f

Sl_8x8_inter_Y

0xA0-0xdf

0x0120 AVC_SH_QP

默认值:0x00000000

AVC Slice 头量化参数 (AVC Slice Header QP)

位域

类型

默认值

描述

31:22

-

-

-

21:16

R/W

0x0

SECOND_CHROMA_QP_INDEX_OFFSET

如果语法里不包含该参数,则默认等于 CHROMA_QP_INDEX_OFFSET

15:14

-

-

-

13:8

R/W

0x000

CHROMA_QP_INDEX_OFFSET

有效值范围 [-12,12]

7:6

-

-

-

5:0

R/W

0x000

SLICE_QPY

Slice 头解码的 qp_y, 有效值范围 [0,51]

0x0124 AVC_CTRL

默认值:0x00000000

AVC 控制参数 (AVC Control)

位域

类型

默认值

描述

31

R/W

0x0

Slice start

30:15

-

-

-

14

R/W

0x0

StartCode_Detect_En
  • 0: 不检测 startcode
  • 1: 检测 startcode

13

R/W

0x0

EPTB_Detection_Bypass
  • 0: 检测防竞争字节
  • 1: 不检测防竞争字节

12:6

-

-

-

5

R/W

0x0

BIT_REQ_INT_EN
  • 0:不使能
  • 1:使能

DEC_REQ_INT_EN 用于控制 VE 所需要的原始码流不够需要请求下笔数据时是否向 CPU 发出中断请求。当 DEC_REQ_INT_EN 为 1 时,产生中断请求,否则不产生中断请求。是否产生中断请求,不影响相应状态标志位的产生。

4

R/W

0x0

DEC_ERR_INT_EN
  • 0:不使能
  • 1:使能

DEC_ERR_INT_EN 用于控制 VE 错误解码结束后是否向 CPU 发出中断请求。当 DEC_ERR_INT_EN 为 1 时,产生中断请求,否则不产生中断请求。是否产生中断请求,不影响相应状态标志位的产生。

3

R/W

0x0

DEC_FINISH_INT_EN
  • 0:不使能
  • 1:使能

DEC_FINISH_INT_EN 用于控制 VE 正常解码结束后是否向 CPU 发出中断请求。当 DEC_FINISH_INT_EN 为 1 时,产生中断请求,否则不产生中断请求。是否产生中断请求,不影响相应状态标志位的产生。

2:0

-

-

-

0x0128 AVC_STATUS

默认值:0x00000000

AVC 解码状态 (AVC Satus)

位域

类型

默认值

描述

31

R

0x0

BITSTREAM_ERROR

码流出错

30

R

0x0

COEFF_ERROR

宏块 DCT 系数解析出错

29

R

0x0

MB_HEADER_ERROR

宏块头解析出错

28

R

0x0

MB_PREFIX_ERROR

宏块前缀解析出错

27:19

-

-

-

18

R/W1C

0x0

VE_Error

当 VE 执行当前任务过程中发现码流错误,则停止当前任务并向主控发送中断信号后,该位置 1。主控向该位写 1 则清除相应中断。

17

R/W1C

0x0

BIT_Req

当 VE 执行当前任务过程中发现码流不够,且当前正在处理的码流不是最后一笔码流,则暂停当前任务并向主控发送中断信号后,该位置 1。主控向该位写 1 则清除相应中断。

16

R/W1C

0x0

VE_Finish

当 VE 完成当前任务并向主控发送中断信号后,该位置 1。主控向该位写 1 则清除相应中断。

15:9

-

-

-

8:0

R

0x0

Busy

内部子模块的 busy 状态。

0x012C AVC_DEC_MB_NUM

默认值:0x00000000

AVC 正确解码宏块数 (AVC Correct Decode MB Number)

位域

类型

默认值

描述

31:24

-

-

-

23:0

R/W

0x000_0000

Crt_MB_Number
表示对一帧/ 场/ GOB 来说,被正常解码的 MB/ MCU 数量。
注: 在开始解码一帧/ 场/ GOB 之前,软件应对该寄存器清零,除此之外,VE 硬件逻辑不会自动清零。

0x0130 AVC_DATA_VALID

注: 当 DATA_FIRST 为 1,DATA_LAST 为 0 时,软件需要保证 BIT_LENGTH 大于 64bit。

默认值:0x00000000

码流数据有效标记 (Data Valid Flag)

位域

类型

默认值

描述

31

R/W

0x0

DATA_VALID
  • 置 1:当前配置的码流数据已经有效写入原始码流缓冲区,VE 可以预取码流数据到内部的缓冲区,等待启动解码。
  • 置 0:码流数据还没有正确写入原始码流缓冲区。

30:2

-

-

-

1

R/W

0x0

DATA_LAST
  • 置 1:当前配置的数据是一个完整解码的最后一笔数据。
  • 置 0:当前配置的数据不是一个完整解码的最后一笔数据。

    当前解码任务完成后需要硬件保持状态,待下笔数据配置后继续完成一个完整解码。

0

R/W

0x0

DATA_FIRST
  • 置 1:当前配置的数据是一个完整解码的第一笔数据。
  • 置 0:当前配置的数据不是一个完整解码的第一笔数据,当前解码任务需要承接前一次的解码继续完成一个完整解码。

0x0134 AVC_BITBUF_START_ADDR

默认值:0x00000000

码流数据起始 DRAM 地址 (Bit Buffer Start Address)

位域

类型

默认值

描述

31:8

R/W

0x00

BITBUF_START_ADDR [31:8],原始码流缓冲区在外部 DRAM 中的起始位置,低 8 位固定为 0。

7:0

R/W

0x000_0000

固定为 0

0x0138 AVC_BITBUF_END_ADDR

默认值:0x0000000F

码流数据结束 DRAM 地址 (Bit Buffer End Address)

位域

类型

默认值

描述

31:8

R/W

0x000_0000

BITBUF_END_ADDR[31:8],原始码流缓冲区在外部 DRAM 中的结束位置。

7:0

R

0xF

固定为全 1

0x013C AVC_BIT_OFFSET

默认值:0x00000000

码流数据偏移 (Bit Stream Offset)

位域

类型

默认值

描述

31:30

-

-

-

29:0

R/W

0x0000_0000

BIT_OFFSET

当前有效配置数据开始的位置,相对于 ADDR 计算的,以 bit 为单位。

最大 128 MB,即码流缓冲区最大 128 MB。

0x0140 AVC_BIT_LENGTH

默认值:0x00000000

码流数据长度 (Bit Stream Length)

位域

类型

默认值

描述

31:30

-

-

-

29:0

R/W

0x0000_0000

BIT_LENGTH

当前配置的有效数据长度,以位为单位,起始位置为 OFFSET。

0x0144 AVC_REF_LIST

默认值:0x00000000

AVC 参考帧队列信息 (AVC Refrence List)

位域

类型

默认值

描述

31

R/W

0x0

REF_IDX_RW
  • 0:从内部 SRAM 读数据
  • 1:写数据到 SRAM

30:21

-

-

-

20:16

R/W

0x0

REF_IDX

参考队列中的索引,取值范围为 0-31.

15:14

-

-

-

13:9

R/W

0x0

BUF_IDX_LIST1

后向参考帧对应的 buf idx

8

R/W

0x0

BUF_INFO_SEL_LIST1
当前后向参考帧时顶场还是底场:
  • 0:顶场
  • 1:底场

7:6

-

-

-

5:1

R/W

0x0

BUF_IDX_LIST0

前向参考帧对应的 buf idx。

0

R/W

0x0

BUF_INFO_SEL_LIST0
当前前向参考帧时顶场还是底场:
  • 0:顶场
  • 1:底场

0x0148 AVC_FB_INFO

默认值:0x00000000

AVC 解码输出图像信息 (AVC FrameBuffer Info)

位域

类型

默认值

描述

31

R/W

0x0

BUF_INFO_RW

1:写使能

30:19

-

-

-

18:16

R/W

0x0

CONTENT_SELECT

选择 frame buffer 的内容,见下表

15:13

-

-

-

12:8

R/W

0x0

BUF_IDX

当前 frame buffer 的索引,取值范围 0-17。

7:5

-

-

-

4:0

R/W

0x0

CURR_STORAGE_BUF_IDX

当前解码帧的 frame idx。

0x014C AVC_FB_INFO_CONT

默认值:0x00000000

AVC 解码输出图像内容 (AVC FrameBuffer Info Content)

位域

类型

默认值

描述

31:0

R/W

0x0

BUF_INFO_CONTENT,见下表

每个帧缓冲区信息包括 POC、图像类型、图像数据存放地址、colocated 信息存放地址等,见下表。 如果格式中的某些信息不存在,默认为 0。相邻两个帧缓冲区信息连续存放,共支持存放 18 个帧缓冲区信息。

CONTENT_SELECT

BUF_INFO_CONTENT

0

[31:0]:场格式顶场 POC 或帧格式 POC

1

[31:0]:场格式底场 POC

2

  • [31:10]:reserved
  • [9:8]: 图像类型
    • 0: 帧格式
    • 1: 场格式
    • 2: mbaff)
  • [7:6]: reserved
  • [5:4]: 底场参考帧类型
    • 0: 短期参考帧
    • 1: 长期参考帧
    • 2: 非参考帧
  • [3:2]: reserved
  • [1:0]: 顶场参考帧类型
    • 0: 短期参考帧
    • 1: 长期参考帧
    • 2: 非参考帧

5

[31:0]:顶场或帧格式共同位置信息存放的 DRAM 地址,需 1024 字节对齐。

6

[31:0]:底场共同位置信息存放的 DRAM 地址,需 1024 字节对齐。

0x0150 AVC_COL_BUF_ADDR

默认值:0x00000000

AVC 共同位置宏块信息地址 (Colocated MB Info Buffer Address)

位域

类型

默认值

描述

31:8

R/W

0x00_0000

MB_COL_BUF_ADDR

用于存放 B slice direct 预测时用到的 colocated 宏块信息,需要分配 64K byte 地址空间。

7:0

RO

0x000

Colocated

宏块缓冲区 DRAM 地址低 8 位,固定为 0。

0x0154 AVC_MBINFO_BUF_ADDR

默认值:0x00000000

AVC 宏块信息数据地址 (MB Info Buffer Address)

位域

类型

默认值

描述

31:8

R/W

0x00_0000

MBINFO_BUF_ADDR

MB 信息缓冲区 DRAM 地址高 24 位。此缓冲区位于外部 DRAM 中,适用于 H.264 等标准,用于存放当前帧的 MB 头信息。需要分配 12K byte 地址空间。

7:0

RO

0x000

MB

信息缓冲区 DRAM 地址低 8 位,固定为 0。

0x01D4 AVC_INTRAP_BUF_ADDR

默认值:0x00000000

AVC 帧内预测数据缓存地址 (AVC Intrapred Buffer Address)

位域

类型

默认值

描述

31:8

R/W

0x00_0000

INTRAP_BUF_ADDR

帧内预测缓冲区 DRAM 地址高 24 位。此缓冲区位于外部 DRAM 中,用于存放帧内预测需要的上一个 MB 行的部分像素数据。分配地址空间为(width*2)byte,width 表示图像宽。

7:0

RO

0x000

帧内预测缓冲区 DRAM 地址低 8 位,固定为 0。

0x01F8 AVC_CYCLES

默认值:0x00000000

AVC 解码时钟数 (AVC Cycle)

位域

类型

默认值

描述

31:0

RO

0x000

CYCLES

获取 VE 工作 cycle 数。

0x0210 AVC_PIC_TYPE_REG

默认值:0x00000000

AVC 图像类型 (AVC Picture Type)

位域

类型

默认值

描述

31:3

-

-

-

2

R/W

0x0

Mbaff
  • 1:当前图像为帧场自适应帧格式
  • 0:当前图像不是帧场自适应帧格式

1

R/W

0x0

Field
  • 1:当前图像为场格式
  • 0:当前图像为帧格式

0

R/W

0x0

Bottom_field_flag
  • 1:底场
  • 0:顶场

0x0214 AVC_PIC_SIZE_REG

默认值:0x00000000

AVC 解码输出图像大小 (AVC Picture Size)

位域

类型

默认值

描述

31:28

-

-

-

27:16

R/W

0x0

Pic_xsize

图像的真实宽度,以像素为单位。

15:12

-

-

-

11:0

R/W

0x0

Pic_ysize

图像的真实高度,以像素为单位。

0x0240 AVC_DBLK_EN_REG

默认值:0x00000000

AVC 去块滤波使能 (AVC Deblocking Enable)

位域

类型

默认值

描述

31:1

-

-

-

0

R/W

0x0

Dblk_enable
  • 1: dblk 模块使能
  • 0: dblk 模块不使能

0x0244 AVC_DBLK_Y_BUF_REG

默认值:0x00000000

AVC 去块滤波亮度分量缓存地址 (Deblocking Y Buffer Address)

位域

类型

默认值

描述

31:0

R/W

0x0

DBLK_BUF_Ydblk

使用的亮度分量临时 buffer 在 DRAM 中的基地址。

0x0248 AVC_DBLK_C_BUF_REG

默认值:0x00000000

AVC 去块滤波色度分量缓存地址 (Deblocking C Buffer Address)

位域

类型

默认值

描述

31:0

R/W

0x0

DBLK_BUF_C

dblk 使用的色度分量临时 buffer 在 DRAM 中的基地址。

0x024C AVC_DEC_CONFIG_REG

默认值:0x00000000

解码图像配置 (Decode Picture Configuration)

位域

类型

默认值

描述

31:9

-

-

-

8

R/W

0x0

DEC_WR_EN,写 1

7

-

-

-

6

R/W

0x0

DEC_LUMA_ONLY
  • 0:有亮度分量和色度分量
  • 1:只有亮度分量

5:4

R/W

0x0

DEC_CHROMA_IDC
颜色格式
  • 00: YUV420
  • 01: YUV400

3

R/W

0x0

UV_ALTERNATIVE
  • 1: crcb 方式存放,先存 cr 分量再存 cb 分量
  • 0: cbcr 方式存放

2

R/W

0x0

UV_INTERLEAVE
  • 1: uv 交错存放
  • 0: uv 分开存放

1:0

R/W

0x0

ENDIAN
  • 1: 64 bit 大端
  • 0: 64 bit 小端

0x0250 AVC_DEC_FRAME_IDX_REG

默认值:0x00000000

AVC 解码帧索引 (Decode Frame Index)

位域

类型

默认值

描述

31:0

R/W

0x0

FRAME_IDX

指定解码输出的 frame_idx。

0x040C AVC_INTERP_DMA_MODE

默认值:0x00000000

AVC 帧间预测 DMA 方式 (Inter-Pred DMA Mode)

位域

类型

默认值

描述

31:1

-

-

-

0

R/W

0x0

MODE

配置为 0

0x0480 AVC_INTERP_WP_ENABLE

默认值:0x00000000

加权预测使能 (Weighted Pred Enable)

位域

类型

默认值

描述

31:2

-

-

-

1

R/W

0x0

WEIGHTED_EN
  • 1:开启加权预测
  • 0:使用默认加权预测

0

R/W

0x0

IMPILITED_EN

1:使用隐式加权预测,当前 slice 为 B slice 并且 weighted_bipred_idc 为 2

0x0484 AVC_INTERP_WP_LOGWD

默认值:0x00000000

加权预测 LOGWD 参数 (Weighted Pred LOGWD Parameter)

位域

类型

默认值

描述

31:6

-

-

-

5:3

R/W

0x0

LOGWD_C

色度分量的加权预测参数 LOGWD

2:0

R/W

0x0

LOGWD_Y

亮度分量的加权预测参数 LOGWD