基于ARM單片機的嵌入式最小系統(tǒng)架構(gòu)研究
4.1.1單獨使用Nor Flash
在該架構(gòu)中,引導(dǎo)代碼、操作系統(tǒng)和應(yīng)用代碼共存于同一塊Nor Flash中。系統(tǒng)上電后,引導(dǎo)代碼首先在Nor Flash中執(zhí)行,然后把操作系統(tǒng)和應(yīng)用代碼加載到速度更高的SDRAM中運行。另一種可行的架構(gòu)是,在Nor Flash中執(zhí)行引導(dǎo)代碼和操作系統(tǒng),而只將應(yīng)用代碼加載到SDRAM中執(zhí)行。
該架構(gòu)充分利用了Nor Flash芯片內(nèi)執(zhí)行的特點,可有效提升系統(tǒng)性能。不足在于隨著操作系統(tǒng)和應(yīng)用代碼容量的增加,需要更大容量昂貴的Nor Flash來支撐。
4.1.2 Nor Flash和Nand Flash配合使用
Nor Flash的單獨使用對于代碼量較大的應(yīng)用程序會增加產(chǎn)品的成本投入,一種的改進的方式是采用Nor Flash 和Nand Flash配合使用的架構(gòu)。在該架構(gòu)中附加了一塊Nand Flash,Nor Flash(2M或4M)中存放啟動代碼和操作系統(tǒng)(操作系統(tǒng)可以根據(jù)代碼量的大小選擇存放于Nor Flash或者Nand Flash),而Nand Flash中存放應(yīng)用代碼,根據(jù)存放的應(yīng)用代碼量的大小可以對Nand Flash容量做出相應(yīng)的改變。
系統(tǒng)上電后,引導(dǎo)代碼直接在Nor Flash中執(zhí)行,把Nand Flash中的操作系統(tǒng)和應(yīng)用代碼加載到速度更高的SDRAM中執(zhí)行。也可以在Nor Flash中執(zhí)行引導(dǎo)代碼和操作系統(tǒng),而只將Nand Flash中的應(yīng)用代碼加載到SDRAM中執(zhí)行。該架構(gòu)是當(dāng)前嵌入式系統(tǒng)中運用最廣泛的啟動架構(gòu)之一。
4.1.2從Nand Flash啟動
有些處理器如SamSung公司的ARM920T系列處理器S3C2410支持從Nand Flash啟動的模式,它的工作原理是將NandFlash中存儲的前4KB代碼裝入一個稱為Steppingstone(BootSRAM)的地址中,然后開始執(zhí)行該段引導(dǎo)代碼,從而完成對操作系統(tǒng)和應(yīng)用程序的加載。該方式需要處理器內(nèi)部有NAND控制器,同時還要提供一定大小額外的SRAM空間,有一定的使用局限性,在實際開發(fā)中較少使用。
5. 結(jié)束語
本文作者創(chuàng)新點:根據(jù)ARM體系結(jié)構(gòu)的相通性,以基于ARM的嵌入式最小系統(tǒng)為平臺,從硬件和軟件兩方面對其架構(gòu)進行了研究。硬件方面就ARM處理器與常用外部存儲器的接口方式進行了闡述,軟件方面給出了嵌入式最小系統(tǒng)典型的啟動架構(gòu)及其選擇標(biāo)準(zhǔn)。
參考文獻:
[1] 李別.基于S3C4510B的ARM開發(fā)平臺[J].微計算機信息,2006,10-2:34-36.
[2] 張.32位嵌入式系統(tǒng)硬件設(shè)計與調(diào)試[M].北京:機械工業(yè)出版社, 2005.60-61.
[3] NAND Flash Applications Design Guide[EB/OL]. http://www.toshiba.com.
評論