《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種可編程多路閃存控制器的設計與驗證
一種可編程多路閃存控制器的設計與驗證
2017年電子技術應用第9期
張洪柳,張 春
清華大學 微電子學研究所,北京1000861
摘要: 介紹了一種可應用于固態(tài)硬盤(Solid State Disk)主控芯片中的閃存控制器的設計實現(xiàn)方法。該閃存控制器最大支持4路閃存通路,4路閃存通路共用一個ECC糾錯模塊,提出一種新型可編程控制方法,CPU可實現(xiàn)4路閃存數(shù)據的并發(fā)讀寫,并兼容多種品牌的閃存顆粒。主要介紹了該閃存控制器的硬件架構及關鍵模塊的設計實現(xiàn)思路,并最終給出了閃存控制器的驗證結果及綜合結果,在多種糾錯格式及4路通路的配置下,閃存控制器的性能及成本均能滿足一般SSD主控芯片的使用需求。
中圖分類號: TP216
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.170744
中文引用格式: 張洪柳,張春. 一種可編程多路閃存控制器的設計與驗證[J].電子技術應用,2017,43(9):39-42.
英文引用格式: Zhang Hongliu,Zhang Chun. Design and verification method of one programmable multi-channel NAND Flash controller[J].Application of Electronic Technique,2017,43(9):39-42.
Design and verification method of one programmable multi-channel NAND Flash controller
Zhang Hongliu,Zhang Chun
Tsinghua University Microelectronics Institute,Beijing 1000861,China
Abstract: An effective design and implementation method of NAND flash memory host controller that implemented in Solid State Disk controller was analyzed in this paper. The NAND flash memory host controller supports up to 4 channels NAND flash ports, with 4 channels NAND flash port sharing one ECC error correction module. By using a new type of programmable control method, the CPU can realize 4 channels read and write flash memory data concurrent, and is compatible with a variety of brands of NAND flash. The design philosophy of hardware architecture and critical modules was introduced. The verification and synthesis results were demonstrated finally. Considering of performance and cost evaluation, general SSD controllers could be satisfied by this controller which configured with 4 flash channels and multiple ECC coding formats.
Key words : NAND flash;multi channel;programmable;SSD

0 引言

    固態(tài)硬盤相對于傳統(tǒng)機械硬盤,憑借其高讀寫性能、低功耗、低噪音、體積小、抗震性強等諸多優(yōu)點,近年來在消費類電子、軍工、航空航天等領域得到迅猛發(fā)展,并不斷搶占機械硬盤的原有市場份額。

    固態(tài)硬盤主要由主控芯片、閃存芯片和DRAM緩存芯片組成。主控芯片作為固態(tài)硬盤的核心器件,其好壞優(yōu)劣直接決定固態(tài)硬盤產品的性能和可靠性;閃存芯片目前主流應用的是15/16 nm的MLC顆粒,雖然存儲容量單顆可達128 Gb,接口性能可達400 MB/s,但數(shù)據保存性能較差,需要主控芯片具有極強的數(shù)據糾錯能力,同時配合主控芯片中的FTL(Flash Translation Layer)固件進行磨損均衡調度,以保證固態(tài)硬盤的整體壽命。

    固態(tài)硬盤主控芯片早期主要以PATA為接口,經過多年的市場發(fā)展已經逐步升級為USB3.0(5 Gb/s)/SATAIII(6 Gb/s)接口,甚至在企業(yè)級已經升級為PCIE3.0(8 Gb/s)接口,單盤容量最大可支持8 TB。而閃存單顆粒無論是接口速度還是容量,都無法滿足固態(tài)硬盤的整體需求,一般都是通過一顆主控加上多顆閃存陣列的方案實現(xiàn)。閃存控制器作為固態(tài)硬盤主控的關鍵模塊,其兼容性、糾錯能力、吞吐量、閃存陣列組合方式等特性,往往決定了最終固態(tài)硬盤產品的成本、性能及穩(wěn)定性。本文所設計的閃存控制器可支持4路閃存通路,共支持4×8片閃存片選,最大容量可支持512 GB,支持更大容量可集成多個閃存控制器;在110 nm工藝下,閃存控制器接口速率可達4×200 MB/s,在55/40 nm工藝下,速率可達4×400 MB/s;在兼容性方面,本文閃存控制器提出了一種可編程的命令編碼方式,可有效保證對閃存各個廠商命令層的支持。

