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

歷史上的今天

今天是:2025年03月06日(星期四)

正在發生

2020年03月06日 | 【ARM裸板】內存控制器、SDRAM基礎與代碼重定位

發布者:石頭上種莊稼 來源: eefocus關鍵字:ARM裸板  內存控制器  SDRAM  代碼重定位 手機看文章 掃描二維碼
隨時隨地手機看文章

1.CPU如何控制外設?

CPU控制相應外設的寄存器,有外設控制器發出特定的波形


2.CPU如何選擇寄存器?

CPU通過內存控制器選擇

發出地址addr

根據地址選擇不同的模塊

CPU

內存控制器

讀寫數據


3.外設共用地址、數據總線,如何互不干擾?

通過片選CS引腳,選擇不同的外設


4.誰控制片選引腳

發出地址addr

根據地址發出片選信號

CPU

內存控制器

使能相應的外設

由芯片手冊得知:當CPU發出地址是0x00000000時 nGCS0為低電平選擇(有效)

在這里插入圖片描述

5.CPU如何讀寫數據的方向?

通過外設芯片的讀寫引腳控制

6.CPU不同位寬設備如何連接并讀取數據【內存控制器】

6.1 連接方式

8bit ROM (從A0開始對應連接)

在這里插入圖片描述

16bit ROM (A0不接,從A1開始)

在這里插入圖片描述

32bit ROM(A0、A1不接,從A2開始)

在這里插入圖片描述

6.2 CPU讀取ROM數據1個字節

例如在 地址3上讀取一個字節數據

mov R0.#3

LDRB R1,[R0]


過程 CPU發出的地址 ROM接收到的地址 ROM返回的數據 內存控制器挑出指定字節送給CPU

8bit 000011 000011 第3個byte 第3個byte

16bit 000011 00001 第1個16bit 根據A0=1,挑出16bit中的第1個byte給CPU(從0byte開始)

32bit 000011 00000 第0個32bit 根據A0 A1=11挑出第3個byte給CPU(從0byte開始)

綜上,也就是所有的地址線都會用到,內存控制器根據未接的地址線狀態判斷挑出指定的byte


6.3 CPU讀取ROM數據4個字節

mov R0,#4

LDR R1,[R0]  ;從地址4上取出4個字節


過程 CPU發出的地址 內存控制器轉發給ROM的地址 ROM返回的數據 內存控制器組裝數據返回給CPU

8bit 000100 000100、000101、000110、000111(共四次) 得到地址4、5、6、7上的byte 組裝給一個32bit數據給CPU

16bit 000100 00010、00011(共兩次) 得到第2、3個16bit 組裝給一個32bit數據給CPU

32bit 000100 0001(共一次) 得到第1個32bit 直接發送給CPU


7.如何根據原理圖確定芯片訪問地址

7.1 方法

1.根據片選引腳確定基地址,見4.誰控制片選引腳

2.根據芯片所接地址線確定范圍


7.2 Nor Flash確定訪問地址

例如Nor Flash芯片:用到A20~A0共21條線

地址線21:即可訪問2M內存,0x1FFFFF

根據它片選信號為nGCS0可以得到基地址BASE = 0x00000000

其范圍為BASE+0x0000 0000 ~ BASE+0x001F FFFF,即0x0000 0000 ~ 0x001F FFFF

在這里插入圖片描述

7.3 Net芯片確定訪問地址

例如網卡net芯片:只連接了A2,但是其A0是用來確定16bit(網卡數據線為16位)中的高8位還是低8位,因此A2 A0

根據其片選引腳為nGCS4,可以得到基地址BASE = 0x2000 0000

其范圍為BASE+0x0000 0000 ~ BASE+0x0000 0101,即0x2000 0000 ~ 0x2000 0005

在這里插入圖片描述

8. Nor Flash時序分析

8.1 MX29LV160 讀數據時序

在這里插入圖片描述

Taa:發出地址信號之后多長時間數據有效

