TWI715162B - 記憶體驗證方法及記憶體驗證系統 - Google Patents
記憶體驗證方法及記憶體驗證系統 Download PDFInfo
- Publication number
- TWI715162B TWI715162B TW108130433A TW108130433A TWI715162B TW I715162 B TWI715162 B TW I715162B TW 108130433 A TW108130433 A TW 108130433A TW 108130433 A TW108130433 A TW 108130433A TW I715162 B TWI715162 B TW I715162B
- Authority
- TW
- Taiwan
- Prior art keywords
- random access
- access memory
- block
- command
- control module
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本發明提出一種記憶體驗證方法及記憶體驗證系統。記憶體驗證方法,用於模擬固態硬碟的使用者行為。記憶體驗證方法包括:將隨機存取記憶體的至少一部份設定為隨機存取記憶體磁碟;執行應用程式並產生命令以存取隨機存取記憶體磁碟;判斷命令要存取的邏輯區塊位址對應到多個處理模組的第一處理模組,並將命令傳送到第一處理模組;以及通過第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。
Description
本發明是有關於一種記憶體驗證方法及記憶體驗證系統,且特別是有關於一種模擬使用者存取固態硬碟的記憶體驗證方法及記憶體驗證系統。
現有的固態硬碟驗證方法通常是透過各種不同的驗證機制來長時間存取固態硬碟以判斷固態硬碟是否出錯。為了驗證所有可能發生的錯誤情況,固態硬碟的驗證時間往往相當長,這造成產品開發上的不便。
有鑑於此,本發明提供一種記憶體驗證方法及記憶體驗證系統,通過模擬使用者存取固態硬碟來進行記憶體驗證。
本發明提出一種記憶體驗證方法,用於模擬固態硬碟的使用者行為。記憶體驗證方法包括:將隨機存取記憶體的至少一部份設定為隨機存取記憶體磁碟;執行應用程式並產生命令以存取隨機存取記憶體磁碟;判斷命令要存取的邏輯區塊位址對應到多個處理模組的第一處理模組,並將命令傳送到第一處理模組;以及通過第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。
本發明提出一種記憶體驗證系統,包括:隨機存取記憶體;多個處理模組,耦接到隨機存取記憶體;以及控制模組,耦接到處理模組。控制模組或部分處理模組將隨機存取記憶體的至少一部份設定為隨機存取記憶體磁碟。控制模組執行應用程式並產生命令以存取隨機存取記憶體磁碟。控制模組判斷命令要存取的邏輯區塊位址對應到處理模組的第一處理模組,並將命令傳送到第一處理模組。第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。
基於上述,本發明的記憶體驗證方法及記憶體驗證系統將隨機存取記憶體設定為隨機存取記憶體磁碟並執行應用程式產生命令以存取隨機存取記憶體磁碟。當命令要存取的邏輯區塊位址對應到第一處理模組時,通過第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
圖1為根據本發明一實施例的記憶體驗證系統的方塊圖。
請參照圖1,本發明一實施例的記憶體驗證系統100包括控制模組110、隨機存取記憶體磁碟(Random Access Memory Disk,ramdisk)130及處理模組141~144。控制模組110或部分的處理模組141~144將個人電腦(Personal Computer,PC)的隨機存取記憶體(Random Access Memory,RAM)的至少一部份設定為隨機存取記憶體磁碟130。控制模組110及隨機存取記憶體磁碟130可分別用於模擬固態硬碟的控制器及非揮發性可複寫式記憶體模組(例如,反及閘快閃記憶體)。在一實施例中,處理模組141~144分別為不同個人電腦的中央處理單元(Central Processing Unit,CPU),但本發明不限於此。在另一實施例中,處理模組141~144也可分別為多核心中央處理單元的不同核心。處理模組141~144的數量僅為例示用途而不限制為四個。
在一實施例中,控制模組110可執行各種應用程式120並產生命令以存取隨機存取記憶體磁碟130,藉此模擬使用者存取固態硬碟的行為。應用程式120例如包括遊戲程式、資料擷取程式、網路瀏覽程式、效能測試程式、或其他任何種類的程式。控制模組110可判斷上述命令要存取的邏輯區塊位址(Logical Block Address,LBA)對應到處理模組141(或稱為第一處理模組),並將命令傳送到處理模組141。處理模組141執行命令以存取隨機存取記憶體磁碟130中對應邏輯區塊位址的實體區塊位址。換句話說,控制模組110可根據命令對應的邏輯區塊位址來判斷此命令要由哪個處理模組141~144執行。通過處理模組141~144的平行分散運算,可有效模擬固態硬碟的各種使用者行為而大幅縮短驗證時間。此外,由於存取隨機存取記憶體磁碟130的存取速度遠大於固態硬碟或傳統硬碟,因此通過存取隨機存取記憶體磁碟130模擬使用者行為進行驗證的速度會比通過固態硬碟或傳統硬碟進行驗證來得快。
除了對隨機存取記憶體磁碟130進行存取操作外,控制模組110還會利用隨機存取記憶體磁碟130模擬固態硬碟操作。固態硬碟操作可包括耗損平均操作、程式化/抹除次數計算操作、垃圾收集操作、邏輯轉實體映射表更新操作等。控制模組110可包括符合固態硬碟物理限制的程式碼以存取隨機存取記憶體磁碟130,例如將隨機存取記憶體磁碟130分割成多個實體區塊且一個實體區塊的資料必需同時抹除。控制模組110還可記錄邏輯轉實體映射表以模擬固態硬碟中邏輯區塊位址與實體區塊位址的映射關係。
在一實施例中,處理模組141~144的一部份具有隨機存取記憶體磁碟130並模擬使用者資料存取操作,而處理模組141~144的另一部分則模擬記憶體資料管理操作。舉例來說,處理模組141及處理模組142具有隨機存取記憶體磁碟130(即,處理模組141及處理模組142將隨機存取記憶體的一部份設定為隨機存取記憶體磁碟130),且處理模組141及處理模組142存取對應使用者資料的邏輯區塊位址,並在隨機存取記憶體磁碟130中模擬安全區塊、獨立磁碟冗餘陣列(RAID)區塊、熱資料區塊、冷資料區塊。另一方面,處理模組143及處理模組144可執行耗損平均操作、垃圾收集操作等記憶體資料管理操作。
在一實施例中,控制模組110通過作業系統驅動程式(OS driver)150來執行對應命令的至少一部份運算操作。具體來說,為了減少一個命令所要處理的資料的壓縮與解壓縮的耗損時間,控制模組110可將大量的運算操作移轉到底層的作業系統驅動程式150端來實現。如此一來,可分散控制模組110的運算負載並能進一步減少控制模組110執行命令時的延遲時間。
在一實施例中,當控制模組110將資料寫入隨機存取記憶體磁碟130的第一區塊之前,控制模組110會先判斷檢查位元是否為第一狀態。第一狀態代表第一區塊已被抹除。另一方面,在控制模組110讀取第一區塊之前,控制模組110也會判斷第一區塊是否已被寫入。
在一實施例中,當控制模組110判斷隨機存取記憶體磁碟130中的第一資料被存取的頻率大於門檻值時,控制模組110將第一資料移動到隨機存取記憶體磁碟130的第二區塊。也就是說,第二區塊可用來儲存熱資料。當控制模組110判斷隨機存取記憶體磁碟130中的第二資料超過時間門檻值未被存取時,控制模組110可產生提示訊息來提醒使用者哪些資料已經很久未使用,並詢問使用者是否移除這些資料。此外,控制模組110還可規劃隨機存取記憶體磁碟130的第三區塊用來儲存重要資料。控制模組110可通過加密方式進行第三區塊的資料可存取或對第三區塊的資料進行自動備份操作。
在一實施例中,控制模組110還可包括人工智慧(Artificial Intelligence,AI)控制模組(未繪示於圖中)。人工智慧控制模組可將使用者行為輸入例如卷積神經網路(Convolutional Neural Networks,CNN)的類神經網路並學習出一套更有效率的存取方式。當人工智慧控制模組通過更多的使用者進行機器學習之後,就可對隨機存取記憶體磁碟130有更快的存取速度。
圖2為根據本發明一實施例的記憶體驗證方法的流程圖。
請參照圖2,在步驟S201中,將隨機存取記憶體的至少一部份設定為隨機存取記憶體磁碟。
在步驟S202中,執行應用程式並產生命令以存取隨機存取記憶體磁碟。
在步驟S203中,判斷命令要存取的邏輯區塊位址對應到多個處理模組的第一處理模組,並將命令傳送到第一處理模組。
在步驟S204中,通過第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。
綜上所述,本發明的記憶體驗證方法及記憶體驗證系統將隨機存取記憶體設定為隨機存取記憶體磁碟並執行應用程式產生命令以存取隨機存取記憶體磁碟。當命令要存取的邏輯區塊位址對應到第一處理模組時,通過第一處理模組執行命令以存取隨機存取記憶體磁碟中對應邏輯區塊位址的實體區塊位址。通過將大量運算操作移轉到作業系統驅動程式端,可分散控制模組的運算成本。控制模組可利用隨機存取記憶體磁碟模擬固態硬碟操作,例如耗損平均操作、垃圾收集操作等。此外,控制模組在存取隨機存取記憶體磁碟也可模擬固態硬碟的物理特性,例如實體區塊必須全部抹除才能進行資料寫入等。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:記憶體驗證系統
110:控制模組
120:應用程式
130:隨機存取記憶體磁碟
141~144:處理模組
150:作業系統驅動程式
S201~S204:記憶體驗證方法的步驟
圖1為根據本發明一實施例的記憶體驗證系統的方塊圖。
圖2為根據本發明一實施例的記憶體驗證方法的流程圖。
100:記憶體驗證系統
110:控制模組
120:應用程式
130:隨機存取記憶體磁碟
141~144:處理模組
150:作業系統驅動程式
Claims (10)
- 一種記憶體驗證方法,用於模擬固態硬碟的使用者行為,該記憶體驗證方法包括: 將一隨機存取記憶體的至少一部份設定為一隨機存取記憶體磁碟; 執行一應用程式並產生一命令以存取該隨機存取記憶體磁碟; 判斷該命令要存取的一邏輯區塊位址對應到多個處理模組的一第一處理模組,並將該命令傳送到該第一處理模組;以及 通過該第一處理模組執行該命令以存取該隨機存取記憶體磁碟中對應該邏輯區塊位址的一實體區塊位址。
- 如申請專利範圍第1項所述的記憶體驗證方法,更包括:利用該隨機存取記憶體磁碟模擬一固態硬碟操作,該固態硬碟操作包括一耗損平均操作、一程式化/抹除次數計算操作、一垃圾收集操作、一邏輯轉實體映射表更新操作。
- 如申請專利範圍第1項所述的記憶體驗證方法,更包括:通過一作業系統驅動程式來執行對應該命令的至少一部份運算操作。
- 如申請專利範圍第1項所述的記憶體驗證方法,其中該隨機存取記憶體磁碟包括一第一區塊,且該記憶體驗證方法更包括: 在寫入該第一區塊之前判斷一檢查位元是否為一第一狀態,其中該第一狀態代表該第一區塊已被抹除;以及 在讀取該第一區塊之前判斷該第一區塊是否已被寫入。
- 如申請專利範圍第1項所述的記憶體驗證方法,其中該隨機存取記憶體磁碟包括一第二區塊,且該記憶體驗證方法更包括: 當一第一資料被存取的頻率大於一門檻值時,將該第一資料移動到該第二區塊;以及 當一第二資料超過一時間門檻值未被存取,產生一提示訊息。
- 一種記憶體驗證系統,包括: 一隨機存取記憶體; 多個處理模組,耦接到該隨機存取記憶體;以及 一控制模組,耦接到該些處理模組,其中 該控制模組或部分該些處理模組將一隨機存取記憶體的至少一部份設定為一隨機存取記憶體磁碟; 該控制模組執行一應用程式並產生一命令以存取該隨機存取記憶體磁碟; 該控制模組判斷該命令要存取的一邏輯區塊位址對應到該些處理模組的一第一處理模組,並將該命令傳送到該第一處理模組;以及 該第一處理模組執行該命令以存取該隨機存取記憶體磁碟中對應該邏輯區塊位址的一實體區塊位址。
- 如申請專利範圍第6項所述的記憶體驗證系統,其中該控制模組利用該隨機存取記憶體磁碟模擬一固態硬碟操作,該固態硬碟操作包括一耗損平均操作、一程式化/抹除次數計算操作、一垃圾收集操作、一邏輯轉實體映射表更新操作。
- 如申請專利範圍第6項所述的記憶體驗證系統,其中該控制模組通過一作業系統驅動程式來執行對應該命令的至少一部份運算操作。
- 如申請專利範圍第6項所述的記憶體驗證系統,其中該隨機存取記憶體磁碟包括一第一區塊,在寫入該第一區塊之前該控制模組判斷一檢查位元是否為一第一狀態,其中該第一狀態代表該第一區塊已被抹除;在讀取該第一區塊之前該控制模組判斷該第一區塊是否已被寫入。
- 如申請專利範圍第6項所述的記憶體驗證系統,其中該隨機存取記憶體磁碟包括一第二區塊,當一第一資料被存取的頻率大於一門檻值時,該控制模組將該第一資料移動到該第二區塊,當一第二資料超過一時間門檻值未被存取,該控制模組產生一提示訊息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108130433A TWI715162B (zh) | 2019-08-26 | 2019-08-26 | 記憶體驗證方法及記憶體驗證系統 |
CN201910988855.2A CN112433892B (zh) | 2019-08-26 | 2019-10-17 | 存储器验证方法及存储器验证*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108130433A TWI715162B (zh) | 2019-08-26 | 2019-08-26 | 記憶體驗證方法及記憶體驗證系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI715162B true TWI715162B (zh) | 2021-01-01 |
TW202109544A TW202109544A (zh) | 2021-03-01 |
Family
ID=74689883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108130433A TWI715162B (zh) | 2019-08-26 | 2019-08-26 | 記憶體驗證方法及記憶體驗證系統 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112433892B (zh) |
TW (1) | TWI715162B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150046625A1 (en) * | 2012-11-20 | 2015-02-12 | Thstyme Bermuda Limited | Solid state drive architectures |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5233924B2 (ja) * | 2009-09-09 | 2013-07-10 | 株式会社リコー | 論理検証装置、論理検証方法 |
US8792294B2 (en) * | 2012-01-09 | 2014-07-29 | Mediatek Inc. | DRAM and access and operating method thereof |
KR101561854B1 (ko) * | 2013-09-30 | 2015-10-22 | 주식회사 유니테스트 | Fpga 기반의 비실장형 스토리지 테스트 장치 |
CN105761754B (zh) * | 2014-12-19 | 2020-01-07 | 群联电子股份有限公司 | 存储单元编程方法、存储器控制电路单元与存储装置 |
CN105930097B (zh) * | 2015-05-20 | 2019-01-29 | 德州学院 | 一种消除局部并行中小写操作的分布校验式磁盘阵列 |
CN105205009B (zh) * | 2015-09-30 | 2018-05-11 | 华为技术有限公司 | 一种基于大容量固态存储的地址映射方法及装置 |
CN107704466B (zh) * | 2016-08-09 | 2020-12-11 | 上海川源信息科技有限公司 | 数据储存*** |
CN106708433A (zh) * | 2016-12-06 | 2017-05-24 | 深圳市深信服电子科技有限公司 | 存储数据的读写方法及装置 |
CN109448778B (zh) * | 2018-11-06 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种固态硬盘性能测试方法、***、装置及可读存储介质 |
-
2019
- 2019-08-26 TW TW108130433A patent/TWI715162B/zh active
- 2019-10-17 CN CN201910988855.2A patent/CN112433892B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150046625A1 (en) * | 2012-11-20 | 2015-02-12 | Thstyme Bermuda Limited | Solid state drive architectures |
US9941007B2 (en) * | 2012-11-20 | 2018-04-10 | Thstyme Bermuda Limited | Solid state drive architectures |
Also Published As
Publication number | Publication date |
---|---|
CN112433892B (zh) | 2022-11-22 |
CN112433892A (zh) | 2021-03-02 |
TW202109544A (zh) | 2021-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8725938B2 (en) | Apparatus, system, and method for testing physical regions in a solid-state storage device | |
US9348521B2 (en) | Semiconductor storage device and method of throttling performance of the same | |
US9037778B2 (en) | Method and apparatus to interface semiconductor storage device and host to provide performance throttling of semiconductor storage device | |
Seong et al. | Hydra: A block-mapped parallel flash memory solid-state disk architecture | |
KR102229024B1 (ko) | 스스로 에러를 검출하고 로그를 저장할 수 있는 데이터 저장 장치와 이를 포함하는 시스템 | |
US11748241B2 (en) | Method and apparatus for generating simulated test IO operations | |
US20230004320A1 (en) | Method of managing debugging log in storage device | |
US10395751B2 (en) | Automated testing system and operating method thereof | |
CN111324414B (zh) | Nvm存储介质模拟器 | |
JP2020191055A (ja) | 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体 | |
KR20140128819A (ko) | 아토믹 라이트 방법 | |
Kim | An empirical study of redundant array of independent solid-state drives (RAIS) | |
TWI715162B (zh) | 記憶體驗證方法及記憶體驗證系統 | |
KR102304929B1 (ko) | 모델 정보를 저장하는 스토리지 장치, 스토리지 장치를 포함하는 스토리지 시스템 및 스토리지 시스템의 동작 방법 | |
KR20210034456A (ko) | 메모리 컨트롤러, 스토리지 장치 및 상기 스토리지 장치의 동작 방법 | |
TWI718642B (zh) | 記憶體裝置管理方法及記憶體裝置管理系統 | |
Ahmadian et al. | Evaluating reliability of SSD-based I/O caches in enterprise storage systems | |
CN112086121A (zh) | 存储器近接干扰管理 | |
TWI670721B (zh) | 用於儲存裝置之不正常斷電測試方法及設備 | |
TWI741296B (zh) | 瞬間斷電回復處理方法及裝置以及電腦程式產品 | |
TWI820473B (zh) | 瞬間斷電回復處理方法及裝置以及電腦程式產品 | |
TWI705330B (zh) | 資料儲存裝置以及參數改寫方法 | |
Baek et al. | Don’t make cache too complex: A simple probability-based cache management scheme for SSDs | |
US20230073239A1 (en) | Storage device and method of operating the same | |
CN111581035A (zh) | 用于储存装置的不正常断电测试方法及设备 |