摘 要衛(wèi)星數(shù)傳綜合處理器采用了NAND FLASH芯片作為主要的存儲(chǔ)介質(zhì)。芯片資料顯示,F(xiàn)LASH芯片具有十萬次擦寫壽命。隨著芯片的使用老化,其壞區(qū)將逐漸增加。但在實(shí)際使用中,F(xiàn)LASH芯片的壞區(qū)增長與擦寫次數(shù)為怎樣的關(guān)系,目前尚未有實(shí)際實(shí)物參照數(shù)據(jù)。通過FLASH芯片壽命試驗(yàn),在地面模擬FLASH芯片在空間連續(xù)加電并多次擦除、寫和讀操作,經(jīng)過10萬次擦除試驗(yàn)后芯片壞區(qū)并未增加,總壞區(qū)比例不超過廠家指標(biāo)值。
【關(guān)鍵詞】FLASH 壞區(qū) 壽命
1 引言
衛(wèi)星數(shù)傳綜合處理器采用大容量NAND FLASH芯片作為主要存儲(chǔ)介質(zhì),NAND FLASH芯片出廠時(shí)便存在壞區(qū),因此單機(jī)的存儲(chǔ)容量設(shè)計(jì)時(shí)留有一定的容量備份以補(bǔ)充因壞區(qū)造成的容量損失。FLASH的壞區(qū)數(shù)在使用過程中會(huì)增加,但產(chǎn)生的壞區(qū)數(shù)與擦除/編程次數(shù)的變化曲線目前還未知。根據(jù)廠家提供的資料表明,10萬次擦除壽命末期單片的某一層壞區(qū)累計(jì)不到容量的2%,但缺乏廠家準(zhǔn)確的測(cè)試曲線,尚無法判斷存儲(chǔ)芯片在壽命末期的壞區(qū)情況。
壽命試驗(yàn)主要是摸底擦除次數(shù)增加與壞區(qū)的變化趨勢(shì),依據(jù)該試驗(yàn)數(shù)據(jù)再對(duì)數(shù)傳綜合處理器壽命末期的存儲(chǔ)容量做準(zhǔn)確計(jì)算;同時(shí)單機(jī)在設(shè)計(jì)時(shí)留有了足夠的存儲(chǔ)空間余量,以確保衛(wèi)星壽命末期的任務(wù)完成。
2 FLASH芯片出廠測(cè)試
壽命試驗(yàn)使用的芯片為64G FLASH芯片,該芯片由8片8Gb NAND FLASH芯片疊裝組成,每個(gè)芯片包含4096塊,每塊包含64頁,每頁包含4K字節(jié)的存貯片。FLASH芯片出廠前,生產(chǎn)廠家做的電性能測(cè)試僅針對(duì)芯片每個(gè)層的0#區(qū)塊。在實(shí)際使用過程中發(fā)現(xiàn)有FLASH芯片奇數(shù)塊出錯(cuò)現(xiàn)象,考慮到存儲(chǔ)芯片在裝配完后拆裝返修非常困難,因此在裝配前需要對(duì)存儲(chǔ)芯片所有區(qū)塊進(jìn)行測(cè)試,確保單機(jī)后續(xù)階段不會(huì)因?yàn)榇鎯?chǔ)芯片本身的問題而影響進(jìn)度。
3 壽命試驗(yàn)設(shè)計(jì)
根據(jù)FLASH芯片的工作原理,擦除操作可以檢測(cè)壞塊的增長情況,寫操作可以檢測(cè)壞頁的增長情況,通過這兩個(gè)操作可以考核芯片長時(shí)間的加電工作后性能是否會(huì)下降(監(jiān)視不同模式下的電流是否增加、擦除時(shí)間是否會(huì)超時(shí)以及編程時(shí)間是否延長),芯片的壞區(qū)是否會(huì)增加。FLASH芯片壽命試驗(yàn)具體包括以下三方面內(nèi)容:
(1)選用的FLASH芯片在產(chǎn)品壽命末期是否能夠滿足總體指標(biāo)要求;
(2)FLASH芯片的擦除次數(shù),以及擦除操作過程中,壞區(qū)是否增長,增長的趨勢(shì)如何;
(3)針對(duì)FLASH芯片奇數(shù)塊出錯(cuò)現(xiàn)象,試驗(yàn)驗(yàn)證平臺(tái)應(yīng)同時(shí)測(cè)試多個(gè)芯片,剔除次品。
壽命試驗(yàn)驗(yàn)證平臺(tái)設(shè)計(jì)如圖1所示。
驗(yàn)證板上使用兩塊XILINX公司的FPGA XCV600-4CB228(為滿足高低溫實(shí)驗(yàn)考慮溫度范圍,選用工業(yè)級(jí)器件),一塊FPGA控制三片F(xiàn)LASH,共實(shí)現(xiàn)同時(shí)測(cè)試6塊FLASH芯片,利用FPGA內(nèi)部RAM資源存儲(chǔ)數(shù)據(jù)錯(cuò)誤地址,所有控制命令通過一個(gè)串口發(fā)出,F(xiàn)LASH狀態(tài)也通過串口傳出。
驗(yàn)證板通過定制的朝陽電源供電,該電源有限流、過壓、過載保護(hù),承受工作環(huán)境溫度為-10℃~+70℃,可保證測(cè)試設(shè)備正常工作。所有的操作都可以通過控制計(jì)算機(jī)軟件界面發(fā)出指令來完成。軟件由兩個(gè)部分組成:控制指令模塊,工作狀態(tài)顯示模塊。
FLASH芯片壽命試驗(yàn)驗(yàn)證平臺(tái)組成示意圖如圖2所示。試驗(yàn)設(shè)備包括高低溫箱一個(gè)、試驗(yàn)板1套、穩(wěn)壓電源1套、測(cè)試計(jì)算機(jī)1臺(tái)、測(cè)試電纜一套,試驗(yàn)溫度為45℃。
試驗(yàn)過程中,串口1實(shí)時(shí)顯示操作次數(shù),每次操作時(shí)的壞區(qū)總數(shù),串口2實(shí)時(shí)顯示擦除和編程超時(shí)或反饋出錯(cuò)的區(qū)塊號(hào),串口3用于下傳所有的壞區(qū)表、接收指令恢復(fù)某一壞區(qū)等需要交互的操作。壽命試驗(yàn)過程中每隔一定的動(dòng)作次數(shù)后,需進(jìn)行手動(dòng)測(cè)試,通過串口遙測(cè)記錄芯片在不同操作模式下的工作電流、壞區(qū)表、擦除反饋錯(cuò)誤、擦除超時(shí)壞區(qū)、編程反饋錯(cuò)誤、編程超時(shí)壞區(qū)以及誤碼率,并進(jìn)行統(tǒng)計(jì),最后繪成曲線。測(cè)試臺(tái)需斷電保持芯片擦寫的次數(shù),并在串口遙測(cè)中顯示。
4 主控FPGA操作流程
驗(yàn)證板上FPGA主要控制FLASH芯片的擦除、寫和讀操作,各操作的流程如下。
4.1 塊擦除流程
塊擦除操作的第一個(gè)指令為60H,將其發(fā)送到I/O端口,并控制ALE、CLE、CE#、WE#、RE#信號(hào)選擇命令輸入;傳輸3個(gè)周期的塊地址信息,在WE#信號(hào)的下降沿鎖存地址寄存器;發(fā)送第二個(gè)指令D0H到I/O端口,同時(shí)控制相應(yīng)的控制信號(hào);讀狀態(tài)寄存器,若IO6為1或者R/B忙信號(hào)由低變?yōu)楦弑硎疽呀?jīng)完成擦除操作;判斷IO0,若不為0表示該塊為壞塊。
4.2 寫頁流程
寫頁操作的第一個(gè)指令是80H;傳輸5個(gè)周期的地址信息;將數(shù)據(jù)通過I/O接口發(fā)送到存儲(chǔ)器的數(shù)據(jù)寄存器中;發(fā)送第二個(gè)指令10H到I/O端口;讀狀態(tài)寄存器,若IO6為1或者R/B忙信號(hào)由低變?yōu)楦弑硎疽呀?jīng)完成寫頁操作。若寫過程中產(chǎn)生壞塊,一般在寫過程中不更新壞塊表,可根據(jù)讀出數(shù)據(jù)內(nèi)容進(jìn)行地址定位,然后根據(jù)壞塊地址注入指令將壞塊地址寫入壞塊表中,以此更新壞塊表。
4.3 讀頁流程
讀頁操作的第一個(gè)指令是00H;傳輸5個(gè)周期的地址信息;發(fā)送第二個(gè)指令30H到I/O端口;等待R/B忙信號(hào)由低變?yōu)楦?,表示存?chǔ)器已經(jīng)把目標(biāo)頁中的數(shù)據(jù)全部讀出到其內(nèi)部的數(shù)據(jù)寄存器;控制相應(yīng)的控制信號(hào)選擇讀數(shù)據(jù)模式,在RE#下降沿將數(shù)據(jù)讀出。
5 等價(jià)試驗(yàn)時(shí)間估計(jì)
查閱依據(jù)芯片手冊(cè),64G的FLASH芯片理論支持的最高工作時(shí)鐘為40MHz,40MHz僅是理論值,工程不可實(shí)現(xiàn)。因?yàn)闀r(shí)鐘越高,對(duì)芯片控制的時(shí)序余量越小,設(shè)計(jì)難度越大,可靠性越低,因此頻率采用一級(jí)降額30MHz作為工作時(shí)鐘。因此用30MHz的工作時(shí)鐘,周期為33.3ns,先擦后寫。
擦除一次時(shí)間:依據(jù)芯片手冊(cè),擦除一塊所需時(shí)間擦除需1.5~2ms,芯片共有塊數(shù)4096*8=32768,完成一次擦除操作所需時(shí)間32768*2ms=65.536s。
寫一次時(shí)間:采用8級(jí)流水操作,節(jié)約了芯片寫編程的時(shí)間,一次8級(jí)流水一頁寫操作需耗時(shí)(4096+24)*8*33ns=1088us,寫滿整個(gè)芯片共需4096*64*1088us,需耗時(shí)285s。
讀一次時(shí)間:讀操作讀一頁所需時(shí)間(4096+24)*33ns+26us=162us,讀滿整個(gè)芯片共需耗時(shí)4096*64*8*162us=340s。
根據(jù)FLASH芯片的產(chǎn)品手冊(cè),F(xiàn)LASH芯片的擦除次數(shù)最高不超過10萬次,考慮到試驗(yàn)的有效性,以及綜合考慮試驗(yàn)時(shí)間和項(xiàng)目進(jìn)展情況,采用擦100次寫100次讀1次模式,完成10萬次的擦除試驗(yàn)周期為409天。
由于FLASH芯片壞區(qū)增加主要在擦除過程和頁編程過程中產(chǎn)生,又分為擦除后反饋錯(cuò)誤,擦除超時(shí)后判為錯(cuò)誤、編程反饋錯(cuò)誤和編程超時(shí)后判為錯(cuò)誤四種情況。因此,試驗(yàn)中必須對(duì)擦除操作和頁寫操作進(jìn)行監(jiān)視,檢測(cè)四種情況下的壞區(qū)增長情況,并進(jìn)行統(tǒng)計(jì)。
試驗(yàn)過程必須包含F(xiàn)LASH芯片的擦除和寫操作,考核芯片長時(shí)間的加電工作后性能是否下降(監(jiān)視不同模式下的電流是否增加、擦除時(shí)間是否會(huì)超時(shí)和編程時(shí)間是否延長),壞區(qū)是否增加。
6 驗(yàn)證結(jié)果
FLASH芯片壽命試驗(yàn)總擦除次數(shù)為100000次,試驗(yàn)開展共409天,試驗(yàn)結(jié)束后總壞塊數(shù)為36個(gè),并未增加。根據(jù)廠家提供的資料,10萬次擦除壽命末期單片的某一層壞區(qū)累計(jì)不到容量的2%,試驗(yàn)采用的芯片總共4096塊,36個(gè)壞塊的比率為0.88%,不超過廠家指標(biāo)值。
參考文獻(xiàn)
[1]宋琪,李?yuàn)?針對(duì)Flash存儲(chǔ)特性的航天器大容量固態(tài)存儲(chǔ)技術(shù)[J].電子設(shè)計(jì)工程,2015,23(04).
[2]劉寅,朱鈞.FLASH存儲(chǔ)單元擦寫過程中的電流分析[J].微電子學(xué)與計(jì)算機(jī),1999(03).
作者簡介
楊凌云(1987-),男,江蘇省啟東市人。研究生。硬件工程師。研究方向?yàn)榭臻g數(shù)據(jù)處理。
作者單位
上海航天電子技術(shù)研究所 上海市 201109