欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于fpga的非安裝型存儲器測試裝置制造方法

文檔序號:6620386閱讀:329來源:國知局
基于fpga的非安裝型存儲器測試裝置制造方法
【專利摘要】本發(fā)明涉及一種基于FPGA的非安裝型存儲器測試裝置,包括:處理器部,執(zhí)行列舉和構(gòu)形,制作場景,設(shè)定設(shè)備驅(qū)動(dòng)部;設(shè)備驅(qū)動(dòng)部,與主機(jī)總線適配器進(jìn)行通訊;數(shù)據(jù)引擎部,生成模式數(shù)據(jù),從系統(tǒng)存儲器訪問用戶存儲的數(shù)據(jù),進(jìn)行測試;系統(tǒng)內(nèi)存接口部,接收進(jìn)程所需的數(shù)據(jù),并存儲測試結(jié)果;監(jiān)控部,監(jiān)控PCIe處理層的數(shù)據(jù)包并儲存;直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部,若所述設(shè)備驅(qū)動(dòng)部對場景進(jìn)行譯碼,向主機(jī)總線適配器傳達(dá)命令,則所有數(shù)據(jù)流執(zhí)行直接內(nèi)存存取動(dòng)作,向根聯(lián)合體發(fā)送內(nèi)存讀取請求;信息輸入輸出部,向數(shù)據(jù)引擎部和設(shè)備驅(qū)動(dòng)部傳達(dá);PCIe IP部,為PCI Express邏輯的SW IP;開關(guān)部;被測設(shè)備部;內(nèi)存部。
【專利說明】基于FPGA的非安裝型存儲器測試裝置

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種運(yùn)用基于PCI Express(PCIe)的固態(tài)硬盤測試(SSD TEST)設(shè)備 的驅(qū)動(dòng)機(jī)制,更加詳細(xì)而言,涉及一種基于現(xiàn)場可編程門陣列(field-programmable gate array,F(xiàn)PGA),而非基于PC的非安裝型測試裝置。

【背景技術(shù)】
[0002] 現(xiàn)在,高速存儲器(High Speed Storage)中固態(tài)硬盤(Solid State Drive ;SSD) 備受關(guān)注。其中,基于PCI Express的固態(tài)硬盤與SAS SATA相比擁有大量的通訊處理能力, 因此不僅擴(kuò)大到如數(shù)據(jù)中心的企業(yè)用服務(wù)器,還擴(kuò)大到個(gè)人固態(tài)硬盤市場。
[0003] 另一方面,有關(guān)測試存儲器的裝置,除韓國公開專利10-2010-011469號(以下稱 為"現(xiàn)有技術(shù)文獻(xiàn)")以外,還有多個(gè)被申請和公開。
[0004] 所述現(xiàn)有技術(shù),包括:存儲器接口部,其維持與存儲器(storage)的連接;用戶接 口部,其從用戶接收用于所述存儲測試的測試條件;測試模式生成部,其生成與從所述用戶 接收的所述測試條件對應(yīng)的用于所述存儲器測試的測試模式(test pattern);以及測試控 制部,其通過所述測試模式控制所述存儲器的測試。
[0005] 但是,包括現(xiàn)有技術(shù)文獻(xiàn)的現(xiàn)有測試裝置,為了檢測出閃存陣列的不良(Fail)邏 輯塊地址(Logic Block Address :LBA),執(zhí)行向固態(tài)硬盤裝置(SSD Device)寫入特定模式 的數(shù)據(jù),重新讀取,來比較數(shù)據(jù)是否有效。這種裝置中,將模式數(shù)據(jù)生成器和從模式生成器 生成的數(shù)據(jù)存儲于緩沖器(期望數(shù)據(jù)緩沖器,expected data buffer)。該存儲數(shù)據(jù)從固態(tài) 硬盤裝置重新讀取數(shù)據(jù),與該數(shù)據(jù)緩沖器中的內(nèi)容進(jìn)行比較,來判斷是否不良。這種方式存 在緩沖器可用容量受限的問題。
[0006] 現(xiàn)今固態(tài)硬盤的容量達(dá)到數(shù)百千兆。為了測試這種裝置而擴(kuò)展期望數(shù)據(jù)緩沖器的 大小,會引起多種制約事項(xiàng)。例如,如果制定過小,則以小的數(shù)據(jù)模塊進(jìn)行數(shù)據(jù)讀取/寫入 (dataRead/Write),因此整體測試時(shí)間延長。如果制定過大,雖然性能提高,但要求從系統(tǒng) 的觀點(diǎn)來說無法容納的存儲容量。
[0007] 并且,在基于安裝的測試環(huán)境的情況下,與基于安裝的測試環(huán)境相比,存在對測試 設(shè)備驅(qū)動(dòng)程序的命令處理的響應(yīng)時(shí)間和測試時(shí)間延長的問題。


