【文章內(nèi)容簡介】
MMU、外部存儲器控制器、 LCD 控制器 (STN和 TFT)、 NAND Flash 控制器、 4個 DMA 通道、 3 個 UART 通道、 1 個 I2C 總線控制器、 1個 I2S 總線控制器,以 及 4個 PWM 定時器和一個內(nèi)部定時器、通用 I/O 口、實(shí)時時鐘、8通道 10 位 ADC 和觸摸屏接口、 USB 主、 USB 從、 SD/MMC 卡接口等。現(xiàn)在它廣泛應(yīng)用于PDA(Personal Digital Assistant,個人數(shù)碼助理,一般指掌上電腦 )、移動通訊、路由器、工業(yè)控制等領(lǐng)域,其內(nèi)部結(jié)構(gòu)如圖 11 所示 。 為了提高系統(tǒng)運(yùn)行速度,減少能量損失, ARM920T 核微處理器把片上器件按器件工作頻率,使用頻度分成三個模塊,各個模塊通過各自總線連接,模塊之間采用一種叫總線橋的結(jié)構(gòu)過度。下面簡單介紹一下各總線特點(diǎn)。 第一章 ARM9 s3c2410 簡介 3 圖 11 s3c2410 芯片內(nèi)部結(jié)構(gòu) AMBA、 AHB、 APB 總線特點(diǎn) AHB 總線上最多可以有 16 個主模塊和任意多個從模塊,如果主模塊數(shù)目大于 16,則需再加一層結(jié)構(gòu) (具體參閱 ARM 公司推出的 Multilayer AHB 規(guī)范 )。 APB 橋既是 APB 總線上唯一的主模塊,也是 AHB 系統(tǒng)總線上的從模塊。其主要功能是鎖存來自 AHB 系統(tǒng)總線 的地址、數(shù)據(jù)和控制信號,并提供二級譯碼以產(chǎn)生 APB 外圍設(shè)備的選擇信號,從而實(shí)現(xiàn) AHB 協(xié)議到 APB 協(xié)議的轉(zhuǎn)換。 AHB 主要用于高性能模塊 (如 CPU、 DMA 和 DSP 等 )之間的連接,作為 SoC 的片上系統(tǒng)A R M 9 T D M IC P U 核( I n t e r n a l E m b e d d e d I C E )A M B A總 線I / FC P 1 5寫 緩 沖C 1 3指 令C a c h e( 1 6 K B )處 理 協(xié) 處理 器 接 口指 令C a c h e( 1 6 K B )W r i t e B a c kP A T a gR A MC 1 3指 令M M U數(shù) 據(jù)M M UL C DD M AE x t M a s t e rU S B 主 控 制N A N D 控 制總 線 控 制中 斷 控 制電 源 管 理M e m o r y C O N T .S R A M / N O R / S D R A MAHB總線L C D控 制系 統(tǒng) 總 線 橋 amp。 D M A時 鐘 發(fā) 生 器( M P L L )U A R T 0 , 1 , 2U S B 設(shè) 備S D I / M M C看 門 狗總 線 控 制S P I 0 , 1I 178。CI 178。SG P I OR T CA D CT i m e r / P W M0 ~ 3 , 4APB總線J T A GA R M 9 2 0 TI P A [ 3 1 : 0 ]I V 178。A [ 3 1 : 1 ]D V 178。A [ 3 1 : 0 ]I D [ 3 1 : 0 ]D D [ 3 1 : 0 ]D P I [ 3 1 : 0 ]W B P A [ 3 1 : 0 ]D V A [ 3 1 : 0 ]廣東石油化工學(xué)院本科畢業(yè) (設(shè)計 )論文: 基于 ARM+Linux 的 LCD 驅(qū)動設(shè)計 4 總線,它包括以下一些特性:單個時鐘邊沿操作;非三態(tài)的實(shí)現(xiàn)方式;支持突發(fā)傳輸;支持分段傳輸;支持多個主控制器;可配置 32 位 ~128 位總線寬度;支持字節(jié)、半字節(jié)和字的傳輸。 APB 主要用于低帶寬的周邊外設(shè)之間的連接,例如 UART 等,它的總線架構(gòu)不像 AHB支持多個主模塊,在 APB 里面唯一的主模塊就是 APB 橋。其特性包括 :兩個時鐘周期傳輸;無需等待周期和回應(yīng)信號;控制邏輯簡單,只有四個控制信號。 S3C2410 處理器體系結(jié)構(gòu) ARM920T 核, 16位 /32 位 RISC(精簡指令系統(tǒng))結(jié)構(gòu)和 ARM 精簡指令集; ARM MMU,支持 Windows CE, Linux 等操作系統(tǒng); 指令 Cache、數(shù)據(jù) Cache、寫緩沖; 支持 ARM 調(diào)試結(jié)構(gòu),片上 ICE 支持 JTAG 調(diào)試方式; 內(nèi)置先進(jìn)微控制器總線接口 (AMBA)。 S3C2410 處理器體系結(jié)構(gòu) 支持大端 (Big Endian)/小端 (Little Endian)模式; 地址空間為每個內(nèi)存塊 128MB(一共 1GB),每個內(nèi)存塊支持 8/16/32位數(shù)據(jù)總線編程; 8個內(nèi)存塊, 6 個用于 ROM、 SRAM 和其它, 2 個用于 ROM/SRAM/SDRAM; 1個起始地址和大小可編程的內(nèi)存塊 (Bank7); 7個起始地址固定的內(nèi)存塊( Bank0~Bank6); 所有內(nèi)存塊可編程尋址周期; 支持 SDRAM 自動刷新模式; 支持多種類型 ROM 啟動,包括 NOR/NAND Flash、 EEPROM 等。 S3C2410 處理器存儲器映射 S3C2410 的存儲空間映射如圖 12 所示: S3C2410 處理器時鐘和電源管理 (1)時鐘 S3C2410 的主時鐘由外部晶振或者外部時鐘提供,選擇后可以產(chǎn)生 3種時鐘信號,第一章 ARM9 s3c2410 簡介 5 分別是 CPU 使用的 FCLK、 AHB 總線使用的 HCLK 和 APB 總線使用的 FCKL。時 鐘管理模塊同時擁有 兩個鎖相環(huán),一個稱為 MPLL,擁于 FCLK、 HCLK 和 PCLK;另一個稱為 UPLL, 用于 USB 設(shè)備。 圖 12 S3C2410 的存儲空間映射 (2)時鐘控制邏輯 時鐘控制邏輯決定了所使用的時鐘源,是采用 MPLL 作為 FCLK,還是采用外部時鐘。復(fù)位后,即使不想改變默認(rèn)的 PLLCON 值,也需要重新寫一遍。 FCLK 由 ARM920T 核使用, HCLK 提供給 AHB 總線, PCLK 提供給了 APB 總線。 S3C2410 支持 HCLK、FCLK 和 PCLK 的分頻選擇,其比率是通過 CLKDIV 寄存器中 的 HDIVN 和 PDIVN 控制的 . (3)電源管理 S3C2410 電源管理模塊通過 4 種模式有效地控制功耗,即正常 (Normal)模式、省電(Slow)模式、空閑 (Idle)模式和斷電 (Poweroff)模式。 Normal 模式:為 CPU 和所有的外設(shè)提供時鐘,所有的外設(shè)開啟,該模式下的功耗最大。這種模式允許用戶通過軟件控制外設(shè),可以斷開提供給外設(shè)的時鐘以降低功耗。 Slow 模式:采用外部時鐘生產(chǎn) FCLK 的方式,此時電源的功耗取決于外部時鐘。 Idle 模式:斷開 FCLK 與 CPU 核的連接,外設(shè)保持正常,該模式下的 任何中斷都可喚醒 CPU。 Poweroff 模式:斷開內(nèi)部電源,只給內(nèi)部的喚醒邏輯供電。一般模式下需要兩個電源,一個提供給喚醒邏輯,另外一個提供給 CPU 和內(nèi)部邏輯,在 Poweroff 模式下,后一個電源關(guān)閉。 未 用S F R 區(qū)B o o t S R A M( 4 K B )S R O M / S D R A M( n G C S 7 )S R O M / S D R A M( n G C S 6 )S R O M( n G C S 5 )S R O M( n G C S 4 )S R O M( n G C S 3 )S R O M( n G C S 2 )S R O M( n G C S 1 )S R O M( n G C S 0 )未 用S F R 區(qū)未 用S R O M / S D R A M( n G C S 7 )S R O M / S D R A M( n G C S 6 )S R O M( n G C S 5 )S R O M( n G C S 4 )S R O M( n G C S 3 )S R O M( n G C S 2 )S R O M( n G C S 1 )內(nèi) 部 啟 動S R A M ( 4 K B )1 2 8 M B1 2 8 M B1 2 8 M B1 2 8 M B1 2 8 M B2 M B / 4 M B / 8 M B / 1 6 M B/ 3 2 M B / 6 4 M B / 1 2 8 M B2 M B / 4 M B / 8 M B / 1 6 M B/ 3 2 M B / 6 4 M B / 1 2 8 M B1 G BH A D D R [ 2 9 : 0 ]可 訪 問 區(qū) 域[ 不 使 用 N A N D F l a s h 作 為 R O M ] [ 使 用 N A N D F l a s h 作 為 R O M ]O M [ 1 : 0 ] = 0 1 , 1 0 O M [ 1 : 0 ] = 0 00 x f f f f f f f f0 x 6 0 0 0 0 0 0 00 x 4 8 0 0 0 0 0 00 x 4 0 0 0 0 f f f0 x 4 0 0 0 0 0 0 00 x 3 8 0 0 0 0 0 00 x 3 0 0 0 0 0 0 00 x 2 8 0 0 0 0 0 00 x 2 0 0 0 0 0 0 00 x 1 8 0 0 0 0 0 00 x 1 0 0 0 0 0 0 00 x 0 8 0 0 0 0 0 00 x 0 0 0 0 0 0 0 0廣東石油化工學(xué)院本科畢業(yè) (設(shè)計 )論文: 基于 ARM+Linux 的 LCD 驅(qū)動設(shè)計 6 第二章 嵌入式 Linux 簡介 隨著計算機(jī)技術(shù)、通信技術(shù)的飛速發(fā)展,特別是互聯(lián)網(wǎng)的迅速普及和 3C(Computer、Communication、 Consume)合一的加速,微型化和專業(yè)化成為信息產(chǎn)品發(fā)展的新趨勢,嵌入式產(chǎn) 品成為信息產(chǎn)業(yè)的主流。目前, 市場 上有很多商業(yè)性嵌入式系統(tǒng)都在努力的為自己爭取著嵌入 式市場的份額, Linux 以其內(nèi)核可裁剪、移植性好、源代碼開放等優(yōu)點(diǎn)受到越來越多的 企業(yè)和研發(fā)機(jī)構(gòu)的關(guān)注。當(dāng)今信息化的高速發(fā)展,使 Linux 成為當(dāng)前最流行的嵌入式操作系統(tǒng)之一,這為 Linux 的發(fā)展注入了強(qiáng)大生命力。 嵌入式 Linux 系統(tǒng)概述 Linux最初是一個遵循 POSIX標(biāo)準(zhǔn)的由一名芬蘭學(xué)生編寫源代碼完全開放的免費(fèi)操作系統(tǒng)。經(jīng)過短短的十幾年時間已經(jīng)發(fā)展成為功能強(qiáng)大、設(shè)計完善的操作系統(tǒng)之一,不僅可以與各種傳統(tǒng)的商業(yè)操作系統(tǒng)分庭抗?fàn)帲谛屡d的嵌入式操作系統(tǒng)領(lǐng)域內(nèi)也獲得了飛速發(fā)展。目前正在開發(fā)的嵌入式系統(tǒng)中 , 49%的項(xiàng)目選擇 Linux作為嵌入式操作系統(tǒng)。 嵌入式 Linux是指對標(biāo)準(zhǔn) Linux經(jīng)過小型化裁剪處理之后,能夠固化在容量只有幾 K或者幾 M字節(jié)的存儲器芯片或者單片機(jī)中,適合于特定嵌入式應(yīng)用場合的專用 Linux操作系統(tǒng)。主流嵌入式 Linux產(chǎn)品有:美國墨西哥理工學(xué)院開發(fā)的嵌入式 Linux操作系統(tǒng) RT一Linux; Lineo公司的主打產(chǎn)品 uClinux;北京中科院紅旗軟件公司推出的紅旗嵌入式Linux等。 嵌入式 Linux 系統(tǒng)的優(yōu)勢 嵌入式操作系統(tǒng)作為嵌入式系統(tǒng)的核心部分,與桌面系統(tǒng)由很大不同.受到嵌入 式系統(tǒng)資源有限的影響,它要求代碼小,速度快,可靠性高.移植性好。 與其它專用嵌入式操作系統(tǒng)相比 (如下表 1所示 ), Linux具有很多優(yōu)點(diǎn) 。 表 1 嵌入式 Linux與專用嵌入式實(shí)時操作系統(tǒng)比較 比較 嵌入式 Linux 操作系統(tǒng) 專用嵌入式實(shí)時操作系統(tǒng) 購買費(fèi)用 免費(fèi) 數(shù)十萬 版權(quán)費(fèi) 免費(fèi) 一份產(chǎn)品交一份版權(quán)費(fèi) 穩(wěn)定性 較好,但高性能系統(tǒng)中需改進(jìn) 較好 實(shí)時性 需改進(jìn) 好 網(wǎng)絡(luò)特性 免費(fèi)且性能優(yōu)越 另加數(shù)十萬購買 移植性 容易 難 第二章 嵌入式 Linux 簡介 7 動態(tài)擴(kuò)展性 較好 差 技術(shù)支持 全世界自由軟件開發(fā)者提供支持 由 開發(fā)商獨(dú)自提供有限的技術(shù)支持 第一 ,Linux系統(tǒng)是層次結(jié)構(gòu)且內(nèi)核完全開放的。 Linux代碼完全開放.不同領(lǐng)域和不同層次的用戶可以根據(jù)自己的應(yīng)用需要方便地對內(nèi)核進(jìn)行修改。這樣可以低成本地設(shè)計和開發(fā)出滿足自己需要的嵌入式系統(tǒng)。 第二, 嵌入式 Linux移植性好。由于 Linux的大部分內(nèi)核代碼與微處理器無關(guān)。 將Linux移植到新的微處理器時。移植工作主要集中在一些存儲器管理及中斷處理程序上。移植性非常好,并且一旦完成移植,性能非常穩(wěn)定。 第三, Linux的內(nèi)核小、效率高。傳統(tǒng)嵌人式操作系統(tǒng)在這方面是笨拙的, 占 用過多的內(nèi)存,