Tce:發出片選信號之后多長時間數據有效

Toe:發出讀信號之后多長時間數據有效

Toh:數據保持時間

Tdf:數據浮動時間

Trc:讀取周期時間(70ns,即讀取速率最大為70ns)


8.2 S3C2440 可編程訪問周期時序

為了方便,使得Addr、CS、OE信號同時拉低使能,然后確保Tacc>=70ns,即可滿足Nor Flash的時序

則當HCLK=100M,內存控制器周期為T=10ns,Tacc = 8T即可

  • 在這里插入圖片描述

在這里插入圖片描述

9.代碼重定位

1.Nand啟動時,一上電,硬件會把前4K數據復制到SRAM

2.CPU從0地址運行


如果程序大于4K,前4K的代碼需要把整個程序讀取出來放到SDRAM【重定位:重新確定程序地址】


9.1 Nor Flash特點

可以像內存一樣的讀取

不可以像內存一樣直接寫入(寫入有保護)


9.2 Nor直接寫入的結果

程序中含有需要修改(寫入)的變量,寫在Nor上,直接修改變量是無效的

因此需要重定位,放到SDRAM上


9.3 實驗

以Nor Flash 啟動,修改一變量,改變量并不會被修改,即無效


以Nand Flash 啟動,修改一變量,改變量會被修改


9.4 程序包含哪幾部分

代碼段text 代碼

數據段data (一般的全局變量)

只讀數據段rodata const 全局變量

bss 初值為0或無初值的全局變量 不保存在bin文件中

comment 注釋 不保存在bin文件中

bss:是“Block Started bySymbol”的縮寫,意為“以符號開始的塊”。 BSS是Unix鏈接器產生的未初始化數據段。

bss段與注釋段不保存在bin文件中

char g_Char = 'A'; //定義全局變量

const char g_Char2 = 'B'; //只讀全局變量

int g_A = 0; //初值為0的全局變量

int g_B; //未定義初值的全局變量

關鍵字:ARM裸板  內存控制器  SDRAM  代碼重定位 引用地址:【ARM裸板】內存控制器、SDRAM基礎與代碼重定位

上一篇:【ARM裸板】ARM模式、異常與狀態
下一篇:【ARM裸板】S3C2440 時鐘設置與分析

推薦閱讀

美國食品外賣初創公司DoorDash剛剛完成了一輪5.35億美元的巨額融資,由日本軟銀集團領投,紅杉資本、GIC和威康信托(Wellcome Trust)參投。DoorDash與美國多家科技領域的快遞和物流初創公司合作,其中包括資金雄厚的Uber(Uber Eats)和Postmates。總部位于舊金山的DoorDash將餐廳、消費者和交通基礎設施聯系起來,目前在全國600多個城市開展業務。在此...
1.stm32f103re,使用外部晶振32.768k,沒有校準rtc時鐘,使用串口打印時間,用帶時間戳的串口工具記錄串口接收的時間。2.測試時間一天。數據如下:開始計時:電腦時間[08:45:03.626] stm32時間 00:03:20結束計時:電腦時間[10:17:05.267] stm32時間 25:35:50歷時:電腦 25:32:01:641 stm32時間 25:32:303.結論單片機快28秒,28/25=1.12...
1.視頻bilibili視頻地址:https://www.bilibili.com/video/av9071583451單片機-矩陣鍵盤模塊-長短按鍵&數碼管顯示-模塊化編程模版2.文件代碼文件下載地址:https://download.csdn.net/download/weixin_43130546/121801913.說明此段代碼體現了模塊化編程思想,具有很好的可移植性。用到的知識點包括:矩陣鍵盤掃描,長短按鍵,按鍵動作識別;數碼管動態掃描...
A股三大指數今日持續震蕩,最終收盤漲跌不一,其中滬指下跌0.04%,收報3501.99點;深證成指下跌0.03%,收報14412.31點;創業板指上漲0.70%,收報2871.97點。兩市合計成交8764億元,行業板塊漲多跌少,釀酒與券商板塊強勢領漲。北向資金今日凈買入5.27億元。半導體板塊表現較好。集微網從電子元件、材料、設備、設計、制造、IDM、封測、分銷等領域選取了118...

