基于DSP PNX1501的NandFlash在線燒錄系統(tǒng)設(shè)計(jì)
這樣,當(dāng)DSP接到PC發(fā)送的燒錄命令時(shí),系統(tǒng)便可讀取共享緩沖區(qū)的內(nèi)容并開始燒錄Flash。其具體的流程如圖2所示,部分函數(shù)源碼如下:
設(shè)計(jì)時(shí)的具體時(shí)序可參照芯片資料所提供的時(shí)序電路來控制MMIO寄存器以實(shí)現(xiàn)GPIO的控制,在此不再贅述。需要注意的是,NandFlash在燒錄或擦除過程中,可能會(huì)失敗并產(chǎn)生壞塊。對于壞塊的處理。不同系統(tǒng)有不同的方法,主要有直接Skip(跳過)和Reserved Block Area (使用保留塊)等,本系統(tǒng)使用前一種方式。此外,為了可靠起見,在時(shí)間允許的情況下還應(yīng)對燒錄成功的塊數(shù)據(jù)進(jìn)行ECC校驗(yàn),即讀取全部數(shù)據(jù)來計(jì)算ECC并和燒錄之前計(jì)算的ECC進(jìn)行比較,以判斷是否發(fā)生了位翻轉(zhuǎn),從而確定燒錄是否正確。如果發(fā)生兩位以上的翻轉(zhuǎn),則說明該塊燒錄錯(cuò)誤,應(yīng)重新選擇新塊燒錄并將原塊標(biāo)記為壞塊。
4 結(jié)束語
對DSP外部Flash編程雖然不是一項(xiàng)關(guān)鍵技術(shù),但是它在整個(gè)DSP嵌入式系統(tǒng)開發(fā)過程之中卻起著至關(guān)重要的作用,如何方便、快速地實(shí)現(xiàn)對引導(dǎo)文件(BootLodaer)和文件系統(tǒng)的燒錄,更是直接影響產(chǎn)品的生產(chǎn)與更新的重要環(huán)節(jié)。通過本系統(tǒng)可以迅速快捷地實(shí)現(xiàn)前期所有啟動(dòng)文件的燒錄,實(shí)際測試證明:燒錄40 MB的文件系統(tǒng)只需要不到3分鐘,這一點(diǎn)無論從速度上,還是經(jīng)濟(jì)上都優(yōu)于通用編程器件。
評論