999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于FPGA 的eMMC 壽命驗證的方法

2024-03-20 04:31:24虞亞君王小龍邵春偉郝國峰沈小波
電子技術應用 2024年2期
關鍵詞:指令

虞亞君,王小龍,2,邵春偉,2,郝國峰,2,沈小波,2

(1.無錫華普微電子有限公司,江蘇 無錫 214035;2.中科芯集成電路有限公司,江蘇 無錫 214072)

0 引言

eMMC(Embedded Multi Media Card)存儲顆粒以其尺寸小、速度高、易開發的特點[1],非常適合用作嵌入式數據存儲介質。用在機載記錄裝置時,實時記錄大量飛行圖像數據,待飛行結束后再將數據卸載回收,提供給相關機構進行研究。用在汽車駕駛輔助系統時,實時記錄視頻攝像頭、激光測距器等探測的環境數據,經過控制器運算,做出行駛路徑的預測與規劃[2]。雖然eMMC具備壞塊管理能力,但如果長時間高密度讀寫,會出現數據記錄出錯情況。在系統研發階段,需提前驗證其實際使用壽命,靠近壽損之前及時更換芯片,以確保數據記錄無誤。本文設計的eMMC 壽命驗證方法,使用FPGA 作為讀寫eMMC 的主控器,可同時驗證4 片eMMC 壽命,硬件結構簡單、通用性好、觀測性強。

1 eMMC 芯片的工作原理

本次驗證選用江波龍公司旗下的eMMC 芯片,型號為FEMDRW064G-88A19,存儲容量為64 GB。圖1 是eMMC 內部架構圖,主要由MMC 控制器和NAND Flash組成[3-4]。MMC 控制器包含了穩壓器、寄存器、核心邏輯塊等。穩壓器可選1.2 V、1.8 V 或3.3 V,寄存器模塊包含CID、CSD、ECSD 等,可讀取eMMC 芯片出廠信息和配置工作模式。核心邏輯塊完成對外eMMC 總線的數據交互,也完成對內NAND Flash 的功能控制。該控制器實現了接口協議管理、磨損均衡、壞塊管理與ECC錯誤糾錯功能,外部設備按照JEDEC 標準eMMC 5.1 協議規范對其控制,驅動eMMC 正常工作。

2 eMMC 壽命測試的FPGA 實現

本次設計同時驗證4 片eMMC 在High Speed DDR[5]工作模式下的讀寫壽命情況。FPGA 選擇Xilinx 公司的xc7a50tfgg484-1,該芯片采用28 nm 技術架構,系統級性能比上一代提升50%。可通過Hardware Manager 調試界面,觀察eMMC 總線工作情況,讀寫次數及記錄查詢由監控軟件完成。

2.1 系統架構圖

測試環境采用軟硬結合的方法,如圖2 所示。在PC端編寫eMMC 監控軟件,用于配置并監控FPGA 驗證板的工作狀態。FPGA 驗證板掛載4 片eMMC 芯片,可在特定編程下同時運行,除常規時鐘、電源外,配置芯片BPI Flash(PC28F00AP30TFA)用來加載啟動程序[6],同時開辟部分緩存,用于保存上次掉電數據。

圖2 系統架構圖

2.2 eMMC 監控軟件

圖3 是基于PC 設計的eMMC 監控軟件,通過串口與FPGA 芯片通信,監控eMMC 芯片的讀寫情況[7]。先設置“測試條件”與“產品編號”,選擇“串口端號”,然后啟動“串口開關”。板卡上電后,先按下“eMMC 狀態查詢”,若eMMC 狀態查詢后的顏色條為綠色,則表示eMMC 初始化成功,否則失敗。下一步,在“設置讀寫次數”后面輸入循環讀寫次數,按下“設置讀寫次數”按鈕,顏色條顯示綠色,設置成功。按下“啟動測試”按鈕,開始測試。支持“暫停測試”或“繼續測試”。圖3 左下方顯示“當前上電啟動次數”“當前設置讀寫次數”“當前測試次數”等狀態。“當前測試結果”顯示綠色則結果正確,若顯示紅色則結果出錯。該軟件還支持“查詢總上電啟動次數”“查詢歷史上電記錄”,返回相應的“計劃測試次數”與“完成測試次數”,顏色條顯示測試結果。

圖3 eMMC 監控軟件

2.3 eMMC 壽命驗證邏輯設計

本節主要介紹FPGA 邏輯設計部分,包括時鐘切換模塊、初始化模塊、讀寫模塊,從原理到實現進行闡述。

2.3.1 時鐘切換模塊設計

