娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年04月07日(星期一)

2020年04月07日 | (嵌入式)關于arm中的存儲控制器(一)

發布者:PositiveEnergy 來源: eefocus關鍵字:嵌入式  arm  存儲控制器 手機看文章 掃描二維碼
隨時隨地手機看文章

實驗目的:

由于開發板(JZ2440 V3)上電后從Nand flash啟動CPU時,CPU會通過內部的硬件將Nand flash的前4K數據復制到稱為“Steppingstone”的4K內部SRAM中(起始地址為0),然后跳到地址0開始執行。


這個實驗我們先用匯編語言設置好S3C2440芯片內部的存儲控制器,使外接的SDRAM可以操作使用:然后把程序本身從“Steppingstone”(即芯片內部的4K SRAM)復制到SDRAM處,最后跳到SDRAM中執行。


知識預備:

存儲控制器(memory controller):它為CPU提供了訪問外部設備所需的信號,這是一種通過總線方式來訪問拓展的外設,在嵌入式中,這些拓展的外設可能不僅僅是內存,也包括網卡、Nor flash、Nand flash等等。(這里我們可以把它想像成是CPU與拓展外設溝通的橋梁?。?p>

S3C2440芯片對外引出了27根地址線ADDR0~ADDR26,那么它的訪問范圍即2^7*2^20=128MB。但是這個芯片可以達到1GB的訪問空間,怎么達到的?因為CPU還對外引出了8根片選信號:nGCS0~nGCS7,對應于BANK0~BANK7。當訪問BANKx的地址空間時,nGCSx引腳輸出低電平用來選中外界的設備,故:這個芯片最多8個拓展外設,因為只有8個bank,想用相應的外設直接讓相應的nGCSx輸出低電平即可   ^~^   看來也不是很難,就是這么個理。


那么問題來了,如果我們想通過CPU訪問一個芯片需要哪些條件呢?

1.地址線(我們需要知道芯片的訪問地址)

2.數據線(我們需要知道一次傳輸多少數據,8bit/16bit/32bit 即我們常說的數據寬度)

3.時鐘/頻率(我們需要CPU與外設約定好傳輸的速率,不能太快,不能太慢,必須能滿足雙方的要求)

4.芯片相關的一些要求(比如說我們這里是訪問SDRAM,那么就得知道它的行地址,列地址,哪個l_bank,這樣我們就可以具體確定訪問芯片的哪個存儲單元了)


現在我們實驗的是通過CPU訪問SDRAM,那么我們就大概的想象一下,我們可以大致的分為4個步驟:

①CPU發出的片選信號nGCS6有效,它選中SDRAM芯片。(從V3原理圖可得)

②SDRAM中有4個L-Bank,需要兩根地址信號線選中哪一個L-Bank。(從V3原理圖我們可以知道 CPU的ADDR24、ADDR25作為L-Bank的選擇信號)

③對SDRAM進行統一的 行/列 尋址。(這樣我們就可以確定具體訪問芯片內部哪一個存儲單元了)

④找到存儲單元后,就要對SDRAM進行數據傳輸了。(這里我們就需要知道數據寬度等等)


如果你開始沒有了解過SDRAM,也許上面這四個步驟你有些不大明白,沒關系啊,現在我就來穿插一下,大概的說一下這個SDRAM內部的存儲結構到底是個什么鬼:

(這里你可以先天馬行空一下,你眼前現在應該浮現出一個長方體的蛋糕,然后你拿刀切切切,切成四塊,一塊你給它想成是一個面,然后一個面你就給它看成是Excel表格)

SDRAM的內部是一個個存儲陣列,陣列就如同表格一樣,將數據“填”進去。和表格的檢索原理一樣,先指定一個行(Row)和一個列(Column),就可以準確的找到所需要的單元格,這就是SDRAM尋址的基本原理,這個單元格被稱為存儲單元,這個表格(存儲陣列)就是邏輯Bank(Logical Bank,簡稱L-Bank)。SDRAM一般分為4個L-Bank。PS:這回上面的那4個步驟你就應該明白了,接下來我們就看看具體怎么操作。


對于①,我就不廢話了。

對于②,[ADDR25:ADDR24]=0b00/0b01/0b10/0b11,就正好對應四個L-Bank了。

對于③,(這個我們就得SDRAM的芯片手冊和原理圖結合看一下了)根據SDRAM的列地址線數目設置CPU相關的寄存器后,CPU就會從32位的地址中自動分出L-Bank選擇信號、行地址信號、列地址信號,然后先后發出行地址信號,列地址信號。L-Bank選擇信號在發出行地址信號的同時發出,并維持到列地址信號結束。


在我們這個實驗中,行地址、列地址共用ADDR2~ADDR14,然后使用nSRAS、nSCAS來區分它們(Bank6的位寬是32,也就是CPU訪問SDRAM,一次訪問4個字節。而CPU的單位是Byte,eg:CPU內存地址0x00000000、0x00000001、0x00000002、0x00000003其實訪問的都是SDRAM的0x00000000,即CPU真正有效的地址位是從ADDR2開始的,所以ADDR0和ADDR1沒用)。


通過原理圖我們可以看出,這個開發板的兩根地址線ADDR24、ADDR25作為L-Bank的選擇信號,行地址數為13,列地址數為9。當nSRAS信號有效時,ADDR2~ADDR14發出的是行地址信號,它對應32bit地址空間的bit[23:11]。當nSCAS信號有效時,ADDR2~ADDR14發出的是列地址信號,它對應32bit地址空間的bit[10:2]。ADDR0、ADDR1恒為0,不參與譯碼。


這個圖是SDRAM芯片手冊上的

所以此時訪問SDRAM的內存地址范圍為 0x30000000~0x30000000+0x03FFFFFF 即 0x30000000~0x33FFFFFF。


共64MB。為什么是64MB? (2^13*2^9*4)*32bit/8 = 2^26 Byte=64MB


對于④,看開發板原理圖可以得到,我們使用了倆片16位的SDRAM芯片并聯組成32位的位寬,與CPU的32根數據線(DATA0~DATA31)相連。

完成這個實驗的預備知識就還剩最后一個問題了,大家想一下,我們通過CPU訪問SDRAM,上面我們已經把關于SDRAM部分的操作說完了,接下來自然而然就剩下那個“橋梁”————配置CPU內部的存儲控制器。


怎么配置?很簡單,就是往一堆寄存器里寫我們需要的配置就好。而通過S3C2440芯片手冊我們可以了解到,CPU內部存儲控制器相關寄存器地址為0x48000000~0x48000030(一共13個)。


接下來就是講我們這個實驗里需要用到的寄存器以及相關配置了:

嗯哦哼  哼哦啊  啊哈吼……………………想了想,相應寄存器我也要詳細了解了解,仔細的學習學習。所以我就單另放在我的下一篇博客了。


仁者見仁,智者見智。同一個問題不同的人就會有不同的看法,適合自己的就是最好的 !

關鍵字:嵌入式  arm  存儲控制器 引用地址:(嵌入式)關于arm中的存儲控制器(一)

上一篇:存儲控制器和SDRAM 實驗
下一篇:SDRAM-MEMORY CONTROLLER

推薦閱讀

暴風TV在北京正式發布40吋暴風AI電視4,定價僅為999元,據AVC奧維云網數據顯示:40吋互聯網電視銷量同期提升1.5%,市場占有率提升10.8%;同時,32吋銷量下滑2.4%,市場占有率下降15.5%。暴風AI電視4(40X)配備40吋1080P全高清大屏,超窄邊框搭配暮光黑配色;對比普通40吋電視,暴風AI電視4(40X)擁有暴風左眼引擎技術,支持逐幀像素級修復,清晰度得到提...
古往今來,人類聰明才智的結晶,總是被優先用于軍事領域,以提高殺人效率。 上世紀70年代以來,幾乎所有高新技術,譬如、微、精確制導、電子對抗、推進技術,以及生物材料、納米技術等等,無不優先用于軍事,今天深度侵入我們日常生活的互聯網,一開始就是美國軍方的通訊技術。 但是像美國這樣的軍事強國,除了軍事科技全球首屈一指,每場戰爭勝算極大...
新型冠狀病毒的大爆發,美國各地的醫院正面臨著醫療設備短缺問題。 近日,特斯拉首席執行官埃隆·馬斯克(Elon Musk)表示,特斯拉紐約工廠正在“盡可能快地”制造呼吸機。不過,隨后紐約州州長安德魯·科莫(Andrew Cuomo)的一名助手說,特斯拉正在制造呼吸機的部分組件,并仍在努力提高產量。 前不久,馬斯克為應對新型冠狀病毒疫情爆發而免費提供了 ...
近日,通富微電、長電科技、華天科技、晶方科技等封測大廠,紛紛披露了公司產能情況。通富微電在4月6日表示,公司主營業務集成電路封裝測試,今年一季度,公司產能繼續維持2020年四季度出現的供不應求的局面。此外,通富微電表示,目前,半導體封測產能出現了長時間供不應求的局面,公司可利用這個時機同客戶一起溝通、協商,調整成本結構和價格,提升產能...

史海拾趣

問答坊 | AI 解惑

TI元件的PROTEL99SE封裝庫

TI元件的PROTEL99SE封裝庫…

查看全部問答∨

80C51上電復位和復位延時的時序分析

80C51單片機的上電復位POR(Power On       Reset)實質上就是上電延時復位,也就是在上電延時期間把單片機鎖定在復位狀態上。為什么在每次單片機接通電源時,都需要加入一定的延遲時間呢?分析如下。   & ...…

查看全部問答∨

郭天祥單片機視頻教程

這是里面的原理圖和主要內容,視頻有5G傳不了…

查看全部問答∨

一簇控制線如何做跨時鐘域轉化呢?

前提:控制線間是同步且有時序關系在FPGA內部如何做跨時鐘域轉化?如果控制線來自片外,且需要將其約束在IOB中,此時入口打拍時鐘應該用哪一個?片外的控制線同步時鐘(已引入片內)還是跨時鐘域后的時鐘?對這個問題理解得不甚清楚,望各位指教一 ...…

查看全部問答∨

我在編譯usb源程序是出現頭文件的問題!急呀!問題沒有解決

我配置是把頭文件包含vc++6.0中,確定無誤 可出現頭文件中出錯如下: c:\\program files\\microsoft visual studio\\vc98\\include\\vdw.h(37) : fatal error C1189: #error :  NTVERSION symbol must be defined to one of the followin ...…

查看全部問答∨

2011電設大賽~~之~~賽前最后的準備

本帖最后由 paulhyde 于 2014-9-15 08:57 編輯 馬上就要開始四天三夜的 比賽了~~大家準備的怎么樣了~~交流下感想哈~~  …

查看全部問答∨

【信號處理】:FPGA在雷達信號處理中的應用及誤差分析

<IMG src="file:///C:/Documents%20and%20Settings/Administrator.LENOVO-00F49132/Application%20Data/Fetion/temp/825cdc0cd1938177b9a367b812d86f60.png">…

查看全部問答∨

CCS5.1.1.00031_win32能不能裝64位的電腦上的?

德州儀器要在我校開免費送launchpad的揭牌儀式,老師把這個軟件給我讓我讓同學回去裝(CCS5.1.1.00031_win32),但是我們現在電腦大多數win64位的,軟件肯定能裝成功,但是想問下到時候連launchpad會不會驅動程序錯誤啊,有沒有64位的ccs軟件,可以 ...…

查看全部問答∨

pci封裝

需要一個5v,32位的pci金手指封裝,畫的太麻煩,想下載一個,逛了一圈,沒有找到,請教各位,哪里有?。俊?

查看全部問答∨

《電子設計從零開始》

這是一本電子設計的入門級圖書,雖然不能說靠這本書就可以學會數電模電能靈活運用單片機。但對接下來的方向有了一個大致的掌握,知道接下來的路該如何去走,或許這才是這本書的價值所在吧。 總的說,這書不錯,起碼不枯燥,而這對技術類書籍是很 ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 建平县| 砀山县| 遵化市| 通化县| 尉犁县| 铁岭市| 杭州市| 德格县| 紫金县| 苍山县| 阿合奇县| 遂溪县| 沁阳市| 义乌市| 湖口县| 宁阳县| 凤城市| 平武县| 远安县| 凉城县| 巴彦淖尔市| 宣恩县| 滦平县| 莎车县| 九台市| 额济纳旗| 广州市| 小金县| 阳江市| 柳江县| 华容县| 尉氏县| 汶川县| 兴国县| 彭阳县| 兰考县| 巴里| 灌云县| 林甸县| 航空| 石渠县|