<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > [ARM筆記](méi)存儲控制器及其訪(fǎng)問(wèn)外設的原理

[ARM筆記](méi)存儲控制器及其訪(fǎng)問(wèn)外設的原理

作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò ) 收藏

  1. S3C2410/S3C2440地地址空間

本文引用地址:http://dyxdggzs.com/article/201611/340831.htm

  S3C2410/S3C2440對外引出的27根地址線(xiàn)ADDR0~ADDR26的訪(fǎng)問(wèn)范圍只有128MB,那么是如何達到1GB的空間的呢?CPU對外還引出了8根片選信號nGCS0~nGCS7,對應于BANK0~BANK7,當訪(fǎng)問(wèn)BANKx的地址空間時(shí),nGCSx引腳輸出低電平用來(lái)選中外接的設備。這樣,每個(gè)nGCSx對應128MB的地址空間,8個(gè)nGCSx信號總共就對應了1GB的地址空間。這8個(gè)BANK的地址空間如:http://weimenlove.blog.163.com/blog/static/17775473201101013847857/

  S3C2410/S3C2440作為32位的CPU,可以使用的地址范圍理論上可達到4GB。除去上述用于連接外設的1GB的地址空間外,還有一部分是CPU內部寄存器的地址,剩下的地址空間沒(méi)有使用。注意:這里的地址指的是物理地址。

  2. 與外設的關(guān)系

  所以要確定一個(gè)器件的地址,首先看它位于哪個(gè)Bank區,再看它連在A(yíng)ddr[26:0]地址線(xiàn)所確定的地址,將該區的起始值和它的地址線(xiàn)地址相加即得該器件的地址。

    

 

  BANK0~BANK5的連接方式類(lèi)似,BANK6連接SDRAM時(shí)復雜一點(diǎn),CPU提供了一組用于SDRAM的信號。

  1) SDRAM時(shí)鐘有效信號SCLK;

  2) SDRAM時(shí)鐘信號SCLK0/SCLK1;

  3) 數據掩碼信號DQM0/DQM1/DQM2/DQM3;

  4) SDRAM片選信號nSCS0(它與nGCS6是同一引腳的兩個(gè)功能);

  5) SDRAM行地址選通脈沖信號nSRAS;

  6) SDRAM列地址選通脈沖信號nSCAS;

  7) 寫(xiě)允許信號nWE(它不是專(zhuān)用于SDRAM)。

  SDRAM的內部是一個(gè)存儲陣列,陣列就如同表格一樣,將數據“填”進(jìn)去。和表格的檢索原理一樣,先指定一個(gè)行(Row),再指定一個(gè)列(Column),就可以準確地找到所需要的單元格,這就是SDRAM尋址的基本原理。這個(gè)單元格被稱(chēng)為存儲單元,這個(gè)表格(存儲陣列)就是邏輯Bank(Logic Bank,下文簡(jiǎn)稱(chēng)L-Bank),SDRAM一般含有4個(gè)L-Bank。

  可以想象,對SDRAM的訪(fǎng)問(wèn)可以分為如下4個(gè)步驟:

  1)CPU發(fā)出的片選信號nSCS0有效,它選中SDRAM芯片。

  2)SDRAM中有4個(gè)L-Bank,需要兩根地址信號來(lái)選中其中一個(gè),如圖中所示的是用ADD24、ADD25作為L(cháng)-Bank的片選信號。

  3)對被選中的芯片進(jìn)行統一的行/列(存儲單元)尋址。

  根據SDRAM芯片的列地址線(xiàn)數目設置CPU的相關(guān)寄存器后,CPU就會(huì )從32位的地址中自動(dòng)分出L-Bank選擇信號、行址址信號、列地址信號,然后先后發(fā)出行地址信號、列地址信號。L-Bank選擇信號在發(fā)出行地址信號的同時(shí)發(fā)出,并維持到列地址信號結束。

  在圖中,行地址、列地址共用地址線(xiàn)ADD2~ADD14(BANK6的位寬為32,ADDR0/1沒(méi)有使用),使用nSRAS、nSCAS兩個(gè)信號來(lái)區分它們。如上圖中,使用兩根地址線(xiàn)Addr24、Addr25作為L(cháng)-Bank的選擇信號;HY57V561620使用13根行地址,9根列地址,所以當nSRAS信號有效時(shí),ADDR2~ADDR14上發(fā)出的是行地址信號,它對應32位地址空間的bit[23:11];當nSCAS信號有效時(shí),ADDR2~ADDR10上發(fā)出的是列地址信號,它對應32位地址空間的bit[10:2];由于Bank6以32位的寬度外接SDRAM,ADDR0、ADDR1恒為0,不參與譯碼。

  又因為Bank6的起始地址為0x3000_0000,所以SDRAM的訪(fǎng)問(wèn)地址為0x3000_0000~0x33ff_ffff,共64MB(2片*(4*Bank*2^22)*16bit)。



關(guān)鍵詞: ARM 存儲控制器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>