根據eMMC5.1 協議規范,系統初始化模塊的主時鐘為250 kHz,High Speed DDR(雙倍率)工作模式下的主時鐘為50 MHz。如果使用簡單的兩路選擇器,在切換時鐘時,避免不了毛刺的產生,出現不可預期的錯誤,所以設計圖4 的防毛刺時鐘切換電路[8-9]。當SELECT 為0時,時鐘OUT_CLK 輸出為CLK_250K,否則輸出為CLK_50M。圖中兩路都使用了兩級D 觸發器,再經過與門和或門的運算操作,最終CLK_OUT 輸出將無毛刺。輸出波形見圖5,SELECT 的值拉低后,間隔兩個CLK_250K 周期,CLK_OUT 從250 kHz 變成50 MHz。

圖4 防毛刺時鐘切換電路

圖5 CLK_OUT 的輸出波形

2.3.2 初始化模塊設計

初始化模塊是針對eMMC 芯片上電后的的首要配置[10],是實現讀寫功能的前提,圖6 顯示配置過程。第一步軟件復位,FPGA 發送CMD0 指令<0x40_0000_0000_95>,無返回值。第二步查詢上電是否完成,重復發送CMD1 指令<0x41_40FF_8080_89>,直到返回值中busy(最高位)為1,則復位完成,停止發送。第三步發送CMD2 指令<0x 40_0000_0000_4d>,讀取CID 寄存器,識別產品標識碼信息。第四步分配相對地址,FPGA 發送CMD3 指令<0x 43_0123_0000_a3>,片選地址為0x0123。第五步讀取CSD 寄存器,發送CMD9 指令<0x49_0123_0000_2D>,讀取數據格式、存儲容量、數據傳輸速率等信息。第六步發送CMD7 指令<0x47_0123_0000_01>,用于選定第四步中分配的相對地址,選中設備。第七步至第九步都發送不同的CMD6 指令,第七步發送<0x46_0321_0100_cb>,設置CACHE_CTRL 為0x01,開啟高速緩存;第八步發送<0x46_03b9_0100_2F >,開啟High Speed 高速模式;第九步發送<0x46_03B7_0600_4F>,數據位寬設為8 bit、雙沿采樣。最后一步發送CMD13 指令<0x4d_0123_0000_8f >,驗證初始化操作的正確性。

圖6 初始化流程

2.3.3 讀寫模塊設計

本次設計的數據傳輸模式為雙倍率總線模式[11],格式如圖7 所示。數據幀的起始位為0,在時鐘CLK 上升沿有效,數據塊長度為塊長度的1/2,其中奇數數據在CLK上升沿有效,偶數數據在CLK 下降沿有效。數據塊之后附帶2 組CRC 校驗碼,分別保護數據塊中奇數和偶數數據,CLK 上升沿有效的是奇數數據校驗,下降沿有效的是偶數數據校驗。數據包的停止位在上升沿有效。

圖7 雙倍率數據傳輸格式

數據寫入模塊采用開放式多塊寫方式[12],傳輸數據塊數量不設限,比單塊寫方式節省更新新地址的時間損耗。狀態機如圖8 所示,發送CMD25 指令<0x5900_0000_0003>設置數據寫入首地址,等待Rsp 響應正確后,寫入512 字節的塊數據,然后等待DAT0 總線上的CRC 校驗結果,若正確,則返回010,然后發送其他塊數據;若錯誤,則返回101,在發送停止命令CMD12<0x4C00_0000_0061>后,本次傳輸結束,再重新發送當前塊數據。全部寫完數據塊后,也需要發送CMD12 來結束傳輸。

圖8 寫數據狀態機

數據讀出模塊采用開放式多塊讀方式,與圖8 寫數據狀態機類似。首先發送CMD18<0x5200_0000_00E1>設置數據首地址,在發送命令完畢后等待2 個時鐘,數據塊開始讀回,含尾部CRC 校驗碼。然后FPGA 進行CRC 解校驗,若校驗成功,則保存數據,否則發送CMD12,結束本次傳輸。

3 試驗分析

得益于eMMC 芯片獨有的Global-wear-leveling 全局磨損均衡算法,可以針對局部地址重復擦寫。所以將eMMC 分區,按實際使用60 GB 計算,分成60 等塊,選取1 GB 的塊區域進行操作。為嚴格驗證讀寫壽命,每次刷新都需要對每一個比特位進行0 和1 翻轉。先在塊區域里寫滿0x55,并讀出比較,返回值一致后,再刷新寫滿0xAA,再讀取比較是否一致,重復進行60 次,才遍歷讀寫完一次eMMC。參照eMMC 芯片手冊不低于3 000 次的讀寫壽命,所以監控軟件生成的“總累計讀寫次數”要不低于180 000 次,只要出錯一次,則壽命驗證結果失敗。表1 是在eMMC 監控軟件里隨機抽取的4 片eMMC測試記錄。其中抽取了1 號eMMC 的第23 次上電啟動次數,上電時間是2022/3/20/8:42,下電時間是2022/3/22/13:06,總時長為3 144 min,考慮中途有斷電情況,實際完成次數是3 008,測試結果為正常。

