SSD讀寫次數受限
隨著半導體製程不斷進步,單顆NAND Flash儲存容量也因此提升許多,從以往256MB到現在16GB,市場單價不斷降低也有助於擴展市場應用的接受度。以電子儲存為基礎的固態硬碟SSD和記憶體模組設計,結合控制IC和NAND Flash,利用傳統區塊寫入抹除方式並仰賴讀寫存取的設計效能,具備低耗電、重量輕、尺寸小、無噪音、耐震、開機速度快等特性優勢。
不過NAND Flash本身的電子閘在讀取次數越高的情況下越不穩定,且NAND Flash寫入前必先全部抹除、即使是寫入1bit也要全部抹除的特性,連帶使得SSD讀寫次數有所侷限。整體而言,SSD寫入速度不若讀取速度,也是影響SSD使用感受的問題。目前SLC架構的SSD讀寫次數可達10萬次左右,一般為3~5萬次;而MLC SSD則在5000~1萬次左右。儘管MLC SSD架構卻因其特性可大幅擴充儲存容量,價格也較低,常應用於各類消費電子產品。不過MLC顆粒特性卻會帶來寫入次數少、寫入速度慢、可靠穩定度較差、壽命較短等問題。克服MLC架構缺憾對於提升SSD應用普及度而言,相當重要。
《圖一 64GB容量的2.5吋SATA SSD與同尺寸規格5400rpm轉速的HDD之間效能比較示意圖 》 | 資料來源:創見資訊(Transcend) |
|
控制IC角色關鍵
若要提升SSD硬碟與嵌入式小型SSD記憶體模組的運作效能,需要功能強大的SSD控制晶片,來克服SSD在穩定性、可靠度與使用壽命等課題。因為儘管NAND Flash隨著微型製程技術演進儲存容量變高,不過存取速度也因此變慢,使用壽命變短,這就需要控制IC的技術革新來解決問題。控制IC負責支援運作各種不同製程規格的NAND Flash,在這裡控制IC注重的是穩定度、資料可靠度(data retention)和耐用性(endurance),韌體設計角色尤其關鍵。
不過單僅提升控制IC功能設計還不夠,群聯電子(PHISON)研發處產品專案管理部資深專案經理許江漢便指出,還要從模組內部考量控制IC與NAND Flash之間的運作效能,並且一併從外部系統整合角度,考量提升速度、使用壽命及相容性等要點。百佳泰(ALLION)新興事業開發部業務部協理賴俊亨認為,目前台灣控制IC廠商在控制2~4顆NAND Flash的能力已經相當成熟,未來正朝向控制8顆或是2~3種各不相同的NAND Flash產品前進。
系統整合提升SSD效能要點
許江漢進一步表示,從系統整合角度來看,提升SSD速度不僅是讀寫速度,還包括照顧到消費者的使用經驗,例如考慮到SSD在開關機速度及進入作業系統的速度。使用者不會計較多媒體影音視訊內容的儲存時間,而是會介意開機時間和進入休眠狀態、或者同時使用各類應用軟體所花費的時間,這與random寫入速度的效能關係密切,而與一般讀寫速度較無關。其次SSD使用壽命也很重要,包括溫濕度、耐熱度、Wear Leveling、讀寫次數等可靠度和耐用性。再者是相容性課題,除了與不同品牌大廠系統軟硬體之間的對外相容性外,與各家NAND Flash大廠之間的內部相容性測試更是其重點。許江漢深入指出,單就掌握控制IC技術不足以掌握SSD系統整合要點,且獲利及附加價值亦有限,因此控制IC廠商多朝向記憶體模組和SSD成品領域多元並進。
《圖二 群聯電子針對Netbook應用所整合設計的PATA界面CF控制IC與記憶體模組 》 | 資料來源:群聯電子(PHISON) |
|
控制IC提升SSD效能技術大要
控制IC所注重的穩定度在於盡量讓SSD資料讀寫正常,避免資料流失;可靠度是能讓SSD快速正確地寫入讀取檔案資料;耐用度的重點在於延長SSD資料保存年限。目前控制IC廠商多普遍採用損壞區塊管理(Bad Block Management)、錯誤修正碼ECC(Error Correcting Code)、平均抹除寫入儲存區塊(Wear Leveling)三種演算機制,來達到上述效能要求。此外,除錯管理(bit Error Handling)也是增加SSD穩定性的重要關鍵技術。
ECC用來確保系統正常運作的穩定度,不因資料錯誤導致當機,這也可藉由強化NAND Flash特性著手。BBM和Wear Leveling是針對耐用性所設計的壞區管理機制,可提升資料存取可靠度;控制IC可透過BBM偵測並標示NAND Flash內的損壞區塊,並警示避免資料存入此區塊中。Wear Leveling是藉由控制IC盡可能讓資料平均使用存取於每一block區塊中,避免特定block區塊因使用過度而壞損。無論是ECC、BBM還是Wear Leveling,都是針對資料儲存程序已進入Flash區塊階段的維護設計。
《圖三 SSD相容性測試實驗室一隅 》 | 場所來源:慧榮科技(SiliconMotion) |
|
穩定度
百佳泰業務部協理賴俊亨表示,由於NAND Flash移轉電子需要電動勢(eV),高溫易讓電子移動,資料毀損風險也會因此提高。因此隨著SSD存取讀寫量增加,儲存效能及資料穩定度也會跟著下滑。因此SSD模組廠商應選擇運用錯誤修正碼ECC能力較好的控制IC設計。慧榮科技(SiliconMotion)總經理苟嘉章深入說明指出,ECC是幫助SSD在單位資料中回復修正原先資料的設計,ECC不僅要偵測,更要修正,例如在1.5k單位資料中回復24bits的除錯能力。此外若要進一步避免資料存取錯誤,也必須強化pattern encryption設計,亦即避免特殊pattern進入Flash內,而使得page被感染到,進一步減小data corruption和noise injection的負面影響。
賴俊亨進一步表示,SSD記憶體模組設計藉由控制IC的ECC功能,檢查傳送至NAND Flash的系統和資料是否有誤,可修復並提高資料儲存保留時間,進而提高穩定度。一般記憶卡或USB device產品常以4bits的ECC除錯修正碼為主,而企業多使用8bits除錯能力的ECC編碼。
不過目前有關ECC部分測試相當困難,也較沒有任何方法作為依循,因為ECC除錯能力幾乎屬於各家控制IC大廠的專屬know-how,測試方法也掌握在各家控制IC大廠手上。
可靠度(data retention)
資料可靠度則藉由控制損壞區塊管理BBM演算機制強化提升,群聯電子資深專案經理許江漢便以群聯的Smart command設計舉例指出,這可警示bad block寫入抹除次數已達極限進一步提前預防。賴俊亨則說明指出,一般在設計上,SSD成品會保留2%以上block替換包含出產壞軌部分以及提早出問題的區塊,不過這種方法卻會導致降低效能的副作用。
《圖四 群聯電子相關測試環境建制示意圖 》 | 資料來源:群聯電子(PHISON) |
|
慧榮科技總經理苟嘉章則進一步指出,工規SSD測試對於資料可靠度的要求非常嚴謹,在BBM管理上更需要強化預警防範演算機制,亦即在NAND Flash本身的page和block到達使用臨界點(edge)時,藉由控制IC自動產生警示機制,提醒系統搬移相關資料至其他NAND Flash儲存區塊,並標示損壞區塊以避免資料存入導致損壞風險。宇瞻科技(Apacer)研發處硬體研發部經理李俊昌說明表示,以往控制IC以8051基礎的8~16bits單晶片為核心,由於SSD可靠度不斷提升,工規SSD控制IC也開始轉向ARM或是RISC為基礎的CPU架構發展。
可靠度測試要點
百佳泰業務部協理賴俊亨表示,電壓、溫度、寫入次數大小,都會影響SSD產品資料可靠度的測試結果,至於PCB品質對於Data Retention影響則較小。可靠度測試藉由恆溫箱環境測試,加強溫度濕度變數縮短使用時程,加速成品臨界點。慧榮科技在可靠度測試的要點則包括edging test、burning test、high and low temperature test以及power cycling test等項目。例如edging test就是測試產品老化程度,包括許多corning case應用測試方法。宇瞻科技研發部經理李俊昌則指出,對於工規SSD的可靠度測試,在模組成品階段便會進行一連串項目,包括長時間環境測試、相容性平台測試、開關機斷電測試等等。工規SSD對於穩定度和可靠度要求較高,效能反倒是其次。
《圖五 測試SSD可靠度的可程式恆溫恆濕試驗機 》 | 場所來源:慧榮科技(SiliconMotion) |
|
耐用性(endurance)
賴俊亨進一步指出,為解決耐用性(endurance)問題,控制IC廠商常以Wear Leveling和White Cache方式,將讀寫次數平均化。Wear Leveling技術將所有NAND元件視為同一記憶體單元,控制晶片能將host端資料的邏輯性區塊轉換為物理性區塊,並平均寫入任一區塊之中,以此降低資料重複寫入同一區塊的機率,平均使用抹寫次數,來提升SSD產品的耐用壽命。
賴俊亨深入說明表示,各家控制IC廠商在設計Wear Leveling演算機制異中有同,計算方法大約有兩種,其一是Write Amplification,亦即寫入1k資料需要多少k的Flash資料區作為奧援,目前一般設計為10×~40×。另一則為White Efficient,亦即調整Wear Leveling的控制能力。不過由於Wear Leveling會使用動態資料結構表,結構表不斷變化的特性,會提高SSD當遇上資料損壞時救援儲存資料的困難度。
耐用性測試要點
賴俊亨指出,測試Wear Leveling能力相對困難,必須依靠控制IC廠商協助,否則測試機構無法逕自進行。目前一般SSD使用的MTTF或平均故障間時間(MTBF)百萬小時只是經驗值,T13組織正在制訂相關回報機制,此外Intel也有公式可依此進行測試。目前百佳泰也已與相關廠商合作可先針對Wear Leveling進行測試。
提升SSD寫入速度
除了需注意控制IC在資料可靠度以及耐用性的關鍵角色之外,如何提升寫入速度也是關係到整體SSD效能的重要環節。前面已經提到相關使用者經驗與random寫入速度的密切關係。SSD處於random寫入狀態時會影響使用壽命,而可用空間零散導致效能降低的現象,也是今日所有SSD硬碟所面臨的共通問題。
《圖六 SSD可靠度測試設備一隅 》 | 場所來源:慧榮科技(SiliconMotion) |
|
方案一:外加cache提升random寫入速度效能
群聯電子資深專案經理許江漢指出,若要提升random寫入速度效能,可採取NAND Flash加DRAM cache的混合(hybrid)記憶體模組設計,儘管DRAM會因為斷電就喪失儲存特性,但其寫入速度比NAND Flash快上許多。以DRAM當作cache與控制IC相互搭配,可進一步提升像是Netbook在random作業時的儲存效能。藉由控制IC的韌體設計,先將小型資料快取存入DRAM,等一段時間後再搬入NAND Flash中,可有效提升random寫入速度。百佳泰業務部協理賴俊亨提醒,把DRAM加大,Flash抹寫次數相對減少,可進一步提升效能,不過DRAM一旦斷電,資料儲存會有遺失風險,這點必須注意。
方案二:向內提升NAND Flash本身寫入抹除速度
另一種方式是直接改變NAND本身介面,提升NAND Flash的寫入抹除速度,例如藉由ONFI NAND和Toggle NAND,Flash不再經由Flash介面而改採DDR介面,其傳輸介面速度比約為40:133,可有效提升寫入速度,不過這樣的改變,可能會使得以往的控制IC,無法有效相容支援ONFI NAND和Toggle NAND。
許江漢表示,今年5月群聯電子即將推出的控制IC系列,結合自身研發的韌體控制設計,除可支援各類奈米製程的NAND Flash之外,亦可支援混合式記憶體模組以及新款採用DDR介面的NAND Flash產品,能解決上述無法相容支援的難題。由於群聯也是ONFI NAND的創始成員之一,而Toggle NAND的兩大創始者之一的Toshiba(另一則為Samsung),也是群聯的最大股東,因此在支援此新款NAND Flash上具有相當優勢。
提升MLC SSD寫入速度和耐用性
前面提到克服MLC架構缺憾對於提升SSD應用普及度而言,相當重要。慧榮科技總經理苟嘉章認為,一般系統廠商會對於MLC SSD穩定度較不具信心,原因在於MLC屬於雙paired架構,寫入過程時突然斷電,儘管host端會察覺而不再傳輸儲存資料,但這會影響paired page之前的paired page在儲存細胞的物理特性,使得資料儲存中斷造成data corruption。這時便需要軟體處理error handling以及retreat相關問題,需要事先預防斷電時進一步回復指令,以便每次寫完時有效整理資料,另一方面針對MLC SSD不同的保護層設計也是其軟體設計重點,這些都是各家控制IC廠商的專屬know-how。
《圖七 SLC(Turbo MLC)與MLC Hybrid架構示意圖 》 | 資料來源:慧榮科技(SiliconMotion) |
|
群聯電子資深專案經理許江漢深入說明表示,群聯在去年底已開發出Ultra MLC技術,藉由自立研發的韌體技術,可把MLC寫入速度和可靠度提升至SLC水準,雖然容量會因此變小,不過價格仍維持MLC的水準,只有SLC的1/3。慧榮科技也進一步以混合架構概念(hybrid concept)為基礎,利用演算法設計所謂turbo MLC架構,亦即將density位居次要考量,把經常儲存寫入的資料搬進SLC或是turbo MLC當中,不常用或是以讀取為主的資料則放進MLC內,來進一步提升SSD耐用性和提高產品使用壽命。
SSD相容性測試重點
正因為要提升SSD產品品質,不僅要從內部需考量控制IC與NAND Flash之間的運作效能,也要從外部系統整合角度考量提升速度、使用壽命及相容性等要點,因此除了提升控制IC、NAND Flash以及MLC架構的效能外,SSD與其他系統裝置相容性測試更是關鍵重要。SSD產品技術再如何精進,也需與系統整合廠商確定SSD產品與系統裝置的相容性和穩定度;對於系統品牌大廠來說,提升SSD效能不僅是取得SSD測試數據而已,更要全面考量提升使用者經驗,如此才可進入實質價格協商階段,否則無法滿足系統廠商相容性需求,一切再好的效能也無用。
一般而言,PC端應用的SSD測試較注重random寫入速度,嵌入式小型SSD應用在例如數位攝錄影機(Camcorder)裝置則不著重random寫入速度效能,因此測試要點便需針對不同SSD產品應用,提供客製化的革新內容。嵌入式小型SSD產品的測試困難之處,在於品牌大廠各自擁有專屬且封閉的內核、指令和韌體設計要點是賴以生存競爭的關鍵環節,因此在相容性測試上,控制IC和記憶體模組廠商必須與品牌大廠維持機密封閉的合作關係。這對於建立共通性的測試標準來說無疑是相當難以克服的現實挑戰。
《圖八 各類Camcorder、手機、數位相機等可攜式產品,在與SSD儲存裝置或是記憶體模組進入相容性測試之前,均按照廠商編號及產品型號依序放在保藏室內 》 | 場所提供:慧榮科技(SiliconMotion) |
|
SSDA1.4版相容認證測試方案要點
SSDA針對2.5吋SATA介面SSD產品的1.4版相容認證測試方案,現階段的測試概念分三個部分,一個是以HDD為基準進行的標竿測試(Benchmark Test),第二個部分為使用者模擬(User Simulation),針對使用者執行上的問題來測試,例如SSD與作業系統搭配的結果。第三部分則是SSD的Wear Leveling問題,與SSD使用壽命問題息息相關,也是各廠商積極發展的核心技術。
目前1.4版相容認證測試方案內容便包含OS獨立測試(OS Independent Test)和互通性測試(Interoperability test)兩大類,OS獨立測試包括機械測試Mechanical Test、效能測試Performance Test、可靠度測試Reliability Test三大項,互通性測試則包括主機控制Host Controller以及作業系統安裝OS Installation。其中Performance Test就涵蓋標準檢查程式(Benchmark Test)、OS Installation Time、Windows Boot Time、Power Consumption子項。Reliability Test則包括Stress Test、SSD Power Cycling Test、Hot Plug Test子項。
目前SSDA在相容性測試上的Gold System包括Asus、HP、IBM、Acer、Dell、Apple等品牌大廠,作業系統涵蓋Windows、Linux和Mac及其相關細項。基本上相容性測試使用一般測試工具進行模擬測試,例如Benchmark Test便採用HD Tune 2.55、FDBENCH 1.01、PCMark05 v120、 HDTachRW-3-0-1-0、Iometer 2006.07.27等測試工具。
《圖九 SSDA在標竿測試(Benchmark Test)上以FDBENCH 1.01測試工具對各廠商SSD產品的測試數據結果 》 | 資料來源:SSDA |
|
1.5版相容性測試方案即將出爐
百佳泰業務部協理賴俊亨表示,SSDA未來將推出1.5版相容性測試方案,此方案強化耐用性和資料可靠度測試內容,並擴展至2.5吋SATA以外的記憶體模組測試,並增加對Windows 7的相容性測試。
針對SSD與Windows 7測試部分,賴俊亨進一步表示,Win7可藉由ATA8-ACS定義測試,來判別儲存裝置是否為HD還是SSD。其運作機制大要是Win7會停止部分HD相關的自動程序(例如硬碟整理),並增加對應SSD的指令,進一步改進起使安裝磁碟區的設定,從原來#63區塊改成#64區塊,以符合Flash原則而提升耐用性和效能。賴俊亨樂觀期待,Win7可進一步帶動SSD一致性測試標準的需求。
台灣廠商SSD測試實驗室發展現況
為求與系統廠商在相容性測試上維持更緊密的合作關係,以及維護自身在專屬know-how的技術機密,大部分台灣記憶體控制IC和模組設計廠商均設有SSD或是NAND Flash模組測試實驗室,一方面先期在市面上購買各類品牌大廠數位相機、攝錄影機、Netbook等系統裝置,進行不對外開放的內部性質相容性測試,一方面與長期合作的系統廠商進行客製化的測試合作項目。嚴謹的測試時間也需要1~2個月左右。慧榮科技總經理苟嘉章認為,不同的測試方法對於SSD產業而言並不見得是壞事,廠商也必須藉由與各大廠合作中學習,整合開發出一套軟體,去模擬各項PC領域或是不同corning case的測試環境,使其發生變數能在短期內出現,有助於產生各項life span測試模型。
《圖十 Host端系統相容性測試實驗室一隅 》 | 場所提供:慧榮科技(SiliconMotion) |
|
群聯電子的測試中心與各家系統廠商維持緊密的合作關係,例如NAND與DRAM的混合方案設計,或是增加硬體加密功能,即便拆解後放入其他裝置內也不可讀取儲存資料的設計,便是來自於系統廠商的回饋建議、進一步改良所推出的解決方案。群聯也邀請Microsoft、HP等系統整合廠商參與研討觀摩SSD測試相關內容,也會委外與百佳泰進一步合作測試。慧榮科技擁有規模相當大的SSD產品測試中心,目前約有1800~1900台各類款式型號的手機和數位相機,在測試中心進行嵌入式小型NAND Flash記憶卡測試,另外慧榮也針對10多種工業應用的軟體,配合工業標準測試程序,進行SSD相容性測試,同時也針對SSD驅動多媒體視訊內容儲存進行效能測試。
創見資訊也有自己的測試團隊,強調記憶體模組及成品的穩定度與品質,會針對各項作業系統則包括Windows、Linux、Mac以及細項進行測試,此外創見在提升資料可靠度以及耐用性上,也有屬於自己的韌體升級方案,在測試要點上也包含相容性、效能、環境、以及耐用性等環節。
結語
欲提升SSD運作效能,控制晶片角色關鍵,克服SSD在穩定性、可靠度與使用壽命等課題。除此之外,還要從模組內部考量控制IC與NAND Flash,並且一併從外部系統整合角度,考量提升速度、使用壽命及相容性等要點。為提升SSD寫入速度,外加cache提升random寫入速度效能、或提升NAND Flash本身寫入抹除速度,均是可行方案。藉由混合架構強化MLC SSD寫入速度和耐用性也是設計重點。為強化系統整合,相容性測試方案是目前SSD測試要點關注所在,未來針對可靠度及耐用性的共通性測試標準也即將出爐。