仅对英特尔可见 — GUID: nik1412377944631
Ixiasoft
5.7. 与中断相关的寄存器
HMC控制器IP内核有三个与中断相关的寄存器。
- INTERRUPT_STATUS:寄存器位报告各个中断源状态。
- INTERRUPT_ENABLE:除非GLOBAL_INTERRUPT_ENABLE寄存器关闭此功能,否则寄存器位单独使能INTERRUPT_STATUS寄存器中的相应中断以触发IP内核csr_irq输出信号的置位。
- GLOBAL_INTERRUPT_ENABLE:寄存器允许禁用所有中断响应或使能INTERRUPT_ENABLE寄存器中所显示的中断源。
比特 | 字段名称 | 类型 | 复位值 | 说明 |
---|---|---|---|---|
31:16 | 保留 | RO | 0x0000 | |
15 | Response Queue Uncorrectable ECC Error | W1C | 0x0 | 如果IP内核在Response Queue存储器中检测到不可校正的ECC错误,就设置该比特。只有在参数编辑器中开启Enable M20K ECC support,IP内核才能检测到这样的错误。 |
14 | Response Queue ECC Error | W1C | 0x0 | 如果IP内核在Response Queue存储器中检测到可校正的ECC错误,就设置该比特。只有在参数编辑器中开启Enable M20K ECC support,IP内核才能检测到这样的错误。 |
13 | FERR_N | W1C | 0x0 | 如果HMC器件置位其有效低FERR_N管脚,则IP内核设置此比特。您必须将IP内核hmc_ferr_n输入信号连接到HMC器件FERR_N输出信号。 |
12 | Retry Buffer Uncorrectable ECC Error | W1C | 0X0 | 如果IP内核在Retry Buffer存储器中检测到不可校正的错误,就会设置该中断比特。只有在参数编辑器中开启Enable M20K ECC support,IP内核才能检测这样的错误。 |
11 | Retry Buffer ECC Error | W1C | 0x0 | 如果IP内核在Retry Buffer存储器中检测到可校正的ECC错误,就会设置该中断比特。IP内核自动校正这种情况下的ECC。只有在参数编辑器中开启Enable M20K ECC support,IP内核才可检测到这样的错误。 |
10 | 保留 | RO | 0x0 | |
9 | No More Tokens | W1C | 0X0 | 如果IP内核用完令牌,就设置此中断比特。令牌代表HMC器件中可用的缓冲空间。按照基于令牌流程控制要求,当IP内核无剩余令牌时,就不再发送请求。此情况不是一个错误,但会显示性能下降。然而,如其它中断比特一样,会导致IP内核置位csr_irq信号(假设已设置全局中断使能寄存器比特)。 当IP内核退出复位时,该比特的值为0。链路初始化后,HMC器件通过一个TRET数据包序列传达其缓冲器容量。IP内核接收到首个TRET数据包后,就开始更新No More Tokens寄存器字段。 |
8 | Retry Buffer Full | W1C | 0X0 | 如果Retry缓冲器已满时,IP内核就设置此中断比特。Retry缓冲器已满时,IP内核不会发送其他Read或Write请求。此情况不是一个错误,但会显示性能下降。 |
7 | 保留 | RO | 0x0 | |
6 | RX Error Response Overflow | W1C | 0X0 | 如果收到的Error Response数据包多于从ERROR_RESPONSE寄存器读取的,则IP内核设置该中断比特。如果出现上溢,则IP内核丢弃传入的Error Response数据包直到Error Response队列中的空间再次可用。 |
5 | RX Error Response | W1C | 0x0 | 如果IP内核接收到一个Error Response数据包,就设置此中断比特。 |
4 | Fatal Error | W1C | 0X0 | 如果IP内核连续三或更多次尝试失败,则设置此中断比特。 |
3 | Remote Error | W1C | 0X0 | 如果IP内核接收到一个有效IRTRY(StartRetry)序列,表示HMC器件检测到一个错误,则设置此中断比特。 |
2 | SEQ Error | W1C | 0X0 | 如果IP内核接收到一个SEQ字段值的数据包, 但不是之前所接收SEQ字段值+1增量数据包,则IP内核设置该中断比特。 |
1 | LNG/DLN Error | W1C | 0X0 | 如果IP内核接收到的数据包中LNG(包长度)和DLN(重复长度)字段的值不相等或无效,则IP内核设置此中断比特。 |
0 | CRC Error | W1C | 0x0 | 如果IP内核检测到其接收的数据包中CRC有错误,就将此中断比特值设置为1。 |
比特 | 字段名称 | 类型 | 复位值 | 说明 |
---|---|---|---|---|
31:16 | 保留 | RO | 0x0000 | |
15 | Response Queue Uncorrectable ECC Error Enable | RW | 0x0 | 使能Response Queue Uncorrectable ECC Error中断。 |
14 | Response Queue ECC Error Enable | RW | 0x0 | 使能Response Queue ECC Error中断 |
13 | FERR_N Enable | RW | 0x0 | 使能FERR_N中断。 |
12 | Retry Buffer Uncorrectable ECC Error Enable | RW | 0x0 | 使能Retry Buffer Uncorrectable ECC Error中断 |
11 | Retry Buffer ECC Error Enable | RW | 0x0 | 使能Retry Buffer ECC Error中断。 |
10 | 保留 | RO | 0x0 | |
9 | No More Tokens Enable | RW | 0x0 | 使能No More Tokens中断。 |
8 | Retry Buffer Full Enable | RW | 0x0 | 使能Retry Buffer Full中断。 |
7 | 保留 | RO | 0x0 | |
6 | RX Error Response Overflow Enable | RW | 0x0 | 使能RX Error Response Overflow中断。 |
5 | RX Error Response Enable | RW | 0x0 | 使能RX Error Response中断。 |
4 | Fatal Error Enable | RW | 0x0 | 使能Fatal Error中断。 |
3 | Remote Error Enable | RW | 0x0 | 使能Remote Error中断。 |
2 | SEQ Error Enable | RW | 0x0 | 使能SEQ Error中断。 |
1 | LNG/DLN Error Enable | RW | 0x0 | 使能LNG/DLN Error中断。 |
0 | CRC Error Enable | RW | 0x0 | 使能CRC Error中断。 |
比特 | 字段名称 | 类型 | 复位值 | 说明 |
---|---|---|---|---|
31:1 | 保留 | RO | 0x00000000 | |
0 | GlobalEnable | RW | 0x0 | 写值0到该寄存器字段禁用因置位csr_irq输出信号而来的所有中断源。 写值1到该寄存器字段允许IP内核按照位于偏移0x24的INTERRUPT_ENABLE寄存器中已使能中断源来置位csr_irq输出信号。仅当GlobalEnable寄存器字段和相关INTERRUPT_ENABLE寄存器字段的值都为1时,中断源才会引起IP内核置位csr_irq输出信号。 |