日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

s3c2440裸機(jī)-內(nèi)存控制器2-不同位寬外設(shè)與CPU地址總線(xiàn)的連接

發(fā)布者:MysticalSoul最新更新時(shí)間:2024-07-08 來(lái)源: elecfans關(guān)鍵字:內(nèi)存控制器  CPU  地址總線(xiàn) 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

不同位寬設(shè)備的連接


我們先看一下2440芯片手冊(cè)上外設(shè)rom是如何與CPU地址總線(xiàn)連接的。



8bit rom與CPU地址線(xiàn)的連接


8bit*2 rom與CPU地址線(xiàn)的連接


8bit*4 rom與CPU地址線(xiàn)的連接


16bit rom與CPU地址線(xiàn)的連接


16bit*2 rom與CPU地址線(xiàn)的連接


從上面的圖中,我們知道可以對(duì)2片位寬為8bit的外設(shè)擴(kuò)展級(jí)聯(lián)成1個(gè)16bit的外設(shè),同理可用4片位寬為8bit的外設(shè)進(jìn)行級(jí)聯(lián)成1個(gè)32bit的外設(shè)...

從上面的圖中,我們還看見(jiàn)一個(gè)規(guī)律:

當(dāng)外設(shè)總線(xiàn)位寬為8bit時(shí), 外設(shè)A0接CPU的地址總線(xiàn)ADDR[0],
A[1]->ADDR[1] ...A[15]->ADDR[15]

當(dāng)外設(shè)總線(xiàn)位寬為16bit時(shí),外設(shè)A0接CPU的地址總線(xiàn)ADDR[1],
A[1]->ADDR[2] ...A[15]->ADDR[16]

當(dāng)外設(shè)總線(xiàn)位寬為32bit時(shí),外設(shè)A0接CPU的地址總線(xiàn)ADDR[2],
A[1]->ADDR[3] ...A[15]->ADDR[17]

那么為什么要這樣設(shè)計(jì)呢?

我們先看一個(gè)例子: 假設(shè)CPU執(zhí)行:

MOV R0, #3
LDRB R1, [R0]  @ 從內(nèi)存地址為3的地方,讀出一個(gè)字節(jié)

如圖有8bitROM、16bitROM、32bitROM


(1)對(duì)于8bitROM ,8bit是一次讀寫(xiě)的最小單位,即0地址是第一個(gè)8bit,1地址是第二個(gè)8bit;

CPU發(fā)出地址3,即A0和A1都為1,8bitROM的A0和A1收到的也都是1,

于是找到了ROM上地址為3的8bit數(shù)據(jù),包含了我們需要的數(shù)據(jù)。


(2)對(duì)于16bitROM ,16bit是一次讀寫(xiě)的最小單位,即0地址是第一個(gè)16bit,里面有兩個(gè)8bit數(shù)據(jù);

CPU發(fā)出地址3,即A0和A1都為1,16bitROM的A0和A1分別收到的是1和0,

于是找到了ROM上地址為1的16bit數(shù)據(jù),包含了我們需要的數(shù)據(jù),最后內(nèi)存控制器再幫我們挑選出所需的8bit數(shù)據(jù)。


(3)對(duì)于32bitROM ,32bit是一次讀寫(xiě)的最小單位,即0地址是第一個(gè)32bit,里面有四個(gè)8bit數(shù)據(jù);

CPU發(fā)出的地址3,即A0和A1都為0,32bitROM的A0和A1收到的都是0,

于是找到了ROM上地址為0的32bit數(shù)據(jù),包含了我們需要的數(shù)據(jù),最后內(nèi)存控制器再幫我們挑選出所需的8bit數(shù)據(jù)。


用表格更好理解:

ROM/bitCPU發(fā)出地址ROM收到地址ROM返回?cái)?shù)據(jù)內(nèi)存控制器挑選出數(shù)據(jù)給CPU
8bit(ROM)0b0000110b000011編號(hào)3的存儲(chǔ)單元中的8數(shù)據(jù)編號(hào)3的存儲(chǔ)單元中的8數(shù)據(jù)
16bit(ROM)0b0000110b000001編號(hào)1的存儲(chǔ)單元中的16數(shù)據(jù)根據(jù)”A0=1”,挑出低8bit數(shù)據(jù)
32bit(ROM)0b0000110b000000編號(hào)0的存儲(chǔ)單元中的32數(shù)據(jù)根據(jù)”A1A0=11”,挑出最低8bit數(shù)據(jù)

結(jié)論:


和cpu地址總線(xiàn)相連的外設(shè)地址線(xiàn)確定了要訪(fǎng)問(wèn)外設(shè)的地址,即哪個(gè)存儲(chǔ)單元;

