USER GUIDE / SECURITY / SC HASH / REGISTER DESCRIPTION
寄存器描述
HASH CtrlRegister(HSCR,0x00)
HSCRBASE + 0x0000
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:28 | PS | 页面大小,不要设置这些位,保持默认值 0:不关心 1:1KB 2:2KB 3:4KB(默认) 4:8KB 5:16 KB | RW |
| 27:9 | Reserved | 写入无影响,读取为零。 | R |
| 8 | DORVS | 输出数据类型:小端模式或大端模式 假设输出数据为odata[31:0] 0:结果是odata[31:0] 1:结果是 {odata[7:0],odata[15:8],odata[23:16],odata[31:24]} 在MD5模式中,该位应该在数据输入前置为1 | RW |
| 7 | DIRVS | 输入数据类型: 小端模式或大端模式 假设输入数据为idata[31:0] 0:结果是idata[31:0] 1:结果是{idata[7:0],idata[15:8],idata[23:16],idata[31:24]} 在SHA模式中,该位应该在数据输入前置1 | RW |
| 6 | DMAS | DMA开启位 该位会被硬件自动清零,并且读为0。 | RWS |
| 5 | DMAE | DMA的使能位 1:DMA使能 0:DMA不使能 | RW |
| 4 | INIT | 初始化模块为新的一轮:HASH算法的初始化。 该位会被硬件自动 清零,并且读为0。 注意:只有当HASH新的一轮开始时,该位置1 | RWS |
| 3:1 | SEL | Hash算法的选择 | RW |
| 0 | EN | Hash 使能位: 1:Hash使能 0:Hash不使能 | RW |
HASH StatusRegister (HSSR,0x04)
HSSRBASE + 0x0004
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:2 | Reserved | 写入无影响,读取为零。 | R |
| 1 | MRD | HASH的多轮算法结束:HSDO数据有效 MRD仅用于DMA读访问 置1清零 | RWC |
| 0 | ORD | HASH的一轮算法结束:HSDO数据有效 正常情况下,ORD用于CPU读访问 置1清零 | RWC |
HASH InterruptEnableRegister(HSINTEN,0x08)
HSINTENBASE + 0x0008
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:2 | Reserved | 写入无影响,读取为零。 | R |
| 1 | MR_INT_EN | MRD的中断使能位 1:中断使能 0:中断屏蔽(默认) | RW |
| 0 | OR_INT_EN | ORD的中断使能位 1: 中断使能 0:中断屏蔽(默认) | RW |
HASH DMASourceAddress (HSSA,0x0C)
HSSABASE + 0x000C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | SA | 单次DMA传输使用的源物理地址 注意:访问物理地址时是字对齐的访问 | RW |
HASH Transfer Count (HSTC,0x10)
HSTCBASE + 0x0010
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | TC | 单次DMA传输字数,表明在当前SA下传输多少words | RW |
HASH BlockNumber (HSBNUM,0x14)
HSBNUMBASE + 0x0014
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | BNUM | DMA模式传输总block量:Block的数量(1Block== 512bit) 注:无论是使用哪种算法模式,DMA模式下BNUM数量配置为n 则计算 n 个 512bit 数据。 如果使用 SHA384/SHA512(本身为 1024bit计算一次),BNUM需配置为2,4,6,8..... | RW |
HASH DataInputRegister (HSDI,0x18)
HSDIBASE + 0x0018
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DIN | 输入的数据:只支持字的写访问 | W |
HASH DataOutput Register (HSDO,0x1C)
HSDOBASE + 0x001C
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | DOUT | 输出的数据:只支持字的读访问 MD5:128bit SH1:160bit SHA224:224bit SHA256:256bit SHA384:384bit SHA512:512bit | R |
HASH ClockGateRegister(HSCG,0x20)
HSCGBASE + 0x0020
| 位 | 名称 | 说明 | RW |
|---|---|---|---|
| 31:0 | CLK_EN | HASH时钟门控使能位 1:HASH时钟门控使能 0:HASH时钟门控不使能 | W |