嵌入式微處理器介紹_第1頁
嵌入式微處理器介紹_第2頁
嵌入式微處理器介紹_第3頁
嵌入式微處理器介紹_第4頁
嵌入式微處理器介紹_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

S3C2440A嵌入式微處理器S3C2440A處理器簡介S3C2440A是著名的半導(dǎo)體公司SAMSUNG推出的一款16/32位RISC微處理器,它為手持設(shè)備和一般類型的應(yīng)用提供了低價(jià)格、低功耗、高性能微控制器的解決方案。S3C2440A主要片上功能1.2V內(nèi)核供電,1.8V/2.5V/3.3V存儲(chǔ)器供電,3.3V夕卜部I/O供電具備16KB的I-Cache和16KBDCache/MMU。外部存儲(chǔ)控制器(SDRAM控制和片選邏輯)LCD控制器(最大支持4K色STN和256K色TFT)提供1通道LCD專用DMA。4通道DMA并有夕部請求引腳。通道UART(IrDA1.0,64字節(jié)TxFIFO,和64字節(jié)RxFIFO)。2通道SPI。1通道IIC-BUS接口(多主支持)。1通道IIS-BUS音頻編解碼器接口。AC'97解碼器接口兼容SD主接口協(xié)議1.0版和MMC卡協(xié)議2.11兼容版。2端口USB主機(jī)/1端口USB設(shè)備(1.1版)通道PWM定時(shí)器和1通道內(nèi)部定時(shí)器/看門狗定時(shí)器8通道10比特ADC和觸摸屏接口具有日歷功能的RTC相機(jī)接口(最大4096X4096像素的投入支持。2048X2048像素的投入,支持縮放)130個(gè)通用I/O口和24通道外部中斷源。具有普通,慢速,空閑和掉電模式。具有PLL片上時(shí)鐘發(fā)生器S3C2440A主要特性體系結(jié)構(gòu)為手持設(shè)備和通用嵌入式應(yīng)用提供片上系統(tǒng)解決方案。16/32位RISC體系結(jié)構(gòu)和ARM920T內(nèi)核強(qiáng)大的指令集。加強(qiáng)的ARM體系結(jié)構(gòu)MMU用于支持WinCE,EPOC32和Linux。采用高速指令I(lǐng)-Cache,高速數(shù)據(jù)D-Cache,寫緩沖器和物理地址TAGRAM以減少主存帶寬和響應(yīng)速度帶來的影響。采用ARM920TCPU內(nèi)核支持ARM調(diào)試體系結(jié)構(gòu)。內(nèi)部高級微控制總線(AMBA)體系結(jié)構(gòu)(AMBA2.0,AHB/APB)。系統(tǒng)管理器支持大/小端方式。支持高速總線模式和異步總線模式。尋址空間:每bank128M字節(jié)(總共1G字節(jié))。支持可編程的每bank8/16/32位數(shù)據(jù)總線帶寬。從bank0到bank6都采用固定的bank起始尋址。bank7具有可編程的bank的起始地址和大小。8個(gè)存儲(chǔ)器bank:其中6個(gè)適用于ROM,SRAM,和其他;另外2個(gè)適用于ROM/SRAM和同步DRAM。所有的存儲(chǔ)器bank都具有可編程的操作周期。支持外部等待信號延長總線周期。支持掉電時(shí)的SDRAM自刷新模式。支持各種型號的ROM弓I導(dǎo)(NOR/NANDFlash,EEPROM,或其他)。NANDFlash啟動(dòng)引導(dǎo)支持從NANDflash存儲(chǔ)器的啟動(dòng)。采用4KB內(nèi)部緩沖器進(jìn)行啟動(dòng)弓導(dǎo)。支持啟動(dòng)之后NAND存儲(chǔ)器仍然作為外部存儲(chǔ)器使用。支持先進(jìn)的NANDflash。Cache緩存64項(xiàng)全相連模式,采用I-Cache(16KB)和D-Cache(16KB)。每行8字長度,其中每行帶有一個(gè)有效位和兩個(gè)dirty位。偽隨機(jī)數(shù)或輪轉(zhuǎn)循環(huán)替換算法位。采用寫通式(write-through)或?qū)懟厥?write-back)cache操作來更新主存儲(chǔ)器。寫緩沖器可以保存16個(gè)字的數(shù)據(jù)和4個(gè)地址。時(shí)鐘和電源管理片上MPLL(Phase-LockedLoop)和UPLL:采用UPLL產(chǎn)生操作USB主機(jī)/設(shè)備的時(shí)鐘;MPLL產(chǎn)生最大400MHZ@1.3V操作MCU所需要的時(shí)鐘。通過軟件可以有選擇性的為每個(gè)功能模塊提供時(shí)鐘。電源模式:正常,慢速,空閑和掉電模式。正常模式:正常運(yùn)行模式慢速模式:不加PLL的低時(shí)鐘頻率模式??臻e模式:只停止CPU的時(shí)鐘。掉電模式:所有外設(shè)和內(nèi)核的電源都切斷了??梢酝ㄟ^EINT[15:0]或RTC報(bào)警中斷來從掉電模式中喚醒處理器。中斷控制器60個(gè)中斷源(1個(gè)看門狗定時(shí)器,5個(gè)定時(shí)器,9個(gè)UARTs24個(gè)外部中斷,4個(gè)DMA,2個(gè)RTC,2個(gè)ADC,1個(gè)IIC,2個(gè)SPI,1個(gè)SDI,2個(gè)USB,1個(gè)LCD,和1個(gè)電池故障,1個(gè)NAND和2個(gè)Camera),1AC97音頻電平/邊沿觸發(fā)模式的外部中斷源可編程的邊沿/電平觸發(fā)極性支持為緊急中斷請求提供快速中斷服務(wù)PWM定時(shí)器4通道16位具有PWM功能的定時(shí)器,1通道16位內(nèi)部定時(shí)器,可基于DMA或中斷工作??删幊痰恼伎毡戎芷?頻率和極性。能產(chǎn)生死區(qū)支持外部時(shí)鐘源RTC全面的時(shí)鐘特性:秒、分、時(shí)、日期,星期,月和年;32.768KHz工作具有報(bào)警中斷具有節(jié)拍中斷GPIO通用I/O口24個(gè)外部中斷端口130個(gè)多功能輸入/輸出端口DMA控制器4通道的DMA控制器;支持存儲(chǔ)器到存儲(chǔ)器,10到存儲(chǔ)器,存儲(chǔ)器到10和10到10的傳輸采用觸發(fā)傳輸模式來加快傳輸速率LCD控制器支持3種類型的STNLCD顯示屏:4位雙掃描,4位單掃描,8位單掃描顯示類型支持單色模式、4級、16級灰度STNLCD、256色和4096色STNLCD支持多種不同尺寸的液晶屏:LCD實(shí)際尺寸的典型值是:640X480,320X240,160X160及其他.;最大虛擬屏幕大小是4M字節(jié);256色模式下支持的最大虛擬屏是:4096X1024,2048X2048,1024X4096等支持彩色TFT的1,2,4或8bbp(像素每位)調(diào)色顯示支持16,24bbp無調(diào)色真彩顯示TFT在24bbp模式下支持最大16M色TFTLPC3600定時(shí)控制器,為嵌入式LTS350Q1-PD1/2(SAMSUNG3.5"Portrait/256kcolor/Reflectivea-SiTFTLCD)LPC3600定時(shí)控制器,為嵌入式LTS350Q1-PE1/2(SAMSUNG3.5”Portrait/256K色/Transflectivea-SiTFTLCD)支持多種不同尺寸的液晶屏:典型實(shí)屏尺寸:640X480,320X240,160X160及其他;最大虛擬屏大小4M字節(jié);64K色彩模式下最大的虛擬屏尺寸為2048X1024及其他。1.1.2.11串行異步收發(fā)器UART3通道UART,可以基于DMA模式或中斷模式工作支持5位,6位,7位或者8位串行數(shù)據(jù)發(fā)送/接收支持外部時(shí)鐘作為UART的運(yùn)行時(shí)鐘(UEXTCLK)可編程的波特率支持IrDA1.0具有測試用的還回模式每個(gè)通道都具有內(nèi)部64字節(jié)的發(fā)送FIFO和64字節(jié)的接收FIFO。1.1.2.12A/D轉(zhuǎn)換和觸摸屏接口8通道多路復(fù)用ADC最大500KSPS/10位精度內(nèi)部TFT直接觸摸屏接口1.1.2.13看門狗定時(shí)器16位看門狗定時(shí)器在定時(shí)器溢出時(shí)發(fā)生中斷請求或系統(tǒng)復(fù)位I2C總線接口1通道多主機(jī)I2C總線標(biāo)準(zhǔn)模式下數(shù)據(jù)傳輸速度可達(dá)100kbit/s,快速模式下可達(dá)到400kbit/s。IIS總線接口1通道音頻IIS總線接口,可基于DMA方式工作串行,每通道8/16位數(shù)據(jù)傳輸發(fā)送和接收具備128字節(jié)(64字節(jié)加64字節(jié))FIFO支持IIS格式和MSB-justified數(shù)據(jù)格式AC97音頻解碼器接口支援16位采樣1-ch立體聲PCM輸入/1-ch立體聲PCM輸出1-chMIC輸入U(xiǎn)SBhost接口2個(gè)USB主設(shè)備接口兼容OHCIRev.1.0標(biāo)準(zhǔn)兼容USB1.1標(biāo)準(zhǔn)USB從設(shè)備接口1個(gè)USB從設(shè)備接口具備5個(gè)Endpoint兼容USBver1.1標(biāo)準(zhǔn)SD接口支持正常、中斷和DMA數(shù)據(jù)傳輸模式(字節(jié),半字節(jié),文字傳輸)DMAburst4接入支持(只支持字傳輸)兼容SD存儲(chǔ)卡協(xié)議1.0兼容SDIO卡協(xié)議1.0發(fā)送和接收具有64字節(jié)FIFO兼容MMC卡協(xié)議2.11