1 閃存控制器總體架構

1.1 總體架構

    本文閃存控制器對外接口主要包括一個AHB[1]配置從端口、一個AHB數(shù)據從端口和4路閃存主機端口,每路閃存端口可外掛8片F(xiàn)lash片選[2]。如圖1所示。

wdz4-t1.gif

    閃存控制器只包含一個寄存器配置模塊,用于控制4路通路的數(shù)據傳輸并反映當前狀態(tài)。4路通路模塊共用一個AHB數(shù)據從端口,AHB數(shù)據從端口通過地址譯碼產生選擇信號,分別對4路通路進行數(shù)據讀寫,通過共用AHB數(shù)據端口,可降低芯片頂層集成的繁瑣程度,降低出錯概率,便于驗證,且不影響數(shù)據傳輸帶寬。4路通路模塊共用一個ECC解碼模塊,ECC解碼模塊數(shù)據輸入輸出位寬為32位,保證與4路閃存8位端口總位寬相一致,出于面積方面考慮,與4個8位寬的ECC解碼模塊相比,采用32 bit位寬可通過優(yōu)化算法和DC綜合等方法有效降低閃存控制器整體面積。

1.2 單通路模塊架構

    單通路模塊是整個閃存控制器的核心模塊,包含3個時鐘:AHB_CLK,NFC_CLK,NAND_CLK。所以按時鐘域可分為總線時鐘域、模塊時鐘域和閃存時鐘域。按照邏輯劃分可分為控制通路和數(shù)據通路,控制通路包括流程控制模塊、初始化模塊、地址生成模塊和指令控制模塊;數(shù)據通路包括數(shù)據控制模塊、加解擾模塊、取反模塊和閃存接口模塊,閃存控制器單通路模塊架構如圖2所示。

wdz4-t2.gif

2 設計實現(xiàn)

2.1 指令編碼

    由于閃存業(yè)界分為兩大陣營,各自支持ONFI[3]和Toggle兩種不同協(xié)議,如果通過硬件實現(xiàn)命令層的傳輸控制,一旦閃存廠商協(xié)議升級或者變更,則會存在命令層不兼容的風險,只有通過重新設計流片才能解決,這樣無疑會增加固態(tài)硬盤主控廠商的成本。

    本文采用軟硬件結合的方式,提出了一種可編程的命令層實現(xiàn)方法,即CPU根據指令集格式進行命令碼編程,寫入閃存控制器內部指令SRAM中,閃存控制器根據指令SRAM中的指令進行閃存顆粒的讀寫、擦除等操作,如果需要重復操作,CPU無需再次寫入,直接配置閃存控制器執(zhí)行上次操作即可。

2.1.1 指令集格式

    指令集共包含4條指令:控制指令、地址指令、命令指令和數(shù)據指令,如表1所示。

wdz4-b1.gif

    控制指令一般作為一個命令層操作的起始指令,指令標志為0xf,ce_num代表當前操作的閃存片選,i代表操作完成后是否報告中斷,byte2和byte1保留,byte0代表當前命令層操作總的word個數(shù)。

    地址指令指令標志為0x1,vn代表當前指令有效地址個數(shù),byte0-2分別代表當前操作的地址,比如閃存列地址為2個byte,則vn為2,byte0和byte1有效。

    命令指令包含閃存spec定義的標準命令和自定義用戶命令,指令標志為0x2,su代表當前是spec命令還是用戶命令,command_code當su為1時由CPU寫入閃存標準命令,當su為0時,由CPU寫入用戶命令。用戶命令主要用于滿足閃存命令間的一些時序參數(shù)及狀態(tài)操作,定義如表2。

