專利名稱:硬件測(cè)試模塊和增加硬件測(cè)試速度的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種硬件測(cè)試模塊,特別是關(guān)于一種以并行操作進(jìn)行的測(cè)試方法。
就現(xiàn)行的測(cè)試軟件而言,對(duì)調(diào)制解調(diào)器(Modem)、串/并行口、軟硬件驅(qū)動(dòng)器等硬件設(shè)備的測(cè)試過程中,其執(zhí)行過程往往先直接由電腦向被測(cè)硬件寫入測(cè)試信息,然后等待來自被測(cè)硬件的響應(yīng)(response),并將之接收再作對(duì)比及查驗(yàn)的作業(yè)。換言之,現(xiàn)有技術(shù)的測(cè)試方法首先將「測(cè)試信息」由「電腦」傳向「被測(cè)硬件」,而后再由「被測(cè)硬件」將「測(cè)試信息」轉(zhuǎn)交給「主應(yīng)用程序」處理以產(chǎn)生一「結(jié)果」。此「結(jié)果」再經(jīng)由「被測(cè)硬件」傳回「電腦」,以記錄、顯示測(cè)試結(jié)果。上述過程如「圖1」所示,開始測(cè)試(步驟10)之后,首先向被測(cè)硬件傳送數(shù)據(jù)以交由主應(yīng)用程序處理(步驟11),而后再處理測(cè)試信息時(shí),須等待硬件響應(yīng)數(shù)據(jù)(步驟12)。第四步驟則是顯示所得的響應(yīng)數(shù)據(jù)(步驟13)。在第五步驟使用者可輸入指令以作更進(jìn)一步的處理(步驟14),繼而由電腦執(zhí)行所輸入的指令(步驟15)。最后檢查是否已完成整個(gè)測(cè)試(步驟16)。若否,則再繼續(xù)作整個(gè)測(cè)試流程;若已完成,則結(jié)束或進(jìn)行下一個(gè)被測(cè)硬件的測(cè)試(步驟17)。
由上所述,可知現(xiàn)有技術(shù)是以一「串行操作」的方法來進(jìn)行測(cè)試流程。簡(jiǎn)單的說,各步驟執(zhí)行的程序是「依次進(jìn)行」的,所以每一個(gè)步驟必需等待上一個(gè)步驟完成之后,才能進(jìn)行。而這也就是現(xiàn)有技術(shù)的主要缺點(diǎn)。由于各步驟的執(zhí)行需等待上一個(gè)步驟完成之后才能進(jìn)行,因此在整個(gè)速度上不免較慢。以調(diào)制解調(diào)器(Modem)為例,假設(shè)調(diào)制解調(diào)器以每毫秒一個(gè)字符(character,一個(gè)英文字符或符號(hào)需要一個(gè)字節(jié)“Byte”的長(zhǎng)度儲(chǔ)存)的速度向應(yīng)用程序發(fā)送字串「 This is a test.」,共15個(gè)字符,四個(gè)單字。應(yīng)用程序根據(jù)英文字母間的空格或標(biāo)點(diǎn)符號(hào)來區(qū)分每個(gè)單字。應(yīng)用程序的處理模式是以「單字」作為基本單位,其每處理一個(gè)單字需時(shí)3毫秒。由于內(nèi)存操作(包括程序執(zhí)行及數(shù)據(jù)存取)的速度相當(dāng)快(以納秒為單位),故可忽略而不計(jì)其所占用的時(shí)間。
在現(xiàn)有技術(shù)的串行測(cè)試方法中,如「圖1」流程所示,需要先將整串測(cè)試字符完全接收后,才能進(jìn)行其處理。故此,其調(diào)制解調(diào)器所需要的時(shí)間為接收15個(gè)字符的時(shí)間(15毫秒),再加上處理四個(gè)單字的時(shí)間(4×3=12毫秒),一共27毫秒。
此外,由于需先將測(cè)試字符完全接收,因此其所需的存儲(chǔ)器空間至少需有15個(gè)字符的內(nèi)存空間。此外,由于這是串行操作,因此在應(yīng)用程序處理完成之前,使用者無從得知其現(xiàn)況。因此當(dāng)錯(cuò)誤或當(dāng)故障的情況發(fā)生時(shí),往往無法得知而浪費(fèi)時(shí)間。此現(xiàn)象在測(cè)試調(diào)制解調(diào)器時(shí),由于其工作速率變化范圍很大(由110波特~11520波特),因此響應(yīng)的時(shí)間便會(huì)有很大的差別。特別是當(dāng)調(diào)制解調(diào)器運(yùn)行于不同的CPU及顯示卡上時(shí),極易造成時(shí)序配合上的混亂。另外,數(shù)據(jù)的傳送總是有一定的誤碼率,這種差錯(cuò)會(huì)造成接收數(shù)據(jù)內(nèi)容及長(zhǎng)度的變化。為了接收這種未知長(zhǎng)度的數(shù)據(jù),采用現(xiàn)有技術(shù)方法「接收----處理----再接收----再處理----直至結(jié)束」的模式,只能通過加大暫存空間的方法來解決,造成存儲(chǔ)空間的浪費(fèi)。
發(fā)明目的及概述本發(fā)明的主要目的,在于提出一種能提高硬件測(cè)試速率的測(cè)試模塊,并且可以提供清楚的數(shù)據(jù)流向,以及減少測(cè)試所需的存儲(chǔ)器空間。
本發(fā)明的精神,在于以「并行操作」取代現(xiàn)有技術(shù)「串行操作」的方式來執(zhí)行硬件測(cè)試。在現(xiàn)有技術(shù)中,應(yīng)用程序需等待全部的測(cè)試信息接收完畢之后,才能開始對(duì)這些測(cè)試信息進(jìn)行處理。然而,對(duì)應(yīng)用程序而言,其處理測(cè)試信息的方式,是將字母一個(gè)一個(gè)的來處理,而非一次就處理整個(gè)測(cè)試信息。換言之,對(duì)應(yīng)用程序而言,其信息處理的過程只需要有部份測(cè)試信息就可開始進(jìn)行。所以在本發(fā)明中,在接收測(cè)試信息的同時(shí),就開始令應(yīng)用程序去由存儲(chǔ)器中取出字符來進(jìn)行處理。換言之,利用應(yīng)用程序處理信息上的特性,使得信息的接收及信息的處理能同時(shí)進(jìn)行,而減少整個(gè)測(cè)試所需的時(shí)間。
為此,本發(fā)明運(yùn)用直接截取硬件中斷的手法,先規(guī)劃出一個(gè)環(huán)形暫存器,利用「Put指針」及「Take指針」來操作信息的存取,并提供一「中斷服務(wù)」,使得應(yīng)用程序在處理測(cè)試信息時(shí),接收程序仍能逐個(gè)繼續(xù)地接收測(cè)試信息。
此外,對(duì)于應(yīng)用程序而言,由于測(cè)試信息不需要一次就全部讀寫進(jìn)存儲(chǔ)器中,因此所需存儲(chǔ)器的空間也可較現(xiàn)有技術(shù)來得少。同時(shí),由于利用環(huán)形暫存器及「Put指針」、「Take指針」兩個(gè)指針,因此應(yīng)用程序?qū)⒁砸欢l率去監(jiān)測(cè)環(huán)形暫存器的現(xiàn)況。所以透過應(yīng)用程序,使用者也能夠隨時(shí)了解目前測(cè)試進(jìn)行的狀況,因此能避免萬一發(fā)生故障(down)時(shí)的無謂等待。
為讓本發(fā)明的上述和其他目的、特征、和優(yōu)點(diǎn)能更明顯易懂,下文特舉一較佳實(shí)施例,并配合附圖,作詳細(xì)說明如下。
圖1為現(xiàn)有技術(shù)測(cè)試方法的方塊圖;圖2為實(shí)施例的功能方塊圖;圖3為整體流程圖;圖4為中斷服務(wù)流程圖;圖5為主應(yīng)用程序取數(shù)據(jù)流程圖;圖6為等待并動(dòng)態(tài)處理數(shù)據(jù)的流程圖。
實(shí)施例說明參見「圖2」為第一實(shí)施例的功能方塊圖。環(huán)形暫存器21上規(guī)劃有數(shù)個(gè)存儲(chǔ)單元,其每一個(gè)皆是硬件每次發(fā)送的最小單位,其字節(jié)(Byte)數(shù)依不同硬件類型而定。此外有一Put指針22,其用以標(biāo)定每次進(jìn)行信息存入時(shí)的位置,它會(huì)隨著信息的存入向前移,移至底部時(shí),則會(huì)再返回起始點(diǎn)。另外有Take指針23用以標(biāo)定讀取信息時(shí)的位置。類似于Put指針22,Take指針23亦會(huì)隨著信息的讀取向前移,移至底部時(shí),則會(huì)再返回起始點(diǎn)。
在執(zhí)行時(shí),相關(guān)數(shù)據(jù)將由被測(cè)硬件內(nèi)的存儲(chǔ)器,傳向中斷服務(wù)程序24,通過Put指針22的指示由起始位置依次將數(shù)據(jù)存入環(huán)形暫存器21中。而主應(yīng)用程序25則是通過Take指針23,將信息依次取出并加以處理。一旦Put指針22或Take指針23超過環(huán)形暫存器21的底部,則自動(dòng)返回環(huán)形暫存器21的起始位置。在讀取的判斷上,設(shè)定若Take指針23的位置不同于Put指針22,則代表有未讀取的信息;在存入的判斷上,設(shè)定若Put指針22追上Take指針23,則表示環(huán)形暫存器21的空間已滿。利用上述的兩個(gè)判斷原則,可以避免讀過頭或是寫過頭的問題。
「圖3」為實(shí)施例的總流程圖。其中主應(yīng)用程序31負(fù)責(zé)處理使用者輸入信息,并且監(jiān)測(cè)通信緩沖區(qū)33的狀態(tài),并依此進(jìn)行數(shù)據(jù)的讀取,以及通過控制中斷服務(wù)程序32而相對(duì)應(yīng)地控制硬件當(dāng)前的狀態(tài)。通信緩沖區(qū)33會(huì)接受被測(cè)硬件暫存器的變化以及測(cè)試數(shù)據(jù)的寫入。主應(yīng)用程序31及中斷服務(wù)程序32則是兩個(gè)并行的程序,但若二者同時(shí)存取(access)通信緩沖區(qū)33,則將造成信息的混亂。因此,為了使中斷服務(wù)程序32及主應(yīng)用程序31兩者在通信緩沖區(qū)33上互斥,因此設(shè)定主應(yīng)用程序在使用環(huán)狀暫存器時(shí),先關(guān)閉中斷服務(wù)程序32,以阻止其對(duì)于通信緩沖區(qū)33的寫入;完成之后再打開中斷服務(wù)程序32以繼續(xù)接收數(shù)據(jù)。
「圖4」為中斷服務(wù)流程圖,首先針對(duì)被測(cè)硬件,逐個(gè)讀入被測(cè)硬件內(nèi)的暫存器值,以視其是否有數(shù)據(jù)將傳送(步驟41)。判斷暫存器值是否有變化(步驟42),如有變化則記錄其變化情況并作一標(biāo)記(步驟43)以便主應(yīng)用程序識(shí)別。判斷是否讀完所有的值(步驟44),如果沒有,則返回步驟41繼續(xù)讀??;如果已讀完所有的值,則繼續(xù)判斷中斷服務(wù)程序是否收到新的數(shù)據(jù)(步驟45)。如果有,則將所接收到的數(shù)據(jù)依Put指針的指示存入環(huán)狀暫存器中,并更新Put指針的位置(步驟46)。然后,判斷暫存器是否將溢出(步驟47)。若是,則命令硬件暫停發(fā)送數(shù)據(jù),并設(shè)定硬件為暫停狀態(tài)(步驟48)后中斷返回。若中斷服務(wù)程序未收到新數(shù)據(jù)(步驟45),則直接返回。
「圖5」為主應(yīng)用程序讀取數(shù)已存入環(huán)狀暫存器內(nèi)的數(shù)據(jù)的流程。程序開始之后,通過監(jiān)測(cè)Put指針及Take指針的位置判斷暫存器中是否有新數(shù)據(jù)(步驟51)。如果有,則關(guān)閉中斷服務(wù)程序(步驟52),以避免在主應(yīng)用程序取數(shù)據(jù)時(shí),又有新數(shù)據(jù)寫入。然后,由環(huán)狀暫存器中逐單元取出數(shù)據(jù),完成后改變環(huán)狀暫存器的Take指針(步驟53),并開啟中斷服務(wù)程序(步驟54)以繼續(xù)接收新的數(shù)據(jù)。然后設(shè)定取數(shù)據(jù)成功標(biāo)記(步驟55),然后返回(步驟56)。如果環(huán)狀暫存器中沒有新的數(shù)據(jù),則先設(shè)一取數(shù)據(jù)失敗標(biāo)記(步驟57)以判斷硬件是否處于暫停狀態(tài)(步驟58)。若是,則向硬件發(fā)出繼續(xù)傳送數(shù)據(jù)的指令,并將硬件設(shè)定為發(fā)送狀態(tài)(步驟59),然后返回(步驟56);如果硬件處于正常狀態(tài)則直接返回(步驟56)。
「圖6」為數(shù)據(jù)存取流程。首先判斷是否有待處理的數(shù)據(jù)(步驟61)若有則處理更新標(biāo)記所指定的數(shù)據(jù),同時(shí)清除更新標(biāo)記(步驟62)直到完成所有數(shù)據(jù)的處理。接著判斷硬件是否得到了預(yù)期的回應(yīng),回應(yīng)的數(shù)據(jù)應(yīng)與所傳送的數(shù)據(jù)相同(步驟63),如果沒有則延時(shí)等待硬件做出回應(yīng)(步驟64)。判斷等待的時(shí)間(步驟65),如果未到等待時(shí)間的上限就已再次收到硬件回應(yīng),則返回程序起始點(diǎn),重新再做一次「是否有新數(shù)據(jù)需處理」的判斷。相反,如果等候超過了等待時(shí)間上限,則將狀態(tài)設(shè)定為超時(shí)(步驟66),然后返回處理結(jié)果(步驟68)。如果硬件已做出預(yù)期的回應(yīng),其設(shè)置硬件回應(yīng)值(步驟67),直接返回處理結(jié)果(步驟68)。
若同樣的以調(diào)制解調(diào)器(Modem)為例,假設(shè)調(diào)制解調(diào)器以每毫秒一個(gè)字符(Character,需要長(zhǎng)度為一個(gè)字節(jié)Byte的儲(chǔ)存空間)的速度向應(yīng)用程序發(fā)送字串「This is a test.」,共15個(gè)字符,四個(gè)單字。應(yīng)用程序根據(jù)英文字母間的空格或標(biāo)點(diǎn)符號(hào)來區(qū)分每個(gè)單字。應(yīng)用程序的處理模式是以「單字」作為基本單位,其每處理一個(gè)單字需時(shí)3毫秒。由于內(nèi)存操作(包括程序執(zhí)行及數(shù)據(jù)存取)的速度相當(dāng)快(以納秒為單位),故可忽略而不計(jì)其所占用的時(shí)間。環(huán)狀暫存器的容量為8個(gè)Byte。則本實(shí)施例以「This is a test」為例的操作步驟如下1.如「圖6」所示,在初始狀態(tài)下,Take指針及Put指針指在環(huán)狀暫存器的頂部,即第1個(gè)Byte處;2.中斷服務(wù)程序?qū)⒔邮盏降臄?shù)據(jù)「This」,共五個(gè)字符置入暫存器的第1至第5個(gè)Byte,并將Put指針移至下一次存放字符處(此例即為第6個(gè)Byte處),此過程需時(shí)5毫秒;3.主應(yīng)用程序判斷取數(shù)據(jù)指針(Take指針)的位置不同于Put指針,因此判定為有數(shù)據(jù)待處理。主應(yīng)用程序讀出「This」,并因其內(nèi)含有空隔「 」,因此自動(dòng)判定已讀出一完整的單字,同時(shí)將Take指針移至下一個(gè)取單字處(此例即為第6個(gè)Byte處);4.主應(yīng)用程序開始處理所讀取的單字「This」,此過程將耗時(shí)3毫秒,在主應(yīng)用程序處理單字時(shí),由于中斷服務(wù)程序仍并行地接收數(shù)據(jù),因此在主應(yīng)用程序完成單字的處理時(shí)(3毫秒),又將「is」存入環(huán)狀暫存器中第6~8個(gè)Byte中。為了避免暫存器溢出,故將Put指針再移至第1個(gè)Byte處;5.主應(yīng)用程序取出「is」,根據(jù)「 」來判斷其收到一完整的單字,并將Take指針移向第1個(gè)Byte處;
6.主應(yīng)用程序處理單字「is」,同時(shí)中斷服務(wù)程序?qū)⒔邮盏降摹竌t」存入第1至第3個(gè)Byte,并將Put指針移至第4個(gè)Byte,此過程耗時(shí)3毫秒;7.取出單字「a」,將Take指針移向第3個(gè)Byte。
8.處理單字「a」,同時(shí)中斷服務(wù)程序?qū)⒔邮盏降摹竐st」存入于第4至第6個(gè)Byte,并將Put指針移至第7個(gè)Byte處,過程耗時(shí)3毫秒;9.依Take指針,自第3個(gè)Byte處取出「test」,但由于未收到間隔符號(hào),表明所取出的數(shù)據(jù)可能不完整,故先開啟中斷服務(wù)程序,等待其接收下一個(gè)字符,并保持于監(jiān)測(cè)狀態(tài);10.中斷程序?qū)⑾乱粋€(gè)收到的字符「.」存入第7個(gè)Byte,此過程耗時(shí)1毫秒,并將Put指針移至第8個(gè)Byte;11.主應(yīng)用程序收到字符「.」,經(jīng)判斷為間隔符號(hào)后,表示「test」為一完整的單字,故將Take指針移至第8個(gè)Byte;12.處理單字「test」,耗時(shí)3毫秒。因此,總計(jì)時(shí)間為5+3+3+3+1+3=18(毫秒)。較現(xiàn)有技術(shù)方法27毫秒為快。同時(shí)所需的暫存器空間也由15個(gè)Byte減為8個(gè)Byte??梢姷帽景l(fā)明確能達(dá)到加快速度及減低所需暫存器空間的目的。
附圖符號(hào)說明10 開始11 向被測(cè)硬件發(fā)送數(shù)據(jù)12 等待硬件響應(yīng)數(shù)據(jù)13 顯示響應(yīng)數(shù)據(jù)14 有無用戶輸入15 顯示、處理用戶輸入16 是否測(cè)試完畢17 返回21 環(huán)形暫存器22 Put指針23 Take指針24 中斷服務(wù)程序25 主應(yīng)用程序31 主應(yīng)用程序32 中斷服務(wù)程序33 通信緩沖區(qū)41 逐個(gè)讀入暫存器值42 判斷暫存器值是否發(fā)生變化43 更新并做標(biāo)記44 判斷是否讀完全部的數(shù)據(jù)45 判斷是否收到新數(shù)據(jù)46 將數(shù)據(jù)放入環(huán)形暫存器并更新Put指針的位置47 判斷暫存器是否將溢出48 命令硬件暫停發(fā)送數(shù)據(jù),并將之設(shè)定為暫停狀態(tài)51 判斷是否有新數(shù)據(jù)52 關(guān)閉中斷服務(wù)程序53 取出數(shù)據(jù)并更新Take指針的位置54 開啟中斷服務(wù)程序55 設(shè)置取數(shù)據(jù)成功標(biāo)記56 返回57 設(shè)置取數(shù)據(jù)失敗標(biāo)記58 判斷硬件是否處于暫停狀態(tài)59 向硬件發(fā)出繼續(xù)傳送指令,并設(shè)定硬件為發(fā)送狀態(tài)61 判斷是否有待處理的數(shù)據(jù)62 處理更新標(biāo)記指定的數(shù)據(jù),并清除數(shù)據(jù)的更新標(biāo)記63 判斷是否接收到預(yù)期的回應(yīng)。64 延時(shí)等待65 判斷是否已到了等待時(shí)間的上限66 設(shè)定超時(shí)狀態(tài)67 設(shè)定回應(yīng)值68 返回
權(quán)利要求
1.一種硬件測(cè)試模塊,用以測(cè)試硬件傳送數(shù)據(jù)的功能,該硬件測(cè)試模塊至少包含-被測(cè)硬件;-通信緩沖區(qū),其可以被儲(chǔ)存及被讀取該被測(cè)硬件的狀態(tài)信息及該被測(cè)硬件所傳送的數(shù)據(jù);-主應(yīng)用程序,監(jiān)測(cè)并讀取該通信緩沖區(qū)所存的狀態(tài)信息及該數(shù)據(jù),并加以處理;-中斷服務(wù)程序,接受該主應(yīng)用程序的控制,而將該被測(cè)硬件所傳送的該數(shù)據(jù)寫入該通信緩沖區(qū);其中,當(dāng)該主應(yīng)用程序在讀取該通信緩沖區(qū)時(shí),將會(huì)先關(guān)閉該中斷服務(wù)程序,在讀取完畢后才再開啟該中斷服務(wù)程序;當(dāng)該主應(yīng)用程序在處理該數(shù)據(jù)的同時(shí),該中斷服務(wù)程序仍會(huì)繼續(xù)將所接收到的新數(shù)據(jù)寫入該通信緩沖區(qū)中。
2.如權(quán)利要求1所述的硬件測(cè)試模塊,其特征在于該通信緩沖區(qū)包含有一環(huán)狀暫存器。
3.如權(quán)利要求2所述的硬件測(cè)試模塊,其特征在于該環(huán)狀暫存器通過一Put指針來定位信息的存儲(chǔ),以及一Take指針來定位信息的讀取。
4.如權(quán)利要求1所述的硬件測(cè)試模塊,其特征在于該主應(yīng)用程序的工作模式包含有下列步驟1)監(jiān)測(cè)該通信緩沖區(qū),并發(fā)現(xiàn)該通信緩沖區(qū)中有新數(shù)據(jù);2)關(guān)閉該中斷服務(wù)程序;3)讀取該新數(shù)據(jù);4)開啟該中斷服務(wù)程序;5)處理該新數(shù)據(jù)。
5.如權(quán)利要求1所述的硬件測(cè)試模塊,其特征在于該主應(yīng)用程序的工作模式包含有下列步驟1)監(jiān)測(cè)該通信緩沖區(qū),并發(fā)現(xiàn)該通信緩沖區(qū)中沒有新數(shù)據(jù);2)檢測(cè)出被測(cè)硬件處于暫停狀況;3)向該被測(cè)硬件發(fā)出繼續(xù)傳送數(shù)據(jù)的指令;4)設(shè)定該被測(cè)硬件為發(fā)送狀態(tài)。
6.如權(quán)利要求1所述的硬件測(cè)試模塊,其特征在于該中斷服務(wù)程序的工作模式包含有下列步驟1)逐個(gè)讀入被測(cè)硬件暫存器內(nèi)的數(shù)據(jù);2)將所接收的該數(shù)據(jù)存入該通信緩沖區(qū)中的環(huán)狀暫存器中,該環(huán)狀暫存器包含有一Put指針;3)更新該P(yáng)ut指針?biāo)赶虻奈恢谩?br>
7.一種增加硬件測(cè)試速度的方法,其包含有下列步驟1)設(shè)置一環(huán)狀暫存器,所述暫存器可以被儲(chǔ)存以及被讀取被測(cè)硬件的狀態(tài)信息及該被測(cè)硬件所傳送的數(shù)據(jù);2)設(shè)一主應(yīng)用程序,其可以讀取該環(huán)狀暫存器所存的狀態(tài)信息及該數(shù)據(jù),并加以處理;3)設(shè)一中斷服務(wù)程序,其接受該主應(yīng)用程序的控制,而將該被測(cè)硬件所傳送的該數(shù)據(jù)寫入該環(huán)狀暫存器;其中,利用并行操作的方式,使得在該主應(yīng)用程序處理該數(shù)據(jù)的同時(shí),該中斷服務(wù)程序仍會(huì)繼續(xù)將所接收到的新數(shù)據(jù)寫入該環(huán)狀暫存器中。
8.如權(quán)利要求7所述的增加硬件測(cè)試速度的方法,其特征在于該環(huán)狀暫存器是通過一Put指針來定位信息的儲(chǔ)存,以及一Take指針來定位信息的讀取。
9.如權(quán)利要求7所述的增加硬件測(cè)試速度的方法,其特征在于該主應(yīng)用程序的工作模式包含有下列步驟1)監(jiān)測(cè)該環(huán)狀暫存器,并發(fā)現(xiàn)該環(huán)狀暫存器中有新數(shù)據(jù);2)關(guān)閉該中斷服務(wù)程序;3)讀取該新數(shù)據(jù);4)開啟該中斷服務(wù)程序;5)處理該新數(shù)據(jù)。
10.如權(quán)利要求7所述的增加硬件測(cè)試速度的方法,其特征在于該主應(yīng)用程序的工作模式包含有下列步驟1)監(jiān)測(cè)該環(huán)狀暫存器,并發(fā)現(xiàn)該環(huán)狀暫存器中沒有新數(shù)據(jù);2)檢測(cè)出被測(cè)硬件處于暫停狀況;3)向該被測(cè)硬件發(fā)明繼續(xù)傳送數(shù)據(jù)的指令;4)設(shè)定該被測(cè)硬件為發(fā)送狀態(tài)。
11.如權(quán)利要求7所述的增加硬件測(cè)試速度的方法,其特征在于該中斷服務(wù)程序的工作模式包含有下列步驟1)逐個(gè)讀入被測(cè)硬件暫存器內(nèi)的數(shù)據(jù);2)將所接收的該數(shù)據(jù)存入該環(huán)狀暫存器中,該環(huán)狀暫存器包含有一Put指針;3)更新該P(yáng)ut指針?biāo)赶虻奈恢谩?br>
全文摘要
本發(fā)明涉及一種硬件測(cè)試模塊,它以并行操作的方式,于一環(huán)狀暫存器上進(jìn)行測(cè)試數(shù)據(jù)的存取,本發(fā)明以中斷服務(wù)程序來存入測(cè)試數(shù)據(jù),而以主應(yīng)用程序來處理測(cè)試數(shù)據(jù),并利用主應(yīng)用程序在處理數(shù)據(jù)的期間,同時(shí)開啟中斷服務(wù)程序來接收數(shù)據(jù),而且由于此并行操作的方式,減少了所需的測(cè)試時(shí)間,并且能減少所需的暫存器容量。
文檔編號(hào)G06F11/22GK1266227SQ99103620
公開日2000年9月13日 申請(qǐng)日期1999年3月5日 優(yōu)先權(quán)日1999年3月5日
發(fā)明者林光信, 陳玄同, 煙束 申請(qǐng)人:英業(yè)達(dá)股份有限公司