STM32-FSMC機制的NOR Flash存儲器擴展技術(shù)
1.3 FSMC映射地址空間
FSMC管理1 GB的映射地址空間。該空間劃分為4個大小為256 MB的BANK,每個BANK又劃分為4個64 MB的子BANK,如表1所列。FSMC的2個控制器管理的映射地址空間不同。NOR Flash控制器管理第1個BANK,NAND/PC Card控制器管理第2~4個BANK。由于兩個控制器管理的存儲器類型不同,擴展時應(yīng)根據(jù)選用的存儲設(shè)備類型確定其映射位置。其中,BANK1的4個子BANK擁有獨立的片選線和控制寄存器,可分別擴展一個獨立的存儲設(shè)備,而BANK2~BANK4只有一組控制寄存器。本文引用地址:http://2s4d.com/article/202625.htm
2 FSMC擴展NOR Flash配置
SRAM/ROM、NOR Flash和PSRAM類型的外部存儲器都是由FSMC的NOR Flash控制器管理的,擴展方法基本相同,其中NOR Flash最為復(fù)雜。通過FSMC擴展外部存儲器時,除了傳統(tǒng)存儲器擴展所需要的硬件電路外,還需要進行FSMC初始化配置。FSMC提供大量、細(xì)致的可編程參數(shù),以便能夠靈活地進行各種不同類型、不同速度的存儲器擴展。外部存儲器能否正常工作的關(guān)鍵在于:用戶能否根據(jù)選用的存儲器型號,對配置寄存器進行合理的初始化配置。
(1)確定映射地址空間
根據(jù)選用的存儲器類型確定擴展使用的映射地址空間。NOR Flash只能選用BANK1中的4個子BANK。選定映射子BANK后,即可確定以下2方面內(nèi)容:
①硬件電路中用于選中該存儲器的片選線FSMC_NEi(i為子BANK號,i=1,…,4);
②FSMC配置中用于配置該外部存儲器的特殊功能寄存器號(如表1所列)。
(2)配置存儲器基本特征
通過對FSMC特殊功能寄存器FSMC_BCRi(i為子BANK號,i=1,…,4)中對應(yīng)控制位的設(shè)置,F(xiàn)SMC根據(jù)不同存儲器特征可靈活地進行工作方式和信號的調(diào)整。根據(jù)選用的存儲器芯片確定需要配置的存儲器特征,主要包括以下方面:
①存儲器類型(MTYPE)是SRAM/ROM、PSRAM,還是NOR Flash;
②存儲芯片的地址和數(shù)據(jù)引腳是否復(fù)用(MUXEN),F(xiàn)SMC可以直接與AD0~AD15復(fù)用的存儲器相連,不需要增加外部器件;
③存儲芯片的數(shù)據(jù)線寬度(MWID),F(xiàn)SMC支持8位/16位兩種外部數(shù)據(jù)總線寬度;
④對于NOR Flash(PSRAM),是否采用同步突發(fā)訪問方式(B URSTEN);
⑤對于NOR Flash(PSRAM),NWAIT信號的特性說明(WAITEN、WAITCFG、WAITPOL);
⑥對于該存儲芯片的讀/寫操作,是否采用相同的時序參數(shù)來確定時序關(guān)系(EXTMOD)。
(3)配置存儲器時序參數(shù)
FSMC通過使用可編程的存儲器時序參數(shù)寄存器,拓寬了可選用的外部存儲器的速度范圍。FSMC的NORFlash控制器支持同步和異步突發(fā)兩種訪問方式。選用同步突發(fā)訪問方式時,F(xiàn)SMC將HCLK(系統(tǒng)時鐘)分頻后,發(fā)送給外部存儲器作為同步時鐘信號FSMC_CLK。此時需要的設(shè)置的時間參數(shù)有2個:
①HCLK與FSMC_CLK的分頻系數(shù)(CLKDIV),可以為2~16分頻;
②同步突發(fā)訪問中獲得第1個數(shù)據(jù)所需要的等待延遲(DATLAT)。
評論