STM32-FSMC機制的NOR Flash存儲器擴展技術(shù)
對于異步突發(fā)訪(fǎng)問(wèn)方式,FSMC主要設置3個(gè)時(shí)間參數:地址建立時(shí)間(ADDSET)、數據建立時(shí)間(DATAST)和地址保持時(shí)間(ADDHLD)。FSMC綜合了SRAM/ROM、PSRAM和NOR Flash產(chǎn)品的信號特點(diǎn),定義了4種不同的異步時(shí)序模型。選用不同的時(shí)序模型時(shí),需要設置不同的時(shí)序參數,如表2所列。在實(shí)際擴展時(shí),根據選用存儲器的特征確定時(shí)序模型,從而確定各時(shí)間參數與存儲器讀/寫(xiě)周期參數指標之間的計算關(guān)系;利用該計算關(guān)系和存儲芯片數據手冊中給定的參數指標,可計算出FSMC所需要的各時(shí)間參數,從而對時(shí)間參數寄存器進(jìn)行合理的配置。本文引用地址:http://dyxdggzs.com/article/202625.htm
3 STM2擴展S29GL系列NOR Flash實(shí)例
3.1 S29GL系列NOR Flash簡(jiǎn)介
Spansion公司的S29GL系列芯片是采用90nm技術(shù)制造的高集成度NOR Flash存儲芯片,提供16~128 MB可選容量,支持最快25 ns的頁(yè)訪(fǎng)問(wèn)速度和11O ns的隨機訪(fǎng)問(wèn)速度,帶有最大64字節的寫(xiě)緩沖區,以提供更快、更高效的編程,是嵌入式系統設計中大容量存儲器擴展的理想選擇。本文選用的型號為S29GL512P,容量為512×64K字(總容量64 MB),擴展到NOR Flash控制器管理的BANK1的第2個(gè)子BANK。
3.2 STM32與S29GL512P的電路連接
S25GL512P可通過(guò)控制引腳BYTE選擇對芯片的訪(fǎng)問(wèn)單位(字/字節),區別在于:
①對于芯片引腳DQ15,字模式時(shí)傳送最高數據位D15;字節模式時(shí)傳送最低地址A-1。
②字模式時(shí),數據引腳D0~D15上傳送數據信號;字節模式時(shí),只有D0~D7上有信號。
此處,將BYTE上拉到高電平,選擇16位的字訪(fǎng)問(wèn)單位。FSMC數據線(xiàn)FSMC_D[15:0]與S29GL512P的D15~D0對應連接;FSMC地址線(xiàn)FSMC_A[25:0]的低25根與S29GL512P的地址線(xiàn)A[24:0]對應連接。
由于S29GL512P芯片映射到BANK1的子BANK2,可確定其片選線(xiàn)應連接FSMC片選控制線(xiàn)FSMC_NE2。S29GL512P的RY/BY引腳連接FSMC的FSMC_NWAIT引腳,提供等待信號。
3.3 FSMC的配置
根據S29GL512P的映射位置,需要對FSMC_BCR2和FSMC_BTR2/BWTR2寄存器進(jìn)行配置。
(1)FSMC_BCR2
配置S29GL512P的讀/寫(xiě)采用統一時(shí)間參數,只需要設置時(shí)間寄存器FSMC_BTR2。配置存儲器類(lèi)型為NORFlash,數據總線(xiàn)寬度為16位(字),不采用地址/數據復用,使能BANK1的子BANK2。
(2)FSMC_BTR2
由表2可知,異步NOR Flash時(shí)序模型Mode2/B需要設置時(shí)間參數DATAST和ADDSET。根據時(shí)序圖,兩個(gè)參數的計算公式如下:
式中:Twc和Trc為所選存儲芯片的寫(xiě)周期長(cháng)度和讀操作周期長(cháng)度;Twp為所選存儲芯片的寫(xiě)信號持續長(cháng)度。根據S29GL512P用戶(hù)手冊,可知參數Twc=Trc=130 ns,Twp=35 ns。設STM32微控制器采用72 MHz主頻,則HCLK=(1/72×10-6)s。通過(guò)上述公式計算,可取值為:DATAST=2,ADDSET=5。
評論