原子操作控制(ATOMCTL)暫存器¶
我們有原子操作控制(ATOMCTL)暫存器。該暫存器決定了在使用 S32C1I 指令時,在各種組合情況下的影響:
無論有無可以進行內部原子事務的相干快取控制器。
無論有無可以自行進行原子事務的智慧記憶體控制器。
對於三種類型的快取操作,Core 以預設值啟動。
0x28: (WB: Internal, WT: Internal, BY:Exception)
在 FPGA 卡上,我們通常模擬一個可以實現 RCW 事務的智慧記憶體控制器。 對於帶有外部記憶體控制器的 FPGA 卡,我們在執行快取(WB)事務時,讓它在內部執行原子操作,並使用記憶體 RCW 進行非快取操作。
對於沒有相干快取控制器的系統(非 MX),我們總是使用記憶體控制器的 RCW,儘管非 MX 控制器可能支援內部操作。
- 客戶警告
幾乎所有客戶都從不支援原子 RCW 記憶體事務的供應商處購買其記憶體控制器,並且可能希望將此暫存器配置為不使用 RCW。
在繞過快取進行測試時(例如,研究快取別名問題),開發人員可能會發現使用旁路模式下的 RCW 很方便。
參見 ISA 的第 4.3.12.4 節;位
WB WT BY
5 4 | 3 2 | 1 0
2 位 |
|||
|---|---|---|---|
欄位 |
|||
值 |
WB - 寫回 |
WT - 寫通 |
BY - 旁路 |
0 |
例外 |
例外 |
例外 |
1 |
RCW 事務 |
RCW 事務 |
RCW 事務 |
2 |
內部操作 |
內部操作 |
保留 |
3 |
保留 |
保留 |
保留 |