表1 抽取4 片eMMC 記錄數據

表2 統計4 片eMMC 的全部測完180 000 次的累計天數,可以看出完成180 000 次壽命測試,4 片eMMC 中累計天數最大是138.77 天,最低是136.34 天,相差2.43天,偏差合理。圖9 顯示4 片eMMC 讀寫速率,在第10 000 次的時候,eMMC2 的速度最大是35 MB/s,在第80 000 次的時候,速度最小是29 MB/s,其速率都在31 MB/s 左右,符合設定總線速度要求。結果為4 片eMMC 全部通過壽命驗證。

表2 統計4 片eMMC 累計讀寫天數

圖9 4 片eMMC 讀寫速率

4 結論

本文基于eMMC 芯片工作原理,深入研究了用FPGA實現eMMC 壽命測試的實現方法。針對eMMC 芯片單沿采樣速率慢的問題,研發了High Speed DDR 總線工作模式,實際測得最快讀寫均速達到31 MB/s。同時,經過長時間的疲勞測試,所選4 塊eMMC 芯片均能完成180 000次的塊讀寫,達到了手冊上的要求。此次設計的壽命測試系統結合了監測軟件的可配置性,結合FPGA 芯片獨有的多線并行操作,為同時控制4 片eMMC 讀寫帶來極大的可控性。按照實際項目需要,若選用市面上其他主流的eMMC 芯片,都能在此硬件架構下進行功能測試,體現了本設計的可擴展性高、通用性強的特點。

猜你喜歡
指令
聽我指令:大催眠術
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
巧用G10指令實現橢圓輪廓零件倒圓角
時代農機(2015年3期)2015-11-14 01:14:29
中斷與跳轉操作對指令串的影響
科技傳播(2015年20期)2015-03-25 08:20:30
基于匯編指令分布的惡意代碼檢測算法研究
一種基于滑窗的余度指令判別算法
歐盟修訂電氣及電子設備等產品安全規定
家電科技(2014年5期)2014-04-16 03:11:28
MAC指令推動制冷劑行業發展
汽車零部件(2014年2期)2014-03-11 17:46:27
主站蜘蛛池模板: 91探花在线观看国产最新| 在线欧美一区| 国产精品无码作爱| 欧美日韩一区二区在线播放 | 精品天海翼一区二区| 永久免费精品视频| 日韩区欧美区| 亚洲av无码久久无遮挡| 国产又大又粗又猛又爽的视频| 久996视频精品免费观看| 蜜臀av性久久久久蜜臀aⅴ麻豆| 特黄日韩免费一区二区三区| 亚洲系列无码专区偷窥无码| 亚洲精品视频免费看| 成人在线不卡| 99久久无色码中文字幕| 91 九色视频丝袜| 日本91视频| 女人18毛片一级毛片在线| 国产视频 第一页| 少妇精品在线| 久久黄色毛片| 国产精品v欧美| 一级毛片基地| a级毛片一区二区免费视频| 亚洲欧美日韩高清综合678| 亚洲免费毛片| 国产成人精品第一区二区| 天堂va亚洲va欧美va国产| 国产精品自拍露脸视频| 国产h视频在线观看视频| 国产精品区视频中文字幕| 国产一区亚洲一区| 国产成人8x视频一区二区| 干中文字幕| 亚洲视频在线网| 国产一在线观看| 国产97视频在线观看| 色综合狠狠操| 日韩精品一区二区三区免费| 97在线免费| 性做久久久久久久免费看| 国产真实乱子伦视频播放| 天天爽免费视频| 青草91视频免费观看| 一本久道久综合久久鬼色| 亚洲伊人电影| 美女无遮挡拍拍拍免费视频| 综合网久久| 亚洲一级毛片| 中国一级毛片免费观看| 黄色网在线| Jizz国产色系免费| 国产亚卅精品无码| 国产精品久久久久久久伊一| 亚洲第一成年网| 精品人妻无码中字系列| 天天躁夜夜躁狠狠躁图片| 国产精品亚洲综合久久小说| 91网站国产| 大学生久久香蕉国产线观看| 无码免费视频| 波多野结衣在线一区二区| 久久免费视频6| 精品自拍视频在线观看| 91精品啪在线观看国产| 国产性爱网站| 亚洲av无码牛牛影视在线二区| 国产精品成人第一区| 亚洲精品va| 色综合色国产热无码一| 国产小视频a在线观看| 午夜天堂视频| 强奷白丝美女在线观看| 无码一区中文字幕| 日韩激情成人| 亚洲中久无码永久在线观看软件| 色视频久久| 激情成人综合网| 久久精品人人做人人综合试看| 99re66精品视频在线观看| 狠狠久久综合伊人不卡|