然后內(nèi)存控制器拿到外設(shè)存儲(chǔ)單元中的數(shù)據(jù)后,再根據(jù)那幾個(gè)錯(cuò)開(kāi)的引腳[A1-A0]的值(CPU地址總線(xiàn)沒(méi)接的那幾個(gè)引腳的值),來(lái)挑出相應(yīng)的數(shù)據(jù)給CPU。

再舉一個(gè)栗子: 假如讀取一個(gè)32位的數(shù)據(jù)時(shí)


MOV R0,   #4

LDR  R1,  [R0]  @去地址4,讀取4字節(jié)數(shù)據(jù)

我們知道CPU發(fā)出的是32bit地址,那么


對(duì)于16bit Rom,內(nèi)存控制器會(huì)給它發(fā)2次,rom也會(huì)相應(yīng)的接收2次;

對(duì)于8bit  Rom,內(nèi)存控制器給它發(fā)4次, rom接收4次,

那么CPU怎么知道它外接的rom位寬是16bit,8bit還是多少...?


當(dāng)然內(nèi)存控制器知道了,配置總線(xiàn)位寬寄存器。 如何配置總線(xiàn)位寬寄存器


執(zhí)行過(guò)程如下:

ROM/bitCPU發(fā)出地址ROM收到地址(內(nèi)存控制器轉(zhuǎn)發(fā)給rom)ROM返回?cái)?shù)據(jù)內(nèi)存控制器組裝數(shù)據(jù)給CPU
8bit(ROM)0b0001000b000100地址4的一個(gè)1byte數(shù)據(jù)組裝地址7、6、5、4數(shù)據(jù)成4字節(jié)數(shù)據(jù)


0b000101地址5的一個(gè)1byte數(shù)據(jù)


0b000110地址6的一個(gè)1byte數(shù)據(jù)


0b000111地址7的一個(gè)1byte數(shù)據(jù)
16bit(ROM)0b0001000b00010地址2的一個(gè)2byte數(shù)據(jù)組裝地址3、2的數(shù)據(jù)成4字節(jié)數(shù)據(jù)


0b00011地址3的一個(gè)2byte數(shù)據(jù)
32bit(ROM)0b0001000b00001地址1的一個(gè)4byte數(shù)據(jù)直接返回4字節(jié)數(shù)據(jù)

怎樣確定芯片的訪(fǎng)問(wèn)地址?

1. 根據(jù)片選信號(hào)確定基地址
2. 根據(jù)芯片所接地址線(xiàn)確定范圍



外設(shè)類(lèi)型接內(nèi)存控制器的哪個(gè)片選基地址占用CPU的地址總線(xiàn)地址范圍(offset + size)
nornGCS00x0000,0000ADDR0-ADDR200x0000,0000 ~ 0x001f,ffff(2M)
dm9000網(wǎng)卡nGCS40x2000,0000ADDR0和ADDR20x2000,0000 ~ 0x2000,0005(5byte)
sdramnGCS60x3000,0000ADDR0-ADDR25SDRAM的地址范圍

這里再次提醒一下,有人發(fā)現(xiàn)nor沒(méi)有和CPU的ADDR0相連接,sdram沒(méi)有和CPU的ADDR0、ADDR1相連接。不要覺(jué)得ADDR0、ADDR1沒(méi)用到,由于nor數(shù)據(jù)位寬是16bit,ADDR0是給內(nèi)存控制器拆分?jǐn)?shù)據(jù)用的,同樣sdram數(shù)據(jù)位寬32bit,ADDR0、ADDR1也是給內(nèi)存控制器拆分?jǐn)?shù)據(jù)用的。這個(gè)上面已分析過(guò),這也是什么要錯(cuò)位連接的原因。


關(guān)鍵字:內(nèi)存控制器  CPU  地址總線(xiàn) 引用地址:s3c2440裸機(jī)-內(nèi)存控制器2-不同位寬外設(shè)與CPU地址總線(xiàn)的連接

上一篇:s3c2440裸機(jī)-內(nèi)存控制器3-SDRAM原理-cpu是如何訪(fǎng)問(wèn)sdram的
下一篇:s3c2440裸機(jī)-內(nèi)存控制器1-內(nèi)存控制器的原理

推薦閱讀最新更新時(shí)間:2025-07-12 23:54

