EMC作為一個(gè)外部存儲接口,使其為MCU追求大容量、高速度成為可能。作為比較常用的外部存儲芯片SDRAM,其相對復(fù)雜的數(shù)據(jù)傳輸時(shí)序,在擁有EMC之后,又會出現(xiàn)那些問題,今天就談一下它們之間的那些事。
恩智浦(NXP)公司生產(chǎn)的這款LPC1788芯片帶有控制外部存儲的控制器,它是一個(gè)多端口存儲外設(shè),它支持異步靜態(tài)存儲設(shè)備,如RAM、ROM和Flash,也支持單數(shù)據(jù)速率傳輸?shù)腟DRAM這種動態(tài)存儲器。該控制器帶有26根地址線,32根數(shù)據(jù)線。其支持4塊靜態(tài)存儲片選地址映射和4塊動態(tài)存儲片選地址映射。下圖是EMC接口在內(nèi)存映射的位置。
EMC與外部的動態(tài)存儲器相連時(shí),其占用的地址線相對來說是比較少的,這還是跟動態(tài)存儲器的這種存儲結(jié)構(gòu)是有一定關(guān)系的。就拿SDRAM來說,其內(nèi)部存儲是按行列分布的,如下圖所示,就像表格一樣,有對應(yīng)的行地址和列地址,每一個(gè)小方格就是一個(gè)存儲單元。在對其尋址時(shí),需要先進(jìn)行行地址尋址,再進(jìn)行列地址尋址,才選擇出確定的操作單元。所以其行列地址線是可以分時(shí)復(fù)用,這也就決定了其占用的地址線較少。
◆ EMC為動態(tài)存儲器提供了引腳完成對應(yīng)的信號傳輸 ◆ EMC_D[31:0]: 數(shù)據(jù)線;
EMC_A[14:0]:地址線;
EMC_CLK:為SDRAM提供時(shí)鐘;
EMC_CKE:SDRAM的時(shí)鐘使能位;
EMC_DQM[3:0]:數(shù)據(jù)掩碼信號;
EMC_RAS:SDRAM行地址選通脈沖信號;
EMC_CAS:SDRAM列地址選通脈沖信號
EMC_DYCS[3:0]:SDRAM的片選信號;
EMC_WE:SDRAM寫使能。
當(dāng)動態(tài)存儲器件的引腳連接到EMC上后,就需要對EMC的寄存器來進(jìn)行配置?梢钥吹綄τ赟DRAM,有很多的關(guān)于時(shí)間參數(shù)配置的寄存器,需要根據(jù)實(shí)際連接的外部存儲器件來進(jìn)行相應(yīng)的配置。當(dāng)然,這些時(shí)間參數(shù)在外部存儲器件的數(shù)據(jù)手冊中都是可以找著的。
但我們也不能掉以輕心,一些錯(cuò)誤的時(shí)間配置可能導(dǎo)致數(shù)據(jù)傳輸無法完成,嚴(yán)重的可能導(dǎo)致動態(tài)存儲器內(nèi)部數(shù)據(jù)丟失。對于動態(tài)存儲器件來說,其需要不斷進(jìn)行刷新才能保存數(shù)據(jù),這是它很重要的操作,所以刷新時(shí)間的配置是很重要的。對于常用的SDRAM 芯片IS42S16400來說,在其數(shù)據(jù)手冊中找到下圖這樣一個(gè)時(shí)間參數(shù),它的意思就是說刷新4096次需要的時(shí)間是64ms,也就是說刷新一次的時(shí)間是15.625us,如果刷新的周期比這個(gè)大的話,SDRAM就無法保存數(shù)據(jù)。而對于LPC1788 EMC模塊,它就有這樣一個(gè)時(shí)間參數(shù)寄存器EMCDynamicRefresh,它可以用來設(shè)置SDRAM刷新一次的時(shí)間。

由于寄存器是以EMC的時(shí)鐘作為基準(zhǔn)的,所以這個(gè)刷新時(shí)間的設(shè)置還跟EMC的時(shí)鐘有關(guān),在配置的過程中,根據(jù)當(dāng)前時(shí)鐘計(jì)算一下,以免出現(xiàn)錯(cuò)誤。對于連有多個(gè)動態(tài)外部存儲芯片,而他們是共用這一個(gè)刷新時(shí)間的,這時(shí)候就要根據(jù)各個(gè)數(shù)據(jù)手冊中要求的刷新周期,以每次刷新時(shí)間最短的為準(zhǔn),這樣才能保證都能在規(guī)定的時(shí)間內(nèi)完成刷新。同時(shí)對于支持熱復(fù)位的情況下,也要注意一下,由于熱復(fù)位期間,EMC的時(shí)鐘發(fā)生變化,這時(shí)候的刷新周期也就有所變化,在配置過程中,也要考慮到上面的情況。
對于其他的時(shí)間參數(shù),可以對照EMC關(guān)于時(shí)間參數(shù)配置的寄存器和對應(yīng)的外部存儲芯片的數(shù)據(jù)手冊,完成正確的配置,當(dāng)EMC配置完成之后,就可以通過訪問總線地址來訪問外部存儲。
EMC實(shí)現(xiàn)的這種與外部存儲數(shù)據(jù)傳輸方式,會在以后的嵌入式產(chǎn)品中應(yīng)用越來越廣泛,它為小容量MCU提供了新的契機(jī)。
|