wdz4-b2.gif

    數(shù)據指令主要包含系統(tǒng)數(shù)據和空閑區(qū)數(shù)據的讀寫操作,指令標志為0x4,ms表示當前是系統(tǒng)數(shù)據(main data)還是空閑區(qū)數(shù)據(spare data),rw代表讀寫操作,sector_count表示當前操作數(shù)據塊的個數(shù)。

2.1.2 命令層編碼

    軟件通過CPU將閃存控制器指令進行編程后,形成一套閃存命令層編碼,可實現(xiàn)對閃存的讀寫擦除等各種操作。以閃存的擦除操作為例,如表3。

wdz4-b3.gif

2.2 流程控制

    流程控制模塊主要負責命令層編碼的取址、解析、執(zhí)行以及數(shù)據通路模塊的控制等操作。

    流程控制模塊的狀態(tài)機如圖3所示。

wdz4-t3.gif

    其中初始化狀態(tài)主要負責檢測當前閃存控制器外掛閃存的數(shù)量,通過輪詢單個閃存片選,發(fā)送復位指令后檢查閃存RB_n引腳狀態(tài),如果發(fā)送指令后檢測到RB_n信號線下降沿,則表示閃存外掛有效。CMDREC狀態(tài)主要記錄當前CPU配置的命令層編碼起始地址及命令層有效個數(shù),如果執(zhí)行完一個命令層編碼后,需要在此狀態(tài)檢查命令層編碼的有效個數(shù),如果有效個數(shù)為0才能跳轉至IDLE狀態(tài)。

2.3 加解擾

    由于MLC工藝越來越先進,閃存內部單元間的干擾效應(cell-cell-interference)越加明顯,如果一段數(shù)據全為0或者全為1,則會加劇該效應,以致超出ECC解碼模塊的糾錯能力,所以需要將明文數(shù)據離散化后存入到閃存介質中,最大化降低單元干擾效應。

    本文采用線性反饋的方式實現(xiàn)數(shù)據的離散化,如圖4。

wdz4-t4.gif

3 驗證方法

    前仿真主要分為模塊級前仿真芯片級前仿真及系統(tǒng)級前仿真,系統(tǒng)級前仿真涉及技術層面太多,仿真效果精準但仿真速度慢,往往花費大量時間和人力,目前階段可實用性不強,本文主要進行了模塊級前仿真及芯片級前仿真。

3.1 模塊級前仿真

    模塊級前仿真通過Verilog或者SystemVerilog[4]等硬件描述語言完成仿真平臺及閃存模型的實現(xiàn),主要針對閃存控制器的功能性及代碼覆蓋率進行仿真,仿真速度快,覆蓋率高。如圖5所示。

wdz4-t5.gif

    ONFI接口讀取多個sector波形圖如圖6,Toggle接口讀取多個sector波形圖如圖7。

wdz4-t6.gif

wdz4-t7.gif

3.2 芯片級前仿真

    芯片級前仿真主要基于SoC最小化平臺[5],通過C語言編寫ARM CPU的驅動程序,對閃存控制器進行典型應用的激勵仿真,主要驗證閃存控制器集成適用性及軟硬件結合的效率。芯片級驗證平臺如圖8。閃存控制器讀取閃存數(shù)據波形如圖9,閃存控制器寫入閃存數(shù)據波形如圖10。

wdz4-t8.gif

wdz4-t9.gif

wdz4-t10.gif

4 綜合結果

    由于不同主控對閃存控制器的需求不同,集成參數(shù)不相同,最終的綜合結果也各不相同。本文中針對一般SATA類SSD主控的需求,后端綜合采用110 nm工藝庫,閃存控制器典型配置參數(shù)如下:

    閃存通路數(shù):4

    AHB接口位寬:32

    閃存接口位寬:8

    AHB_CLK/NFC_CLK:200 MHz

    NAND_CLK:400 MHz

    ECC糾錯格式:1/8/16/24/40/60/72

    線負載模型:enG1000K

    綜合結果總門數(shù)約為1 030 K邏輯門,其中ECC解碼模塊占用490 K邏輯門,單路控制器門數(shù)約為135 K邏輯門。功耗情況如下:

    單元內部功耗:39.885 2 mW(89%)

    線開關電源:4.929 6 mW(11%)

    整體動態(tài)功耗:44.814 9 mW(100%)

    單元漏電功耗:3.574 6 mW

