Edit online

寄存器描述

3 Mar 2025
Read time: 7 minute(s)

0x0000 FFT_CTL

默认值:0x00000000

FFT 控制寄存器

位域

类型

默认值

描述

31

R/WAC

0x0

SFT_RST

Soft Reset,软复位,此位置 1 复位,完成复位后自动清 0。

30:1

-

-

-

0

R/WAC

0x0

CAL_EN

Calculation Enable,使能计算,使能计算后(包括所有的继发命令),此处自动清 0。

0x0004 FFT_STS

默认值:0x00000000

FFT 状态寄存器

位域

类型

默认值

描述

31:24

-

-

-

23:16

R

0x0

CMD_DONE_CNT

Command Done Counter,完成命令计数,每完成一次命令的计算,计数器进行自增 1。计数器只有在 CAL_EN = 0x1 的时候才开始计数。

当 CAL_EN 的数值从 0 变成 1 的时刻,会对此计数器进行清 0;当 CAL_EN 的数值从 1 变成 0 的时刻,此计数器停止计数。

15

R/W1C

0x0

CMD_SRAM_B3_DNE

Comand in SRAM B3 Done,在 SRAM_B3 的计算命令完成。

在使能 CMD_EN =0x1 时,判断 FFT_INBUF 的地址,如果地址属于 SRAM_B3,那么在 CAL_EN 拉低时,此位拉高,表示 SRAM_B3 计算命令完成。

14

R/W1C

0x0

CMD_SRAM_B2_DNE

Comand in SRAM B2 Done,在 SRAM_B2 的计算命令完成。

在使能 CMD_EN =0x1 时,判断 FFT_INBUF 的地址,如果地址属于 SRAM_B2,那么在 CAL_EN 拉低时,此位拉高,表示 SRAM_B2 计算命令完成。

13

R/W1C

0x0

CMD_SRAM_B1_DNE

Comand in SRAM B1 Done,在 SRAM_B1 的计算命令完成。

在使能 CMD_EN =0x1 时,判断 FFT_INBUF 的地址,如果地址属于 SRAM_B1,那么在 CAL_EN 拉低时,此位拉高,表示 SRAM_B1 计算命令完成。

12

R/W1C

0x0

CMD_SRAM_B0_DNE

Comand in SRAM B0 Done,在 SRAM_B0 的计算命令完成。

在使能 CMD_EN =0x1 时,判断 FFT_INBUF 的地址,如果地址属于 SRAM_B0,那么在 CAL_EN 拉低时,此位拉高,表示 SRAM_B0 计算命令完成。

11:7

-

-

-

6

R/W1C

0x0

FP_NAN_ERR

Float Point NAN Error,浮点数据出现 NAN 错误。

5

R/W1C

0x0

FP_SAT_ERR

Float Point Saturation Error,浮点转定点时出现饱和错误。

4

R/W1C

0x0

AXI_NXT_CMD_ERR

AXI Bus Next Command Error,继发命令 AXI 总线读错误。

3

R/W1C

0x0

AXI_BUS_ERR

AXI Bus Error,AXI 总线读错误。

2

R/W1C

0x0

CMD_END

Command End,命令计算结束,在完成所有的命令计算后产生此状态。

1

R/W1C

0x0

NXT_CMD_DNE

Next Command Read Done,继发命令的数据已全部读入。

0

R/W1C

0x0

CUR_CMD_DNE

Current Command Read Done,当前命令的数据已全部读入。

0x0008 FFT_INT_EN

默认值:0x00000000

FFT 状态寄存器

位域

类型

默认值

描述

31:16

-

-

-

15

R/W

0x0

CMD_SRAM_B3_DNE_IE

CMD_SRAM_B3_DNE Interrupt Enable,CMD_SRAM_B3_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

14

R/W

0x0

CMD_SRAM_B2_DNE_IE

CMD_SRAM_B2_DNE Interrupt Enable,CMD_SRAM_B2_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

13

R/W

0x0

CMD_SRAM_B1_DNE_IE

CMD_SRAM_B1_DNE Interrupt Enable,CMD_SRAM_B1_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

12

R/W

0x0

CMD_SRAM_B0_DNE_IE

CMD_SRAM_B0_DNE Interrupt Enable,CMD_SRAM_B0_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

11:7

-

-

-

6

R/W

0x0

FP_NAN_ERR_IE
FP_NAN_ERR Interrupt Enable,FP_NAN_ERR 中断使能。
  • 0x0:未使能
  • 0x1:使能

5

R/W

0x0

FP_SAT_ERR_IE

FP_SAT_ERR Interrupt Enable,FP_SAT_ERR 中断使能。

  • 0x0:未使能
  • 0x1:使能

4

R/W

0x0

AXI_NXT_CMD_ERR_IE

AXI_NXT_CMD_ERR Interrupt Enable,AXI_NXT_CMD_ERR 中断使能。

  • 0x0:未使能
  • 0x1:使能

3

R/W

0x0

AXI_BUS_ERR_IE

AXI_BUS_ERR Interrupt Enable,AXI_BUS_ERR 中断使能。

  • 0x0:未使能
  • 0x1:使能

2

R/W

0x0

CMD_END_IE

CMD_END Interrupt Enable,CMD_END 中断使能。

  • 0x0:未使能
  • 0x1:使能

1

R/W

0x0

NXT_CMD_DNE_IE

NXT_CMD_DNE Interrupt Enable,NXT_CMD_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

0

R/W

0x0

CUR_CMD_DNE_IE