【發(fā)明內(nèi)容】

[0008] (一)要解決的技術(shù)問題
[0009] 本發(fā)明涉及一種運(yùn)用基于PCI-Express的固態(tài)硬盤測試裝置的驅(qū)動(dòng)機(jī)制,更加詳 細(xì)而言,涉及一種基于FPGA而非基于PC的非安裝型存儲器測試裝置硬件驅(qū)動(dòng)機(jī)制。
[0010] 具體地,其目的在于,提供一種與安裝系統(tǒng)不同,以固態(tài)硬盤運(yùn)用為目的,將所有 系統(tǒng)的資源構(gòu)成硬件,因此與基于安裝的測試環(huán)境相比,在測試設(shè)備驅(qū)動(dòng)的命令處理時(shí),能 夠確保更快的響應(yīng)時(shí)間和更快的測試時(shí)間,在同一時(shí)間內(nèi)能夠測試大量固態(tài)硬盤的裝置。 [0011](二)技術(shù)方案
[0012] 為了實(shí)現(xiàn)上述技術(shù)問題的本發(fā)明涉及一種基于FPGA的非安裝型存儲器測試裝 置,包括:處理器部,其作為在FPGA內(nèi)部構(gòu)成的微處理器,執(zhí)行對根聯(lián)合體(Root complex : RC)以下 PCIe 總線樹(bus tree)的裝置的列舉(Enumeration)和構(gòu)形(Configuration), 制作用于測試的場景(scenario),設(shè)定設(shè)備驅(qū)動(dòng)部(Device Driver),以便進(jìn)行測試;設(shè) 備驅(qū)動(dòng)部,其作為基于所述處理器部制作的測試場景,生成用于存儲裝置的高級技術(shù)附件 (Advanced Technology Attachment, ΑΤΑ)命令的模塊,與包括管理存儲裝置的高級主控 接口(Advanced Host Controller Interface :AHCI)的主機(jī)總線適配器(Host Bridge Adapter,HBA)進(jìn)行通訊;數(shù)據(jù)引擎部,其生成用于測試的模式數(shù)據(jù),從系統(tǒng)存儲器訪問用 戶存儲的數(shù)據(jù),來進(jìn)行測試;系統(tǒng)內(nèi)存接口部,其接收進(jìn)程所需的數(shù)據(jù),以便所述處理器部 和數(shù)據(jù)引擎部訪問內(nèi)存部而能夠進(jìn)行測試,并存儲測試結(jié)果;監(jiān)控部,其在測試不良發(fā)生 時(shí),監(jiān)控PCIe處理層的數(shù)據(jù)包(Packet)并儲存;直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部,若所述 設(shè)備驅(qū)動(dòng)部對場景進(jìn)行譯碼,并通過PCIe總線向主機(jī)總線適配器傳達(dá)命令,則所有數(shù)據(jù)流 執(zhí)行成為主機(jī)總線適配器主令(Master)的直接內(nèi)存存取動(dòng)作,向包括設(shè)備驅(qū)動(dòng)部的根聯(lián) 合體發(fā)送內(nèi)存讀取請求(Memory Read RequeSt,Mrd);信息輸入輸出部,所述直接內(nèi)存存取 驅(qū)動(dòng)/地址轉(zhuǎn)換部的解讀結(jié)果,在傳達(dá)至Bus ConRC的TLP為信息的情況下,將其傳達(dá)給 數(shù)據(jù)引擎部和設(shè)備驅(qū)動(dòng)部;PCIe IP部,其為PCI Express邏輯的SW IP ;開關(guān)部,其與所述 PCIe IP部連接,構(gòu)成被測設(shè)備(DUT)部;被測設(shè)備部,其作為被測裝置,是包括主機(jī)總線適 配器,與PCIe直接連接的存儲器;內(nèi)存部,其存儲用于測試的數(shù)據(jù),存儲測試期間生成的記 錄。
[0013] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述處理器部在 測試結(jié)束的情況下,從所述設(shè)備驅(qū)動(dòng)部接收關(guān)于是否出錯(cuò)及成功的結(jié)果;在發(fā)生錯(cuò)誤的情 況下,訪問(access)PCIe的TLP和設(shè)備錯(cuò)誤信息。
[0014] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述設(shè)備驅(qū)動(dòng)部 的命令包括:用于讀取/寫入(Read/Write)的數(shù)據(jù)緩沖器(Data Buffer)的基地址(base address)和尺寸(size),存儲裝置(固態(tài)硬盤)的邏輯塊地址信息。
[0015] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述制作場景的 信息,包括測試順序所需的信息和制定命令所需的信息中的至少一個(gè),所述測試順序所需 的信息包括執(zhí)行整個(gè)測試場景的的時(shí)間、邏輯塊地址模式(順次模式或隨機(jī)訪問模式)、數(shù) 據(jù)模式(Data pattern)、命令隊(duì)列深度(Command Queued Depth),所述制定命令所需的信 息分別為制定用于基于高級主控接口的PCIe存儲器(固態(tài)硬盤)的高級技術(shù)附件命令和 用于基于小型計(jì)算機(jī)系統(tǒng)接口(Small Computer System Interface, SCSI)的PCIe存儲器 (固態(tài)硬盤)的命令所需的信息。
[0016] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述數(shù)據(jù)引 擎部包括:模式數(shù)據(jù)生成模塊,其生成寫入固態(tài)硬盤所需的數(shù)據(jù),在執(zhí)行讀取和比較 (Read&compare)動(dòng)作時(shí),生成期望數(shù)據(jù)(Expected Data);比較模塊,其在執(zhí)行讀取和比較 動(dòng)作時(shí),比較通過模式數(shù)據(jù)生成模塊生成的期望數(shù)據(jù)與作為主機(jī)總線適配器內(nèi)存寫入請求 (Memory Write Request,Mwr)的數(shù)據(jù)的從固態(tài)硬盤讀取的數(shù)據(jù),來判斷相應(yīng)邏輯塊地址的 數(shù)據(jù)是否相同;不良記錄存儲模塊,其在所述比較部的判斷結(jié)果為不同的情況下,存儲不良 信息;以及系統(tǒng)內(nèi)存輸入模塊,其接收用戶通過所述系統(tǒng)內(nèi)存接口部存儲的數(shù)據(jù)。
[0017] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述直接內(nèi)存存 取驅(qū)動(dòng)/地址轉(zhuǎn)換部接收關(guān)于主機(jī)總線適配器的結(jié)束點(diǎn)(EndPoint,EP)向根聯(lián)合體發(fā)送的 請求的信息,向所述設(shè)備驅(qū)動(dòng)部和數(shù)據(jù)引擎部傳達(dá)。
[0018] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述直接內(nèi)存 存取驅(qū)動(dòng)/地址轉(zhuǎn)換部在所述設(shè)備驅(qū)動(dòng)部向主機(jī)總線適配器的緩存器(Register)傳達(dá) 用于訪問的內(nèi)存寫入請求(Memory Write Request, Mwr)數(shù)據(jù)包傳達(dá)標(biāo)記(flag)時(shí),對 該標(biāo)記進(jìn)行譯碼,使根聯(lián)合體完成向主機(jī)總線適配器的緩存器的寫入,若為了請求命令頭 (Co_and header)信息,所述主機(jī)總線適配器向根聯(lián)合體傳輸內(nèi)存讀取請求數(shù)據(jù)包,將該 數(shù)據(jù)包連接于所述設(shè)備驅(qū)動(dòng)部,所述設(shè)備驅(qū)動(dòng)部解讀并連接數(shù)據(jù)包,以便能夠?qū)⑾鄳?yīng)信息 傳輸至 Cpld(Completion with Data)數(shù)據(jù)包。
[0019] 并且,本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的特征為,所述開關(guān)部在構(gòu) 成于根聯(lián)合體的帶寬(Bandwidth)內(nèi)的情況下,利用多個(gè)開關(guān),來擴(kuò)展PARA數(shù)(碑科午)。
[0020] (三)有益效果
[0021] 根據(jù)如上所述的本發(fā)明,與安裝系統(tǒng)不同,以固態(tài)硬盤運(yùn)用為目的,所有系統(tǒng)的資 源構(gòu)成硬件,因此與基于安裝的測試環(huán)境相比,在測試設(shè)備驅(qū)動(dòng)的命令處理時(shí),具有能夠確 保更快的響應(yīng)時(shí)間和更快的測試時(shí)間,以相同時(shí)間為基準(zhǔn)能夠測試大量的固態(tài)硬盤的效 果。