5 結論

    本文根據固態(tài)硬盤主控芯片對閃存控制的操作需求,通過軟硬件結合可編程的方式,設計了一種高效且兼容性極強的專用固態(tài)硬盤閃存控制器。該控制器可覆蓋支持各類閃存廠商的操作命令,糾錯能力能夠滿足不同工藝下閃存顆粒的需求,在支持容量、接口傳輸速率、電路面積、動態(tài)功耗等方面也均可滿足固態(tài)硬盤主控芯片的要求,具有廣泛的應用價值,并已成功應用在固態(tài)硬盤設計中。

參考文獻

[1] ARM.AMBA@3 AHB-Lite Protocol V1.0 Specification.www.arm.com,2006.

[2] 陳宏銘,程玉華.針對固態(tài)硬盤應用的多通路閃存控制器實現(xiàn)[J].中國集成電路,2012(1):37.

[3] Intel,Micron,Phison,et al.Open NAND Flash Interface Specification Revision 3.2.www.onfi.org,2013.

[4] Accellera,SystemVerilog 3.1a Language Reference Manual.www.accellera.org,2004.

[5] 張磊,李清江,聶洪山,等.基于SATA接口的固態(tài)硬盤設計[J].微處理機,2011(4):77-78.



作者信息:

張洪柳,張  春

(清華大學 微電子學研究所,北京1000861)

