版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1第四章存儲系統(tǒng)機制
及存儲器接口
存儲系統(tǒng)機制及存儲器接口存儲器是嵌入式系統(tǒng)中的主要硬件部件,用于存儲指令碼及相關的數據。目前有許多嵌入式CPU芯片內部集成有一定容量的易失性及非易失性的存儲器。但也有需要擴展外部存儲器芯片的。總線
總線是把微處理器與存儲器、I/O端口及設備相連接的信息通道,但總線并不僅僅指的是一束信號線,而應包含相應的通信協(xié)議和規(guī)則。在嵌入式系統(tǒng)中,按照使用場合的不同,我們可以把總線分成:(1)片上總線(2)板級總線(3)系統(tǒng)級總線AMBA總線片上總線即是微處理器芯片內部的總線,典型的如ARM公司提出的AMBA總線。AMBA總線AMBA是AdvancedMicrocontrollerBusArchitecture的縮寫,是一種開放的,用于高性能嵌入式系統(tǒng)中的總線規(guī)范。AMBA總線規(guī)范2.0版本中包含了4個部分:AHB、ASB、APB和TestMethodology。其中:①AHB是AdvancedHighPerformaceBus的縮寫,用于芯片內高性能系統(tǒng)模塊連接的總線,支持突發(fā)模式數據傳輸和事務處理。②ASB是AdvancedSystemBus的縮寫,也是用于芯片內高性能系統(tǒng)模塊的連接,支持突發(fā)模式數據傳輸。這是早期的系統(tǒng)總線格式,現在由AHB取代。③APB是AdvancedPeriPheralBus的縮寫,是用于芯片內較低性能的I/O部件或模塊的連接,一般是作為ARM系列微處理器芯片中二級總線用。④TestMethodology是AMBA總線規(guī)范中所制定的測試方法。板級總線板級總線是指板卡中芯片與芯片之間、或者板卡與板卡之間的連接總線。典型的如PC-104總線、PCI總線等。但是,嵌入式系統(tǒng)由于受到應用條件的約束,特別是體積方面的約束,因此,在構建板級目標系統(tǒng)時,往往并未采用標準化的總線,而是直接完成芯片與芯片引腳間的連接。嵌入式系統(tǒng)的板級目標系統(tǒng)硬件平臺設計時,主要完成的任務是把微處理器芯片與其它芯片進行有機的連接。S3C2410及片上總線
S3C2410是韓國三星公司推出的16/32位RISC微控制器,其CPU采用的是ARM920T內核,加上豐富的片內外設,為手持設備和其它應用,提供了低價格、低功耗、高性能微控制器的解決方案。
一、主要特性具有16KB指令Cache、16KB數據Cache和存儲器管理單元MMU。外部存儲器控制器,可擴展8組,每組128MB,總容量達1GB;支持從Nandflash存儲器啟動。55個中斷源,可以設定1個為快速中斷,有24個外部中斷,并且觸發(fā)方式可以設定。4通道的DMA,并且有外部請求引腳。3個通道的UART,帶有16字節(jié)的TX/RXFIFO,支持IrDA1.0功能。具有2通道的SPI、1個通道的IIC串行總線接口和1個通道的IIS音頻總線接口。有2個USB主機總線的端口,1個USB設備總線的端口。有4個具有PWM功能的16位定時器和1個16位內部定時器。8通道的10位A/D轉換器,最高速率可達500kB/s;提供有觸摸屏接口。具有117個通用I/O口和24通道的外部中斷源。兼容MMC的SD卡接口。具有電源管理功能,可以使系統(tǒng)以普通方式、慢速方式、空閑方式和掉電方式工作??撮T狗定時器。具有日歷功能的RTC。有LCD控制器,支持4K色的STN和256K色的TFT,配置有DMA通道。具有PLL功能的時鐘發(fā)生器,時鐘頻率高達203MHz。雙電源系統(tǒng):1.8/2.0V內核供電,3.3V存儲器和I/O供電。二、系統(tǒng)結構 主要由兩大部分構成:
ARM920T內核 片內外設。
1、ARM920T內核 由三部分:ARM9內核ARM9TDMI、32KB的Cache、MMU。
2、片內外設
分為高速外設和低速外設,分別用AHB總線和APB總線。S3C2440片上總線—引腳封裝與引腳信號:S3C微控制器是289-FBGA封裝其信號可以分成:addr0addr26、Data0data31、GPA0GPA22GPB10、GPC15、GPD15、GPE15、GPF7、GPG15、GPH10、EINT23、nGCS0—nGCS7、AIN7、IIC、SPI、OM0OM3等,大部分都是復用的(3)控制類信號引腳
又可以分成幾個子類:
1、總線控制信號
·OM1、OM0:這2根信號線是S3C2440的模式選擇信號引腳,用來確定芯片的模式以及數據線的寬度。OM[1:0所決定的啟動方式OM[1:0]=00時,處理器從NANDFlash啟動OM[1:0]=01時,處理器從16位寬度的ROM啟動OM[1:0]=10時,處理器從32位寬度的ROM啟動。OM[1:0]=11時,處理器從TestMode啟動。(3)控制類信號引腳
又可以分成幾個子類:
1、總線控制信號·nWE(輸出引腳):寫使能信號,用來指示當前總線周期為寫周期。
·nOE:讀使能信號引腳,用來指示當前總線周期為讀周期。
·nWAIT(輸入引腳):等待信號引腳,用來請求延長當前周期。
·nXBREQ(輸入引腳):總線請求。
·nXBACK(輸出引腳):總線應答。
2、NANDFlash控制信號
3、SDRAM控制信號(4)I/O部件接口引腳
這類功能的引腳有許多,主要是完成相應的接口部件功能,例如:UART的串口通信引腳、LCD顯示器接口引腳、攝像頭接口引腳等。(5)其它功能類引腳
其它功能類引腳主要包括:JTAG調試接口引腳、復位引腳、時鐘電路引腳、以及電源引腳等。
JTAG概述
JTAG是JointTestActionGroup(聯合測試行動組)的簡稱。IEEE1149.1標準是由JTAG這個組織最初提出來的,最終由IEEE批準并標準化的,所以,IEEE1149.1標準也俗稱JTAG標準。
JTAG標準主要用于芯片內部測試及對系統(tǒng)進行仿真、調試。在芯片內部封裝專門的電路測試訪問接口(TAP),通過專用的JTAG測試工具對內部節(jié)點進行測試。目前,大多數復雜的器件都支持JTAG協(xié)議,如ARM、DSP、FPGA等。JTAG接口的IC內部結構ARM處理器的實時JTAG仿真器與開發(fā)板的連線圖1)14針JTAG接口定義引
腳名
稱描
述1、13VCC接電源3nTRST測試系統(tǒng)復位信號5TDI測試數據串行輸入7TMS測試模式選擇9TCK測試時鐘11TDO測試數據串行輸出12NC未連接其他GND接地接口電路設計2)20針JTAG接口定義引
腳名
稱描
述1VTref目標板參考電壓,接電源2VCC接電源3nTRST測試系統(tǒng)復位信號5TDI測試數據串行輸入7TMS測試模式選擇9TCK測試時鐘11RTCK測試時鐘返回信號13TDO測試數據串行輸出15nRESET目標系統(tǒng)復位信號17、19NC未連接其他GND接地S3C2440的時鐘控制邏輯能夠產生系統(tǒng)所需要的時鐘,包括CPU的FCLK,AHB總線接口的HCLK,和APB總線接口的PCLK。
S3C2440A有兩個PLL(MPLL和UPLL)
,一個MPLL用于FCLK,HCLK,PCLK,另一個UPLL用于USB模塊(48MHZ)。
FCLK用于ARM920T;
HCLK用于AHB總線(包括ARM920T,存儲控制器,中斷控制器,LCD控制器,DMA和USB主機);
PCLK用于APB總線(包括外設如WDT,IIS,I2C,PWM,PWM,TIMER,MMC,ADC,UART,GPIO,RTC,SPI)。主時鐘源由一個外部晶振或者外部時鐘產生。時鐘源選擇
下表描述了模式控制引腳(OM3和OM2)和選擇時鐘源之間的對應關系。OM[3:2]=00時,MPLL和UPLL的時鐘均選擇外部振蕩器;S3C2440S3C2440OM3OM2OM[3:2]=11時,MPLL和UPLL的時鐘均選擇外部時鐘源。VDDOM3OM2S3C2440S3C2440外部振蕩器晶振電路設計外部振蕩器電路有12MHz晶振和2個15pF的微調電容組成,12MHz的時鐘信號經過片內的PLL倍頻可以達到203MHz。系統(tǒng)所需要的RTC時鐘采用相同的方式。
復位電路可以使用簡單的阻容復位(RC),這個電路成本低廉,但不能保證任何情況產生穩(wěn)定可靠的復位信號,所以一般場合需要使用專門的復位芯片。阻容復位電路S3C2410nRESETVDD10k10uF復位電路其它板級總線標準(1)PC-104總線
PC-104總線是專門為控制領域的應用而定義的嵌入式系統(tǒng)總線,它支持采用堆棧結構的總線形式,通過PC-104總線,可以把各板卡疊加在一起,從而構建小型的、高可靠性的嵌入式系統(tǒng)。(2)STD總線
STD總線也是在工業(yè)控制領域被使用的一種嵌入式系統(tǒng)板級總線(3)PCI總線
PCI總線是PC機中被廣泛使用的板級總線標準。在有些嵌入式系統(tǒng)中,也會采用PCI總線作為其板級總線。存儲系統(tǒng)及管理
一、存儲系統(tǒng)的組織結構在復雜的嵌入式系統(tǒng)中,存儲系統(tǒng)的組織結構按作用可以劃分為4級:寄存器、cache(緩存區(qū))、主存儲器和輔助存儲器。如下圖所示。注:對于簡單的嵌入式系統(tǒng)來說,沒有必要把存儲器系統(tǒng)設計成4級,最簡單的嵌入式系統(tǒng)只需要寄存器和主存儲器即可。存儲系統(tǒng)寄存器是包含在微處理器核內部的,是微處理器核的重要組成部分,它用來作指令執(zhí)行時的數據存放單元。Cache是高速緩存,通常又分成數據緩存和指令緩存2種。主存儲器是程序執(zhí)行代碼及數據的存放區(qū),通常存放指令代碼的存儲器是非易失性的存儲器。輔助存儲器通常用來存儲大容量數據,或者作為程序代碼的備份存儲空間,由NANDFlash類型的非易失性存儲器芯片來承擔。三、存儲管理單元在復雜的嵌入式系統(tǒng)設計時,越來越多的會選用帶有存儲管理單元(MMU)的微處理器芯片。MMU完成的主要功能有:(1)將主存地址從虛擬存儲空間映射到物理存儲空間。(2)存儲器訪問權限控制。(3)設置虛擬存儲空間的緩沖特性等。用于存儲管理的系統(tǒng)控制協(xié)處理寄存器CP15在基于ARM的嵌入式系統(tǒng)中,存儲系統(tǒng)通常使用CP15來完成存儲器的大部分管理工作;除了CP15之外,在具體的存儲機制中可能還會用到其他技術如:頁表技術等。CP15可以保護16個32位的寄存器,編號0-15。實際上對于某些編號的寄存器可能對應有多個物理寄存器,在指令中指定特定的標志位來區(qū)分相應的寄存器。MCR:寫協(xié)處理器指令,將ARM中的Rn寄存器的值寫入協(xié)處理器的Cn中。MRC:讀協(xié)處理器指令,將協(xié)處理器的Cn寄存器的值讀入ARM的Rn中。MCR寫CP15指令語法
MCR{cond}p15,<op1>,<Rd>,<CRn>,<CRm>{,<op2>}
OP1為協(xié)處理器將執(zhí)行的操作的代碼。對于CP15來說,該值必須為0;Rd為源寄存器,其值將被傳送到協(xié)處理器中;該寄存器不能為PC;CRn是協(xié)處理器的目標寄存器,可以是C0-15;CRm是附加的目標寄存器或源操作數寄存器,用于區(qū)分同一編號的不同物理寄存器,當指令中不需要附加信息時要將C0指定為CRm;OP2也提供附加信息,用于區(qū)分同一編號的不同物理寄存器,當指令中不需要附加信息時,可以省略或者將其置0。MCR寫CP15MCR P15,0,R4,C1,C0,0上述指令從ARM寄存器R4中將數據傳送到協(xié)處理器CP15的寄存器C1中。其中R4為ARM寄存器,存放源操作數;C1和C0為協(xié)處理器寄存器,為目標寄存器;操作碼1為0,操作碼附加信息也為0。MRC讀CP15指令語法
MRC{cond}p15,<op1>,<Rd>,<CRn>,<CRm>{,<op2>}
OP1為協(xié)處理器將執(zhí)行的操作的代碼。對于CP15來說,該值必須為0;Rd為目標寄存器,指令處理的結果將存放在該寄存器中;CRn是協(xié)處理器寄存器,存放第一個源操作數;CRm是附加的源操作數寄存器,用于區(qū)分同一編號的不同物理寄存器,當指令中不需要附加信息時要將C0指定為CRm;OP2也提供附加信息,用于區(qū)分同一編號的不同物理寄存器,當指令中不需要附加信息時,可以省略或者將其置0。CP15寄存器列表編號基本作用在MMU中的作用在PU中的作用0ID編碼(只讀)ID編碼和Cache類型1控制位(可讀可寫)各種控制位2存儲保護和控制地址轉換表基地址Cachability控制位3存儲保護和控制域(domain)訪問控制位Bufferability控制位4存儲保護和控制保留保留5存儲保護和控制內存失效狀態(tài)訪問權限控制位6存儲保護和控制內存失效地址保護區(qū)域控制7高速緩存和寫緩存高速緩存和寫緩存控制8存儲保護和控制TLB控制保留9高速緩存和寫緩存高速緩存鎖定10存儲保護和控制TLB鎖定保留11保留12保留13進程標示符進程標示符14保留15因不同設計而異因不同設計而異因不同設計而異CP15寄中的寄存器C0存放ARM相關的一些標識符,C0只讀,當MRC指令中制定不同的opcode2時,獲取到的是不同的標識符:opcode2編碼 對應的標識符寄存器
0 主標識符寄存器
1 Cache類型標識符寄存器其他 保留示例:MRCP15,0,R0,C0,C0,0;將該ARM芯片的標示符讀取到ARM寄存器R0中。示例:MRCP15,0,R0,C0,C0,1;將該ARM芯片的cache類型讀取到ARM寄存器R0中。CP15中的寄存器C1控制寄存器,包括以下控制功能:禁止/使能MMU以及其他的與存儲系統(tǒng)相關的功能。配置存儲系統(tǒng)及ARM處理器中相關部分的工作方式。使用MCR或MRC時,CRm和opcode2都為0。
MCRp15,0,R0,C1,0,0MRCp15,0,R3,C1,0,031161514131211109876543210SBZP/UNPL4RRVIZFRSBLDPWCAMM(bit[0]):使能MMU,0=禁止MMU,1=允許MMUA(bit[1]):使能地址對齊檢查,0=禁止,1=允許寄存器C1的MMU控制位:CP15中的寄存器C1C(bit[2]):當數據和指令cache分開時,使能數據cache,否則使能整個cache。0=禁止,1=使能。W(bit[3]):使能寫入緩沖,0=禁止,1=使能。P(bit[4]):兼容26位地址,控制PROG32控制信號。0=異常中斷處理程序進入32位地址模式,1=進入26位模式。D(bit[5]):兼容26位地址,控制DATA32控制信號。0=禁止26位地址異常檢查,1=使能。L(bit[6]):ARMv3及以前版本,0=早期中止模型,1=后期B(bit[7]):內存模式,0=little-endian,1=big-endian。S(bit[8]):在基于MMU的存儲系統(tǒng)中,用作系統(tǒng)保護。R(bit[9]):在基于MMU的存儲系統(tǒng)中,用作ROM保護。CP15中的寄存器C1F(bit[10]):由生產商定義。Z(bit[11]):使能跳轉預測,0=禁止,1=使能。I(bit[12]):當數據和指令cache分開時,使能指令cache。0=禁止,1=使能。V(bit[13]):控制中斷向量表的位置。0=0x00-0x1c,1=0xFFFF0000-0xFFFF001c。RR(bit[14]):選擇cache的淘汰算法,0=常規(guī)淘汰算法,1=預測性淘汰算法。L4(bit[15]):對于ARMv5及以上版本,兼容以前版本功能,0=保持當前功能,1=兼容以前版本。存儲管理單元MMU概述MMU主要完成以下工作:實現虛擬地址空間到物理存儲空間的映射;存儲器訪問權限的控制;設置虛擬存儲空間的緩沖特性。頁表(translatetable)是實現上述功能的一個重要手段,它實際上是位于內存中的一個對照表。ARM系統(tǒng)中CP15的C2寄存器用來保存頁表的基地址。存儲管理單元MMU概述地址變換條目:頁表的每一行對應與虛擬地址空間的一個頁,該行同時保含了該虛擬內存頁對應的物理內存頁的地址、該頁的訪問權限以及緩沖特性等。我們將頁表中的一行稱為地址變換條目。頁表存放在內存中,系統(tǒng)通常有一個寄存器來保存頁表的基地址。ARM系統(tǒng)中使用的就是CP15的寄存器C2??毂恚簭奶摂M地址到物理地址的轉換實際上就是查詢頁表的過程。由于程序在執(zhí)行過程中具有局部性,即在一段時間內只是局限在少數幾個單元,為了加快頁表的查詢速度,在系統(tǒng)中通常使用一個容量更小、速度更快的存儲器件來保存當前需要訪問的地址變換條目,這個容量小的頁表又稱作快表(TLB)。存儲管理單元MMU概述快表的使用:更新:當CPU需要訪問內存時,首先在TLB中查找需要的地址變換條目。若不存在則在內存頁表中查詢,并把查詢的結果添加到TLB中。清除:當內存中頁表的內容改變或者使用新的頁表時,TLB中的內容需要清空。CP15的寄存器C8用于完成該功能。鎖定:可以將一個地址變換條目鎖定在TLB中,以加快訪問速度,CP15的寄存器10用于完成該功能。與MMU操作相關的寄存器1控制位(可讀可寫)各種控制位2存儲保護和控制地址轉換表基地址Cachability控制位3存儲保護和控制域(domain)訪問控制位Bufferability控制位4存儲保護和控制保留保留5存儲保護和控制內存失效狀態(tài)訪問權限控制位6存儲保護和控制內存失效地址保護區(qū)域控制8存儲保護和控制TLB控制保留10存儲保護和控制TLB鎖定保留MMU中地址變換過程虛擬存儲空間到物理存儲空間的映射是以內存塊為單位進行的。根據存儲塊大小,可以支持多種地址變換。ARM支持的存儲塊的大小有以下幾種:段(section):由1MB的存儲器塊構成(20位)大頁(largepage):由64KB的存儲器塊構成(16位)小頁(smallpage):由4KB的存儲器塊構成(12位)微頁(tinypage):由1KB的存儲器塊構成(10位)通過采用另外的訪問控制機制,還可將大頁分為16KB的子頁;將小頁分為1KB的子頁;極小頁不能再分。MMU中地址變換過程在MMU中采用兩級頁表實現上述地址映射:一級頁表中包含有以段為單位的地址變換條目以及只想二級頁表的指針。一級頁表實現的地址映射粒度較大;二級頁表中包含以大頁和小頁為單位的地址變換條目。其中一種類型的二級表還包含有極小頁為單位的地址變換條目?;谝患夗摫淼牡刂纷儞Q一級頁表描述符可能的格式:基于段地址的映射示意圖粗頁表中大頁的尋址過程粗頁表中小頁的尋址過程細頁表中微頁的尋址過程53APSR特權模式用戶模式0b0000不能訪問不能訪問
0b0010只讀不能訪問
0b0001只讀只讀
0b0011不可預測不可預測
0b01XX讀/寫不能訪問
0b10XX讀/寫只讀
0b11XX讀/寫讀/寫
MMU中的存儲訪問權限控制存儲器接口設計方法在構建嵌入式系統(tǒng)的目標硬件平臺時,有些微處理器芯片內部沒有集成存儲器或者集成的存儲器容量不足,那么,就需要外接存儲器芯片來構建所需容量的存儲空間。下面討論需要在微處理器芯片外部設計主存儲器接口電路的問題,并討論輔助存儲器的接口電路設計問題。一、存儲器芯片分類存儲器根據其存取方式分成兩大類:隨機存儲器(RAM)類和只讀存儲器(ROM)類。(1)隨機存儲器(具有易失性的特點)隨機存儲器又分為兩大類:*靜態(tài)隨機存儲器(SRAM)*動態(tài)隨機存儲器(DRAMSRAM(靜態(tài)隨機存儲器)通俗的說,是在上電的情況下,其存儲內容不會丟失的存儲器。它們通常是以雙穩(wěn)態(tài)觸發(fā)器為基礎,數據一經寫入,只要不掉電,數據就一直保存著。SRAM芯片內部的存儲容量一般不大,通常約在幾K~幾百K范圍內。典型的如:HM62256芯片,其容量為32KB。HM62256芯片引腳:地址線15根,數據線8根,控制信號線3根(讀、寫、片選),電源線及地線2根。流行的DRAM類別:SDRAM(SynchronousDynamicRandomAccessMemory的縮寫,即同步動態(tài)隨機存儲器)。動態(tài)存儲器中信息是存放在電容上的,需要定時刷新,需要有行選通RAS、列選通信號CAS,且地址信號線是復用的。SDRAM在內部結構及使用上與標準DRAM有很大不同。引起不同的基本出發(fā)點就是希望SDRAM的速度更快一些,滿足微處理器對主存速度的要求。SDRAM的容量經常用XX存儲單元×X體×每個存儲單元的位數來表示。如:HY57V561620是一款SDRAM芯片。其容量為:4M×4Bank×16b(即32MB)。其典型的引腳圖如:其中:A0~A12是地址線,行地址和列地址復用A0~A8。行地址為RA0~RA12,列地址為CA0~CA8。DQ0~DQ15是數據線。BA0、BA1是塊(Bank)選擇線。nRAS:行地址選通信號線。nCAS:列地址選通信號線。nCS:片選信號引線。(2)只讀存儲器(具有非易失性的特點)只讀存儲器(ROM)是指那種其內部存儲單元中的數據不會隨失電而丟失的存儲器。在嵌入式系統(tǒng)中,只讀存儲器中通常存儲程序代碼和常數。只讀存儲器通常又分成EPROM、EEPROM和閃存(Flash)。Flash又有NORFlash和NANDFlash兩大類。EPROM類型的芯片目前基本處于淘汰地位,只有在一些低端嵌入式系統(tǒng)還在使用。Flash是目前嵌入式系統(tǒng)中使用的主流非易失性存儲器。幾種ROM型芯片外形圖。EPROM型芯片外形圖EEPROM型芯片外形圖S3C2410的存儲器配置S3C2440的存儲器系統(tǒng)—可通過軟件選擇大小端—地址空間:每個Bank128Mbytes(總共1GB)—除bank0(16/32-bit)外,所有的Bank都可以通過編程選擇總線寬度=(8/16/32-bit)—共8個banks6個Bank用于控制ROM,SRAM,etc.剩余的兩個Bank用于控制ROM,SRAM,SDRAM,etc.—7個Bank固定起始地址;—最后一個Bank可調整起始地址;—最后兩個Bank大小可編程—所有Bank存儲周期可編程控制;Bank6/Bank7地址分布Bank6和Bank7上的存儲器大小必須相同S3C2410的存儲器配置二、存儲器接口設計方法(1)SROM型存儲器接口設計方法SROM型存儲器,是SRAM型存儲器、EPROM型存儲器、NORFlash型存儲器的統(tǒng)稱。上述3類存儲器芯片與微處理器之間的接口電路設計方法是相似的。SROM型存儲器接口的信號線一般有:(1)片選信號線CE。(2)讀/寫控制信號線。(3)若干根地址線。(4)若干根數據線。接口電路原理框圖如右圖所示。
與1片16位16M的SDRAM的連接方法與2片16位16M的SDRAM的連接方法HY57V561620的結構
HY57V561620存儲容量為4M×4bank×16位(32M字節(jié)),工作電壓為3.3V,常見封裝為54腳TSOP,支持自動刷新(Auto-Refresh)和自刷新(Self-Refresh),16位數據寬度68
10.2.2HY57V561620的結構
引腳 名稱CLK
時鐘CKE
時鐘使能/CS
片選BA0,BA1
組地址選擇A12~A0
地址總線/RAS
行地址鎖/CAS
存列地址鎖/WE
存寫使能LDQM,UDQM數據I/O屏蔽DQ15~DQ0
數據總線VDD/VSS
電源/地VDDQ/VSSQ電源/地NC
未連接69
二、存儲器的控制寄存器 內存控制器為訪問外部存儲空間提供存儲器控制信號,S3C2440存儲器控制器共有13個寄存器。寄存器地址功能操作復位值BWSCON0x48000000總線寬度和等待控制讀/寫0x0BANKCON00x48000004BANK0控制讀/寫0x0700BANKCON10x48000008BANK1控制讀/寫0x0700BANKCON20x4800000CBANK2控制讀/寫0x0700BANKCON30x48000010BANK3控制讀/寫0x0700BANKCON40x48000014BANK4控制讀/寫0x0700BANKCON50x48000018BANK5控制讀/寫0x0700BANKCON60x4800001CBANK6控制讀/寫0x18008BANKCON70x48000020BANK7控制讀/寫0x18008REFRESH0x48000024SDRAM刷新控制讀/寫0xAC0000BANKSIZE0x48000028可變的組大小設置讀/寫0x0MRSRB60x4800002CBANK6模式設置讀/寫xxxMRSRB70x48000030BANK7模式設置讀/寫xxx第9次到此此
1、總線寬度和等待控制寄存器31302928272625242322212019181716ST7WS7DW7ST6WS6DW6ST5WS5DW5ST4WS4DW41514131211109876543210ST3WS3DW3ST2WS2DW2ST1WS1DW1XDW0XSTn:控制存儲器組n的UB/LB引腳輸出信號。
1:使UB/LB與nBE[3:0]相連;
0:使UB/LB與nWBE[3:0]相連WSn:使用/禁用存儲器組n的WAIT狀態(tài)
1:使能WAIT;0:禁止WAITDWn:控制存儲器組n的數據線寬
00:8位;01:16位;10:32位;11:保留Tacs:設置nGCSn有效前地址的建立時間
00:0個;01:1個;10:2個;11:4個時鐘周期Tcos:設置nOE有效前片選信號的建立時間
00:0個;01:1個;10:2個;11:4個時鐘周期Tacc:訪問周期
000:1個;001:2個;010:3個;011:4個時鐘
100:6個:101:8個;110:10個;111:14個1514131211109876543210TacsTcosTaccTcohTcahTacpPMC2、BANKn存儲器組控制寄存器(n=0--5)31302928272625242322212019181716Tcoh:nOE無效后片選信號的保持時間
00:0個;01:1個;10:2個;11:4個時鐘Tcah:nGCSn無效后地址信號的保持時間
00:0個;01:1個;10:2個;11:4個時鐘Tacp:頁模式的訪問周期
00:2個;01:3個;10:4個;11:6個時鐘PMC:頁模式的配置,每次讀寫的數據數
00:1個;01:4個;10:8個;11:16個 注:00為通常模式。
注:紫色為實驗箱上的配置,其值為0x0700MT:設置存儲器類型
00:ROM或者SRAM,[3:0]為Tacp和PMC;
11:SDRAM,[3:0]為Trcd和SCAN;
01、10:保留Trcd:由行地址信號切換到列地址信號的延時時鐘數
00:2個時鐘;01:3個時鐘;10:4個時鐘
SCAN:列地址位數
00:8位; 01:9位; 10:10位
14131211109876543210TacsTcosTaccTcohTcahTacp/TrcdPMC/SCAN
3、BANK6/7存儲器組6/7控制寄存器31……171615保留MTREFEN:刷新控制。 1:使能刷新;0:禁止刷新TREFMD:刷新方式。 1:自刷新 0:自動刷新Trp:設置SDRAM行刷新時間(時鐘數)
00:2個時鐘;01:3個;10:3個;11:4個時鐘Tsrc:設置SDRAM行操作時間(時鐘數)
00:4個時鐘;01:5個;10:6個;11:7個時鐘 注:SDRAM的行周期=Trp+Tsrc。Refresh_count:刷新計數值1514131211109876543210保留Refresh_count4、REFRESH刷新控制寄存器31……242322212019181716保留REFENTREFMDTrpTsrc保留Refresh_count:刷新計數器值 計算公式:刷新周期=(211-Refresh_count+1)/HCLK例子:設刷新周期=15.6μs,HCLK=60MHz則 刷新計數器值=211+1-60×15.6=1113 1113=0x459=0b10001011001 高24位未用。BURST_EN:ARM突發(fā)操作控制
0:禁止突發(fā)操作;1:可突發(fā)操作SCKE_EN:SCKE使能控制SDRAM省電模式
0:關閉省電模式;1:使能省電模式SCLK_EN:SCLK省電控制,使其只在SDRAM訪問周期內使能SCLK 0:SCLK一直有效;1:SCLK只在訪問期間有效BK76MAP:控制BANK6/7的大小及映射76543210BURST_ENXSCKE_ENSCLK_ENXBK76MAP5、BANKSIZEBANK6/7組大小控制寄存器BK76MAP:控制BANK6/7的大小及映射
100:2MB; 101:4MB;
110:8MB 111:16MB;
000:32MB; 001:64MB 010:128MBWBL:突發(fā)寫的長度。0:固定長度;1:保留TM:測試模式。 00:模式寄存器集;其它保留CL:列地址反應時間
000:1個時鐘;010:2個時鐘;
011:3個時鐘;其它保留BT:猝發(fā)類型
0:連續(xù); 1:保留BL:猝發(fā)時間
000:1個時鐘;其它保留
6、MRSRB6/7BANK6/7模式設置寄存器1514131211109876543210WBLTMCLBTBLBANK控制寄存器設置
S3C2440A有8個BANKCONn寄存器,分別對應著Bank0~Bank7。Bank6~Bank7可以作為SDRAM等類型存儲器的映射空間BANKCONn寄存器在Bank6和Bank7上的位定義BANKCONn寄存器在MT=11時的相關位定義
Trcd是從行使能到列使能的延遲,根據S3C2440A的HCLK頻率(100M)及HY57V561620特性,此項取01。SCAN為列地址線數量,此項根據HY57V561620特性取01。803.REFRESH是DRAM/SDRAM刷新控制器
81寄存器設置
4、BANKSIZE寄存器82NandFlash及其控制器主要內容1、NandFlash控制器概述2、控制器主要特性3、控制器的寄存器4、控制器的工作原理NandFlash及其控制器
Norflash存儲器:讀速度高,而擦、寫速度低,容量小,價格高。
Nandflash存儲器:讀速度不如Norflash,而擦、寫速度高,容量大,價格低。有取代磁盤的趨勢。 因此,現在不少用戶從Nandflash啟動和引導系統(tǒng),而在SDRAM上執(zhí)行主程序代碼。一、NandFlash控制器概述
S3C2410X微控制器從Nandflash的引導功能:其內部有一個叫做“起步石(Steppingstone)”的SRAM緩沖器,系統(tǒng)啟動時,Nandflash存儲器的前面4KByte字節(jié)將被自動載入到起步石中,然后系統(tǒng)自動執(zhí)行這些載入的引導代碼。引導代碼執(zhí)行完畢后,自動跳轉到SDRAM執(zhí)行。
Nandflash操作的校驗功能:使用S3C2410X內部硬件ECC功能可以對Nandflash的數據進行有效性的檢測。
二、NandFlash控制器主要特性
NandFlash模式:支持讀/擦/編程Nandflash存儲器。 自動導入模式:復位后,引導代碼被送入Steppingstone,傳送后,引導代碼在Steppingstone中執(zhí)行。 具有硬件ECC(糾錯碼)功能:硬件產生糾錯代碼。 內部4KB的SRAM緩沖器Steppingstone,在Nandflash引導后可以作為其他用途使用。NandFlash控制器功能框圖主要由6部分組成引腳信號:CLE:命令鎖存R/nB:就緒/忙三、NandFlash控制器的寄存器寄存器地址功能操作復位值NFCON0x4E000000NandFlash配置讀/寫-NFCMD0x4E000004NandFlash命令讀/寫-NFADDR0x4E000008NandFlash地址讀/寫-NFDATA0x4E00000CNandFlash數據讀/寫-NFSTAT0x4E000010NandFlash狀態(tài)讀/寫-NFECC0x4E000014NandFlash糾錯讀/寫-NFEN:NF控制器使能控制
0:禁止使用; 1:允許使用IECC:初始化ECC編碼/解碼器控制位
0:不初始化ECC; 1:初始化ECCNFCE:NF片選信號nFCE控制位持續(xù)時間設置
0:nFCE為低有效; 0:nFCE為高無效TACLE:CLE/ALE持續(xù)時間設置值(07) 持續(xù)時間=
HCLK*(TACLS+1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電氣課程設計報告論文
- 零售貸款合同三篇
- 道路工程師工作總結
- 婦產科護士工作總結
- 門診部醫(yī)生團隊近期工作總結
- 2023-2024學年重慶市七校聯盟高一(下)期中語文試卷
- 教材選用與內容審定計劃
- 包裝設計師的主要職責
- 醫(yī)療行業(yè)顧問工作概述
- 【八年級下冊地理粵教版】7.4 北京市 同步練習
- 政治經濟學結構圖解
- LORCH焊機簡要操作說明書-v2.1
- 服裝品質管理人員工作手冊
- 國家開放大學電大??啤东F醫(yī)基礎》2023-2024期末試題及答案試卷編號:2776
- 煤氣全分析,簡、精兩配方
- 初三畢業(yè)班后期管理措施
- 超星爾雅慕課公共關系禮儀實務杜漢榮課后習題及答案(1)word版本
- 示教機械手控制系統(tǒng)設計
- 氧化鋁生產工藝教學(拜耳法)
- 選礦學基礎PPT課件
- 安利食品經銷商合同協(xié)議范本模板
評論
0/150
提交評論