新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ARM與不同位寬存儲器的地址線錯位接口

        ARM與不同位寬存儲器的地址線錯位接口

        作者: 時間:2016-11-24 來源:網絡 收藏

        這種操作也符合使用8位單片機時候的習慣,WR扮演了“寫”的角色。

        下面是32位寬的存儲器組連接8位的存儲器芯片,很顯然這里RBLE位應該為0。
        網友wag提出這樣的問題,能否用ARM的WE引腳直接連接到存儲器芯片的WE引腳。有這樣的問題可能是源于以前的習慣,也可能是不清楚RBLE位為0時,寫訪問期間BLS[3:0]引腳的狀態。
        LPC2210/2220 User Manual 上面介紹了RBLE=0的時候的讀寫情況。EMC的WE信號沒有被使用。在寫周期,BLS[3:0]拉低,將數據送到要寫入的地址。對于讀周期,BLS[3:0]拉高。
        網友sky421提到“我用的是2214,接一片8位的RAM,寫的時候WE腳不會有變化,BLS0在變化”
        我個人理解,如果RBLE=0,BLS引腳就取代了WR的功能,WR腳就不可以使用了。
        有心的朋友可以用邏輯分析儀測一下,實際情況如何,驗證一把。

        總結,當RBLE=1,WR 有效,BLS充當字節選擇,其隨WR,OE的變化而變化,讀、寫操作時 BLS都是低電平,此時用于有字節選擇的外部設備。

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

        當RBLE=0,WR無效,此時用于無字節選擇的外部設備,BLS可以充當WR信號,而WR 無效。

        不是ARM9 S3C2440的,但是有相似之處!

        存儲器映射:
        0-1G(0x0000,0000 - 0x3fff,ffff):片內Flash.
        1-2G(0x4000,0000 - 0x7fff,ffff):片內RAM.
        2-3.5G(0x8000,0000 - 0xbfff,ffff - 0xdfff,ffff):片外存儲器。
        3.5G - 3.75G(0xe000,0000 - 0xefff,ffff): VPB外設。
        3.75G - 4G(0xf000,0000 - 0xffff,ffff): AHB外設。
        雖然ARM7的尋址空間為4G,但是LPC2200系列只提供A0~A23總共16M的地址。片選信號CS0 - CS3是A24和A25的譯碼輸出,將片外存儲區0x8000,0000 - 0x83ff,ffff劃分為bank0 - bank3,共16M*4=64M.這4個bank可以被分別配置為8/16/32位總線寬度。復位時,bank0的總線寬度由Boot1:0引腳決定, bank1為32位,bank2為16位,bank3為8位。
        字節定位信號(BLS0 - BLS3)協調總線寬度和外存芯片數據線寬度。
        當Memory由“字節寬度器件”(如62256)或者“未按照字節區分的多字節器件”組成時,應將RBLE設置為"0"。此時,讀訪問時EMC將BLS0~BLS3拉高。
        當Memory由“含有字節選擇輸入的16位或32位器件”組成時,應將RBLE設置為"1"。此時,讀訪問時EMC將BLS0~BLS3拉低。
        所以,當Memory由62256組成時,由于不需要“片內字節選擇輸入”,故令RBLE = 0,則BLS0~BLS3只會與nWR同步,可以代替nWR使用。
        但是,當Memory由IS61LV25616AL組成時,由于該芯片有"nLB"和"nUB"控制低/高8位的輸入,故令RBLE = 1,則BLS0~BLS3與nRD和nWR都會同步,此時,不可以使用BLS0~BLS3代替nWR信號。
        地址數據總線:D0 - D31, A0 - A23, OE, WE, CS0 - CS3, BLS0 - BLS3
        啟動后由P2.7/P2.6控制引導方式,然后由程序設置MEMMAP決定中斷向量的映射。
        BCFG0 - BCFG3控制讀寫延時和總線寬度。注意復位后的默認值。
        PINSEL2控制引腳功能。
        Boot Block
        LPC2114/2214的BootBlock被固化在最高的Flash塊中,運行時被映射到0x7FFF,E000 - 0x7FFFF,FFFF的區域。而LPC2210沒有片內Flash,但它有8K片內ROM存儲了BootBlock,也被映射到0x7FFF,E000處。


        上一頁 1 2 下一頁

        關鍵詞: ARM位寬存儲器地址線錯位接

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 交城县| 乳源| 霍山县| 武威市| 霸州市| 沁源县| 城口县| 阜平县| 固始县| 涟水县| 英山县| 马山县| 离岛区| 大城县| 印江| 瓦房店市| 奉节县| 监利县| 东平县| 长岛县| 新巴尔虎左旗| 拉萨市| 习水县| 会理县| 建宁县| 平乡县| 察雅县| 吉林市| 平昌县| 长宁区| 和顺县| 喜德县| 白城市| 卢氏县| 天气| 上虞市| 上思县| 板桥市| 新巴尔虎右旗| 新乐市| 宁安市|