CUR_CMD_DNE Interrupt Enable,CUR_CMD_DNE 中断使能。

  • 0x0:未使能
  • 0x1:使能

0x0010 SRAM_CFG

默认值:0x00000000

SRAM 配置寄存器

位域

类型

默认值

描述

31:4

-

-

-

3

R/W

0x0

SRAM_B3_CFG

SRAM_B3 Configure,SRAM_B3 配置。

  • 0x0:SRAM_B3 的空间归属 CPU 读写
  • 0x1:SRAM_B3 的空间归属 FFT 读写

2

R/W

0x0

SRAM_B2_CFG

SRAM_B2 Configure,SRAM_B2 配置。

  • 0x0:SRAM_B2 的空间归属 CPU 读写
  • 0x1:SRAM_B2 的空间归属 FFT 读写

1

R/W

0x0

SRAM_B1_CFG

SRAM_B1 Configure,SRAM_B1 配置。

  • 0x0:SRAM_B1 的空间归属 CPU 读写
  • 0x1:SRAM_B1 的空间归属 FFT 读写

0

R/W

0x0

SRAM_B0_CFG

SRAM_B0 Configure,SRAM_B0 配置。

  • 0x0:SRAM_B0 的空间归属 CPU 读写
  • 0x1:SRAM_B0 的空间归属 FFT 读写

0x0014 SRAM_BASE

默认值:0x00000000

SRAM 基地址配置寄存器

位域

类型

默认值

描述

31:0

R/W

0x0

SRAM_BASE

SRAM Base Address,SRAM 基地址。

如果使用 B0 空间,此处设置为 0x30138000

如果使用 B0+B1 空间,此处设置为 0x30130000

如果使用 B0+B1+B2+B3 空间,此处设置为 0x30120000

0x0050 OP_CTL

默认值:0x00000000

OP_CTL 寄存器

位域

类型

默认值

描述

31:2

R/W

0x0

NXT_CMD_ADDR

继发命令指针,(当前命令执行完后读取),此地址为高 30-bit 地址,低 2-bit 地址默认数值为 0。

1

-

-

-

0

R/W

0x0

NXT_CMD_EN
Next Command Enable,继发命令使能。
  • 0x0:未使能,表示当前的计数命令是最后一次的计算命令
  • 0x1:使能,表示完成当前的计算命令后需要根据 NXT_ADDR 的地址获取下一次的命令的配置参数

0x0054 OP_CMD

默认值:0x00000000

OP_CMD 寄存器

位域

类型

默认值

描述

31:9

-

-

-

8

R/W

0x0

ABS_OUT_EN

Absolut Ouput Enable,复数绝对值输出。(ABS_OUT_EN 使能后,输出结果的固定位幅值 0、相位 0、幅值 1、相位 1、…、赋值 N、相位 N 的方式输出)

  • 0x0:未使能
  • 0x1:使能

7:6

R/W

0x0

OUTD_TYP

Output Data Type,输出数据格式。

  • 0x0/0x2:输出 FFT 计算的实部+虚部,采用 Q31 的格式输出
  • 0x1/0x3:输出 FFT 计算的实部+虚部,采用 Q15 的格式输出

5:4

R/W

0x0

IND_TYP

Input Data type,输入数据格式。

  • 0x0:实数 Q31 FFT 计算
  • 0x1:实数 Q15 FFT 计算
  • 0x2:复数 Q31 FFT 计算
  • 0x3:复数 Q15 FFT 计算

3:2

R/W

0x0

FLOAT_OUT_CVR

Float Output Convert Type,浮点输出数据转换类型。

  • 0x0:输出为定点数,无需转换
  • 0x1:Q15 定点数转换为单精度浮点数输出
  • 0x2:Q31 定点数转换为单精度浮点数输出
  • 0x3:Reserved

1:0

R/W

0x0

FLOAT_IN_CVR

Float Input Convert Type,浮点输入数据转换类型。

  • 0x0:输入为定点数,无需转换
  • 0x1:输入为单精度浮点数,需转换成 Q15 定点数
  • 0x2:输入为单精度浮点数,需转换成 Q31 定点数
  • 0x3:Reserved

0x0058 FFT_CFG

默认值:0x00000000

FFT_CFG 寄存器

位域

类型

默认值

描述

31:8

-

-

-

7:4

R/W

0x0

FFT_LEN

FFT Length,FFT 计算长度。

  • 0x0:8 点 FFT/IFFT 计算
  • 0x1:16 点 FFT/IFFT 计算
  • 0x2:32 点 FFT/IFFT 计算
  • 0x3:64 点 FFT/IFFT 计算
  • ...
  • 0x9:4096 点 FFT/IFFT 计算
  • others:Reserved

3:1

-

-

-

0

R/W

0x0

IFFT_EN

Invert FFT Enable,FFT 逆变换使能。

  • 0x0:未使能,进行 FFT 变换计算
  • 0x1:使能,进行 FFT 逆变换计算

0x05C FFT_INBUF

默认值:0x00000000

FFT_INBUF 寄存器

位域

类型

默认值

描述

31:0

R/W

0x0

FFT_INBUF

FFT Input Buffer Address,FFT 输入数据的起始地址。

0x060 FFT_OUTBUF

默认值:0x00000000

FFT_OUTBUF 寄存器

位域

类型

默认值

描述

31:0

R/W

0x0

FFT_OUTBUF

FFT Output Buffer Address,FFT 输出数据的起始地址。

0x0FC FFT_VER

默认值:0x00000000

FFT 版本寄存器

位域

类型

默认值

描述

31:0

R

0x0000_0100

版本寄存器 V1.0