由于某些 ARM 內核的設計限制,部分 ARM 內核的某些 cache 操作、某些 CP15 寄存器讀寫操作,不能通過 JTAG 鏈完成操作。這種情況下, FoxICE 仿真器 會下載一段完成相應操作的指令序列到目標板的 RAM 中,并運行。下載地址即為用戶所指定的“ CP15 Access Address ”。
FoxICE 仿真器對這塊 RAM 的要求是:
• 長度至少 64 字節• 可讀寫 • 應用程序不能使用這塊 RAM • RDI 驅動缺省使用從 0x50 開始的 64 字節 RAM
如果調試以下這些 ARM 內核, Cache 已經打開,或調試器需要讀寫 CP15 寄存器,必須指定合理的“ CP15 Access Address ”:
CPU 類型
Cache 已經打開
讀寫 CP15 寄存器
ARM920T
√
ARM922T
ARM925T
ARM940T
ARM946
ARM966
ARM968
一般目標板在上電后, Flash 或 Boot ROM 是可以立即讀寫的;某些 ARM 內核的處理器,片內的 SRAM 也是可以立即讀寫的;但多數片外的 SRAM 、 SDRAM 等 RAM 則需要對相應的控制器進行初始化,然后才可正確讀寫。這些初始化操作,一般在 boot 代碼中完成。
如果用戶所調試的程序,將會在運行過程中打開 cache ,那么調試器連接目標板時,需要指定合適的“ CP15 Access Address ”。推薦用戶指定連接目標板時,就已經可讀寫的 RAM ;如果無法滿足,則可以指定在 cache 打開之前可用的 RAM ,即使這塊 RAM 在連接時還未初始化。
廣告服務 | 關于我們 | 網站地圖 | 分類索引 | 服務條款 | VIP會員服務 |《電氣自動化企業大全》| 版權聲明