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
主站蜘蛛池模板: 国产亚洲精久久久久久无码AV| 9cao视频精品| 国产一区二区三区在线观看视频| 亚洲人在线| 2020精品极品国产色在线观看| 欧美国产综合视频| 久久黄色视频影| 亚洲精品片911| 无码AV动漫| 1024你懂的国产精品| 国产黄在线免费观看| 国产剧情一区二区| 97se亚洲综合在线天天 | 欧美日韩第二页| 国产精品午夜电影| 72种姿势欧美久久久大黄蕉| 999精品色在线观看| 国产成人无码播放| 91精品国产自产91精品资源| 久久香蕉国产线看观看亚洲片| 成人福利在线免费观看| 国产成人8x视频一区二区| 欧美成人看片一区二区三区 | 一本一道波多野结衣av黑人在线| 伊人久久精品无码麻豆精品| 日本在线免费网站| 青青青国产精品国产精品美女| 四虎影视无码永久免费观看| 国产高潮视频在线观看| 欧美日韩成人在线观看| 久久毛片基地| 正在播放久久| 亚洲视频四区| 午夜福利免费视频| 国模沟沟一区二区三区| 欧洲精品视频在线观看| 国产网站黄| 国产高清在线精品一区二区三区 | 18禁黄无遮挡免费动漫网站| 在线欧美a| 特级做a爰片毛片免费69| 四虎精品免费久久| 日韩精品专区免费无码aⅴ| 被公侵犯人妻少妇一区二区三区| 国产美女丝袜高潮| 欧美日韩精品在线播放| 天堂成人在线| 精品1区2区3区| 色AV色 综合网站| 国产精品13页| 在线观看欧美国产| 色香蕉影院| 国产精品无码翘臀在线看纯欲| 国产午夜精品鲁丝片| 国产成人精品无码一区二| 久久青草热| 国产尤物jk自慰制服喷水| 亚洲国产系列| 九九热在线视频| 国产亚洲精品91| 青青青国产视频手机| 亚洲精品黄| 成人午夜视频网站| 国产三级成人| 91国内视频在线观看| 亚洲一区精品视频在线| 好吊色国产欧美日韩免费观看| 性网站在线观看| 亚洲天堂网视频| 欧美日韩一区二区三区在线视频| 久久综合色视频| 亚洲精品图区| 欧类av怡春院| 国产精品一线天| 久久精品视频一| 欧美色亚洲| 小说 亚洲 无码 精品| 国产经典免费播放视频| 手机精品视频在线观看免费| 国产高潮流白浆视频| 欧美国产日韩在线观看| 香蕉eeww99国产在线观看|