【專利附圖】

【附圖說明】
[0022] 圖1是示意地表示本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的整體結(jié)構(gòu)圖。
[0023] 圖2是表示本發(fā)明的處理器部制作的場景信息的例示圖。
[0024] 圖3是表示在本發(fā)明的處理器部訪問處理層數(shù)據(jù)包日志(packet log)的記錄的 例示圖。
[0025] 圖4是表示利用本發(fā)明的開關(guān)與被測設(shè)備部連接的方式的例示圖。
[0026] 圖5是表示利用本發(fā)明的多個(gè)開關(guān)來擴(kuò)展法拉的方式的例示圖。
[0027] 附圖標(biāo)記說明
[0028] 100 :處理器部 200 :設(shè)備驅(qū)動(dòng)部
[0029] 300:數(shù)據(jù)引擎部 400:系統(tǒng)內(nèi)存接口部
[0030] 500 :監(jiān)控部 600 :直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部
[0031] 700 :信息輸入輸出部800 :PCIe IP部
[0032] 900 :開關(guān)部 1000 :被測設(shè)備部
[0033] 1100:內(nèi)存部

【具體實(shí)施方式】
[0034] 通過以下參照附圖的詳細(xì)的說明,更明確本發(fā)明的具體特征及優(yōu)點(diǎn)。在此之前,需 注意當(dāng)判斷有關(guān)本發(fā)明的公知技術(shù)及其組成的具體的說明,可能對本發(fā)明的主旨造成不必 要的混淆的情況下,省略其具體說明。
[0035] 以下,參照附圖,對本發(fā)明進(jìn)行詳細(xì)的說明。
[0036] 如下所述,參照圖1至圖5,對本發(fā)明的基于FPGA的非安裝型存儲器測試裝置進(jìn)行 說明。
[0037] 圖1作為示意地表示本發(fā)明的基于FPGA的非安裝型存儲器測試裝置的整體結(jié)構(gòu) 圖,如圖所示,由處理器部100、設(shè)備驅(qū)動(dòng)部200、數(shù)據(jù)引擎部300、系統(tǒng)內(nèi)存接口部400、監(jiān)控 部500、直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部600、信息輸入輸出部700、PCIe IP部800、開關(guān)部 900、被測設(shè)備部1000以及內(nèi)存部1100構(gòu)成。
[0038] 處理器部100作為在FPGA內(nèi)部構(gòu)成的微處理器(Embedded Processor Unit : ETO),執(zhí)行對根聯(lián)合體以下PCIe總線樹的裝置的列舉和構(gòu)形,制作用于測試的場景,設(shè)定 設(shè)備驅(qū)動(dòng)部200,以便進(jìn)行測試。
[0039] 在測試結(jié)束的情況下,從所述設(shè)備驅(qū)動(dòng)部200接收關(guān)于是否出錯(cuò)及成功的結(jié)果, 在發(fā)生錯(cuò)誤的情況下,訪問PCIe的TLP和設(shè)備錯(cuò)誤信息。
[0040] 設(shè)備驅(qū)動(dòng)部200作為基于處理器部100制作的測試場景,生成用于存儲裝置(固 態(tài)硬盤,硬盤)的高級技術(shù)附件命令的模塊,與管理存儲裝置的如高級主控接口的主機(jī)總 線適配器進(jìn)行通訊。
[0041] 這種命令包括用于讀取/寫入的數(shù)據(jù)緩沖器的基地址和尺寸,存儲裝置(固態(tài)硬 盤)的邏輯塊地址信息。利用該信息,主機(jī)總線適配器執(zhí)行用于讀取或?qū)懭氪鎯ρb置(固 態(tài)硬盤)的直接內(nèi)存訪問(Direct Memory Access :直接內(nèi)存存?。﹦?dòng)作。
[0042] 圖2中的1表示處理器部100制作的場景的信息,一個(gè)場景由N個(gè)DW緩存器構(gòu) 成。存在0?N個(gè)這種場景插槽(旮癸),并存在出發(fā)點(diǎn)(Start Point)和截止點(diǎn)(Stop Point)〇
[0043] 通過這種結(jié)構(gòu),能夠制作多種測試場景。
[0044] 制作場景的信息(參照圖2中的1)存儲測試順序所需的信息和制定命令所需的 信息,所述測試順序所需的信息包括執(zhí)行整體測試場景的時(shí)間、邏輯塊地址模式(順次模 式或隨機(jī)訪問模式)、數(shù)據(jù)模式、命令隊(duì)列深度等,所述制定命令所需的信息分別為制定用 于基于高級主控接口的PCIe存儲器(固態(tài)硬盤)的高級技術(shù)附件命令和用于基于小型計(jì) 算機(jī)系統(tǒng)接口的PCIe存儲器(固態(tài)硬盤)的命令所需的信息。若開始測試,則執(zhí)行從出發(fā) 點(diǎn)到結(jié)束點(diǎn)的測試場景。
[0045] 數(shù)據(jù)引擎部300執(zhí)行生成用于測試的模式數(shù)據(jù),從系統(tǒng)內(nèi)存訪問用戶存儲的數(shù) 據(jù),來進(jìn)行測試的功能,如上述圖1所示,包括模式數(shù)據(jù)生成模塊310、比較模塊320、不良記 錄存儲模塊330以及系統(tǒng)存儲輸入模塊340。
[0046] 具體地,模式數(shù)據(jù)生成模塊310生成寫入固態(tài)硬盤所需的數(shù)據(jù),在執(zhí)行讀取和比 較動(dòng)作時(shí),生成期望數(shù)據(jù)。
[0047] 此時(shí),模式數(shù)據(jù)生成模塊310通過利用向邏輯塊地址和直接內(nèi)存存取驅(qū)動(dòng)/地址 轉(zhuǎn)換部600請求的內(nèi)存地址生成的種子(Seed)值生成隨機(jī)數(shù)據(jù)。
[0048] 更具體地,模式數(shù)據(jù)生成模塊310生成寫入固態(tài)硬盤所需的數(shù)據(jù),在執(zhí)行讀取和 比較動(dòng)作時(shí),生成期望數(shù)據(jù)。并且,執(zhí)行寫入動(dòng)作時(shí),通過直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部 600接收內(nèi)存讀取請求(request)。
[0049] 在該數(shù)據(jù)包中積累請求數(shù)據(jù)量,請求數(shù)據(jù)量積累至1-扇區(qū)(sector)時(shí),合并請求 的地址和命令的邏輯塊地址,生成種子(叫三),將邏輯復(fù)位。
[0050] 此時(shí),只要種子因子(Seed Factor)相同,相應(yīng)邏輯塊地址存儲始終以相同種子值 生成的隨機(jī)數(shù)據(jù),因此與隨機(jī)、順次邏輯塊地址無關(guān),存儲相同的數(shù)據(jù)。
[0051] 因此,無需用于存儲期望數(shù)據(jù)的另設(shè)的內(nèi)存。在此,種子因子(入1三碑詞)是指 相加基本種子值,避免邏輯塊地址始終存儲相同的模式數(shù)據(jù)的變數(shù)。
[0052] 比較模塊320將執(zhí)行讀取和比較動(dòng)作時(shí),比較通過模式數(shù)據(jù)生成模塊310生成的 期望數(shù)據(jù)與主機(jī)總線適配器內(nèi)存寫入請求的數(shù)據(jù)即在固態(tài)硬盤讀取的數(shù)據(jù),來判斷相應(yīng)邏 輯塊地址的數(shù)據(jù)是否相同,在不相同的情況下,將不良信息存儲于不良記錄存儲模塊330 中。即,不良記錄存儲模塊330中存儲發(fā)生不良的邏輯塊地址和期望數(shù)據(jù)以及讀取數(shù)據(jù)等。
[0053] 系統(tǒng)內(nèi)存輸入模塊340接收用戶通過系統(tǒng)內(nèi)存接口部400存儲的數(shù)據(jù)。
[0054] 系統(tǒng)內(nèi)存接口部400接收進(jìn)程所需的數(shù)據(jù),以便所述處理器部100和數(shù)據(jù)引擎部 300訪問內(nèi)存部1100而能夠進(jìn)行測試,并存儲測試結(jié)果。
[0055] 監(jiān)控部500在發(fā)生測試不良時(shí),監(jiān)控并存儲PCIe處理層的數(shù)據(jù)包,能夠在處理器 部100進(jìn)行訪問。圖3是表示處理器部100訪問處理層數(shù)據(jù)包日志的記錄的例示圖。
[0056] 直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部600中,若所述設(shè)備驅(qū)動(dòng)部200對場景進(jìn)行譯碼, 并通過PCIe總線向主機(jī)總線適配器傳達(dá)命令,則所有數(shù)據(jù)流執(zhí)行成為主機(jī)總線適配器主 令的直接內(nèi)存存取動(dòng)作,向包括設(shè)備驅(qū)動(dòng)部200的根聯(lián)合體發(fā)送內(nèi)存讀取請求。此時(shí),數(shù)據(jù) 引擎部300對主機(jī)總線適配器請求的地址進(jìn)行數(shù)據(jù)傳達(dá)。
[0057] 并且,直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部600接收主機(jī)總線適配器的結(jié)束點(diǎn)向根聯(lián) 合體發(fā)送的請求的信息,向所述設(shè)備驅(qū)動(dòng)部200和數(shù)據(jù)引擎部300傳達(dá)。
[0058] 例如,設(shè)備驅(qū)動(dòng)部300傳達(dá)用于訪問主機(jī)總線適配器的緩存器的內(nèi)存寫入請求數(shù) 據(jù)包傳達(dá)標(biāo)記時(shí),對該標(biāo)記進(jìn)行譯碼,使根聯(lián)合體完成向主機(jī)總線適配器的緩存器寫入。
[0059] 之后,主機(jī)總線適配器為了請求命令頭(Command Header)信息,向根聯(lián)合體傳輸 內(nèi)存讀取請求數(shù)據(jù)包,將該數(shù)據(jù)包連接于設(shè)備驅(qū)動(dòng)部200,所述設(shè)備驅(qū)動(dòng)部200解讀并連接 數(shù)據(jù)包,以便能夠?qū)⑾鄳?yīng)信息傳輸至Cpld(Completion with Data)數(shù)據(jù)包。
[0060] 信息輸入輸出部700中直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部600的解讀結(jié)果為在傳達(dá) 至Bus ConRC的TLP為信息的情況下,將其傳達(dá)給數(shù)據(jù)引擎部300和設(shè)備驅(qū)動(dòng)部200。并且, 信息輸入輸出部700將在處理器部100中執(zhí)行的用于總線構(gòu)成(Configuration)的cfg-tlp 進(jìn)行連接。
[0061] PCIe IP 部 800 為 PCI Express 邏輯的 SW IP。
[0062] 開關(guān)部900與所述PCIe IP部800連接,構(gòu)成被測設(shè)備部1000。
[0063] 圖4是表示利用本發(fā)明的開關(guān)與被測設(shè)備部連接的方式的例示圖,圖5是表示利 用本發(fā)明的多個(gè)開關(guān)來擴(kuò)展法拉的方式的例示圖。
[0064] 此時(shí),能夠在根聯(lián)合體的帶寬內(nèi)構(gòu)成的情況下(參照圖4),可以為利用多個(gè)開關(guān), 來擴(kuò)展法拉(PARA,能夠一次全部測試的存儲數(shù)量)的結(jié)構(gòu)(參照圖5)。
[0065] 被測設(shè)備部1000作為被測裝置(Device Under Test :DUT),是包括主機(jī)總線適配 器,與PCIe直接連接的存儲器。
[0066] 內(nèi)存部1100存儲用于測試的數(shù)據(jù),存儲測試期間產(chǎn)生的記錄。
[0067] 另一方面,簡單查看利用如上所述的測試裝置的測試過程如下。首先,處理器部 100執(zhí)行PCIe總線樹的裝置的列舉和構(gòu)形,制作用于測試的場景,設(shè)定設(shè)備驅(qū)動(dòng)部200,進(jìn) 行測試。在測試結(jié)束的情況下,接收測試是否出錯(cuò),并存儲錯(cuò)誤信息,在沒有發(fā)生錯(cuò)誤的情 況下,存儲測試完成信息。
[0068] 以上針對用于例舉說明本發(fā)明的技術(shù)思想的優(yōu)選實(shí)施例進(jìn)行了說明和圖示,但本 發(fā)明并不局限于如上進(jìn)行圖示說明的完全不變的構(gòu)成及作用,所屬領(lǐng)域的技術(shù)人員可以理 解為在不脫離技術(shù)思想主旨范圍內(nèi)能夠?qū)Ρ景l(fā)明進(jìn)行多種變更及修改。因此,所有這種適 當(dāng)?shù)淖兏靶薷暮偷葍r(jià)物,也應(yīng)視為屬于本發(fā)明的范圍。
【權(quán)利要求】
1. 一種基于FPGA的非安裝型存儲器測試裝置,其包括: 處理器部(100),其作為在FPGA內(nèi)部構(gòu)成的微處理器,執(zhí)行對根聯(lián)合體以下PCIe總線 樹的裝置的列舉和構(gòu)形,制作用于測試的場景,設(shè)定設(shè)備驅(qū)動(dòng)部(200),以便進(jìn)行測試; 設(shè)備驅(qū)動(dòng)部(200),其作為基于所述處理器部(100)制作的測試場景,生成用于存儲裝 置的高級技術(shù)附件命令的模塊,與包括管理存儲裝置的高級主控接口的主機(jī)總線適配器進(jìn) 行通訊; 數(shù)據(jù)引擎部(300),其生成用于測試的模式數(shù)據(jù),從系統(tǒng)存儲器訪問用戶存儲的數(shù)據(jù), 來進(jìn)行測試; 系統(tǒng)內(nèi)存接口部(400),其接收進(jìn)程所需的數(shù)據(jù),以便所述處理器部(100)和數(shù)據(jù)引擎 部(300)訪問內(nèi)存部(1100)而能夠進(jìn)行測試,并存儲測試結(jié)果; 監(jiān)控部(500),其在發(fā)生測試不良時(shí),監(jiān)控PCIe處理層的數(shù)據(jù)包并儲存; 直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部(600),若所述設(shè)備驅(qū)動(dòng)部(200)對場景進(jìn)行譯碼,并 通過PCIe總線向主機(jī)總線適配器傳達(dá)命令,則所有數(shù)據(jù)流執(zhí)行成為主機(jī)總線適配器主令 的直接內(nèi)存存取動(dòng)作,向包括設(shè)備驅(qū)動(dòng)部(200)的根聯(lián)合體發(fā)送內(nèi)存讀取請求; 信息輸入輸出部(700),所述直接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部(600)的解讀結(jié)果,在 傳達(dá)至BusConRC的TLP為信息的情況下,將其傳達(dá)給數(shù)據(jù)引擎部(300)和設(shè)備驅(qū)動(dòng)部 (200); PCIeIP部(800),其為PCIExpress邏輯的SWIP; 開關(guān)部(900),其與所述PCIeIP部(800)連接,構(gòu)成被測設(shè)備部(1000); 被測設(shè)備部(1000),其作為被測裝置,是包括主機(jī)總線適配器,與PCIe直接連接的存 儲器; 內(nèi)存部(1100),其存儲用于測試的數(shù)據(jù),存儲測試期間生成的記錄。
2. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述處 理器部(100)在測試結(jié)束的情況下,從所述設(shè)備驅(qū)動(dòng)部(200)接收關(guān)于是否出錯(cuò)及成功的 結(jié)果,在發(fā)生錯(cuò)誤的情況下,訪問PCIe的TLP和設(shè)備錯(cuò)誤信息。
3. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述設(shè) 備驅(qū)動(dòng)部(200)的命令包括:用于讀取/寫入的數(shù)據(jù)緩沖器的基地址和尺寸,存儲裝置即固 態(tài)硬盤的邏輯塊地址信息。
4. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述制 作場景的信息,包括測試順序所需的信息和制定命令所需的信息中的至少一個(gè),所述測試 順序所需的信息包括執(zhí)行整個(gè)測試場景的時(shí)間、邏輯塊地址模式即順次模式或隨機(jī)訪問模 式、數(shù)據(jù)模式、命令隊(duì)列深度,所述制定命令所需的信息分別為制定用于基于高級主控接口 的PCIe存儲器即固態(tài)硬盤的高級技術(shù)附件命令和用于基于小型計(jì)算機(jī)系統(tǒng)接口的PCIe存 儲器即固態(tài)硬盤的命令所需的信息。
5. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述數(shù) 據(jù)引擎部(300)包括: 模式數(shù)據(jù)生成模塊(310),其生成寫入固態(tài)硬盤所需的數(shù)據(jù),在執(zhí)行讀取和比較動(dòng)作 時(shí),生成期望數(shù)據(jù); 比較模塊(320),其在執(zhí)行讀取和比較動(dòng)作時(shí),比較通過模式數(shù)據(jù)生成模塊(310)生成 的期望數(shù)據(jù)與從作為主機(jī)總線適配器內(nèi)存寫入請求的數(shù)據(jù)的從固態(tài)硬盤讀取的數(shù)據(jù),來判 斷相應(yīng)邏輯塊地址的數(shù)據(jù)是否相同; 不良記錄存儲模塊(330),其在所述比較部(320)的判斷結(jié)果為不同的情況下,存儲不 良信息; 系統(tǒng)內(nèi)存輸入模塊(340),其接收從所述系統(tǒng)內(nèi)存接口部(400)接收用戶存儲的數(shù)據(jù)。
6. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述直 接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部(600)接收關(guān)于主機(jī)總線適配器的結(jié)束點(diǎn)向根聯(lián)合體發(fā)送的 請求的信息,向所述設(shè)備驅(qū)動(dòng)部(200)和數(shù)據(jù)引擎部(300)傳達(dá)。
7. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述直 接內(nèi)存存取驅(qū)動(dòng)/地址轉(zhuǎn)換部(600)在所述設(shè)備驅(qū)動(dòng)部(200)向主機(jī)總線適配器的緩存 器傳達(dá)用于訪問的內(nèi)存寫入請求數(shù)據(jù)包傳達(dá)標(biāo)記時(shí),對該標(biāo)記進(jìn)行譯碼,使根聯(lián)合體完成 向主機(jī)總線適配器的緩存器的寫入,若為了請求命令頭信息,所述主機(jī)總線適配器向根聯(lián) 合體傳輸內(nèi)存讀取請求數(shù)據(jù)包,將該數(shù)據(jù)包連接于所述設(shè)備驅(qū)動(dòng)部(200),所述設(shè)備驅(qū)動(dòng)部 (200)解讀并連接數(shù)據(jù)包,以便能夠?qū)⑾鄳?yīng)信息傳輸至Cpld數(shù)據(jù)包。
8. 根據(jù)權(quán)利要求1所述的基于FPGA的非安裝型存儲器測試裝置,其特征在于,所述開 關(guān)部(900)在構(gòu)成于根聯(lián)合體的帶寬內(nèi)的情況下,利用多個(gè)開關(guān),來擴(kuò)展PARA數(shù)。
【文檔編號】G06F13/38GK104516843SQ201410340524
【公開日】2015年4月15日 申請日期:2014年7月17日 優(yōu)先權(quán)日:2013年9月30日
【發(fā)明者】韓永勉 申請人:韓商聯(lián)測股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
舟山市| 东阿县| 景德镇市| 余庆县| 镇宁| 松原市| 和平区| 庆城县| 刚察县| 榆林市| 策勒县| 贺州市| 望城县| 文成县| 富川| 正安县| 木兰县| 泉州市| 民乐县| 昌图县| 柞水县| 鄯善县| 饶阳县| 婺源县| 越西县| 吴川市| 珲春市| 凤翔县| 宣汉县| 兰考县| 屏南县| 湾仔区| 景德镇市| 沙洋县| 贡觉县| 泰宁县| 望都县| 和硕县| 淅川县| 长宁区| 丽水市|