USER GUIDE / SECURITY / SC HASH / REGISTER DESCRIPTION

寄存器描述

HASH CtrlRegister(HSCR,0x00)

HSCRBASE + 0x0000
Bit313029282726252423222120191817161514131211109876543210
字段PSReservedDORVSDIRVSDMASDMAEINITSELEN
RST00110000000000000000000000000000
位名称说明RW
31:28PS页面大小,不要设置这些位,保持默认值 0:不关心 1:1KB 2:2KB 3:4KB(默认) 4:8KB 5:16 KBRW
27:9Reserved写入无影响,读取为零。
R
8DORVS输出数据类型:小端模式或大端模式 假设输出数据为odata[31:0] 0:结果是odata[31:0] 1:结果是 {odata[7:0],odata[15:8],odata[23:16],odata[31:24]} 在MD5模式中,该位应该在数据输入前置为1RW
7DIRVS输入数据类型: 小端模式或大端模式 假设输入数据为idata[31:0] 0:结果是idata[31:0] 1:结果是{idata[7:0],idata[15:8],idata[23:16],idata[31:24]} 在SHA模式中,该位应该在数据输入前置1RW
6DMASDMA开启位 该位会被硬件自动清零,并且读为0。
RWS
5DMAEDMA的使能位 1:DMA使能 0:DMA不使能RW
4INIT初始化模块为新的一轮:HASH算法的初始化。
该位会被硬件自动 清零,并且读为0。
注意:只有当HASH新的一轮开始时,该位置1
RWS
3:1SELHash算法的选择RW
0ENHash 使能位: 1:Hash使能 0:Hash不使能RW

HASH StatusRegister (HSSR,0x04)

HSSRBASE + 0x0004
Bit313029282726252423222120191817161514131211109876543210
字段ReservedMRDORD
RST00000000000000000000000000000000
位名称说明RW
31:2Reserved写入无影响,读取为零。
R
1MRDHASH的多轮算法结束:HSDO数据有效 MRD仅用于DMA读访问 置1清零RWC
0ORDHASH的一轮算法结束:HSDO数据有效 正常情况下,ORD用于CPU读访问 置1清零RWC

HASH InterruptEnableRegister(HSINTEN,0x08)

HSINTENBASE + 0x0008
Bit313029282726252423222120191817161514131211109876543210
字段ReservedMR_INT_ENOR_INT_EN
RST00000000000000000000000000000000
位名称说明RW
31:2Reserved写入无影响,读取为零。
R
1MR_INT_ENMRD的中断使能位 1:中断使能 0:中断屏蔽(默认)RW
0OR_INT_ENORD的中断使能位 1: 中断使能 0:中断屏蔽(默认)RW

HASH DMASourceAddress (HSSA,0x0C)

HSSABASE + 0x000C
Bit313029282726252423222120191817161514131211109876543210
字段SA
RST00000000000000000000000000000000
位名称说明RW
31:0SA单次DMA传输使用的源物理地址 注意:访问物理地址时是字对齐的访问RW

HASH Transfer Count (HSTC,0x10)

HSTCBASE + 0x0010
Bit313029282726252423222120191817161514131211109876543210
字段TC
RST00000000000000000000000000000000
位名称说明RW
31:0TC单次DMA传输字数,表明在当前SA下传输多少wordsRW

HASH BlockNumber (HSBNUM,0x14)

HSBNUMBASE + 0x0014
Bit313029282726252423222120191817161514131211109876543210
字段BNUM
RST00000000000000000000000000000000
位名称说明RW
31:0BNUMDMA模式传输总block量:Block的数量(1Block== 512bit) 注:无论是使用哪种算法模式,DMA模式下BNUM数量配置为n 则计算 n 个 512bit 数据。
如果使用 SHA384/SHA512(本身为 1024bit计算一次),BNUM需配置为2,4,6,8.....
RW

HASH DataInputRegister (HSDI,0x18)

HSDIBASE + 0x0018
Bit313029282726252423222120191817161514131211109876543210
字段DIN
RST00000000000000000000000000000000
位名称说明RW
31:0DIN输入的数据:只支持字的写访问W

HASH DataOutput Register (HSDO,0x1C)

HSDOBASE + 0x001C
Bit313029282726252423222120191817161514131211109876543210
字段DOUT
RST00000000000000000000000000000000
位名称说明RW
31:0DOUT输出的数据:只支持字的读访问 MD5:128bit SH1:160bit SHA224:224bit SHA256:256bit SHA384:384bit SHA512:512bitR

HASH ClockGateRegister(HSCG,0x20)

HSCGBASE + 0x0020
Bit313029282726252423222120191817161514131211109876543210
字段CLK_EN
RST00000000000000000000000000000000
位名称说明RW
31:0CLK_ENHASH时钟门控使能位 1:HASH时钟门控使能 0:HASH时钟门控不使能W