網站首頁 文學常識 簡歷 公文文書 文學名著 實用文 人生哲理 作文 熱點話題作文
當前位置:文萃咖 > 實用範文 > 論文

嵌入式系統Flash編程技術研究論文

欄目: 論文 / 發佈於: / 人氣:2.85W

摘要:Flash存儲器具有應用成本較低、存儲速度較快、支持重複擦寫功能,是目前很多嵌入式系統開發中不可缺少的重要內容。Flash編程方法的應用與系統開發進度、成本息息相關,因此,本研究主要以嵌入式系統為例,對Flash的編程方式進行分析,並介紹了新型Flash模式,力求編程質量與水平能夠得到顯著提升,使該技術在更多系統中得到廣泛應用。

嵌入式系統Flash編程技術研究論文

關鍵詞:嵌入式系統;Flash編程;Flash存儲器

21世紀作為信息時代,網絡技術、智能產品層出不窮,滲透到社會生產與生活的方方面面。其中,嵌入式系統應用範圍較廣、可靠性較高、應用成本較低,在移動通信、自動化控制領域中得到普遍應用。在系統開發過程中,為保障系統程序可以反覆載入,對內置存儲器的要求較高,而Flash具有成本低、存儲快、可重複擦寫特徵,因此,成為嵌入式系統中不可缺少的重要部分。

1嵌入式系統的Flash編程方法

在現實應用中,應用頻率較高的Flash編程方法包括編輯器編程、普通接口編程與JTAG編程三種。

1.1編輯器編程

為實現Flash編程,專門開發和設計了編輯器,通過配套使用,便能將指令或數據寫入其中。該方式較老舊,對實施條件的要求也較嚴格,必須保障芯片在焊接到電路板之前進行,等到編程結束以後再進行焊接。目前,較常見的編輯器類型有LABTOOL-48、SUPERPRO/V等。編程器編程的主要優勢在於使用較便利,且編程效率較理想,十分適宜DIP封裝的Flash芯片。

1.2普通接口編程

在實際應用過程中,嵌入式系統為充分發揮作用,通常會在硬件設計中加入一些外圍接口,這些接口包括串口、USB、網絡接口等。而在Flash編程中,便可以藉助這些接口、串口直接實現。接口編程的方式與JTAG編程相比,沒有對特殊接口進行要求。

1.3JTAG編程

JTAG作為嵌入式調試技術,其接口標準為IEEE1149.1,主要應用於邊界掃描與端口測試中。同時,採用JTAG接口不但能夠完成測試操作,還可以實現對嵌入式系統中的`Flash編程。在實際應用過程中,對JTAG進行編程操作應藉助接口仿真器,將目標機與宿主機聯繫起來。在目標機上,將處理器與Flash總線相互連接,再借助宿主機中的既定程序,將數據、指令與控制信號均傳送到JTAG接口芯片中。這時,處理器中將會接收到JTAG傳遞過來的信息,並按照Flash芯片進行編程,將接收到的信息寫入其中,完成最終編程操作。與編輯器編程、普通接口編程方式相比,JTAG編程技術更為簡便,無需對芯片焊接流程進行嚴格規定,只需藉助JTAG藉口線與仿真器便能完成測試,因此,嵌入式系統中Flash編程得到了廣泛應用[1]。

2通過JTAG接口實施Flash編程的實例分析

在某項目開發設計過程中,採用JTAG接口完成Flash編程。在該設計過程中,JTAG的電纜與主機並口相互連接,另一側連接到電路板中的JTAG插座上,再與處理器PowerPC405EP相連,Flash需要經過總線與處理器相連。在上述連接完畢以後,Flash無需具備JTAG接口,使用範圍也更加廣闊。在對Flash進行編程的過程中,PowerPC405EP由主機軟件進行控制,利用其模擬Flash的編程時序,便能對Flash進行編程。

2.1硬件配置

第一,JTAG下載電纜設計。在JTAG接口標準的基礎上,對信號邏輯電平中傳輸要求、數據、傳輸方向等進行綜合考慮,最終選擇採用並口標準與接口並行的模式,二者間關係如下:PC並口中管腳2的功能為D0;管腳3的功能為D1;管腳4的功能為D2;管腳5的功能為D3;在JTAG接口中,管腳TDI的功能為數據輸入;TCK的功能為時鐘;TMS的功能為模式選擇;TRST的功能為復位;TDO的功能為數據輸出。第二,嵌入式處理器PowPC405EP。在本系統設計中,採用的處理器為IBMPowPC405EP,屬於一款32位、RISC指令集處理器,其性能較為良好,集嵌入式軟核、外圍設備系統SOC於一體。通過數據手冊進行描述,得知BSR的長度與指令代碼等內容,具體如下:指令Bypass,代碼1111111;指令Extest,代碼0000000;指令Sample,代碼1111010。第三,Flash。在本系統設計中,使用的Flash為富士通SPANSIONMBM29DL,工作電壓為3V,用户在使用之前,需要將特定地址寫入到對應的指令序列中,便可以將其啟動,使其在自動化下完成指令,包括復位、自動選擇、擦除、編程等[2]。

2.2軟件配置

編程算法可以劃分為兩個內容,一是寫入編程命令序列,二是數據驗證,本文只對前者進行研究。寫入編程命令序列需要經過四個週期完成,前兩個週期屬於解鎖週期,將AAh寫入到55h中,再將55h寫入到地址2AAh中,在第三個週期中,將A0h寫入到0555h中,在第四周期中對地址與數據進行編程,Flash將自動完成編程命令。在第一週期中,使用的Flash數據線為AAh,也就是與Flash相連接的PowerPC405EP中的AAh,這時PerData0位為“0”。從PowerPC405EP的描述中能夠看出,與之相對應的BSC單元號為24,部分源程序為:#definepinTDI1//輸出端口位地址UnsignedcharOutport_State=0xF5//保存並口輸出端口狀態的全局變量writePort(pinTMS,0x00);sclk();//進入Run-Test-Idle狀態;writePort(pinTMS,0x01);sclk();//進入Select-IR-Scan狀態;writePort(pinTMS,0x00);sclk();//進入Shift-IR狀態;writePort(pinTMS,0x01);sclk();//開始數據串行輸入,將“0”輸入到24號BSC中;writePort(pinTMS,0x01);sclk();//進入Update-DR狀態,在TCK的下降沿,對24號BSC中的“0”進行驅動,使其傳輸到PerData當中,同時//flash也為“0”。

3新型的Flash編程模式分析

在實際應用過程中,由於Flash芯片在很多場景中均可使用,因此,命令集往往不盡相同,對此通常將整個編程模式劃分為四個部分:最下層為硬件適配層,能夠為上層提供讀與寫等基本功能,能夠有效解決軟件程序與硬件總線協調問題。第二層屬於Flash適配層,主要作用是為上層提供Flash支持命令集,並通過公共接口發出響應。該層能夠良好解決與Flash相關功能的指令時序與支持作用問題,且還應實現對各類事件與模式的轉移。第三層為功能適配層,具有數據或指令讀寫作用,能夠對Flash命令集進行封裝操作,還可與上層之間相互聯繫。最上層便是適配層,與用户端相互連接,為用户提供高級交互接口。此種分層方式能夠為編程操作提供極大便利,通過多層結構使高層與底層應用相互隔離,極大提高了程序開發質量,也為用户帶來了更多功能與豐富的體驗[3]。

4結語

本研究對Flash編程方式進行分析,藉助嵌入式系統對Flash進行編程,編程速度較快、操作簡單、複用率良好,充分符合嵌入式系統的發展趨勢,同時也使系統開發投入成本降低,系統價值得到顯著提高。另外,本文還介紹了一種新型的Flash編程方式,希望能夠使其在系統開發中獲得更廣闊的發展空間。

參考文獻

[1]高輝輝.基於PC-MBI模塊的Flash編程技術研究[J].單片機與嵌入式系統應用,2015,15(9):7-10.

[2]吳延軍.基於FLASH芯片的加密存儲技術研究[D].廣州:暨南大學,2016.

[3]康向豔.嵌入式路由器中基於NANDFlash啟動技術研究[D].西安:西安電子科技大學,2014.