SPI接口兼容2通道SPI協(xié)議2.11發(fā)送和接收具有2X8位的移位寄存器支持DMA和中斷模式1.1.2.21攝像頭接口支持ITU-RBT601/6568-bit模式;具有DZI(數(shù)字變焦)能力;具有極性可編程視頻同步信號;最大值支持4096x4096像素輸入(支持2048X2048像素輸入縮放);鏡頭旋轉(zhuǎn)(x軸,y軸,和180°旋轉(zhuǎn))相機(jī)輸出格式(16/24位RGB與YCBCR420/4:2:2格式);1.1.2.22工作電壓與頻率內(nèi)核:300MHz時(shí)1.20V;400MHz時(shí)1.3V內(nèi)存:支持1.8v/2.5v/3.0v/3.3v輸入/輸出:3.3vFclk最高達(dá)400MHzHclk最高達(dá)136MHzPclk最高達(dá)68MHz1.1.3S3C2440A系統(tǒng)結(jié)構(gòu)與封裝形式主要由兩大部分構(gòu)成:ARM920T內(nèi)核片內(nèi)外設(shè)。封裝形式:種在289-FBGA(Fine-PitchBallGridArray)種在細(xì)間距球柵陣列封裝,(通常稱作CSPChipScalePackage)是底部有焊球的面陣引腳結(jié)構(gòu),使封裝所需的安裝面積接近于芯片尺寸。ARM920T處理器核1.2.1ARM9TDMI內(nèi)核的編程模型ARM9TDMI實(shí)現(xiàn)的是ARM體系結(jié)構(gòu)v4T版本在編碼上兼容ARM7TDMI,但有以下兩點(diǎn)不同ARM9TDMI實(shí)現(xiàn)了基址恢復(fù)數(shù)據(jù)中止模型,不同ARM7TDMI的基赴更新數(shù)據(jù)中止模型。ARM9TDMI完全實(shí)現(xiàn)了體系結(jié)構(gòu)v4和v4T中加到ARM(32位)指令集上的指令擴(kuò)展空間。ARM9TDMI采用哈佛體系結(jié)構(gòu),實(shí)現(xiàn)了5級流水線。1.2.2ARM920T處理器的編程模型ARM920T是ARM9TDMI內(nèi)核加上Cache和MMU。ARM920T的編程模型由ARM9TDMI內(nèi)核的編程模型構(gòu)成并有如下增加和修改:(1)ARM920T加入了2個(gè)協(xié)處理器CP14,允許軟件訪問調(diào)試通信通道。CP15,系統(tǒng)控制協(xié)處理器,提供了一些附加寄存器用于配置和控制Cache、MMU、保護(hù)系統(tǒng)、時(shí)鐘模式、和其他ARM920T的系統(tǒng)選項(xiàng),如大端或小端操作。ARM920T還特有一個(gè)外部協(xié)處理器接口,允許在同一個(gè)芯片上附加緊耦合的協(xié)處理器,例如一個(gè)浮點(diǎn)單元。對于取指令以及數(shù)據(jù)加載和存儲(chǔ)操作產(chǎn)生的存諸器訪問可以被Cache緩沖。當(dāng)訪存操作引起TLB未命中時(shí),ARM920T的MMU可以自動(dòng)訪問由操作系統(tǒng)建立在主存中的頁表。(5)ARM920T有一個(gè)跟蹤接口,允許使用用于實(shí)時(shí)跟蹤指令和數(shù)據(jù)的硬件及各種工具。1.2.3ARM920T處理器的總線接口AMBA總線架構(gòu)ARM研發(fā)的AMBA(AdvancedMicrocontrollerBusArchitecture)提供一種特殊的機(jī)制,可將RISC處理器集成在其它IP芯核和外設(shè)中,2.0版AMBA標(biāo)準(zhǔn)定義了三組總線:AHB(AMBA高性能總線)、ASB(AMBA系統(tǒng)總線)、和APB(AMBA外設(shè)總線)。其中:ASB(AdvancedSystemBus)是第一代AMBA系統(tǒng)總線,也是目前常用的系統(tǒng)總線,用來連接高性能系統(tǒng)模塊,支持突發(fā)(Burst)方式數(shù)據(jù)傳送。AHB(AdvancedHigh-performanceBus)應(yīng)用于高性能、高時(shí)鐘頻率的系統(tǒng)模塊,用來研發(fā)寬帶寬處理器芯核的片上總線。AHB不但支持突發(fā)方式的數(shù)據(jù)傳送,還支持分離式總線事務(wù)處理,以進(jìn)一步提高總線的利用率。APB(AdvancedPeripheralBus)是本地二級總線(localsecondarybus),通過橋和AHB/ASB相連。它主要是為了滿足不需要高性能流水線接口或不需要高帶寬接口的設(shè)備的互連。ARM920T的總線接口ARM920T帶有一個(gè)單向的ASB接口,通過外加必要的額外控制信號可以保證AHB和ASB接口的高效實(shí)現(xiàn)。1.3S3C2440A的存儲(chǔ)器管理S3C2440A的存儲(chǔ)控制器概述S3C2440A的存儲(chǔ)器控制器提供訪問外部存儲(chǔ)器的所有控制信號。S3C2440A的存儲(chǔ)空間分成8組,最大容量是1GB,bank0---bank5為固定128MB,bank6和bank7的容量可編程改變,可以是2、4、8、16、32、64、128MB,并且bank7的開始地址與bank6的結(jié)束地址相連接,但是二者的容量必須相等。bankO可以作為引導(dǎo)ROM,其數(shù)據(jù)線寬只能是16位和32位,復(fù)位時(shí)由OMO、OM1引腳確定;其它存儲(chǔ)器的數(shù)據(jù)線寬可以是8位、16位和32位。S3C244OA的存儲(chǔ)器格式,可以編程設(shè)置為大端格式,也可以設(shè)置為小端格式。所有存儲(chǔ)器bank的存取周期都是可編程的??偩€訪問周期可以通過插入外部等待來延長。支持SDRAM的自刷新和掉電模式。1.3.2S3C2440A存儲(chǔ)器接口的控制寄存器內(nèi)存控制器為訪問外部存儲(chǔ)空間提供存儲(chǔ)器控制信號,S3C244OA存儲(chǔ)器控制器共有13個(gè)寄存器。寄存器地址功能操作復(fù)位值BWSCON0x48000000總線寬度和等待控制讀瀉0x0BANKCONO0x48000004BANK0控制讀瀉0x0700BANKCON10x48000008BANK1控制讀瀉0x0700BANKCON20x4800000CBANK2控制讀/寫0x0700BANKCON30x48000010BANK3控制讀瀉0x0700BANKCON40x48000014BANK4控制讀瀉0x0700BANKCON50x48000018BANK5控制讀瀉0x0700BANKCON60x4800001CBANK6控制讀/寫0x18008BANKCON70x48000020BANK7控制讀/寫0x18008REFRESH0x48000024SDRAM刷新控制讀/寫0xAC0000BANKSIZE0x48000028可變的組大小設(shè)置讀瀉0x0MRSRB60x4800002CBANK6模式設(shè)置讀瀉xxxMRSRB70x48000030BANK7模式設(shè)置讀瀉xxxS3C2440A的NandFlash控制器Norflash存儲(chǔ)器:讀速度高,支持芯片內(nèi)執(zhí)行(XIP,eXecuteInPlace),而擦、寫速度低,容量小,價(jià)格高。NORflash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個(gè)字節(jié)。Nandflash存儲(chǔ)器:讀速度不如Norflash,而擦、寫速度高,容量大,價(jià)格低。NAND器件使用復(fù)雜的I/O口來串行地存取數(shù)據(jù),各個(gè)產(chǎn)品或廠商的方法可能各不相同。8個(gè)引腳用來傳送控制、地址和數(shù)據(jù)信息。NAND讀和寫操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理此類操作,很自然地,基于NAND的存儲(chǔ)器就可以取代硬盤或其他塊設(shè)備。因此,現(xiàn)在不少用戶從Nandflash啟動(dòng)和引導(dǎo)系統(tǒng),而在SDRAM上執(zhí)行主程序代碼。NandFlash控制器概述S3C2440A微控制器從Nandflash的引導(dǎo)功能:其內(nèi)部有一個(gè)叫做“起步石(Steppingstone)”的SRAM緩沖器,系統(tǒng)啟動(dòng)時(shí),Nandflash存儲(chǔ)器的前面4KByte字節(jié)將被自動(dòng)載入到起步石中,然后系統(tǒng)自動(dòng)執(zhí)行這些載入的引導(dǎo)代碼。引導(dǎo)代碼執(zhí)行完畢后,自動(dòng)跳轉(zhuǎn)到SDRAM執(zhí)行。Nandflash操作的校驗(yàn)功能:使用S3C2440A內(nèi)部硬件ECC功能可以對Nandflash的數(shù)據(jù)進(jìn)行有效性的檢測。1.3.3.2NandFlash控制器主要特性NandFlash模式:支持讀/擦/編程N(yùn)andflash存儲(chǔ)器。自動(dòng)啟動(dòng)模式:復(fù)位后,引導(dǎo)代碼被送入Steppingstone,傳送后,引導(dǎo)代碼在Steppingstone中執(zhí)行。具有硬件ECC(糾錯(cuò)碼)功能:硬件產(chǎn)生糾錯(cuò)代碼。內(nèi)部4KB的SRAM緩沖器Steppingstone,在Nandflash引導(dǎo)后可以作為其他用途使用。1.3.3.3自動(dòng)啟動(dòng)代碼步驟完成復(fù)位。如果自動(dòng)導(dǎo)入模式使能,Nandflash存儲(chǔ)器的前面4K字節(jié)被自動(dòng)拷貝到Steppingstone內(nèi)部緩沖器中。Steppingstone被映射到nGCSO對應(yīng)的BANK0存儲(chǔ)空間。CPU在Steppingstone的4-KB內(nèi)部緩沖器中開始執(zhí)行引導(dǎo)代碼。注意:在自動(dòng)導(dǎo)入模式下,不進(jìn)行ECC檢測。因此,Nandflash的前4KB應(yīng)確保不能有位錯(cuò)誤(一般Nandflash廠家都確保)。1.3.4S3C2440A的時(shí)鐘和電源管理時(shí)鐘和電源控制模塊包含三個(gè)部分:時(shí)鐘控制,USB控制,和電源控制。S3C2440A中的時(shí)鐘控制邏輯可以產(chǎn)生各部分所需的時(shí)鐘信號,包括:CPU的所需FCLK信號,AHB總線外設(shè)所需的HCLK信號,和APB總線外設(shè)所需的PCLK信號。S3C2440A有兩個(gè)鎖相環(huán)(PhaseLockedLoops),一個(gè)用于FCLK,HCLK,PCLK.另一個(gè)則用于USB模塊(頻率為48MHz).時(shí)鐘控制邏輯可以在沒有鎖相環(huán)(PLL)的情況下降低時(shí)鐘頻率并且通過軟件控制時(shí)鐘也外設(shè)的通斷,此舉可以減少電源消耗。對于電源控制邏輯,S3C2440A有多種電源控制方案以在一種作業(yè)保持最低電源消耗oS3C2440A中的電源管理模塊可以激活四種模式:普通模式(NORMALmode)低速模式(SLOWmode),空閑模式(IDLEmode),和睡眠模式(SLEEPmode).普通模式(NORMALmode):模塊(指這里講到的時(shí)鐘和電源控制模塊)為S3C2440A片內(nèi)的CPU和外設(shè)提供時(shí)鐘。在這種模式下,所有外設(shè)都打開時(shí),電源消耗將會(huì)達(dá)到最大。這種模式允許用戶通過軟件控制外設(shè)的運(yùn)轉(zhuǎn)。例如:如果不需要使用定時(shí)器,用戶可以斷開時(shí)鐘與定時(shí)器的連接以減少電源消耗(通過控制CLKCON寄存器)。低速模式(SLOWmode):無鎖相環(huán)模式。與普通模式不同,低速模式使用的是直接把外部時(shí)鐘(XTIpll或EXTCLK)作為S3C2440A中的FCLK來使用。在這種模式下,電源消耗僅依賴于外部時(shí)鐘的頻率。鎖相環(huán)(PLL)引起的電源消耗將被排除??臻e模式(IDLEmode):模塊(指這里講的時(shí)鐘和電源控制模塊)使斷開時(shí)鐘(FCLK)與CPU核的連接,卻為所有其它外設(shè)提供時(shí)鐘信號??臻e模式將因CPU核空閑而導(dǎo)致電源消耗減少。任何對CPU的中斷請求都可以將其從空閑模式喚醒。睡眠模式(SLEEPmode):模塊(指這里所講的時(shí)鐘和電源控制模塊)斷開所有內(nèi)部電源。因此,在這種模式下,基于CPU和除喚醒邏輯以外的內(nèi)部邏輯的電源消耗都將不會(huì)發(fā)生。激活睡眠模式需要兩個(gè)獨(dú)立的電源。一個(gè)為喚醒模式供給能量。另一個(gè)則為包括CPU在內(nèi)的其他內(nèi)部邏輯供電,并且應(yīng)該可以控制開啟和關(guān)閉。在睡眠模式下,第二為CPU和內(nèi)部邏輯供能的電源將被關(guān)閉。從睡眠模式的喚醒可以通過EINT[15:0]或RTC鬧鐘中斷獲得。S3C2440A的I/O口I/O口概述S3C2440A共有130個(gè)多功能I/O引腳,分為9個(gè)I/O口。PORTA(GPA)25位的輸出口PORTB(GPB)11位的輸入/輸出口PORTC(GPC)16位的輸入/輸出口PORTD(GPD)16位的輸入/輸出口PORTE(GPE)16位的輸入/輸出口PORTF(GPF)8位的輸入/輸出口PORTG(GPG)16位的輸入/輸出口PORTH(GPH)9位的輸入/輸出口PORTJ(GPJ)13位的輸入/輸出口為了滿足不同系統(tǒng)配置和設(shè)計(jì)要求,可以很容易地通過軟件對這些I/O口進(jìn)行配置。每個(gè)引腳的功能必須在啟動(dòng)主程序之前進(jìn)行定義。如果一個(gè)引腳沒有復(fù)用功能,那么它可以被配置為I/O口。詳細(xì)內(nèi)容見S3C2440AMICROCONTROLLERUSER'SMANUAL在S3C2440A中,大部分引腳都是復(fù)用的,所以需要對每一個(gè)引腳定義其功能.為了使用I/O口,首先也要定義引腳的功能?與配置I/O相關(guān)的寄存器包括:端口控制寄存器(GPnCON)端口數(shù)據(jù)寄存器(GPnDAT)端口上拉寄存器(GPnUP)雜項(xiàng)寄存器外部中斷控制寄存器(EXTINTN)S3C2440A的中斷管理1.5.1ARM中斷原理ARM系統(tǒng)有兩類中斷:IRQ中斷普通中斷FIQ中斷快速中斷優(yōu)先級高于IRQ中斷。兩種中斷都會(huì)使ARM進(jìn)行異常模式。異常類型模式低向量地址高向量地址復(fù)位管理0x000000000xFFFF0000未定義指令未定義0x000000040xFFFF0004軟件中斷(SWI)管理0x000000080xFFFF0008預(yù)取中止(取指令存儲(chǔ)器中止)中止0x0000000C0xFFFF000C數(shù)據(jù)中止(數(shù)據(jù)訪問存儲(chǔ)器中止)中止0x000000100xFFFF0010IRQ(中斷)IRQ0x000000180xFFFF0018FIQ(快速中斷)FIQ0x0000001C0xFFFF001CARM系統(tǒng)中斷處理過程:中斷的進(jìn)入將下一條指令的地址存入相應(yīng)連接寄存器LR,以便程序在處理異常返回時(shí)能從正確的位置重新開始執(zhí)行。將CPSR復(fù)制到相應(yīng)的SPSR中。根據(jù)異常類型,強(qiáng)制設(shè)置CPSR的運(yùn)行模式位。強(qiáng)制PC從相關(guān)的異常向量地址取下一條指令執(zhí)行,從而跳轉(zhuǎn)到相應(yīng)的異常處理程序。*在中斷處理程序中,可以設(shè)置中斷禁止位來阻止其他無法處理的異常嵌套。從中斷返回如果進(jìn)入時(shí)設(shè)置了中斷禁止位,那么清楚該標(biāo)志。將連接寄存器LR的值減去相應(yīng)的偏移量后送到PC中。(3)將SPSR復(fù)制到CPSR中。S3C2440A的中斷系統(tǒng)S3C2440A的中斷控制器可以接收60路中斷源的輸入。這些中斷源由如DMA控制器、UART、IIC或其他內(nèi)部外圍設(shè)備提供的。它支持兩種中斷模式:FIQ和IRQ。每個(gè)中斷源都可以決定中斷請求時(shí)使用哪種模式。S3C2440A的中斷控制器可以接收60路中斷源的輸入。這些中斷源由如DMA控制器、UART、IIC或其他內(nèi)部外圍設(shè)備提供的。它支持兩種中斷模式:FIQ和IRQ。每個(gè)中斷源都可以決定中斷請求時(shí)使用哪種模式。1.5.2.1中斷掛起寄存器中斷源掛起寄存器(SRCPND):有效位32位,可讀寫。也就是中斷請求寄存器,用于指示某個(gè)中斷請求是否發(fā)生。注意的是,SRCPND由中斷源自動(dòng)設(shè)置。在中斷服務(wù)例程中需要清除相應(yīng)位(設(shè)為0)。否則系統(tǒng)將認(rèn)為是該中斷源又產(chǎn)生了一次請求。中斷掛起寄存器(INTPND):有效位32位,可讀寫。用于記錄最后向ARM920T內(nèi)核發(fā)出的中斷請求。類似于以前學(xué)過的中斷服務(wù)寄存器。和SRCPND一樣,在中斷服務(wù)例程中也要清除該位當(dāng)多個(gè)中斷源請求中斷服務(wù)時(shí),SRCPND中的相應(yīng)位均會(huì)置1,經(jīng)過優(yōu)先級仲裁后INTPND寄存器中只有一位置1。這兩個(gè)寄存器的內(nèi)容在中斷響應(yīng)后應(yīng)馬上被清除(需編程寫入數(shù)據(jù)清除)。1.522中斷屏蔽寄存器(INTMSK)寄存器有效位為32位,可讀寫。用于禁上某個(gè)中斷的響應(yīng)。為1有效。它的作用是決定該位相應(yīng)的中斷請求是否被處理。若某位被設(shè)置為1,則該位相對應(yīng)的中斷產(chǎn)生后將被忽略(CPU不處理該中斷請求),設(shè)置為0則CPU對其進(jìn)行處理。該寄存器初始化值為OxFFFFFFFF,既默認(rèn)情況下所有的中斷都是被屏蔽的。中斷模式寄存器(INTMOD)用于設(shè)定某個(gè)中斷的響應(yīng)模式,為1為FIQ,為0為IRQ。注意:控制器中僅僅一個(gè)中斷源可以以FIQ方式處理。因此,INTMOD只能有一位設(shè)為1。1.523中斷優(yōu)先級控制寄存器(PRIORITY)寄存器有32位,有效位[20:0],可讀寫,此寄存器的作用是如果有幾個(gè)中斷源同時(shí)觸發(fā),假如這幾個(gè)中斷源都沒被屏蔽,并且都是IRQ模式,因此就要判定哪個(gè)中斷源的優(yōu)先級最高,使其在INTPND寄存器中對應(yīng)位置1,CPU轉(zhuǎn)向相應(yīng)的中斷服務(wù)程序,讓中斷服務(wù)程序來處理相應(yīng)的中斷請求。1.524中斷偏移寄存器(INTOFFSET)有效位為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論