本發(fā)明是有關(guān)于一種電子數(shù)據(jù)檢測方法,特別是指一種內(nèi)存數(shù)據(jù)檢測方法。
背景技術(shù):
常用于服務(wù)器等計算機系統(tǒng)的儲存設(shè)備,如集束磁盤(justabunchofdisks,jbod)中,包含多個硬盤、一電連接服務(wù)器及該等硬盤的擴充處理器(expander),及一電連接該擴充處理器的非揮發(fā)隨機存取內(nèi)存(non-volatilerandomaccessmemory,nvram),該擴充處理器支持串行附接式小型計算機接口(sas),且讀取該非揮發(fā)隨機存取內(nèi)存所儲存的開機組態(tài)、映像文件等物理層設(shè)定數(shù)據(jù),來執(zhí)行開機初始化,或使服務(wù)器計算機透過其存取該等硬盤的數(shù)據(jù)等。
然而,當該非揮發(fā)隨機存取內(nèi)存的數(shù)據(jù)線(dataline)存在例如開路、短路故障,造成數(shù)據(jù)寫入不全、或是儲存的數(shù)據(jù)損毀時,會導(dǎo)致該擴充處理器功能無法正常執(zhí)行,且使服務(wù)器無法存取該等硬盤等。因此,提供一種內(nèi)存數(shù)據(jù)傳輸檢測方法就成為一個重要的課題。
技術(shù)實現(xiàn)要素:
因此,本發(fā)明的主要目的在于提供一種內(nèi)存數(shù)據(jù)檢測方法。
為達上述目的,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法,由一處理芯片執(zhí)行,該處理芯片電連接一外部內(nèi)存,且該內(nèi)存數(shù)據(jù)檢測方法包含一步驟(a)、一步驟(b)、一步驟(c)、一步驟(d)、一步驟(e)、一步驟(g),及一步驟(h)。
該步驟(a)是該處理芯片將一測試數(shù)據(jù)寫入該外部內(nèi)存。
該步驟(b)是該處理芯片讀取該外部內(nèi)存的測試數(shù)據(jù),且檢測該測試數(shù)據(jù)是否正確。
該步驟(c)是若步驟(b)的檢測結(jié)果為不正確,則該處理芯片增加一重傳計數(shù)值。
該步驟(d)是該處理芯片判斷該重傳計數(shù)值是否大于一上限次數(shù)值。
該步驟(e)是若步驟(d)的判斷結(jié)果為否,則該處理芯片清除該外部內(nèi)存的測試數(shù)據(jù),并返回步驟(a)。
該步驟(g)是若步驟(b)的檢測結(jié)果為正確,則該處理芯片判斷該重傳計數(shù)值是否大于一下限次數(shù)值,且該下限次數(shù)值小于該上限次數(shù)值。
該步驟(h)是若步驟(g)的判斷結(jié)果為是,則該處理芯片記錄一錯誤訊息。
與現(xiàn)有技術(shù)相比,本發(fā)明藉由該處理芯片將該測試數(shù)據(jù)寫入該外部內(nèi)存,并驗證該測試數(shù)據(jù)是否正確,并于該測試資料檢測為不正確時,累積該重傳計數(shù)值并重傳該測試數(shù)據(jù),藉此實現(xiàn)對該外部內(nèi)存的數(shù)據(jù)檢測。
【附圖說明】
本發(fā)明之其他的特征及功效,將于參照圖式的實施方式中清楚地呈現(xiàn),其中:
圖1是一系統(tǒng)方塊圖,說明執(zhí)行本發(fā)明內(nèi)存數(shù)據(jù)檢測方法的一儲存設(shè)備;
圖2是一流程圖,說明本發(fā)明內(nèi)存數(shù)據(jù)檢測方法的一第一實施例;及
圖3是一流程圖,說明本發(fā)明內(nèi)存數(shù)據(jù)檢測方法的一第二實施例。
【具體實施方式】
在本發(fā)明被詳細描述之前,應(yīng)當注意在以下的說明內(nèi)容中,類似的組件是以相同的編號來表示。
參閱圖1,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法,在如圖1所示的一儲存設(shè)備(storage)1中實施,該儲存設(shè)備1例如應(yīng)用于服務(wù)器等計算機系統(tǒng)的集束磁盤(justabunchofdisks,jbod),且包括一處理芯片11、一外部內(nèi)存12,及一警示單元13。
該處理芯片11包括一預(yù)存一測試數(shù)據(jù)的系統(tǒng)內(nèi)存111,及一用以傳輸該測試數(shù)據(jù)的總線接口112,且該處理芯片11記錄一重傳計數(shù)值,當該測試數(shù)據(jù)傳輸失敗時,該處理芯片11會重新傳送,并在此時累加該重傳次數(shù)值,來計算重傳的次數(shù)。詳言之,該處理芯片11為擴展處理器(expander),支持串行附接式小型計算機接口(sas)的工業(yè)標準,并可與例如硬盤(圖未示出)電連接,以提供例如服務(wù)器計算機存取硬盤的功能,及擴展服務(wù)器計算機的儲存容量。另外,該總線接口112具有多條用以傳輸該測試數(shù)據(jù)的數(shù)據(jù)線(dataline)113,且每條數(shù)據(jù)線113可記錄1位(bit)的數(shù)據(jù)。
該外部內(nèi)存12電連接該處理芯片11的總線接口112,以經(jīng)由該總線接口112的數(shù)據(jù)線113,來接收該測試數(shù)據(jù)。另外,該外部內(nèi)存12用以儲存開機組態(tài)、映像文件等物理層設(shè)定數(shù)據(jù),以供該處理芯片11讀取及寫入。該外部內(nèi)存12可以例如非揮發(fā)隨機存取內(nèi)存(non-volatilerandomaccessmemory,nvram)、非揮發(fā)性靜態(tài)隨機存取內(nèi)存(non-volatilestaticrandomaccessmemory,nvsram)、或閃存(flashmemory)來實施。
該警示單元13電連接該處理芯片11,能受該處理芯片11觸發(fā)而發(fā)出一警示,以通知用戶該外部內(nèi)存12發(fā)生記憶功能異常,如數(shù)據(jù)線113故障等。該警示單元13例如為發(fā)光二極管。
參閱圖2,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法的一第一實施例,由該處理芯片11執(zhí)行,以下詳細說明該第一實施例的各個步驟。
在步驟s1,該處理芯片11加載預(yù)存于該系統(tǒng)內(nèi)存111的測試數(shù)據(jù)。
在步驟s2,該處理芯片11清除其所記錄的該重傳計數(shù)值。進一步說,該重傳計數(shù)值是自一下限次數(shù)值累積至一上限次數(shù)值,該下限次數(shù)值(例如0)小于該上限次數(shù)值(例如3),且在此步驟中,該處理芯片11清除該重傳計數(shù)值成該下限次數(shù)值。
在步驟a中,該處理芯片11將該測試數(shù)據(jù)寫入該外部內(nèi)存12。詳言之,該處理芯片11經(jīng)由該總線接口112的數(shù)據(jù)線113,將該測試數(shù)據(jù)的各個位(bit)數(shù)據(jù)記錄于該外部內(nèi)存12中。
在步驟b中,該處理芯片11讀取該外部內(nèi)存12的測試數(shù)據(jù),且檢測該測試資料是否正確。若檢測結(jié)果為正確,即進到步驟h;若檢測結(jié)果為不正確,進到步驟c。于此步驟中,該處理芯片11比較于步驟s1所加載的該測試數(shù)據(jù),是否相同于該外部內(nèi)存12的測試數(shù)據(jù),來判斷該測試數(shù)據(jù)是否正確。更詳細地說,該處理芯片11比較記錄于該系統(tǒng)內(nèi)存111的測試數(shù)據(jù)的所有位,與該總線接口112的數(shù)據(jù)線113上記錄的所有位是否相同,如果其中有任何一個位不同,則判斷該外部內(nèi)存12記錄的測試數(shù)據(jù)不正確。
在步驟c中,若步驟b的檢測結(jié)果為不正確,則該處理芯片11增加該重傳計數(shù)值。在本實施例中,該處理芯片11將該重傳計數(shù)值增加1。
在步驟d中,該處理芯片11判斷該重傳計數(shù)值是否大于該上限次數(shù)值,例如判斷是否大于3次;若判斷結(jié)果為是,進到步驟f,若判斷結(jié)果為否,進到步驟e。
在步驟e中,該處理芯片11清除該外部內(nèi)存12的測試數(shù)據(jù),并返回步驟a,也就是說,該處理芯片重復(fù)將該測試數(shù)據(jù)寫入該外部內(nèi)存12,并再次判斷該測試數(shù)據(jù)是否正確。
在步驟f中,當該處理芯片11判斷該重傳計數(shù)值大于該上限次數(shù)值,即觸發(fā)該警示單元13發(fā)出該警示,并接著進到步驟h。該警示單元13例如顯示警示燈號,以通知用戶該外部內(nèi)存12發(fā)生異常。
在步驟g中,該處理芯片11判斷該重傳次數(shù)值是否大于該下限次數(shù)值,例如判斷是否大于0次;若判斷結(jié)果為是,則進到步驟h,若判斷結(jié)果為否,直接進到步驟i。
在步驟h中,當該處理芯片11在步驟f判斷該重傳計數(shù)值大于該上限次數(shù)值,以及在步驟g中判斷該重傳計數(shù)值大于該下限次數(shù)值時,該處理芯片11記錄一錯誤訊息于一工作日志(log)中,并接著進到步驟i。換言之,只要該處理芯片11增加該重傳計數(shù)值,或是該重傳計數(shù)值大于該上限次數(shù)值,該處理芯片11即記錄該錯誤訊息告知用戶。其中,該錯誤訊息即記錄數(shù)據(jù)線有錯誤的訊息,供用戶得知該外部內(nèi)存12異常或有損毀的情形。
在步驟i中,該處理芯片11清除該外部內(nèi)存12的測試數(shù)據(jù),以供下次測試時能再次寫入。
在步驟j中,該處理芯片11等候一預(yù)定時間,并返回步驟s2。亦即,該處理芯片11間隔該預(yù)定時間,例如10分鐘之后,清除該重傳計數(shù)值,并重復(fù)執(zhí)行所述數(shù)據(jù)檢測方法,以定期檢測該外部內(nèi)存12的數(shù)據(jù)是否能正常寫入。
因此,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法,藉由每間隔該預(yù)定時間,寫入該測試數(shù)據(jù)至該外部內(nèi)存12,以定期執(zhí)行該外部內(nèi)存12的傳輸檢測,來確保該外部內(nèi)存12能正常運作。并且,于該測試數(shù)據(jù)檢測為不正確,亦即該測試數(shù)據(jù)寫入失敗時,即重傳該測試數(shù)據(jù),并且累積該重傳計數(shù)值。
此外,在本實施例中,該處理芯片11還根據(jù)該重傳計數(shù)值執(zhí)行相對應(yīng)的動作,以于執(zhí)行傳輸檢測過程中有錯誤發(fā)生時,達到不同程度的提示作用:一、當該處理芯片11判斷該重傳計數(shù)值小于該下限次數(shù)值,即0次時,表示此時未有錯誤發(fā)生,該處理芯片11清除該外部內(nèi)存12的測試數(shù)據(jù),等候再次寫入測試;二、當該處理芯片11判斷該重傳計數(shù)值大于該下限次數(shù)值時,該處理芯片11會記錄該錯誤訊息于該工作日志,因為實際而言,該等數(shù)據(jù)線113可能因為受到電氣訊號干擾、或是該處理芯片11發(fā)生數(shù)據(jù)寫入異常等程序異常的因素,導(dǎo)致該處理芯片11在寫入和驗證該外部內(nèi)存12的測試數(shù)據(jù)時,發(fā)生重傳1次驗證失敗,但重傳2次驗證成功的情形,故只要增加該重傳計數(shù)值,該處理芯片11便記錄該錯誤訊息,以提醒用戶該等數(shù)據(jù)線113傳輸檢測時曾經(jīng)有錯誤發(fā)生;三、當該處理芯片11判斷該重傳次數(shù)值大于該上限次數(shù)值,即3次時,表示該等資料線113發(fā)生異?;驓p的機率很高,因此該處理芯片11除了記錄該錯誤訊息外,更觸發(fā)該警示單元13發(fā)出該警示通知使用者,如此一來,便能根據(jù)不同的重傳次數(shù)值,分類不同層級的錯誤,并給予使用者不同程度的提示。
參閱圖3,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法的一第二實施例,與該第一實施例的差異在于:該步驟d能于步驟a及步驟b之間實施。也就是說,相較于該第一實施例,該處理芯片11在將該測試數(shù)據(jù)寫入該外部內(nèi)存12之后,先判斷該重傳計數(shù)值是否大于該上限次數(shù)值,若判斷為是,即進到步驟f觸發(fā)該警示單元13發(fā)出該警示;若判斷為否,進到步驟c,將該重傳計數(shù)值增加1,并進到步驟e,清除該外部內(nèi)存12的測試數(shù)據(jù),且返回步驟a,即重傳該測試數(shù)據(jù)至該外部內(nèi)存12,再次判斷該測試數(shù)據(jù)是否正確。如此,可增加本發(fā)明于實施上的彈性。
綜上所述,本發(fā)明內(nèi)存數(shù)據(jù)檢測方法,藉由該處理芯片11定期檢測該外部內(nèi)存12是否能正常執(zhí)行數(shù)據(jù)寫入,并于發(fā)生異常時,除了重傳該測試數(shù)據(jù)至該外部內(nèi)存12之外,該處理芯片11還根據(jù)該重傳計數(shù)值,執(zhí)行相對應(yīng)的動作,確保該外部內(nèi)存12的正常運作,如此,該處理芯片11也能正確地讀取該外部內(nèi)存12所儲存的開機組態(tài)、映像文件等物理層設(shè)定數(shù)據(jù),來執(zhí)行開機初始化,以確保例如服務(wù)器計算機經(jīng)由該處理芯片11能夠正確、穩(wěn)定地存取硬盤,故確實能達成本發(fā)明之目的。
上述各實施例及圖示僅為本發(fā)明的較佳實施例而已,但不能以之限定本發(fā)明實施之范圍,即大凡依本發(fā)明權(quán)利要求書所作的均等變化與修飾,皆應(yīng)屬本發(fā)明專利涵蓋的范圍內(nèi)。