|
附件的代碼是在廣嵌的GEC2410V1.1上調試通過的。主要程序說明:1、MMUGEN.C,根據MMU.DEF產生TTB數據2、MMU.C,完成MMU的初始化3、SWI.S,SWIC.C,方便的添加SWI功能。4、LED_C.C:跑馬燈程序。5、KeyScan.c,按鍵處理程序。6、ULINK2.INI,少了這個初始化文件,MDK不能把FLASH燒寫算法加載到SDRAM.7、RUNINRAM.SCT,分散鏈接加載文件。 1、使能ICACHE時,速度快N1倍
2、使能DCACHE時,速度快N2倍
3、MMU禁止時,ICACHE可以使能,此時全部地址都有ICACHE功能。
4、MMU禁止時,DCACHE不可以使能,全部地址都沒有DCACHE.
5、MMU使能時,ICACHE,DCACHE根據CP15的C,B使能位和描述符中的C,B位確定。
6、對于必須嚴格按照程序的順序執行的地址(如I/O),不能用CACHE和WRITE BUFFER,否則產生時序錯亂。TLB:
1、TLB包含的信息有:1)虛擬頁號 2)物理頁號 3)頁SIZE(1K,4K,16K,64K,1M),頁訪問屬性,4)TLB有效位
2、當(AP0,AP1,AP2,AP3)不完全一致時,只有當前選中的一個子頁被填入TLB,分別為1K(1/4小頁)或16K(1/4大頁)。
3、當(AP0,AP1,AP2,AP3)完全一致時,整個大頁(64K)或整個小頁(4K)被填入TLB
4、當TTB的內容改變時,必須要清除相應的TLB項,以保證新的TTB項能被填入TLB.
5、MMU直接從C2對應的物理基地址去讀取TTB的描述符,不會經過VA-PA轉換,也就不會用到CACHE中的數據,所以如果程序需要改變TTB的內容,
TTB相關地址不能設置成WRITE-BACK,只能使用WRITE-THROUGH,保證TTB的內容能實時更新。 |
-
-
GEC2410_EINT.rar
2010-10-26 17:40 上傳
點擊文件名下載附件
下載積分: 積分 -1
369.92 KB, 下載積分: 積分 -1
|