s3c2440裸機(jī)-LCD編程-3-框架準(zhǔn)備和LCD初始化
1.準(zhǔn)備框架 為了讓程序更加好擴(kuò)展,體現(xiàn)出”高內(nèi)聚、低耦合 的特點(diǎn),能夠兼容各種不同型號(hào)的lcd,假如有兩款尺寸大小的lcd,如何快速的在兩個(gè)lcd上切換? 首先我們抽象出lcd_3.5.c和lcd_4.3.c的共同點(diǎn),比如都有初始化函數(shù)init(),我們可以新建一個(gè)lcd.c,然后定義一個(gè)結(jié)構(gòu)體: struct lcd_opr{ void (*init)(void); }; 用戶(hù)不接觸lcd_3.5.c和lcd_4.3.c,只需要在lcd.c里通過(guò)指針訪(fǎng)問(wèn)對(duì)應(yīng)的結(jié)構(gòu)體的函數(shù),也就調(diào)用了不同init(),如下圖所示: 我們的目的是在LCD顯示屏上畫(huà)線(xiàn)、畫(huà)圓(geomentry.c)和寫(xiě)字(font.c)其核心是畫(huà)點(diǎn)(
[單片機(jī)]
s3c2440裸機(jī)-電阻觸摸屏-4.2-isr設(shè)計(jì)_支持長(zhǎng)按和滑動(dòng)
1.改進(jìn)定時(shí)器 五. irq之定時(shí)器中斷這記一節(jié)中,是在handle_irq_c()中去區(qū)分中斷源,執(zhí)行不同的isr。那現(xiàn)在通過(guò)register_timer注冊(cè)對(duì)應(yīng)的定時(shí)器中斷服務(wù)程序,timer_irq進(jìn)行執(zhí)行不同的定時(shí)器中斷服務(wù)程序。 #define TIMER_NUM 32 #define NULL ((void *)0) typedef void(*timer_func)(void); typedef struct timer_desc {   char *name;   timer_func fp; }timer_desc, *p_timer_desc; timer_desc timer_array ; int regi
[單片機(jī)]
S3C2440裸機(jī)------NandFlash操作原理
1.Nandflash操作原理 下圖是原理圖中NandFlash和S3C2440的連接圖, 問(wèn)1. 原理圖上NAND FLASH和S3C2440之間只有數(shù)據(jù)線(xiàn), 怎么傳輸?shù)刂罚?答1.在DATA0~DATA7上既傳輸數(shù)據(jù),又傳輸?shù)刂? 當(dāng)ALE為高電平時(shí)傳輸?shù)氖堑刂罚? 問(wèn)2. 從NAND FLASH芯片手冊(cè)可知,要操作NAND FLASH需要先發(fā)出命令 怎么傳入命令? 答2.在DATA0~DATA7上既傳輸數(shù)據(jù),又傳輸?shù)刂?,也傳輸命? 當(dāng)ALE為高電平時(shí)傳輸?shù)氖堑刂罚? 當(dāng)CLE為高電平時(shí)傳輸?shù)氖敲? 當(dāng)ALE和CLE都為低電平時(shí)傳輸?shù)氖菙?shù)據(jù) 問(wèn)3. 數(shù)據(jù)線(xiàn)既接到NAND FLASH,也
[單片機(jī)]
<font color='red'>S3C2440</font><font color='red'>裸機(jī)</font>------NandFlash操作原理
Ampere 宣布將 AmpereOne? 系列處理器擴(kuò)展至 256 核,并與高通在 CPU 和加速器領(lǐng)域展開(kāi)合作
中國(guó)北京,2024 年 5 月 20 日 – Ampere Computing? 今天正式發(fā)布 年度 戰(zhàn)略和 產(chǎn)品 路線(xiàn)圖 更新 ,重點(diǎn)介紹 Ampere 在可持續(xù)、高效能計(jì)算的云和人工智能計(jì)算方面的持續(xù)創(chuàng)新和發(fā)明。Ampere 還宣布正在與高通技術(shù)公司攜手合作,雙方將結(jié)合高通技術(shù)公司高性能、低功耗的 Qualcomm? Cloud AI 100 推理解決方案和 Ampere CPU,共同開(kāi)發(fā)人工智能推理聯(lián)合解決方案。 半導(dǎo)體行業(yè)資深人士,Ampere 首席執(zhí)行官 Renee James 表示,人工智能的發(fā)展帶來(lái)了日益增長(zhǎng)的電力需求和能源挑戰(zhàn),使 Ampere 圍繞性能和能效的芯片設(shè)計(jì)方法比以往任何時(shí)候都更加受到業(yè)界關(guān)注。Re
[嵌入式]
Arteris 擴(kuò)展面向 Armv9 架構(gòu) CPU 的汽車(chē)解決方案
Arteris履行之前宣布的與Arm的合作,為基于A(yíng)rmv9和CHI-E的設(shè)計(jì)提供基于仿真的驗(yàn)證系統(tǒng),加快汽車(chē)電子創(chuàng)新。 Arteris與Arm保持一致的路線(xiàn)圖,為Arm的汽車(chē)增強(qiáng)型(AE)計(jì)算產(chǎn)品組合提供經(jīng)過(guò)優(yōu)化和預(yù)驗(yàn)證的高帶寬、低延遲的Ncore緩存一致性互連IP,使設(shè)計(jì)人員能夠更快地將產(chǎn)品推向市場(chǎng)。 此項(xiàng)合作將Arm處理器與Arteris互連IP集成在一起,實(shí)現(xiàn)自動(dòng)駕駛、高級(jí)駕駛輔助系統(tǒng)(ADAS)、駕駛艙和信息娛樂(lè)、視覺(jué)、雷達(dá)和激光雷達(dá)、車(chē)身和底盤(pán)控制、分區(qū)控制器和其他汽車(chē)應(yīng)用。 加利福尼亞州 坎貝爾 – 2024 年 3月 13 日 – Arteris, Inc.是一家領(lǐng)先的系統(tǒng) IP 供應(yīng)商
[汽車(chē)電子]
AI芯片即將被顛覆?效率比CPU高100倍,功耗比GPU低1000倍
上世紀(jì),一個(gè)名為“skunkworks”的項(xiàng)目構(gòu)建了一個(gè)工程工作站,它的算力在當(dāng)時(shí)非常出色,但為了驅(qū)動(dòng)這個(gè)大家伙,處理器和主板都依賴(lài)著復(fù)雜的水冷系統(tǒng)散熱。巧合的是,這一散熱系統(tǒng)發(fā)生了故障,最終計(jì)算機(jī)內(nèi)部完全被熔化。 現(xiàn)在,隨著通用算力諸如GPU需求增加,加之每年部署的邊緣設(shè)備越來(lái)越多,更多人開(kāi)始關(guān)注計(jì)算的能源需求和散熱。也就是說(shuō),誰(shuí)能在更低功耗釋放更多算力,就能贏(yíng)得未來(lái)。 這兩天,國(guó)外一家芯片初創(chuàng)公司Efficient Computer脫離“隱身模式”,并推出一款可重新配置的數(shù)據(jù)流處理器架構(gòu)(Reconfigurable Dataflow Processor Architecture)的處理器——即Fabric架構(gòu)。
[嵌入式]
AI芯片即將被顛覆?效率比<font color='red'>CPU</font>高100倍,功耗比GPU低1000倍
淺談S7-300 CPU集成PN口配置的Modbus TCP通訊技術(shù)
2.配置S7-300單站系統(tǒng)通過(guò)CPU集成PN口作為Client進(jìn)行Modbus TCP通訊 下面以S7-300單站系統(tǒng)及Modbus Slave軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)CPU的集成PN口配置為Client,Modbus Slave作為Server進(jìn)行Modbus TCP通訊。 2.1硬件設(shè)備及軟件 本例中所用的硬件設(shè)備如下表: 名稱(chēng) 數(shù)量 訂貨號(hào) S7-300電源模塊PS 307 10A 1 6ES7307-1KA02-0AA0 S7-300 CPU317-2PN/DP 1 6ES7317-2EK14-0AB0(V3.2) 網(wǎng)線(xiàn) 若干 筆記本電腦 1 所用到軟件如下表: 名
[嵌入式]
淺談S7-300 <font color='red'>CPU</font>集成PN口配置的Modbus TCP通訊技術(shù)
俄羅斯自研CPU擁有48核心 采用16nm工藝
如今,越來(lái)越多的國(guó)家開(kāi)始重視自研芯片,畢竟誰(shuí)也不想被卡脖子。Baikal Electronics是俄羅斯的一家科技公司,其推出了一款型號(hào)為“貝加爾湖”的處理器,足足有48個(gè)物理核心。當(dāng)然,這顆處理器面向服務(wù)器領(lǐng)域,與普通用戶(hù)關(guān)系不大。 其實(shí)這顆處理器早在去年年底就已經(jīng)被曝光了,并且當(dāng)時(shí)已經(jīng)點(diǎn)亮。如今芯片大神Fritzchens Fritz放出了幾張這款處理器的核心照片及內(nèi)核照片。從照片上可以看出,這顆處理器采用了LGA封裝,可能有些朋友看到背面會(huì)聯(lián)想到英特爾處理器。 這顆處理器采用的是臺(tái)積電16nm工藝,核心面積約為607mm2。其采用ARM A75公版架構(gòu),主頻最高2.5GHz。其最高支持4路,也就是一個(gè)系統(tǒng)最高可
[家用電子]
小廣播
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車(chē)開(kāi)發(fā)圈

 
機(jī)器人開(kāi)發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved