亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Power PC架構嵌入式系統(tǒng)的FLASH選型及設計要點

        2016-05-30 08:41:56施辰光張陽
        科技風 2016年10期
        關鍵詞:嵌入式系統(tǒng)

        施辰光 張陽

        摘 要:本文以MPC8349處理器所搭建的嵌入式系統(tǒng)為例,分析了國內外幾種NOR FLASH芯片在選型、布局、焊接時所需要注意的事項,并針對傳統(tǒng)的NOR FLASH自測試方法提出了改進意見。

        關鍵詞:MPC8349;NOR FLASH;Power PC;嵌入式系統(tǒng);脫焊

        隨著當今計算機技術的迅猛發(fā)展,國防、通訊、醫(yī)療儀器、工業(yè)控制等領域對計算機的要求也變得越來越高。

        嵌入式系統(tǒng)的功耗低、可靠性高、處理能力強、實時性強等優(yōu)點使得嵌入式系統(tǒng)能夠滿足機載計算機的各項要求,成為當代機載計算機的主要實現(xiàn)方式。

        Freescale公司推出的Power PC嵌入式處理器集成度高,接口豐富,應用廣泛,在全球處理器市場上處于無可爭議的領先地位。

        Power PC處理器上電后會從其存儲接口讀取引導程序,來對處理器進行初始化,接著再從存儲接口中讀取操作系統(tǒng)和需要運行的應用程序,因而存儲器是Power PC嵌入式系統(tǒng)中不可或缺的一部分。

        FLASH已經(jīng)成為了目前最成功、最流行的一種固態(tài)內存,與EPROM、EEPROM相比FLASH的讀寫速度更快,而與SRAM相比FLASH具有非易失、以及價廉等優(yōu)勢,因而絕大多數(shù)PowerPC嵌入式系統(tǒng)都采用FLASH作為其數(shù)據(jù)存儲單元。

        1 NAND FLASH與NOR FLASH

        FLASH用于存儲系統(tǒng)運行所必需的系統(tǒng)程序、應用程序和重要的數(shù)據(jù),它的優(yōu)點是掉電后其中的數(shù)據(jù)不會丟失。常用的FLASH有NOR型和NAND型兩種。NOR FLASH是由Intel公司在1988年開發(fā),以替代EPROM和E2PROM,徹底改變了原先由EPROM和EEPROM一統(tǒng)天下的局面。隨后,東芝公司在1989年發(fā)布了Nand Flash[ 1 ]。

        NAND FLASH能提供極高的單元密度,并且寫入和擦除的速度也很快,是大容量數(shù)據(jù)存儲的最佳選擇[ 2 ]。但它的缺點也同樣明顯,NAND FLASH讀取速度較慢,它的I/O端口只有8個,數(shù)據(jù)地址線共用,傳送數(shù)據(jù)時,速度遠遠比不上NOR FLASH的并行模式。再加上NAND FLASH的邏輯為電子盤模塊結構,內部不存在專門的存儲控制器,一旦出現(xiàn)數(shù)據(jù)壞塊將無法修正, 可靠性較NOR FLASH要差[ 3 ]。

        NOR FLASH采用NOR SGC(Stacked Gate Cell)存儲單元,接口都是單獨的地址、數(shù)據(jù)和控制信號,讀寫方式為并行讀寫,便于直接讀取,隨機讀取速度快,但擦除和寫入速度較慢。NOR FLASH最主要的特點是芯片內執(zhí)行XIP(eXecute-In-Place),這樣應用程序可以直接在FLASH內運行,不必再把代碼讀到系統(tǒng)RAM中。NOR FLASH的傳輸效率很高,在小容量時具有很高的成本效益,不過在大容量時就顯得力不從心。

        以上這些特性使得NAND FLASH適合存儲數(shù)據(jù),而NOR FLASH適合存儲程序。

        本文接下來討論的幾種FLASH都屬于NOR FLASH,用來存儲嵌入式引導程序,操作系統(tǒng)等。

        2 MPC8349處理器單板計算機設計

        本文以MPC8349處理器單板計算機為例對PowerPC處理器的嵌入式系統(tǒng)FLASH設計進行分析。MPC8349嵌入式計算機主要應用于信號處理與數(shù)據(jù)計算領域,其系統(tǒng)功能框圖如圖1所示。

        MPC8270嵌入式系統(tǒng)的硬件結構包括以下幾個功能電路:電源及復位電路,時鐘電路,處理器電路,存儲器電路以及對外接口電路。

        本系統(tǒng)中的串行接口、網(wǎng)絡接口和PCI總線均采用MPC8349上集成的協(xié)議控制器來實現(xiàn)。

        本系統(tǒng)中的存儲空間包含以下幾個方面:

        DDR:采用4片16位256MB的DDR2芯片MT47H128M16HG

        -3IT,以地址線共用、數(shù)據(jù)線拼接的方式為處理器提供了64位1GB的動態(tài)存儲空間,還有1片連接ECC 校驗位,進行校驗,以上5片DDR2芯片作為整個系統(tǒng)的動態(tài)存儲單元,為軟件的運行提供空間;

        系統(tǒng)FLASH:采用2片16位32MB的FLASH芯片,以地址線共用、數(shù)據(jù)線拼接的方式為處理器提供了32位64MB的系統(tǒng)FLASH,用于存儲引導程序、操作系統(tǒng)等系統(tǒng)程序;

        應用FLASH:采用2片16位32MB的FLASH芯片,以地址線共用、數(shù)據(jù)線拼接的方式為處理器提供了32位64MB的應用FLASH,用于存儲簡單的應用程序。

        2.1 國內外主要FLASH選型差異

        MPC8270嵌入式系統(tǒng)中我們總共選用了4片16位32MB的FLASH芯片。國內外先后有許多電子元器件廠家生產(chǎn)過這類FLASH芯片,他們大致相同,但選用不同的FLASH芯片在細節(jié)上有許多需要注意的問題。

        2.1.1 扇區(qū)大小

        這種規(guī)格的FLASH芯片最早是由AMD公司生產(chǎn)的AM29LV256,該FLASH的扇區(qū)大小為64KB。如今AMD的FLASH停產(chǎn)了,這種規(guī)格的FLASH芯片主要由國外的SPANSION公司和國內的國微公司進行生產(chǎn),但是SPANSION公司和國微公司的FLASH扇區(qū)大小為128KB。

        出于通用化考慮,由于不同類型的FLASH的設備ID是不一樣的,因此我們可以在引導程序中通過讀取設備ID來識別扇區(qū)大小。

        2.1.2 SPANSION公司的兩種FLASH芯片

        SPANSION公司生產(chǎn)過兩種8/16位可配置,32MB的FLASH芯片,它們的型號分別為S29GL256N11TFI01和S29GL256P10TFI010。這兩種FLASH芯片的扇區(qū)大小,扇區(qū)總數(shù),讀寫操作都是一致的。但由于在制作工藝上略有差別,使得它們在進行校驗運算時有所不同。

        FLASH芯片在擦除、寫入等操作后需要采用toggle的方式進行查詢,判斷操作是否完成。兩種FLASH的toggle算法最大的差異在于S29GL256N11TFI01為讀兩次之后判斷toggle位是否還在變化,而S29GL256P10TFI010為讀三次之后進行判斷。如果沒有按照正確的算法進行校驗,在數(shù)據(jù)量比較小的時候或許也能使用,但進行數(shù)據(jù)量比較大的操作時經(jīng)常會出現(xiàn)錯誤。因此也推薦使用讀FLASH的設備ID號來區(qū)分不同的FLASH芯片,使用相應的算法。

        2.1.3 國微公司的四種FLASH芯片

        深圳國微公司對SPANSION公司的S29GL256N11TFI01芯片進行了國產(chǎn)化研制,質量等級為國軍標級,校驗算法與S29GL256N11TFI01一致,但是國微公司的FLASH芯片具有四種封裝形式。

        除了最初的SM29LV256M,國微公司還提供管腳二次成型的FLASH芯片,從芯片頂端出管腳的飛翼FLASH芯片,以及馬上完成定型的塑封FLASH芯片。

        由于前三種FLASH芯片均為金屬封裝,導致芯片質量較大,因此使用時建議在FLASH芯片的兩側點封高強度的膠加以固定,可以有效減少FLASH脫焊現(xiàn)象。

        二次成型的FLASH芯片對管腳進行了處理,增加了應力釋放環(huán),用于分攤不同溫度時芯片管腳處產(chǎn)生的應力。飛翼FLASH芯片由于其從芯片頂端出管腳的特性,可極大程度減少焊點處的應力,但由于暴露在外的管腳過長,容易在運輸、使用過程中遭受外力造成管腳損壞,建議增加蓋板進行保護。

        2.2 PCB布局

        對于FLASH芯片,由于其管腳非常細密,相對來說更加容易出現(xiàn)脫焊。我們對3種模塊近兩年產(chǎn)生的14起脫焊事件進行了分析,有11起脫焊都發(fā)生在距離處理器芯片較近一邊的FLASH芯片上,僅有3起脫焊發(fā)生在距離處理器芯片較遠一邊的FLASH芯片上。

        我們對其中一個模塊進行了熱仿真,環(huán)境溫度為30℃,仿真結果見圖2。

        從上圖中我們可以看出,處理器芯片是整個模塊中最大的發(fā)熱源。模塊加電工作時處理器芯片附近的溫度會非常高,不斷地加電掉電產(chǎn)生非常大的冷熱溫差,使得靠近處理器芯片的FLASH受到很大的溫度應力,導致脫焊。因此我們在進行PCB布局的時候應該把FLASH芯片盡可能遠離處理器等發(fā)熱量較大的芯片。FLASH芯片在走線的時候為了保證信號質量,不要從開關電源、晶振等噪聲較大的芯片下方穿過。FLASH芯片的讀周期時間一般在100ns左右,不屬于高速信號,因此走線要求比較寬松,不需要嚴格等長。

        2.3 FLASH芯片焊接

        FLASH芯片如果采取回流焊,會使得管腳淌錫過少,容易出現(xiàn)脫焊。因此建議回流焊之后再進行手工補焊,增加管腳處的錫量。另外,F(xiàn)LASH芯片在維修、更換時一定要將芯片下方的印制板清洗干凈,如果有殘留的松香等雜物,會將FLASH芯片墊高,使得芯片管腳浮空,容易出現(xiàn)脫焊現(xiàn)象。

        如果焊接國微公司金屬封裝的FLASH芯片,由于其自重過大,在震動時容易出現(xiàn)脫焊。因此焊接完成這類FLASH芯片時,需要在芯片的兩側點封高強度膠,對芯片進行固定。

        2.4 數(shù)據(jù)保護

        我們將引導程序存儲在FLASH中,但是在使用過程中常常由于誤操作,對存放引導程序的區(qū)域進行擦寫,導致引導程序錯誤,整個模塊無法啟動,以至于我們重新需要從處理器芯片的JTAG接口來配置處理器并重新編程,對于一些裝有殼體的模塊十分麻煩。因此可以采取一些措施對我們的引導程序進行保護。

        在FLASH芯片上有引腳WP#/ACC,當這個信號為低時,可以保護最后一個扇區(qū)不被擦寫。但是最后一個扇區(qū)的地址為0xFFFE0000-0xFFFFFFFF,而PowerPC處理器的上電自啟動地址為0xFFF00100,所以采用該方式不能保護引導程序。因此需要采用控制FLASH的寫信號來完成保護,可以在FPGA中設置控制寫信號使能寄存器,上電時為“1”。

        當寫FLASH地址0XFFF00000—0XFFF20000這段地址時,依據(jù)該控制寄存器來決定是否產(chǎn)生寫信號。這種方法可以有效保護我們的引導程序不被誤操作改寫。

        2.5 FLASH測試

        FLASH一般有兩種類型的測試:FLASH讀測試和FLASH寫測試。FLASH讀測試通常將FLASH中的數(shù)據(jù)讀取出來,與事先設置好的校驗和進行比較,若比較結果一致則說明讀取FLASH數(shù)據(jù)正常。FLASH寫測試則是將測試范圍內的數(shù)據(jù)擦除,再寫入新的數(shù)據(jù)。寫入完成后讀取FLASH中新的數(shù)據(jù),如果和需要寫入的數(shù)據(jù)一致則說明FLASH寫入數(shù)據(jù)正常。

        由于FLASH寫入數(shù)據(jù)時具有固定的寫序列,如果在寫序列執(zhí)行過程中處理器收到中斷,跳轉到中斷服務程序,等中斷服務程序執(zhí)行完畢之后再繼續(xù)進行寫序列會有可能會造成寫入失敗,因此在每一個FLASH寫序列過程中需要關閉中斷,等到寫序列執(zhí)行完畢后再使能中斷。

        傳統(tǒng)的FLASH寫測試一般的操作順序為擦除單個扇區(qū),寫入數(shù)據(jù),比較數(shù)據(jù),擦除下個扇區(qū)。我們在實際應用中發(fā)現(xiàn)有個別FLASH芯片在寫入文件時報錯,但是對FLASH進行寫測試卻沒有發(fā)現(xiàn)錯誤。對FLASH管腳進行檢測時發(fā)現(xiàn)高位地址線橋連或者脫焊。高位地址線橋連或者脫焊使得FLASH芯片在對扇區(qū)內的數(shù)據(jù)進行讀寫操作時沒有影響,但是在扇區(qū)選擇時會發(fā)生錯誤。傳統(tǒng)的測試程序是對單個扇區(qū)進行操作,無法檢測出這類故障。針對這類問題我們對傳統(tǒng)測試程序進行了改進,改進后的操作順序為將所有測試范圍內的扇區(qū)進行擦除,向每個扇區(qū)寫入各自不同的數(shù)據(jù),等所有測試扇區(qū)的數(shù)據(jù)全部寫入完成后進行讀取,再與需要寫入的數(shù)據(jù)進行比較。改進后的測試程序不再局限于單個扇區(qū),而是對整個測試區(qū)域進行讀寫操作,可以檢測出高位地址線異常而產(chǎn)生的問題。

        2.6 其他需要注意的問題

        在對FLASH進行擦除或者寫入操作過程中,如果因為突發(fā)情況導致模塊掉電,會使得正在擦除或者寫入的扇區(qū)中的數(shù)據(jù)不穩(wěn)定。重新上電后該扇區(qū)中的個別數(shù)據(jù)會不斷跳變,如果這時對FLASH進行讀測試會報出錯誤。出現(xiàn)這類現(xiàn)象時只需要對該扇區(qū)重新進行擦除,即可消除故障。

        3 結束語

        由于航空航天領域對國產(chǎn)化的要求,我們在芯片選型時具有一些限制。但隨著國內芯片廠家的發(fā)展,將有越來越多的國產(chǎn)芯片可供選擇。S29GL01GP11TFI010等更大容量的NOR FLASH也將進行國產(chǎn)化研制,對此我們拭目以待。

        參考文獻:

        [1] 周書林,邱磊,唐桂軍.同時支持Nand Flash和Nor Flash啟動的啟動加載程序設計實現(xiàn).科學技術與工程,2010(02).

        [2] 張起貴,裴科,張剛,趙哲峰.基于不同類型Flash-ROM的Bootloader設計.計算機工程與應用,2007(33).

        [3] 劉錦萍.閃存與數(shù)碼相機.嘉興學院學報,2006(S1).

        作者簡介:施辰光(1988-),男,上海人,助理工程師,研究方向:嵌入式技術。

        猜你喜歡
        嵌入式系統(tǒng)
        辦公自動化系統(tǒng)的設計
        嵌入式系統(tǒng)在醫(yī)療器械中的應用分析
        基于物聯(lián)網(wǎng)項目驅動的嵌入式系統(tǒng)教學改革的研究與實踐
        嵌入式系統(tǒng)課程“中斷、異常與事件”教學實踐及啟示
        計算機教育(2016年7期)2016-11-10 08:31:34
        面向實踐創(chuàng)新人才培養(yǎng)的嵌入式系統(tǒng)教學研究
        計算機教育(2016年7期)2016-11-10 08:12:11
        在DiskOnChip上構建VxWorks系統(tǒng)開發(fā)環(huán)境
        永久免费的拍拍拍网站| 爱性久久久久久久久| 日本爽快片18禁免费看| 97视频在线播放| 久久久精品国产亚洲av网| 亚洲国产系列一区二区| 性生交片免费无码看人| 无码人妻丰满熟妇啪啪7774| 亚洲Va中文字幕无码毛片下载| 少妇太爽高潮在线播放| 亚洲精品无码不卡在线播he| 艳妇臀荡乳欲伦交换在线播放| 精品一区二区av天堂| 精品黄色一区二区三区| 国产精品一区二区三久久不卡| 国产如狼似虎富婆找强壮黑人| 日韩永久免费无码AV电影| 日本小视频一区二区三区| 边添小泬边狠狠躁视频| 久久久久久人妻一区二区三区| 福利网在线| 亚洲女同免费在线观看| 国产女主播白浆在线观看| 亚洲成a人片在线观看久| 国产熟女乱综合一区二区三区| 91精品国产色综合久久 | 亚洲区日韩精品中文字幕| 午夜国产精品一区二区三区| 久久精品夜色噜噜亚洲a∨| 天天看片视频免费观看| 国产码欧美日韩高清综合一区| 玖玖资源站亚洲最大的网站| 国产精品久久久久9999小说| 国产精品嫩草影院午夜| 激情偷拍视频一区二区| 欧美老熟妇乱子| 无码一区二区波多野结衣播放搜索| aⅴ色综合久久天堂av色综合| 婚外情长久的相处之道| 国产成人亚洲精品青草天美| 伊人久久亚洲综合影院首页|