此內容為AET網站原創(chuàng),未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美日韩成人| 欧美成人第一页| 亚洲国产精品久久91精品| 亚洲综合视频网| 亚洲天堂av在线免费| 91久久亚洲| 亚洲国产视频直播| 亚洲国产岛国毛片在线| 在线播放豆国产99亚洲| 国产一区二区三区不卡在线观看| 国产精品毛片va一区二区三区| 欧美精品一区三区| 欧美电影在线观看| 欧美一区网站| 欧美高清在线观看| 欧美精品一卡二卡| 久久野战av| 在线电影一区| 欧美韩国日本一区| 欧美大色视频| 欧美激情综合在线| 欧美精品一区二区视频| 欧美精品色综合| 欧美日韩性视频在线| 国产精品高潮粉嫩av| 国产精品视频yy9099| 国产日韩精品一区二区浪潮av| 国产午夜精品一区二区三区欧美 | 久久久夜夜夜| 美女免费视频一区| 欧美黄免费看| 欧美视频日韩| 国产精品亚洲不卡a| 国产亚洲精品高潮| 亚洲成色www8888| 亚洲精品视频免费| 亚洲视频一起| 国产精品va在线| 免费看av成人| 欧美日本国产| 国产精品天美传媒入口| 国产日韩在线亚洲字幕中文| 激情成人在线视频| 亚洲三级视频| 亚洲特级片在线| 久久国产手机看片| 亚洲美女黄网| 欧美一区二区免费视频| 蜜臀91精品一区二区三区| 欧美日韩国产另类不卡| 国产精品一区二区三区乱码 | 一区二区高清视频在线观看| 亚洲一区二区三区中文字幕在线| 欧美一乱一性一交一视频| 亚洲激情一区二区三区| 亚洲一区二区黄| 久久久久99精品国产片| 欧美日本国产| 国产中文一区| 一区二区三区偷拍| 亚洲国产美女久久久久| 亚洲一区二区三区午夜| 久久久天天操| 欧美网站大全在线观看| 含羞草久久爱69一区| 一区二区三区日韩欧美精品| 欧美在线播放一区| 国产精品99久久久久久白浆小说| 久久久精品一区| 国产精品福利在线观看| 亚洲国产美女精品久久久久∴| 亚洲愉拍自拍另类高清精品| 亚洲黄色大片| 欧美一区二区三区四区夜夜大片| 欧美11—12娇小xxxx| 国产精品伦理| 亚洲肉体裸体xxxx137| 日韩视频精品在线| 国产欧美日本一区二区三区| 亚洲动漫精品| 欧美一区三区二区在线观看| 一本一本久久| 日韩视频一区二区三区| 一区二区三区回区在观看免费视频| 欧美日韩日本网| 午夜在线电影亚洲一区| 亚洲中无吗在线| 亚洲精选在线| 久久精品导航| 亚洲精品在线一区二区| 国产精品视频免费| 在线播放豆国产99亚洲| 亚洲欧美视频一区| 一区二区三区视频在线| 免费日韩av片| 激情亚洲一区二区三区四区| 亚洲自拍偷拍一区| 亚洲一二三级电影| 欧美激情区在线播放| 精品动漫一区二区| 欧美一区二区私人影院日本| 一区二区三区高清在线观看| 欧美精品91| 国产一区二区三区久久 | 亚洲网站在线| 欧美黄色精品| 亚洲国产成人不卡| 久久精品亚洲一区| 欧美综合77777色婷婷| 宅男精品视频| 午夜在线成人av| 亚洲精品免费一二三区| 美日韩精品免费| 国产亚洲欧美日韩日本| 亚洲欧美日韩区| 午夜欧美大尺度福利影院在线看| 欧美色大人视频| 久久只有精品| 国产一区二区三区在线观看视频 | 国产又爽又黄的激情精品视频 | 亚洲视频欧美在线| 欧美日韩激情小视频| 亚洲国产一区二区视频| 亚洲精品乱码久久久久久久久 | 亚洲精品久久久久久下一站| 欧美成人性网| 亚洲人成网站精品片在线观看| 日韩视频免费在线| 欧美日韩播放| 一本一本久久a久久精品牛牛影视| 在线综合亚洲| 国产精品日韩在线一区| 亚洲深夜福利| 午夜伦欧美伦电影理论片| 国产女同一区二区| 久久国产精品久久精品国产 | 亚洲福利视频一区| 亚洲看片免费| 欧美日韩免费一区二区三区视频 | 亚洲天堂av高清| 欧美伊人久久久久久久久影院| 国产欧美日韩综合一区在线观看 | 久久免费视频观看| 欧美日韩在线另类| 亚洲一级二级在线| 欧美制服第一页| 狠狠色丁香婷婷综合久久片| 亚洲国产日韩美| 欧美久久成人| 中国成人黄色视屏| 久久精品国产欧美亚洲人人爽| 激情视频一区| 妖精视频成人观看www| 欧美视频国产精品| 性欧美video另类hd性玩具| 久久婷婷亚洲| 亚洲免费成人av电影| 欧美一区不卡| 影院欧美亚洲| 亚洲天堂视频在线观看| 国产欧美日本| 亚洲日本精品国产第一区| 欧美日韩综合视频网址| 午夜精品久久久久久久久久久久久| 久久久久欧美精品| 亚洲免费观看高清完整版在线观看熊| 亚洲一区999| 狠狠色丁香久久综合频道 | 亚洲少妇中出一区| 国产视频一区欧美| 99日韩精品| 国产日韩欧美二区| 亚洲精品中文字幕有码专区| 国产精品日韩在线播放| 91久久精品一区二区别| 欧美日韩国产123区| 香蕉久久久久久久av网站| 欧美精品二区| 欧美与黑人午夜性猛交久久久| 欧美精品一区二区三区蜜桃| 午夜一区不卡| 欧美日韩精品综合在线| 久久国产视频网站| 欧美午夜在线视频| 亚洲成在人线av| 国产精品成人一区二区网站软件| 欧美一区二区视频97| 欧美日韩国产色视频| 久久爱91午夜羞羞| 国产精品videosex极品| 最新精品在线| 国产美女精品在线| 一区二区三区免费观看| 狠狠色丁香久久婷婷综合丁香| 亚洲一级免费视频| 亚洲国产欧美一区二区三区同亚洲| 欧美在线综合视频| 一区二区av| 欧美成人免费网站| 久久国产成人|