AFEx3004W 提供了一項功能,可在 FAULT-DUMP 位觸發(fā)時或映射到故障轉儲的 GPIO(如表 6-19 所示)時將幾個寄存器內容保存到 NVM 中。此功能在系統(tǒng)級故障管理中非常有用,可用于捕獲就在故障觸發(fā)之前的器件或系統(tǒng)狀態(tài),以便在故障發(fā)生后進行診斷。故障轉儲觸發(fā)時保存的寄存器為:
- CMP-STATUS[7:0]
- DAC-0-DATA[15:8]
- DAC-1-DATA[15:8]
- DAC-2-DATA[15:8]
- DAC-3-DATA[15:8]
- ADC-DATA [15:0]
注: 在故障轉儲期間,數(shù)據(jù)中的任何更改都會破壞最終結果。確保比較器和 DAC 代碼在 NVM 寫入周期期間保持穩(wěn)定。
表 6-6 展示了 NVM 中寄存器的存儲格式。
表 6-6 故障轉儲 NVM 存儲格式
| NVM 行 |
B31-B24 |
B23-B16 |
B15-B8 |
B7-B0 |
| Row1 |
CMP-STATUS[7:0] |
ADC-DATA[15:0] |
無關 |
| 行 2 |
DAC-0-DATA[15:8] |
DAC-1-DATA[15:8] |
DAC-2-DATA[15:8] |
DAC-3-DATA[15:8] |
故障轉儲后在 NVM 中捕獲的數(shù)據(jù)可按特定順序讀?。?ol class="ol" id="GUID-3D43E9B3-BB5E-459C-B0B4-8F74792574B9">
將 COMMON-CONFIG 寄存器中的 EE-READ-ADDR 位設置為 0b,以選擇 NVM 的行 1。通過向 COMMON-TRIGGER 寄存器中的 READ-ONE-TRIG 寫入 1 來觸發(fā)所選 NVM 行的讀取;該位會自動復位。此操作會將數(shù)據(jù)從選定的 NVM 行復制到 SRAM 地址 0x9D(LSB 16 位來自 NVM)和 0x9E(MSB 16 位來自 NVM)。要讀取 SRAM 數(shù)據(jù),需按照以下步驟操作:- 將 0x009D 寫入 SRAM-CONFIG 寄存器。
- 從 SRAM-DATA 寄存器中讀取數(shù)據(jù)以獲得 LSB 16 位。
- 將 0x009E 寫入 SRAM-CONFIG 寄存器。
- 再次從 SRAM-DATA 寄存器讀取數(shù)據(jù)以獲得 MSB 位。
將 COMMON-CONFIG 寄存器中的 EE-READ-ADDR 位設置為 1b,以選擇 NVM 的行 2。重復步驟 2 和 3。