<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è) > 嵌入式系統 > 設計應用 > 對S3C2440特殊功能寄存器地址的深入挖掘

對S3C2440特殊功能寄存器地址的深入挖掘

作者: 時(shí)間:2016-11-22 來(lái)源:網(wǎng)絡(luò ) 收藏
S3C2440集成了豐富了外設控制器(LCD控制器、USB Device控制器、USB Host控制器、NAND FLASH控制器、I2C控制器、SPI控制器等)。要控制這些外設就要設置相應控制器的寄存器以產(chǎn)生相應的驅動(dòng)時(shí)序。學(xué)習S3C2440,主要是如何配置寄存器。

下面是S3C2440特殊功能寄存器地址

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

#define rBANKCON0 (*(volatileunsigned *)0x48000004) //Boot ROM control

#define rBANKCON1 (*(volatileunsigned *)0x48000008) //BANK1 control

#define rBANKCON2 (*(volatileunsigned *)0x4800000c) //BANK2 cControl

……

在學(xué)習的過(guò)程我一直在想這些地址為什么是這樣的,想起來(lái)一次就在網(wǎng)上找資料,但每次都沒(méi)有得到很好的結果。最近在學(xué)習AMBA(AdvancedMicrocontroller Bus Architecture)的時(shí)候終于解開(kāi)這個(gè)謎團了,哈哈?。?!

先看下面這個(gè)圖,看完后估計就知道了一半啦。

圖1 內存映射

下面就來(lái)詳細分析。

圖2 S3C2440結構框圖

先介紹一下AMBA。AMBA(Advanced Micro-Controller Bus Architecture)是由ARM Limited公司推出的On-Chip Bus片上總線(xiàn)規范,是目前芯片總線(xiàn)的主流標準。一開(kāi)始AMBA 1.0只有ASB和APB,為了節省面積,這時(shí)候的總線(xiàn)協(xié)定都是采用3態(tài)的總線(xiàn),到后來(lái)的AMBA 2.0版本,新增了AHB總線(xiàn),共定義了3組總線(xiàn):高性能總線(xiàn)(AdvancedHigh Performance Bus,AHB)、系統總線(xiàn)(AdvancedSystem Bus,ASB)和外設總線(xiàn)(Advanced PeripheralBus,APB)。

圖3 典型的基于A(yíng)MBA總線(xiàn)的系統

關(guān)于A(yíng)MBA總線(xiàn)的更多的內容可上網(wǎng)查看,中文的資料都有很多。由圖2可知AHB總線(xiàn)上掛載了LCD控制器、中斷控制器、USB Host控制器、電源管理、NAND控制器、Camera控制器、存儲器控制器以及AHB to APB橋和DMA控制器。APB總線(xiàn)上掛載了UART控制器、I2C控制器、USB Device控制器、I3S控制器SDI/MMC控制器、GPIO、Watchdog/定時(shí)器、RTC、ADC、SPI、AC97。下面這段話(huà)是摘自S3C2440芯片手冊:

The S3C2440A holds 13 bus masters. They include DRAMrefresh controller, LCD_DMA, CAMIF DMA, DMA0,DMA1, DMA2, DMA3, USB_HOST_DMA,EXT_BUS_MASTER, Test interface controller (TIC) and ARM920T.

S3C2440A有13個(gè)主設備。當AHB總線(xiàn)上的主設備讀寫(xiě)從設備時(shí),發(fā)出的地址經(jīng)過(guò)AHB總線(xiàn)的譯碼器(通過(guò)內存映射表) 產(chǎn)生該地址所對應從設備的選擇信號,選中從設備;這樣就可以對從設備進(jìn)行讀寫(xiě)啦。

圖4 AHB譯碼器

圖5 譯碼器的具體實(shí)現代碼

譯碼器的內存映射表具有相對的獨立性。如果AHB總線(xiàn)上的從設備發(fā)生了變化,必須對內存映射表進(jìn)行修改以確保每個(gè)地址都對應正確的從設備。下面是內存映射表的一個(gè)例子。

圖6 內存映射表

使用了兩種內存映射表:正常工作下的內存映射表和重新啟動(dòng)時(shí)的內存映射表。在正常工作時(shí),微處理器的從設備包括內部RAM、外部RAM、外部ROM和AHB/APB橋;當系統重新啟動(dòng)時(shí),系統的內存映射不包括內部RAM,而是將0x0000—0000至0x0000—03FF的內存地址段映射為nash。這個(gè)部分包含系統的啟動(dòng)和初始化代碼。當系統啟動(dòng)完成初始化后,AMBA總線(xiàn)將產(chǎn)生一個(gè)Remap信號,送入譯碼器,將譯碼器的當前內存映射表改為正常工作狀態(tài)下的內存映射表。

下面是S3C2440的地址映射

AHB Memory Map

Memory control 0x48000000 0x48000030

USB HOST 0x49000000 0x49000058

INTERRUPT 0x4a000000 0x4a00001c

DMA 0x4b000000 0x4b0000e0

CLOCK & POWER MANAGEMENT 0x4c000000 0x4c000018

*LCD CONTROLLER 0x4d000000 0x4d000060 0x4d000400(Palettestart address)

Nand Flash 0x4E000000 0x4E00003C

Camera Interface 0x4F000000 0x4F0000A0

APB Memory Map

UART0 0x50000000 0x50000028

UART1 0x50004000 0x50004028

UART2 0x50008000 0x50008028

PWM TIMER 0x51000000 0x51000040

USB DEVICE 0x52000140 0x5200026c

WATCH DOG TIMER 0x53000000 0x53000008

IIC 0x54000000 0x54000010

IIS 0x55000000 0x55000010

AC97 0x5b000000 0x5b00001C

I/O PORT

    • A 0x560000000x56000004
    • B 0x560000040x56000018
    • C 0x560000200x56000028
    • D 0x560000300x56000038
    • E 0x560000400x56000048
    • F 0x560000500x56000058
    • G 0x560000600x56000068
    • H 0x560000700x56000078
    • J 0x560000d0 0x560000d8
    • other 0x56000080 0x560000cc

RTC 0x57000040 0x57000088

ADC 0x58000000 0x58000014

SPI 0x59000000 0x59000034

SD Interface 0x5a0000000x5a000040

總結:AHB總線(xiàn)上的譯碼器根據地址產(chǎn)生相應的片選信號,選中對應的設備。AHB總線(xiàn)上有一個(gè)AHB to APB 橋,橋是AHB總線(xiàn)的從設備,是APB總線(xiàn)上唯一的主設備。橋是一個(gè)協(xié)議轉換器(AHB協(xié)議到APB協(xié)議的轉換),它還要完成APB總線(xiàn)的地址譯碼工作。



關(guān)鍵詞: S3C2440特殊功能寄存器地

評論


技術(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>