專(zhuān)利名稱(chēng):固態(tài)硬盤(pán)系統(tǒng)中緩沖器高緩的編程方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種固態(tài)硬盤(pán)系統(tǒng)中緩沖器高緩的編程方法和裝置,特別是,涉及一種固態(tài)硬盤(pán)系統(tǒng)中,減少在由多個(gè)存儲(chǔ)器芯片構(gòu)成的存儲(chǔ)器中存儲(chǔ)緩沖器高緩的頁(yè)時(shí)所發(fā)生的延誤的編程方法和裝置。
背景技術(shù):
存儲(chǔ)數(shù)據(jù)的存儲(chǔ)裝置有磁盤(pán)(magnetic disk)、半導(dǎo)體存儲(chǔ)器等。由于存儲(chǔ)裝置根據(jù)種類(lèi)互相具有不同的物理性特征,因此需要與物理性特征相對(duì)應(yīng)的管理方法?,F(xiàn)有存儲(chǔ)裝置中磁盤(pán)被廣泛地使用(magnetic disk)。磁盤(pán)的特征為平均每千字節(jié)(kilobyte)需要數(shù)毫秒(millisecond)的讀寫(xiě)時(shí)間。此外,磁盤(pán)的特征為,根據(jù)數(shù)據(jù)被存儲(chǔ)的物理性位置光標(biāo)(arm)到達(dá)的時(shí)間的不同,因此讀寫(xiě)的時(shí)間也不同。最近,比起磁盤(pán),讀寫(xiě)時(shí)間短、電力消耗低、體積小的非易失性(non-volatile)存儲(chǔ)器在加速地替代磁盤(pán)。這是因?yàn)榉且资源鎯?chǔ)器實(shí)現(xiàn)了大容量化而產(chǎn)生的結(jié)果。非易失性存儲(chǔ)器可用電力進(jìn)行讀取(read)、寫(xiě)入(write)及擦除(erase),并在沒(méi)有電源的狀態(tài)下也能維持被存儲(chǔ)的數(shù)據(jù)的一種半導(dǎo)體存儲(chǔ)器裝置。用于非易失性存儲(chǔ)器裝置的數(shù)據(jù)存儲(chǔ)過(guò)程,除了被叫作寫(xiě)入以外,還被叫作編程(programming)。具代表性的非易失性存儲(chǔ)器可為閃存(Flash memory),閃存比起現(xiàn)有的硬盤(pán)驅(qū)動(dòng)器HDD(Hard Disk Drive),體積小、電力消耗低,具有可提高讀取速度的優(yōu)點(diǎn)。最近,用于利用大容量閃存來(lái)替代HDD的固態(tài)硬盤(pán)SSD(Solid State Disk)也已被提議出來(lái)。閃存的種類(lèi)中,具代表性的為NAND方式的閃存和NOR方式的內(nèi)存等。NAND方式和 NOR方式可根據(jù)信元(cell)陣列(array)的結(jié)構(gòu)和操作方式被區(qū)分。稱(chēng)一個(gè)閃存為閃存芯片時(shí),為了大容量可被構(gòu)成為使用多個(gè)閃存芯片的多芯片。 在這種情況下,多個(gè)閃存芯片共享一個(gè)數(shù)據(jù)總線(xiàn)。閃存在寫(xiě)入及擦除中所需的時(shí)間比傳送相對(duì)來(lái)說(shuō)要久。因此,在多芯片的情況下,利用流水線(xiàn)(pipelining)技法。流水線(xiàn)是指在執(zhí)行向一個(gè)閃存芯片寫(xiě)入命令期間,按順序地對(duì)其他閃存芯片進(jìn)行傳送和寫(xiě)入,可起到隱藏用于一個(gè)芯片的寫(xiě)入時(shí)間的效果。另外,作為現(xiàn)有的閃存的基本讀取/寫(xiě)入的單位的頁(yè),比主機(jī)中指示的基本命令的單位扇區(qū)要大許多。因此,主機(jī)在發(fā)出小單位的寫(xiě)入命令語(yǔ)時(shí),控制器通過(guò)緩沖器高緩或閃存轉(zhuǎn)換層,從所對(duì)應(yīng)的閃存芯片讀取其原本頁(yè),利用請(qǐng)求的扇區(qū)創(chuàng)建一個(gè)頁(yè)。此后,必須進(jìn)行將創(chuàng)建的一個(gè)頁(yè)在閃存芯片中重新使用的附加工作,但是在這種情況下,控制器在存儲(chǔ)原本頁(yè)的閃存芯片處于寫(xiě)入操作時(shí),為了讀取原本頁(yè)必須等待直到寫(xiě)入操作結(jié)束為止。
發(fā)明內(nèi)容
技術(shù)課題本發(fā)明的實(shí)施例,提供一種固態(tài)硬盤(pán)系統(tǒng)中緩沖器高緩的編程方法和裝置。本發(fā)明的實(shí)施例,提供一種固態(tài)硬盤(pán)系統(tǒng)中的編程方法和裝置,其減少在由多個(gè)存儲(chǔ)器芯片構(gòu)成的存儲(chǔ)器中存儲(chǔ)緩沖器高緩的頁(yè)時(shí)所發(fā)生的延誤。本發(fā)明的實(shí)施例,提供一種固態(tài)硬盤(pán)系統(tǒng)中優(yōu)先存儲(chǔ)的編程方法和裝置,其在由多個(gè)存儲(chǔ)器芯片所構(gòu)成的存儲(chǔ)器中存儲(chǔ)緩沖器高緩的頁(yè)時(shí),無(wú)須等待,即生成能夠存儲(chǔ)的頁(yè)。技術(shù)方案根據(jù)本發(fā)明的實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩的編程裝置,包括緩沖器高緩單元、存儲(chǔ)器單元和控制單元。緩沖器高緩單元存儲(chǔ)頁(yè);存儲(chǔ)器單元包括多個(gè)存儲(chǔ)器芯片; 控制單元考慮向所述多個(gè)存儲(chǔ)器芯片中的至少一個(gè)目標(biāo)存儲(chǔ)芯片中存儲(chǔ)時(shí)可能發(fā)生的等待時(shí)間,將所述頁(yè)中至少一個(gè)頁(yè)選擇為犧牲頁(yè)。根據(jù)本發(fā)明的實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩的編程裝置,包括緩沖器高緩單元、存儲(chǔ)器單元和控制單元。緩沖器高緩單元存儲(chǔ)頁(yè);存儲(chǔ)器單元包括一個(gè)以上存儲(chǔ)器芯片;控制單元在為將從所述緩沖器高緩單元的所述頁(yè)中選出的犧牲頁(yè)存儲(chǔ)至存儲(chǔ)器單元的目標(biāo)存儲(chǔ)器器芯片中須等待時(shí),選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)。根據(jù)本發(fā)明的實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,包括以下步驟從緩沖器高緩單元的頁(yè)中選擇犧牲頁(yè);和當(dāng)為將所述犧牲頁(yè)存儲(chǔ)至存儲(chǔ)器單元的目標(biāo)存儲(chǔ)器芯片中須等待時(shí),選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)。技術(shù)效果根據(jù)本發(fā)明的實(shí)施例,涉及一種固態(tài)硬盤(pán)系統(tǒng)中緩沖器高緩的編程方法和裝置, 其包括緩沖器高緩單元、存儲(chǔ)器單元和控制單元,其中緩沖器高緩單元存儲(chǔ)頁(yè);存儲(chǔ)器單元包括一個(gè)以上存儲(chǔ)器芯片;控制單元考慮向所述多個(gè)存儲(chǔ)器芯片中的至少一個(gè)目標(biāo)存儲(chǔ)芯片中存儲(chǔ)時(shí)可能發(fā)生的等待時(shí)間,將至少一個(gè)頁(yè)選擇為犧牲頁(yè),由此減少將緩沖器高緩的頁(yè)存儲(chǔ)時(shí)所發(fā)生的延誤,提高寫(xiě)入的性能。
圖1是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的無(wú)延誤地存儲(chǔ)緩沖器高緩的頁(yè)的固態(tài)硬盤(pán)系統(tǒng)的結(jié)構(gòu)的示圖;圖2是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)中存儲(chǔ)器單元的結(jié)構(gòu)的示圖;圖3是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的將固態(tài)硬盤(pán)系統(tǒng)中無(wú)延誤地存儲(chǔ)緩沖器高緩的頁(yè)的例子與現(xiàn)有方法作比較的示圖;圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)中無(wú)延誤地將緩沖器高緩的頁(yè)存儲(chǔ)的過(guò)程的流程圖。
具體實(shí)施例方式以下,將參照附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明,但是本發(fā)明的并不受實(shí)施例的限制或限定。各附圖中出示的相同的參考符號(hào)表示相同的結(jié)構(gòu)。此外,當(dāng)某些內(nèi)容被判斷為會(huì)沒(méi)必要地使本發(fā)明的要點(diǎn)模糊不清時(shí),省略其詳細(xì)的說(shuō)明。本發(fā)明的實(shí)施例是涉及一種固態(tài)硬盤(pán)系統(tǒng)中的編程方法和裝置,其減少將緩沖器高緩的頁(yè)存儲(chǔ)在由多個(gè)存儲(chǔ)器芯片所構(gòu)成的存儲(chǔ)器中時(shí)發(fā)生的延誤,以下將參照?qǐng)D1,對(duì)根據(jù)本發(fā)明的實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)的構(gòu)造進(jìn)行說(shuō)明。圖1是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的無(wú)延誤地存儲(chǔ)緩沖器高緩的頁(yè)的固態(tài)硬盤(pán)系統(tǒng)的結(jié)構(gòu)的示圖。參照?qǐng)D1,固態(tài)硬盤(pán)SSD(Solid State Disk)系統(tǒng)120可包括緩沖器高緩單元122、 轉(zhuǎn)換層單元124、存儲(chǔ)器單元1 和控制單元128。主機(jī)110向固態(tài)硬盤(pán)系統(tǒng)120請(qǐng)求扇區(qū)單位的讀取或?qū)懭?。緩沖器高緩單元122為了減少在讀取操作或?qū)懭氩僮髦兴璧臅r(shí)間,存儲(chǔ)經(jīng)常使用的數(shù)據(jù)。緩沖器高緩單元122可專(zhuān)門(mén)進(jìn)行寫(xiě)入操作。其起到掩蓋存儲(chǔ)器單元126的緩慢寫(xiě)入性能的作用。即,同樣的請(qǐng)求在較快的時(shí)間內(nèi)再次進(jìn)入時(shí),可立即在緩沖器高緩單元 122中處理,因此不需要搜索存儲(chǔ)器單元126。轉(zhuǎn)換層單元124,可基于對(duì)至少一個(gè)閑置條的存取結(jié)果,生成物理扇區(qū)(physical sector)和邏輯扇區(qū)(logical sector)之間的映射。也就是說(shuō),轉(zhuǎn)換層單元1 將請(qǐng)求的邏輯地址轉(zhuǎn)換為對(duì)應(yīng)的物理地址,并將物理地址轉(zhuǎn)換為邏輯地址。此外,轉(zhuǎn)換層單元124由于存儲(chǔ)器單元的基本讀取或?qū)懭氲膯挝粸轫?yè),所以將扇區(qū)單位的請(qǐng)求轉(zhuǎn)換為頁(yè)單位。存儲(chǔ)器單元126以包括多個(gè)存儲(chǔ)器芯片來(lái)構(gòu)成,以下將參照?qǐng)D2來(lái)說(shuō)明存儲(chǔ)器單元126的結(jié)構(gòu).圖2是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)中存儲(chǔ)器單元的結(jié)構(gòu)的示圖。參考圖2,固態(tài)硬盤(pán)系統(tǒng)120因大容量的需要,不是將存儲(chǔ)器單元由一個(gè)存儲(chǔ)器芯片來(lái)構(gòu)成,而是將其由許多個(gè)的存儲(chǔ)器芯片222、224、2沈構(gòu)成。此外,許多個(gè)的存儲(chǔ)器芯片 222,224,226共享一個(gè)數(shù)據(jù)總線(xiàn)210。存儲(chǔ)器芯片222、224、226作為固態(tài)硬盤(pán)SSD(Solid State Disk),可作用為NAND 方式的閃存或NOR方式的閃存等。存儲(chǔ)器芯片222、224、2沈在寫(xiě)入或擦除的命令中所需的時(shí)間比傳送相對(duì)來(lái)說(shuō)要久,因此利用流水線(xiàn)(pipelining)技法。此外,存儲(chǔ)器單元126,不受圖2的限定,可由按頻道具備數(shù)據(jù)總線(xiàn)的多個(gè)頻道來(lái)構(gòu)成。在這種情況下,多個(gè)存儲(chǔ)器芯片與多個(gè)頻道中的任何一個(gè)相連接,且多個(gè)頻道互相獨(dú)立??刂茊卧? 控制固態(tài)硬盤(pán)系統(tǒng)120的整體的操作,并根據(jù)本發(fā)明的實(shí)施例,其可控制轉(zhuǎn)換層單元124。即,所述控制單元1 可執(zhí)行轉(zhuǎn)換層單元124的功能。本發(fā)明中將其分開(kāi)構(gòu)成來(lái)示出是為了將各功能區(qū)別來(lái)說(shuō)明。因此,在實(shí)際體現(xiàn)產(chǎn)品時(shí),可將轉(zhuǎn)換層單元 124構(gòu)成為在控制單元128中處理。此外,控制單元128,當(dāng)感應(yīng)到緩沖器高緩單元122的存儲(chǔ)活動(dòng)時(shí),在可使用的存儲(chǔ)器芯片的閑置(idle)存儲(chǔ)器芯片中選擇目標(biāo)存儲(chǔ)器芯片。在這種情況下,目標(biāo)存儲(chǔ)器芯片的選擇,是將存儲(chǔ)器單元126的閑置存儲(chǔ)器芯片中空著的可存儲(chǔ)空間最大的存儲(chǔ)器芯片選擇為目標(biāo)存儲(chǔ)器芯片。即將閑置存儲(chǔ)器芯片中自由頁(yè)最多的存儲(chǔ)器芯片選擇為目標(biāo)存儲(chǔ)器芯片ο此后,控制單元1 將緩沖器高緩單元122中被存儲(chǔ)的扇區(qū)單位的數(shù)據(jù)以頁(yè)為單位進(jìn)行區(qū)分,且選擇頁(yè)中最久沒(méi)被使用的頁(yè)作為目標(biāo)存儲(chǔ)器芯片中將被存儲(chǔ)的犧牲(victim)頁(yè)。本發(fā)明的實(shí)施例中,犧牲頁(yè)是指存儲(chǔ)器芯片中將被存儲(chǔ)的頁(yè)。此后,控制單元128,當(dāng)為將選擇的犧牲頁(yè)存儲(chǔ)至存儲(chǔ)器單元的目標(biāo)存儲(chǔ)器芯片中須等待時(shí),選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便可存儲(chǔ)的犧牲頁(yè)。犧牲頁(yè)須等待的情況,是犧牲頁(yè)為部分頁(yè)且存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為不閑置的情況。本發(fā)明的實(shí)施例中,部分頁(yè)是指緩沖器高緩單元122中存儲(chǔ)的數(shù)據(jù)不是構(gòu)成頁(yè)的整個(gè)數(shù)據(jù)而是一部分的情況。無(wú)須等待便可存儲(chǔ)的犧牲頁(yè),在犧牲頁(yè)為整個(gè)頁(yè)的情況下可以。此外,無(wú)須等待便可存儲(chǔ)的犧牲頁(yè),也可在犧牲頁(yè)為部分頁(yè)且存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為不閑置的情況下可以。本發(fā)明的實(shí)施例中,整個(gè)頁(yè)是指緩沖器高緩單元122中被存儲(chǔ)的數(shù)據(jù)是構(gòu)成頁(yè)的整個(gè)數(shù)據(jù)。控制單元128,在犧牲頁(yè)為部分頁(yè)且存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置時(shí), 在存儲(chǔ)器單元126中讀取原本頁(yè),并將犧牲頁(yè)一起合并存儲(chǔ)在目標(biāo)存儲(chǔ)器芯片中??刂茊卧?28,犧牲頁(yè)為整個(gè)頁(yè)的話(huà),將犧牲頁(yè)存儲(chǔ)在目標(biāo)存儲(chǔ)器芯片中??刂茊卧?28,當(dāng)不存在用于目標(biāo)存儲(chǔ)器芯片的無(wú)須等待便可存儲(chǔ)的犧牲頁(yè)時(shí),選擇存儲(chǔ)器單元126中新的目標(biāo)存儲(chǔ)器芯片,并選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便可存儲(chǔ)的犧牲頁(yè)。圖3是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的將固態(tài)硬盤(pán)系統(tǒng)中無(wú)延誤地存儲(chǔ)緩沖器高緩的頁(yè)的例子與現(xiàn)有方法作比較的示圖。參考圖3,由4個(gè)存儲(chǔ)器芯片構(gòu)成的存儲(chǔ)器單元310中,存儲(chǔ)有如圖所示順序的頁(yè)。緩沖器高緩單元320中,存儲(chǔ)有多個(gè)頁(yè),且位于左側(cè)的頁(yè)是很久之前的頁(yè),存儲(chǔ)的順序?yàn)閺淖髠?cè)頁(yè)至右側(cè)頁(yè)的順序。在此,緩沖器高緩單元320中存儲(chǔ)的頁(yè)中,用陰影表示的頁(yè)為整個(gè)頁(yè),且沒(méi)有用陰影表示的頁(yè)為部分頁(yè)。觀察根據(jù)現(xiàn)有的一般的存儲(chǔ)方法的圖表330的話(huà),固態(tài)硬盤(pán)系統(tǒng)將整個(gè)頁(yè)第6頁(yè)傳送至第1存儲(chǔ)器芯片,且在第1存儲(chǔ)器芯片寫(xiě)入期間將下一個(gè)第7頁(yè)傳送至第2存儲(chǔ)器芯片,且在第2存儲(chǔ)器芯片寫(xiě)入期間傳送下一個(gè)第8頁(yè)。固態(tài)硬盤(pán)系統(tǒng)如上所述,將第6頁(yè)至第9頁(yè)傳送至所對(duì)應(yīng)的閑置頁(yè)。即,整個(gè)頁(yè)第6、第7、第8、第9頁(yè)通過(guò)數(shù)據(jù)總線(xiàn)按順序地被傳送。此后,固態(tài)硬盤(pán)系統(tǒng)在存儲(chǔ)部分頁(yè)第2頁(yè)之前確認(rèn)存儲(chǔ)器單元310。確認(rèn)結(jié)果可確認(rèn)為存儲(chǔ)有第2頁(yè)的整個(gè)頁(yè)的第3芯片為使用中。因此,固態(tài)硬盤(pán)系統(tǒng)在芯片等待的時(shí)間 332期間等待,直到第3芯片為閑置狀態(tài)為止。此外,固態(tài)硬盤(pán)系統(tǒng),可讀取第2頁(yè)的整個(gè)頁(yè)來(lái)與第2頁(yè)的部分頁(yè)結(jié)合,并發(fā)送至第1存儲(chǔ)芯片來(lái)將其存儲(chǔ)后,存儲(chǔ)整個(gè)頁(yè)即第5頁(yè)。但是,觀察使用根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)方法的時(shí)間圖表340,由于第2頁(yè)是需要等待時(shí)間的頁(yè),所以先將不需要等待時(shí)間的第5頁(yè)存儲(chǔ)。此外,存儲(chǔ)第5頁(yè)后,在第3存儲(chǔ)器芯片為使用中且不存在無(wú)須等待便可存儲(chǔ)的頁(yè)時(shí),固態(tài)硬盤(pán)系統(tǒng)可在等待后與被存儲(chǔ)的第2頁(yè)的整個(gè)頁(yè)一起合并存儲(chǔ)。但是,存儲(chǔ)第5頁(yè)后,在第3存儲(chǔ)器芯片為閑置時(shí),固態(tài)硬盤(pán)系統(tǒng)無(wú)須等待,可將第2頁(yè)的整個(gè)頁(yè)與第2頁(yè)的部分頁(yè)一起合并存儲(chǔ)在閑置的存儲(chǔ)器芯片中。以下,將參照下面的示圖,來(lái)對(duì)在根據(jù)如上所述構(gòu)成的本發(fā)明的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩的編程方法進(jìn)行說(shuō)明。
圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)中無(wú)延誤地將緩沖器高緩的頁(yè)存儲(chǔ)的過(guò)程的流程圖。參照?qǐng)D4,根據(jù)本發(fā)明的實(shí)施例,固態(tài)硬盤(pán)系統(tǒng),在步驟400中感應(yīng)緩沖器高緩存儲(chǔ)活動(dòng)的發(fā)生時(shí)進(jìn)行步驟402,在沒(méi)被選擇的閑置存儲(chǔ)器芯片中選擇目標(biāo)存儲(chǔ)器芯片。在這種情況下,目標(biāo)存儲(chǔ)器芯片的選擇,將所述存儲(chǔ)器單元的閑置存儲(chǔ)器芯片中空著的可存儲(chǔ)空間最大的存儲(chǔ)器芯片選擇為目標(biāo)存儲(chǔ)器芯片。即將閑置存儲(chǔ)器芯片中自由頁(yè)最多的存儲(chǔ)器芯片選擇為目標(biāo)存儲(chǔ)器芯片。此后,固態(tài)硬盤(pán)系統(tǒng)進(jìn)行步驟404,將沒(méi)被選擇的頁(yè)中最久沒(méi)被使用的頁(yè)選擇為要存儲(chǔ)至目標(biāo)存儲(chǔ)器芯片中的犧牲頁(yè)。固態(tài)硬盤(pán)系統(tǒng)進(jìn)行步驟406來(lái)確認(rèn)犧牲頁(yè)是否為部分頁(yè)。當(dāng)確認(rèn)結(jié)果為犧牲頁(yè)是整個(gè)頁(yè)時(shí),進(jìn)行步驟402,將犧牲頁(yè)存儲(chǔ)至目標(biāo)存儲(chǔ)器芯片中,并進(jìn)行步驟416。當(dāng)步驟406的確認(rèn)結(jié)果為犧牲頁(yè)是部分頁(yè)時(shí),固態(tài)硬盤(pán)系統(tǒng)進(jìn)行408步驟,確認(rèn)存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片是否閑置。當(dāng)步驟408的確認(rèn)結(jié)果為存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片閑置時(shí),固態(tài)硬盤(pán)系統(tǒng)進(jìn)行步驟410,讀取原本頁(yè),并將犧牲頁(yè)一起合并存儲(chǔ)在目標(biāo)存儲(chǔ)器芯片中,進(jìn)行步驟 416。此后,固態(tài)硬盤(pán)系統(tǒng)進(jìn)行步驟416來(lái)確認(rèn)緩沖器高緩存儲(chǔ)活動(dòng)是否結(jié)束。在確認(rèn)結(jié)果為存儲(chǔ)活動(dòng)沒(méi)有結(jié)束時(shí),返回步驟402。但是在存儲(chǔ)活動(dòng)結(jié)束時(shí),結(jié)束根據(jù)本發(fā)明的實(shí)施例的算法。此外,當(dāng)步驟408的確認(rèn)結(jié)果為存儲(chǔ)犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片閑置時(shí),固態(tài)硬盤(pán)系統(tǒng)進(jìn)行步驟414,確認(rèn)緩沖器高緩中將被存儲(chǔ)在選擇的目標(biāo)存儲(chǔ)器芯片中的沒(méi)被選擇的頁(yè)是否存在。當(dāng)步驟414的確認(rèn)結(jié)果為存在沒(méi)被選擇的頁(yè)時(shí),固態(tài)硬盤(pán)系統(tǒng)返回404步驟,選擇新的犧牲頁(yè)并執(zhí)行之后一系列的過(guò)程。但是,當(dāng)步驟414的確認(rèn)結(jié)果為不存在沒(méi)被選擇的頁(yè)時(shí),固態(tài)硬盤(pán)系統(tǒng)返回步驟 402,選擇新的目標(biāo)存儲(chǔ)芯片并執(zhí)行之后一系列的過(guò)程。根據(jù)本發(fā)明的用于固態(tài)硬盤(pán)的控制器的操作方法,包括包含由計(jì)算機(jī)執(zhí)行各種操作的程序指令的計(jì)算機(jī)可讀媒體。該媒體計(jì)算機(jī)可讀可包括獨(dú)立的或結(jié)合的程序指令、 數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等。媒體和程序指令可專(zhuān)門(mén)為本發(fā)明的目的設(shè)計(jì)和創(chuàng)建,或?yàn)橛?jì)算機(jī)軟件技術(shù)人員熟知而應(yīng)用。計(jì)算機(jī)可讀媒體的例子包括磁媒體(magnetic media),如硬盤(pán)、軟盤(pán)和磁帶;光學(xué)媒體(optical media),如CD ROM、DVD ;磁光媒體(magneto-optical media),如光盤(pán)(floptical disk);和專(zhuān)門(mén)配置為存儲(chǔ)和執(zhí)行程序指令的硬件設(shè)備,如只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)等。程序指令的例子,既包括機(jī)器代碼,如由編譯器產(chǎn)生的,也包括含有可由計(jì)算機(jī)使用解釋程序執(zhí)行的更高級(jí)代碼的文件。如上所示,本發(fā)明中雖然已參照具體的構(gòu)成要素等類(lèi)似特定事項(xiàng)和有限的實(shí)施及附圖進(jìn)行了說(shuō)明,但是本發(fā)明并不局限于所述實(shí)施例,在本發(fā)明所屬領(lǐng)域中具備通常知識(shí)的人均可以從此記載中進(jìn)行各種修改和變形。因此,本發(fā)明的范圍不受說(shuō)明的實(shí)施例的局限或定義,而是由后附的權(quán)利要求范圍以及權(quán)利要求范圍等同內(nèi)容定義。
權(quán)利要求
1.一種固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,包括緩沖器高緩單元,其存儲(chǔ)頁(yè);存儲(chǔ)器單元,其包括多個(gè)存儲(chǔ)器芯片;和控制單元,其考慮向所述多個(gè)存儲(chǔ)器芯片中的至少一個(gè)目標(biāo)存儲(chǔ)芯片中存儲(chǔ)時(shí)可能發(fā)生的等待時(shí)間,將所述頁(yè)中至少一個(gè)頁(yè)選擇為犧牲頁(yè)。
2.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元,在選擇所述犧牲頁(yè)時(shí),考慮所述頁(yè)的使用頻率或最近的使用時(shí)間來(lái)選擇。
3.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元,將所述頁(yè)中,沒(méi)有被選為過(guò)犧牲頁(yè)的最久沒(méi)有被使用且向所述目標(biāo)存儲(chǔ)器芯片中存儲(chǔ)時(shí)無(wú)須等待便能夠存儲(chǔ)的頁(yè)選擇為所述犧牲頁(yè)。
4.如權(quán)利要求3所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述犧牲頁(yè)須等待的情況,是所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為不閑置的情況。
5.如權(quán)利要求3所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè),是所述犧牲頁(yè)為整個(gè)頁(yè)的情況,或所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置的情況。
6.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元, 在所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置時(shí),讀取所述原本頁(yè),并將所述犧牲頁(yè)一起合并存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
7.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元,在所述犧牲頁(yè)為整個(gè)頁(yè)時(shí),將所述犧牲頁(yè)存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
8.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元,在選擇所述犧牲頁(yè)中,事先將所述存儲(chǔ)器單元的閑置存儲(chǔ)器芯片中空著的能夠存儲(chǔ)空間最大的存儲(chǔ)器芯片選擇為所述目標(biāo)存儲(chǔ)器芯片。
9.如權(quán)利要求1所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元,當(dāng)新的犧牲頁(yè)的選擇結(jié)果為不存在所述無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)時(shí),從所述存儲(chǔ)器單元中新的目標(biāo)存儲(chǔ)器芯片。
10.一種固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,包括緩沖器高緩單元,其存儲(chǔ)頁(yè);存儲(chǔ)器單元,其包括一個(gè)以上存儲(chǔ)器芯片;和控制單元,其在為將從所述緩沖器高緩單元的所述頁(yè)中選出的犧牲頁(yè)存儲(chǔ)至存儲(chǔ)器單元的目標(biāo)存儲(chǔ)器器芯片中須等待時(shí),選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)。
11.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元, 將所述緩沖器高緩單元的所述頁(yè)中沒(méi)被選擇為存儲(chǔ)對(duì)象的、最久沒(méi)被使用的頁(yè)選擇為所述犧牲頁(yè)或所述新的犧牲頁(yè)。
12.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元中所述犧牲頁(yè)須等待的情況,是所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為不閑置的情況。
13.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè),是所述犧牲頁(yè)為整個(gè)頁(yè)的情況,或所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置的情況。
14.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元, 在所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置時(shí),讀取所述原本頁(yè),并將所述犧牲頁(yè)一起合并存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
15.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元, 在所述犧牲頁(yè)為整個(gè)頁(yè)時(shí),將所述犧牲頁(yè)存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
16.如權(quán)利要求10所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程裝置,其中,所述控制單元, 在選擇所述犧牲頁(yè)中,事先將所述存儲(chǔ)器單元的閑置存儲(chǔ)器芯片中空著的能夠存儲(chǔ)空間最大的存儲(chǔ)器芯片選擇為所述目標(biāo)存儲(chǔ)器芯片。
17.一種固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,包括以下步驟從緩沖器高緩單元的頁(yè)中選擇犧牲頁(yè);和當(dāng)為將所述犧牲頁(yè)存儲(chǔ)至存儲(chǔ)器單元的目標(biāo)存儲(chǔ)器芯片中須等待時(shí),選擇新的犧牲頁(yè),直到選擇到無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)。
18.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,其中,所述犧牲頁(yè)或所述新的犧牲頁(yè)的選擇,將所述緩沖器高緩單元的所述頁(yè)中沒(méi)被選擇為存儲(chǔ)對(duì)象的、最久沒(méi)被使用的頁(yè)選擇為所述犧牲頁(yè)或所述新的犧牲頁(yè)。
19.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,其中,當(dāng)所述犧牲頁(yè)須等待的情況,是所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為不閑置的情況。
20.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,其中,所述無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè),是所述犧牲頁(yè)為整個(gè)頁(yè)的情況,或所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置的情況。
21.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,其進(jìn)一步包括以下步驟當(dāng)所述無(wú)須等待便能夠存儲(chǔ)的犧牲頁(yè)被選中時(shí),在所述犧牲頁(yè)為部分頁(yè)且存儲(chǔ)所述犧牲頁(yè)的原本頁(yè)的存儲(chǔ)器芯片為閑置時(shí),讀取所述原本頁(yè),并將所述犧牲頁(yè)一起合并存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
22.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,其進(jìn)一步包括以下步驟當(dāng)所述無(wú)須等待便能夠存儲(chǔ)的所述犧牲頁(yè)被選中時(shí),在所述犧牲頁(yè)為整個(gè)頁(yè)時(shí),將所述犧牲頁(yè)存儲(chǔ)在所述目標(biāo)存儲(chǔ)器芯片中。
23.如權(quán)利要求17所述的固態(tài)硬盤(pán)系統(tǒng)的緩沖器高緩編程方法,在從所述緩沖器高緩單元的頁(yè)中選擇所述犧牲頁(yè)的步驟之前,在具有一個(gè)以上存儲(chǔ)器芯片的所述存儲(chǔ)器單元的閑置存儲(chǔ)器芯片中,將空著的能夠存儲(chǔ)空間最大的存儲(chǔ)器芯片選擇為所述目標(biāo)存儲(chǔ)器芯片。
24.一種記錄有用于執(zhí)行權(quán)利要求17至23中任何一項(xiàng)所述方法的程序的計(jì)算機(jī)可讀記錄媒體。
全文摘要
本發(fā)明提出一種固態(tài)硬盤(pán)系統(tǒng)中緩沖器高緩的編程方法和裝置。根據(jù)本發(fā)明的實(shí)施例的固態(tài)硬盤(pán)系統(tǒng)的緩沖器(buffer)高緩(cache)編程裝置,包括緩沖器高緩單元、存儲(chǔ)器單元和控制單元。緩沖器高緩單元存儲(chǔ)頁(yè),存儲(chǔ)器單元包括多個(gè)存儲(chǔ)器芯片,控制單元考慮向所述多個(gè)存儲(chǔ)器芯片中的至少一個(gè)目標(biāo)存儲(chǔ)芯片中存儲(chǔ)時(shí)可能發(fā)生的等待時(shí)間,將所述頁(yè)中至少一個(gè)頁(yè)選擇為犧牲頁(yè)(victim page)。
文檔編號(hào)G06F13/10GK102317924SQ200980156623
公開(kāi)日2012年1月11日 申請(qǐng)日期2009年11月30日 優(yōu)先權(quán)日2009年2月11日
發(fā)明者孟承冽, 樸漢默, 沈孝擇, 薛真鎬, 金載極, 金鎮(zhèn)洙 申請(qǐng)人:韓商英得聯(lián)股份有限公司