史海拾趣

問答坊 | AI 解惑

CF卡內容丟失, 需重新格式化后才能使用

部分幾臺機子出現CF卡內容被沖掉的現象, 格式化后重新分區又可以使用, 個別出現CF損壞。 可自己怎么實驗就是沒法模擬重現這個想象,真沒頭緒 CF卡使用的PXA255的自帶CF控制器,Kinston 1G CF卡,OS是4.2。 大家有沒有碰到過這個現象? 謝謝 …

查看全部問答∨

M41T11設置完時間之后為什么時間不走啊?

已經設置M41T11的start位,每次讀時間都是當初設置的時間值。為什么?…

查看全部問答∨

如何在指定的平臺開發應用程序

原來在windows mobile 6.0上開發了個應用程序,現在想移植到wince6.0 的PND上(找別人買的,好象沒有提供SDK),不知該如何做,我用VS2005,只能選擇mobile 6.0的開發環境。我想在在這個pnd上開發程序,并能在其模擬器運行與調試…

查看全部問答∨

幫忙看下,這2款PIC 以太網開發板,我該選擇誰呢

愛晶電子 基于ENC28J60的PIC以太網開發板(PIC實驗板/PIC開發板)  ¥450 http://item.taobao.com/auction/item_detail-db2-cdaacf2253921bc4ab5b5d41b991e651.jhtml 小新電子 PIC18F97J60 以太網開發板 一 口 價: 298.00元 http:/ ...…

查看全部問答∨

【VxWorks5.x -->VxWorks6.x 移植問題】

大家好,誰有沒有做過 PPC的BSP 從 5.X ---> 6.X 的移植啊? 我所知道的是,從6.x對5.X的支持是兼容的,那么我就先把 5.X 的BSP文件夾 如 ppc_myself_XXX 放到 h/config/ 下,然后新建立 BSP 工程,進行編譯,可是編譯的時候,發現ERROR超多啊 ...…

查看全部問答∨

我現在是2000系統,因需要裝了個98,現在的問題是裝了98后,就進不了2000了

我現在是2000系統,因需要裝了個98,現在的問題是裝了98后,就進不了2000了…

查看全部問答∨

周立功的開發板easyarm2104

現在小弟我手上有款ARM開發板、是周立功出的。型號是easyarm2104 但是所有相關的資料全丟了。有哪位大俠有的,能共享下嗎?不勝感激。 …

查看全部問答∨

STM32F105USBiap

103系列的好用的USB iap現在挪到105下不好用了。 對這個USB很不了解。 現在哪里能找到基于USB-OTG的USB iap例程? 哪位能分享一下例程不勝感激…

查看全部問答∨

請教堆棧問題stm32

Tue Oct 27 20:36:27 2009: The stack \'CSTACK\' is filled to 100% (1024 bytes used out of 1024). The warning threshold is set to 90.% 請問是不是堆棧用光了…

查看全部問答∨

2013四川賽區獲獎名單

本帖最后由 paulhyde 于 2014-9-15 03:09 編輯 今年的設計競賽獲獎名單    …

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

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

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

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 双流县| 吉林省| 汤原县| 博湖县| 赫章县| 拜泉县| 大冶市| 吴忠市| 司法| 大宁县| 龙井市| 福安市| 新安县| 炎陵县| 旌德县| 乐亭县| 秦安县| 安多县| 梧州市| 常熟市| 邻水| 滦平县| 梅州市| 凯里市| 宁强县| 土默特右旗| 石阡县| 阳泉市| 兴安盟| 昭觉县| 思南县| 彭阳县| 益阳市| 道真| 桐城市| 仁化县| 色达县| 修文县| 清水县| 鄢陵县| 合江县|