新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 深入理解ARM體系架構(S3C6410)---S3C6410存儲映射

        深入理解ARM體系架構(S3C6410)---S3C6410存儲映射

        作者: 時間:2016-11-09 來源:網絡 收藏
        S3C6410的物理內存分成Memory和Pheriperal兩部分,地址范圍分別為0x0~0x6fffffff和0x7fffffff~0xffffffff。系統通過 SPINE總線訪問Memory空間,通過PERI總線訪問Pheriperal空間。而為了適應不同外設的訪問速度,又分別通過AHB總線訪問LCD、 Camera、Accelerator等高速外設,通過APB總線訪問iic、watchdog等低速外設。

        本文引用地址:http://www.104case.com/article/201611/317823.htm

        Memory:

        (1)啟動鏡像區物理地址為0x00000000~0x07ffffff,共128MB,是用來啟動系統的。但是這個范圍內并沒有實際的存儲介質與之對應,只能在通過OM[4:0]選擇具體的啟動介質后再把相應介質的物理地址映射到這個啟動區,比如說選擇了IROM 啟動方式后,就把IROM所占的地址空間映射為0x00000000開始的空間。引導鏡像區反映一個鏡像,這個鏡像指向內存的一部分區域或者靜態存儲區。引導鏡像的開始地址是0x0000_0000。

        (2)內部內存區物理地址為0x08000000~0x0fffffff,共128MB。這個區域對應著內部的內存地址,內部的ROM和SRAM都是分布在這個區間。其中,0x08000000~0x0bffffff對應著內部ROM,當然實際上內部的ROM也并沒有64MB這么多,只有32KB是有實際存儲介質的,這32KB是一個只讀區,放的是IROM方式下的啟動代碼,選擇IROM啟動的時候首先運行的代碼就是這一部分,稱為BL0,這部分代碼由廠家固化。0x0c000000~0x0fffffff對應內部SRAM,可讀可寫,當NAND 閃存啟動被選擇時能映射到引導鏡像區。

        (3)靜態內存區物理地址為0x10000000~0x3fffffff,共6*128MB。這個區域用于訪問掛在外部總線上的設備,比如說SRAM、NOR flash、oneNand等。這個區域被分割為6個bank,每個bank為128MB,數據寬度最大支持16bit,每個bank通過 Xm0CS[5:0]來劃定。和S3C2410 不一樣的是,bank2~bank5能映射到nand flash、CF等非線性存儲器,這并不是說可以通過bank2~bank5的地址段就能直接訪問nand flash、CF內部的地址,相反,當映射到這些器件的時候這些bank的地址也不能再使用了,訪問這些非線性存儲器還是得通過Pheriperal空間的AHB總線進行,和S3C2410中的訪問方式是一樣的。不過有一個特例是,當Xm0CS2被映射到nand flash的時候,Steppingstone的SRAM被映射到bank2開始的4KB,而在以nand flash方式啟動的時候bank2被映射到0x00000000開始的地方,實際上就是把Steppingstone映射到0x0000000了,這和 S3C2410的情況還是相似的。

        (4)動態內存區物理地址為0x40000000~0x6fffffff,共3*256MB。其中第一個256MB為保留區,實際使用的動態內存區為 0x50000000~0x6fffffff,又分為2個區間,分別占256MB,可以通過DMC的Xm1CS[1:0]來進行著2個區間的選擇。這個內存區主要是擴展DRAM,最大可以擴展512MB的DRAM。

        2.Pheriperal外設區域通過PERI 總線被訪問,它的地址范圍是0x7000_0000~0x7FFF_FFFF。這個地址范圍的所有的SFR能被訪問。而且如果數據需要從NFCON或CFCON 傳輸,這些數據需要通過PERI總線傳輸。

        特殊設備地址空間:

        AHB總線存儲器映射




        評論


        技術專區

        關閉
        主站蜘蛛池模板: 广昌县| 周至县| 上杭县| 高清| 同仁县| 桑植县| 新昌县| 甘谷县| 柏乡县| 梅河口市| 沅江市| 从化市| 安龙县| 鹤庆县| 绥阳县| 合江县| 桂阳县| 余江县| 登封市| 吴江市| 磐安县| 敦煌市| 米泉市| 稻城县| 桂平市| 浑源县| 高陵县| 慈溪市| 读书| 定安县| 壶关县| 蕉岭县| 榆社县| 民县| 镇远县| 靖远县| 阿鲁科尔沁旗| 澎湖县| 兴海县| 尉犁县| 襄汾县|