亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng)、方法及記分板的制作方法

文檔序號(hào):6576416閱讀:202來(lái)源:國(guó)知局
專利名稱:一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng)、方法及記分板的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于存儲(chǔ)器控制器技術(shù)領(lǐng)域,尤其涉及一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng)、方法 及記分板。
背景技術(shù)
隨著集成電路芯片的規(guī)模越來(lái)越大,在基于知識(shí)產(chǎn)權(quán)(Intellectual Property, IP)復(fù)用的片上系統(tǒng)(System On Chip, S0C)設(shè)計(jì)中,片上總線設(shè)計(jì)成為了最關(guān)鍵的問(wèn)題。 為此,業(yè)界出現(xiàn)了很多片上總線標(biāo)準(zhǔn)。其中由ARM公司推出的AMBA片上總線結(jié)構(gòu)已經(jīng)成為 一種流行的工業(yè)標(biāo)準(zhǔn)。AMBA規(guī)范主要包括了 AHB系統(tǒng)總線和APB(Advanced Peripheral Bus)外圍總線。圖1是主模塊、存儲(chǔ)器控制器和存儲(chǔ)器的連接示意圖,主模塊與存儲(chǔ)器控制器通 過(guò)AHB總線連接,存儲(chǔ)器控制器和存儲(chǔ)器之間通過(guò)存儲(chǔ)器接口連接?,F(xiàn)有的存儲(chǔ)器控制器 接收由主模塊master module (發(fā)出AHB總線讀/寫(xiě)操作的模塊)通過(guò)AHB總線發(fā)出的讀 /寫(xiě)操作,再轉(zhuǎn)換為存儲(chǔ)器接口的讀寫(xiě)操作,實(shí)現(xiàn)對(duì)存儲(chǔ)器的讀寫(xiě)操作。此外,AHB總線讀或?qū)懖僮鬟€可能被另一個(gè)讀或?qū)懖僮髟谌我鈺r(shí)刻打斷,即就 是,AHB總線上某一讀或?qū)懖僮髟谶M(jìn)行中被另一個(gè)讀或?qū)懖僮鞔驍嗬^而執(zhí)行后一個(gè)讀或?qū)?操作,待后一操作完成后再繼續(xù)執(zhí)行前一讀或?qū)懖僮?。這使得動(dòng)態(tài)隨機(jī)存儲(chǔ)器(Dynamic Random Access Memory,DRAM)控制器的驗(yàn)證情況更為復(fù)雜,要充分的驗(yàn)證存儲(chǔ)器控制器的 正確性也更為困難。圖2是現(xiàn)有技術(shù)提供的驗(yàn)證存儲(chǔ)器控制器的正確性流程圖,具體過(guò)程是在步驟 S201中,發(fā)出總線寫(xiě)操作,寫(xiě)數(shù)據(jù)至寫(xiě)操作中指定的存儲(chǔ)器的寫(xiě)入地址中。在步驟S202中, 發(fā)出總線讀操作,從上述寫(xiě)入地址中讀取數(shù)據(jù)。在步驟S203中,將上述寫(xiě)入至存儲(chǔ)器中的 寫(xiě)入地址中的數(shù)據(jù)與讀操作從該地址讀取的數(shù)據(jù)進(jìn)行比較,如果相同,則存儲(chǔ)器控制器工 作正?!,F(xiàn)有的驗(yàn)證存儲(chǔ)器控制器的正確性的方案中,必須先進(jìn)行寫(xiě)操作,再進(jìn)行讀操作, 且讀寫(xiě)操作必須是在相同情況,即讀寫(xiě)地址,大小等條件必須完全相同才可以驗(yàn)證正確性。這種驗(yàn)證方法對(duì)于單純的AHB總線讀寫(xiě)操作可以進(jìn)行基本測(cè)試,但是不能建立與 實(shí)際運(yùn)行時(shí)完全相同的環(huán)境,因?yàn)閷?shí)際中對(duì)AHB總線操作是隨機(jī)的,不會(huì)按照這種先寫(xiě)后 讀的硬性要求來(lái)運(yùn)行,例如連續(xù)進(jìn)行兩次寫(xiě)操作,若后一個(gè)寫(xiě)操作會(huì)對(duì)前一個(gè)寫(xiě)操作產(chǎn)生 影響,并導(dǎo)致錯(cuò)誤,現(xiàn)有的測(cè)試方法就可能測(cè)不出來(lái)。而且,對(duì)于AHB總線的讀寫(xiě)打斷情況 則更沒(méi)有辦法進(jìn)行測(cè)試,如一個(gè)寫(xiě)操作打斷一個(gè)讀操作時(shí),我們沒(méi)辦法制作一個(gè)相反方向 的操作,來(lái)驗(yàn)證其存儲(chǔ)器控制器的正確性。只能制作一個(gè)讀操作來(lái)測(cè)試上一個(gè)寫(xiě)操作是否 正確,但讀操作是否正確運(yùn)行則沒(méi)有辦法驗(yàn)證。因此,現(xiàn)有技術(shù)提供的存儲(chǔ)器控制器驗(yàn)證方法在讀寫(xiě)操作不一致時(shí),無(wú)法成功驗(yàn) 證存儲(chǔ)器控制器是否工作正常。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種存儲(chǔ)器控制器驗(yàn)證方法,旨在解決現(xiàn)有技術(shù)在讀寫(xiě)操 作不一致時(shí),無(wú)法成功驗(yàn)證存儲(chǔ)器控制器是否工作正常的問(wèn)題。本發(fā)明是這樣實(shí)現(xiàn)的,一種存儲(chǔ)器控制器驗(yàn)證方法,所述方法包括下述步驟記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生器產(chǎn)生的控制事 務(wù)檢測(cè)總線操作;當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地址對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入 預(yù)先設(shè)置類型的結(jié)構(gòu)體中;將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中;當(dāng)所述總線操作中有讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取 的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn) 行比較,如果兩者相同,表示存儲(chǔ)器控制器工作正常。本發(fā)明的另一目的在于提供一種記分板,所述記分板包括總線操作檢測(cè)單元,用于根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生 器產(chǎn)生的控制事務(wù)檢測(cè)總線操作;結(jié)構(gòu)體生成單元,用于當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和 該地址對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中;隊(duì)列生成單元,用于將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中;驗(yàn)證結(jié)果生成單元,用于將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所 述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn)行比較, 如果兩者相同,表示存儲(chǔ)器控制器工作正常。本發(fā)明的另一目的在于提供一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng),所述系統(tǒng)包括如上所述 的記分板,所述系統(tǒng)還包括測(cè)試用例產(chǎn)生器、主模塊模擬器、存儲(chǔ)器控制器以及存儲(chǔ)器。在本發(fā)明中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)是將對(duì)存儲(chǔ)器進(jìn)行 寫(xiě)操作時(shí),存儲(chǔ)即將寫(xiě)入到存儲(chǔ)器中的數(shù)據(jù)以及該數(shù)據(jù)的存儲(chǔ)地址至預(yù)先設(shè)置類型的結(jié)構(gòu) 體中,并添加到預(yù)先設(shè)置的隊(duì)列中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)是將 對(duì)存儲(chǔ)器進(jìn)行讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所述讀操作 中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn)行比對(duì),若數(shù)據(jù)相 同,則測(cè)試通過(guò),該驗(yàn)證方法在完成一次總線寫(xiě)操作以后,記住該寫(xiě)操作寫(xiě)入存儲(chǔ)器中的數(shù) 據(jù)以及該數(shù)據(jù)的存儲(chǔ)地址,在檢測(cè)到總線操作是讀操作時(shí),將讀操作讀取的數(shù)據(jù)與寫(xiě)操作 寫(xiě)入的數(shù)據(jù)進(jìn)行比較,不一定總線操作一定滿足先寫(xiě)后讀的時(shí)序,可以在各種總線時(shí)序下 驗(yàn)證存儲(chǔ)器控制器的正確性。


圖1是現(xiàn)有技術(shù)提供的主模塊、存儲(chǔ)器控制器和存儲(chǔ)器的連接示意圖;圖2是現(xiàn)有技術(shù)提供的驗(yàn)證存儲(chǔ)器控制器的正確性的實(shí)現(xiàn)流程圖;圖3是本發(fā)明實(shí)施例提供的存儲(chǔ)器控制器驗(yàn)證的實(shí)現(xiàn)流程圖;圖4是本發(fā)明實(shí)施例提供的存儲(chǔ)器控制器驗(yàn)證系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不 用于限定本發(fā)明。在本發(fā)明實(shí)施例中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)是將通過(guò)總 線對(duì)存儲(chǔ)器進(jìn)行寫(xiě)操作時(shí),存儲(chǔ)即將寫(xiě)入到存儲(chǔ)器中的數(shù)據(jù)以及該數(shù)據(jù)的存儲(chǔ)地址至預(yù)先 設(shè)置類型的結(jié)構(gòu)體中,并添加到預(yù)先設(shè)置的隊(duì)列中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生 的控制事務(wù)是將通過(guò)總線對(duì)存儲(chǔ)器進(jìn)行讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ) 器中讀取的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取 的數(shù)據(jù)進(jìn)行比對(duì),若數(shù)據(jù)相同,則測(cè)試通過(guò),該驗(yàn)證方法可以驗(yàn)證在各種總線時(shí)序情況下, 存儲(chǔ)器控制器能否對(duì)存儲(chǔ)器進(jìn)行正確控制。圖3示出了本發(fā)明實(shí)施例提供的存儲(chǔ)器控制器驗(yàn)證方法的實(shí)現(xiàn)流程,詳述如下在步驟S301中,記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生 器產(chǎn)生的控制事務(wù)檢測(cè)總線操作。作為本發(fā)明的一個(gè)實(shí)施例,記分板先根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)以及 測(cè)試用例產(chǎn)生器傳輸?shù)目刂剖聞?wù)檢測(cè)主模塊模擬器是否正確發(fā)出總線操作,然后根據(jù)流程 判斷存儲(chǔ)器控制器是否正確執(zhí)行總線操作,在本實(shí)施例中,主模塊模擬器通過(guò)總線發(fā)送總 線操作命令至存儲(chǔ)器控制器,存儲(chǔ)器控制器接收所述主模塊模擬器發(fā)送的總線操作,所述 總線操作包括寫(xiě)操作、讀操作。其中,在步驟S301之前,存儲(chǔ)器控制器驗(yàn)證方法還包括下 面的步驟,第一步測(cè)試用例產(chǎn)生器發(fā)送控制事務(wù)至主模塊模擬器和記分板,該控制事務(wù)是 對(duì)主模塊模擬器要傳輸給存儲(chǔ)器控制器的總線操作的一個(gè)描述,例如主模塊模擬器要傳 輸給存儲(chǔ)器控制器的總線操作是讀還是寫(xiě),是否會(huì)被另一個(gè)操作打斷等;第二步主模塊 模擬器根據(jù)所述控制事務(wù)產(chǎn)生符合總線時(shí)序的操作并將其傳送至存儲(chǔ)器控制器,例如,主 模塊模擬器接收測(cè)試用例產(chǎn)生器傳輸?shù)目刂剖聞?wù),根據(jù)該控制事務(wù)產(chǎn)生符合總線時(shí)序的操 作,再通過(guò)總線傳輸給存儲(chǔ)器控制器;第三步通過(guò)存儲(chǔ)器控制器的接口總線時(shí)序監(jiān)測(cè)存 儲(chǔ)器控制器生成監(jiān)測(cè)事務(wù)并傳送至記分板,所述監(jiān)測(cè)事務(wù)是由監(jiān)測(cè)存儲(chǔ)器控制器的接口總 線時(shí)序所解析出來(lái)的總線操作描述。最后,記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù) 按照一系列的流程對(duì)存儲(chǔ)器控制器是否正確執(zhí)行總線操作進(jìn)行判斷。在本發(fā)明實(shí)施例中, 總線是AHB總線,存儲(chǔ)器控制器是DRAM控制器,存儲(chǔ)器是DRAM。在步驟S302中,判斷接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)中的總線操作中是 否有寫(xiě)操作,當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地址對(duì)應(yīng)的數(shù)據(jù) 寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中,并一一進(jìn)行存儲(chǔ)。作為本發(fā)明的一個(gè)實(shí)施例,判斷主模塊模擬器發(fā)出的總線操作(打斷和被打斷的 操作)中是否有寫(xiě)操作,當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地址 對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置好類型的結(jié)構(gòu)體中,并一一進(jìn)行存儲(chǔ),其中結(jié)構(gòu)體的類型預(yù)先設(shè) 置,包括以字節(jié)為單位的寫(xiě)操作存儲(chǔ)地址和該寫(xiě)操作存儲(chǔ)地址中存儲(chǔ)的相應(yīng)的以字節(jié)為單 位的數(shù)據(jù)。在步驟S303中,將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中。作為本發(fā)明的一個(gè)實(shí)施例,檢查生成的結(jié)構(gòu)體中存儲(chǔ)的地址是否與隊(duì)列中存放的
6結(jié)構(gòu)體中存儲(chǔ)的地址相同,如果相同,則用新生成的結(jié)構(gòu)體替換隊(duì)列中原來(lái)存儲(chǔ)的結(jié)構(gòu)體; 否則直接將新生成的結(jié)構(gòu)體添加到隊(duì)列中,其中,隊(duì)列是預(yù)先設(shè)置的,隊(duì)列中存放的單位是 預(yù)先設(shè)置類型的結(jié)構(gòu)體。在步驟S304中,判斷接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)中的總線操作中是 否有讀操作,當(dāng)所述總線操作中有讀操作時(shí),則從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者直接從存儲(chǔ) 器中讀取與該讀操作中的讀取地址對(duì)應(yīng)的存儲(chǔ)地址中存儲(chǔ)的數(shù)據(jù)。作為本發(fā)明的一個(gè)實(shí)施例,判斷主模塊模擬器發(fā)出的總線操作(打斷和被打斷的 操作)中是否有讀操作,當(dāng)所述總線操作中有讀操作時(shí),則首先檢查隊(duì)列中是否有與該讀 操作的讀取地址相同的結(jié)構(gòu)體,如果有,則從該結(jié)構(gòu)體中取出與該讀取地址相應(yīng)的數(shù)據(jù)與 主模塊模擬器通過(guò)讀操作從總線上讀出的數(shù)據(jù)進(jìn)行比對(duì),否則,直接讀取存儲(chǔ)器中的與該 讀取地址相應(yīng)的數(shù)據(jù),與主模塊模擬器通過(guò)讀操作從總線上讀出的數(shù)據(jù)進(jìn)行比對(duì)。在步驟S305中,將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者直接從存儲(chǔ)器中讀取的與該讀 操作中的讀取地址對(duì)應(yīng)的存儲(chǔ)地址中存儲(chǔ)的數(shù)據(jù)與主模塊模擬器通過(guò)讀操作從總線上讀 取的數(shù)據(jù)進(jìn)行比較,如果兩者相同,則表示存儲(chǔ)器控制器工作正常。作為本發(fā)明的一個(gè)實(shí)施例,首先檢查隊(duì)列中是否有與該讀操作的讀取地址相同的 結(jié)構(gòu)體,如果有,則從該結(jié)構(gòu)體中取出與該讀取地址相應(yīng)的數(shù)據(jù)與主模塊模擬器通過(guò)讀操 作從總線上讀出的數(shù)據(jù)進(jìn)行比對(duì),如果兩者相同,則表示存儲(chǔ)器控制器工作正常;否則,直 接讀取存儲(chǔ)器中的與該讀取地址相應(yīng)的數(shù)據(jù),與主模塊模擬器通過(guò)讀操作從總線上讀出的 數(shù)據(jù)進(jìn)行比對(duì),如果兩者相同,則表示存儲(chǔ)器控制器工作正常。圖4示出了本發(fā)明實(shí)施例提供的存儲(chǔ)器控制器驗(yàn)證系統(tǒng)的結(jié)構(gòu),為了便于說(shuō)明, 僅示出了本發(fā)明實(shí)施例相關(guān)的部分。該存儲(chǔ)器控制器驗(yàn)證系統(tǒng)包括主模塊模擬器41、存 儲(chǔ)器控制器42、存儲(chǔ)器43、測(cè)試用例產(chǎn)生器44、記分板45。其中,所述記分板45包括結(jié)構(gòu)體類型設(shè)置單元451、隊(duì)列設(shè)置單元452、總線操作 檢測(cè)單元453、結(jié)構(gòu)體生成單元454、隊(duì)列生成單元455以及驗(yàn)證結(jié)果生成單元456。結(jié)構(gòu)體類型設(shè)置單元451用于預(yù)先設(shè)置結(jié)構(gòu)體類型,所述結(jié)構(gòu)體類型包括一寫(xiě)操 作時(shí)寫(xiě)入存儲(chǔ)器的數(shù)據(jù)和一所述數(shù)據(jù)在存儲(chǔ)器中的存儲(chǔ)地址,所述數(shù)據(jù)和存儲(chǔ)地址均以字 節(jié)為單位。隊(duì)列設(shè)置單元452用于預(yù)先設(shè)置隊(duì)列,所述隊(duì)列的存放單位是預(yù)先設(shè)置類型的結(jié) 構(gòu)體。整個(gè)存儲(chǔ)器控制器驗(yàn)證系統(tǒng)的工作過(guò)程詳述如下測(cè)試用例產(chǎn)生器44發(fā)送控制事務(wù)至主模塊模擬器41和記分板45,該控制事務(wù)是 對(duì)主模塊模擬器41要傳輸給存儲(chǔ)器控制器42的總線操作的一個(gè)描述,例如主模塊模擬 器41要傳輸給存儲(chǔ)器控制器42的總線操作是讀還是寫(xiě),是否會(huì)被另一個(gè)操作打斷等;第二 步主模塊模擬器41根據(jù)所述控制事務(wù)產(chǎn)生符合總線時(shí)序的操作并將其傳送至存儲(chǔ)器控 制器42,例如,主模塊模擬器41接收測(cè)試用例產(chǎn)生器44傳輸?shù)目刂剖聞?wù),根據(jù)該控制事務(wù) 產(chǎn)生符合總線時(shí)序的操作,再通過(guò)總線傳輸給存儲(chǔ)器控制器42 ;第三步通過(guò)存儲(chǔ)器控制 器42的接口總線時(shí)序監(jiān)測(cè)存儲(chǔ)器控制器42生成監(jiān)測(cè)事務(wù)并傳送至記分板45,所述監(jiān)測(cè)事 務(wù)是由監(jiān)測(cè)存儲(chǔ)器控制器的接口總線時(shí)序所解析出來(lái)的總線操作描述。記分板45的總線操作檢測(cè)單元453根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器42產(chǎn)生的監(jiān)測(cè)事務(wù)以及測(cè)試用例產(chǎn)生器傳輸?shù)目刂剖聞?wù)檢測(cè)主模塊模擬器是否正確發(fā)出總線操作,然后根據(jù)流 程判斷存儲(chǔ)器控制器是否正確執(zhí)行總線操作。當(dāng)接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)中 的總線操作中有寫(xiě)操作時(shí),通過(guò)結(jié)構(gòu)體生成單元454將所述寫(xiě)操作中的地址和該地址對(duì)應(yīng) 的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中,并一一進(jìn)行存儲(chǔ),其中結(jié)構(gòu)體的類型由結(jié)構(gòu)體類型 設(shè)置單元451預(yù)先設(shè)置,包括以字節(jié)為單位的寫(xiě)操作存儲(chǔ)地址和該寫(xiě)操作存儲(chǔ)地址中存儲(chǔ) 的相應(yīng)的以字節(jié)為單位的數(shù)據(jù),在本發(fā)明實(shí)施例中,總線是AHB總線,存儲(chǔ)器控制器是DRAM 控制器,存儲(chǔ)器是DRAM。隊(duì)列生成單元455用于將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中。作為本發(fā)明的一個(gè)實(shí)施 例,首先檢查新生成的結(jié)構(gòu)體中存儲(chǔ)的地址是否與隊(duì)列中存放的結(jié)構(gòu)體中存儲(chǔ)的地址相 同,如果兩者相同,則用新生成的結(jié)構(gòu)體替換隊(duì)列中原來(lái)存儲(chǔ)的結(jié)構(gòu)體;否則直接將新生成 的結(jié)構(gòu)體添加到隊(duì)列中,其中,隊(duì)列是通過(guò)隊(duì)列設(shè)置單元452預(yù)先設(shè)置的,隊(duì)列中存放的單 位是結(jié)構(gòu)體,該結(jié)構(gòu)體的類型通過(guò)結(jié)構(gòu)體類型設(shè)置單元451預(yù)先設(shè)置。驗(yàn)證結(jié)果生成單元456根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器42所產(chǎn)生的監(jiān)測(cè)事務(wù)以及測(cè)試用 例產(chǎn)生器傳輸?shù)目刂剖聞?wù)檢測(cè)存儲(chǔ)器控制器42是否正確執(zhí)行總線操作,當(dāng)接收到測(cè)試用 例產(chǎn)生器產(chǎn)生的控制事務(wù)中的總線操作中有讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從 存儲(chǔ)器中讀取的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作 讀取的數(shù)據(jù)進(jìn)行比較,如果兩者相同,表示存儲(chǔ)器控制器工作正常。具體過(guò)程如下,檢測(cè)測(cè) 試用例產(chǎn)生器產(chǎn)生的總線操作(打斷和被打斷的操作)中是否有讀操作,當(dāng)所述總線操作 有讀操作時(shí),則首先通過(guò)驗(yàn)證結(jié)果生成單元456的地址判斷子單元檢查隊(duì)列中是否有與所 述讀操作的讀取地址相同的結(jié)構(gòu)體,如果隊(duì)列中有與所述讀操作的讀取地址相同的結(jié)構(gòu) 體,則通過(guò)第一驗(yàn)證結(jié)果生成子單元從所述結(jié)構(gòu)體中取出與所述讀取地址相應(yīng)的數(shù)據(jù)與通 過(guò)所述讀操作讀出的數(shù)據(jù)進(jìn)行比對(duì),如果兩者相同,表示存儲(chǔ)器控制器工作正常;如果隊(duì)列 中沒(méi)有與所述讀操作的讀取地址相同的結(jié)構(gòu)體,則通過(guò)第二驗(yàn)證結(jié)果生成子單元讀取存儲(chǔ) 器中的與該讀取地址相應(yīng)的數(shù)據(jù),與主模塊模擬器通過(guò)所述讀操作讀出的數(shù)據(jù)進(jìn)行比對(duì), 如果兩者相同,表示存儲(chǔ)器控制器工作正常。另外,由于結(jié)構(gòu)體是以字節(jié)為單位的,所以進(jìn) 行讀操作時(shí)可能只有一部分?jǐn)?shù)據(jù)可在隊(duì)列的結(jié)構(gòu)體中找到,另一部分要與直接讀取存儲(chǔ)器 中的相應(yīng)地址的數(shù)據(jù)進(jìn)行拼接,才能完成所有的讀操作數(shù)據(jù)比對(duì),因此驗(yàn)證結(jié)果生成單元 456還包括數(shù)據(jù)拼接子單元,用于將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中讀取的與所述讀操作中的讀 取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與從存儲(chǔ)器中相應(yīng)的地址讀取的數(shù)據(jù)進(jìn)行拼接。在本發(fā)明實(shí)施例中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)是將對(duì)存儲(chǔ) 器進(jìn)行寫(xiě)操作時(shí),存儲(chǔ)即將寫(xiě)入到存儲(chǔ)器中的數(shù)據(jù)以及該數(shù)據(jù)的存儲(chǔ)地址至預(yù)先設(shè)置類型 的結(jié)構(gòu)體中,并添加到預(yù)先設(shè)置的隊(duì)列中,當(dāng)記分板接收到測(cè)試用例產(chǎn)生器產(chǎn)生的控制事 務(wù)是將對(duì)存儲(chǔ)器進(jìn)行讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所述 讀操作指令中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作指令讀取的數(shù)據(jù)進(jìn) 行比對(duì),若數(shù)據(jù)相同,則測(cè)試通過(guò),該驗(yàn)證方法可以驗(yàn)證在各種總線時(shí)序情況下,存儲(chǔ)器控 制器能否對(duì)存儲(chǔ)器進(jìn)行正確控制。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種存儲(chǔ)器控制器驗(yàn)證方法,其特征在于,所述方法包括下述步驟記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)檢測(cè)總線操作;當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地址對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中;將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中;當(dāng)所述總線操作中有讀操作時(shí),將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn)行比較,如果兩者相同,表示存儲(chǔ)器控制器工作正常。
2.如權(quán)利要求1所述的方法,其特征在于,在所述記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生 的監(jiān)測(cè)事務(wù)檢測(cè)測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)中的總線操作的步驟之前,所述方法還包 括下述步驟預(yù)先設(shè)置結(jié)構(gòu)體類型,所述結(jié)構(gòu)體類型包括一寫(xiě)操作時(shí)寫(xiě)入存儲(chǔ)器的數(shù)據(jù)和一所述數(shù) 據(jù)在存儲(chǔ)器中的存儲(chǔ)地址,所述數(shù)據(jù)和存儲(chǔ)地址均以字節(jié)為單位;預(yù)先設(shè)置隊(duì)列,所述隊(duì)列的存放單位是預(yù)先設(shè)置類型的結(jié)構(gòu)體。
3.如權(quán)利要求1所述的方法,其特征在于,在所述記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生 的監(jiān)測(cè)事務(wù)檢測(cè)測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)中的總線操作的步驟之前,所述方法還包 括下述步驟測(cè)試用例產(chǎn)生器發(fā)送控制事務(wù)至主模塊模擬器和記分板;主模塊模擬器根據(jù)所述控制事務(wù)產(chǎn)生符合總線時(shí)序的操作并將其傳送至存儲(chǔ)器控制器;通過(guò)存儲(chǔ)器控制器的接口總線時(shí)序監(jiān)測(cè)存儲(chǔ)器控制器的總線操作,生成監(jiān)測(cè)事務(wù)并傳 送至記分板。
4.如權(quán)利要求1所述的方法,其特征在于,所述當(dāng)所述總線操作中有讀操作時(shí),將從隊(duì) 列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所述讀操作中的讀取地址相同的地址中存 儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn)行比較,如果相同,表示存儲(chǔ)器控制器工作正常 的步驟具體為檢查隊(duì)列中是否有與所述讀操作的讀取地址相同的結(jié)構(gòu)體;當(dāng)隊(duì)列中有與所述讀操作的讀取地址相同的結(jié)構(gòu)體時(shí),從所述結(jié)構(gòu)體中取出與所述讀 取地址相應(yīng)的數(shù)據(jù)與通過(guò)所述讀操作讀出的數(shù)據(jù)進(jìn)行比對(duì),如果兩者相同,表示存儲(chǔ)器控 制器工作正常;當(dāng)隊(duì)列中沒(méi)有與所述讀操作的讀取地址相同的結(jié)構(gòu)體時(shí),讀取存儲(chǔ)器中的與該讀取地 址相應(yīng)的數(shù)據(jù),與主模塊模擬器通過(guò)所述讀操作讀出的數(shù)據(jù)進(jìn)行比對(duì),如果兩者相同,表示 存儲(chǔ)器控制器工作正常。
5.如權(quán)利要求1所述的方法,其特征在于,所述將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存 儲(chǔ)器中讀取的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀 取的數(shù)據(jù)進(jìn)行比較的步驟還包括將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中讀取的與所述讀操作中的讀取地址相同的地址中存儲(chǔ)的 數(shù)據(jù)與從存儲(chǔ)器中相應(yīng)的地址讀取的數(shù)據(jù)進(jìn)行拼接。
6.一種記分板,其特征在于,所述記分板包括總線操作檢測(cè)單元,用于根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生器產(chǎn) 生的控制事務(wù)檢測(cè)總線操作;結(jié)構(gòu)體生成單元,用于當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地 址對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中;隊(duì)列生成單元,用于將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中;驗(yàn)證結(jié)果生成單元,用于將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的與所述讀 操作中的讀取地址相同的地址中存儲(chǔ)的數(shù)據(jù)與通過(guò)所述讀操作讀取的數(shù)據(jù)進(jìn)行比較,如果 兩者相同,表示存儲(chǔ)器控制器工作正常。
7.如權(quán)利要求6所述的記分板,其特征在于,所述記分板還包括結(jié)構(gòu)體類型設(shè)置單元,用于預(yù)先設(shè)置結(jié)構(gòu)體類型,所述結(jié)構(gòu)體類型包括一寫(xiě)操作時(shí)寫(xiě) 入存儲(chǔ)器的數(shù)據(jù)和一所述數(shù)據(jù)在存儲(chǔ)器中的存儲(chǔ)地址,所述數(shù)據(jù)和存儲(chǔ)地址均以字節(jié)為單 位;隊(duì)列設(shè)置單元,用于預(yù)先設(shè)置隊(duì)列,所述隊(duì)列的存放單位是預(yù)先設(shè)置類型的結(jié)構(gòu)體。
8.如權(quán)利要求6所述的記分板,其特征在于,所述驗(yàn)證結(jié)果生成單元包括 地址判斷子單元,用于檢查隊(duì)列中是否有與所述讀操作的讀取地址相同的結(jié)構(gòu)體; 第一驗(yàn)證結(jié)果生成子單元,用于當(dāng)隊(duì)列中有與所述讀操作的讀取地址相同的結(jié)構(gòu)體時(shí),從所述結(jié)構(gòu)體中取出與所述讀取地址相應(yīng)的數(shù)據(jù)與通過(guò)所述讀操作讀出的數(shù)據(jù)進(jìn)行比 對(duì),如果兩者相同,表示存儲(chǔ)器控制器工作正常;第二驗(yàn)證結(jié)果生成子單元,用于當(dāng)隊(duì)列中沒(méi)有與所述讀操作的讀取地址相同的結(jié)構(gòu)體 時(shí),讀取存儲(chǔ)器中的與該讀取地址相應(yīng)的數(shù)據(jù),與主模塊模擬器通過(guò)所述讀操作讀出的數(shù) 據(jù)進(jìn)行比對(duì),如果兩者相同,表示存儲(chǔ)器控制器工作正常。
9.如權(quán)利要求6所述的記分板,其特征在于,所述驗(yàn)證結(jié)果生成單元還包括數(shù)據(jù)拼接子單元,用于將從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中讀取的與所述讀操作中的讀取地址 相同的地址中存儲(chǔ)的數(shù)據(jù)與從存儲(chǔ)器中相應(yīng)的地址讀取的數(shù)據(jù)進(jìn)行拼接。
10.一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng),其特征在于,所述系統(tǒng)包括權(quán)利要求6至9任一項(xiàng)所 述的記分板,所述系統(tǒng)還包括測(cè)試用例產(chǎn)生器、主模塊模擬器、存儲(chǔ)器控制器以及存儲(chǔ)器。
全文摘要
本發(fā)明適用于存儲(chǔ)器控制器技術(shù)領(lǐng)域,提供了一種存儲(chǔ)器控制器驗(yàn)證系統(tǒng)、方法及記分板,所述存儲(chǔ)器控制器驗(yàn)證方法包括下述步驟記分板根據(jù)監(jiān)測(cè)存儲(chǔ)器控制器產(chǎn)生的監(jiān)測(cè)事務(wù)和測(cè)試用例產(chǎn)生器產(chǎn)生的控制事務(wù)檢測(cè)總線操作;當(dāng)所述總線操作中有寫(xiě)操作時(shí),將所述寫(xiě)操作中的地址和該地址對(duì)應(yīng)的數(shù)據(jù)寫(xiě)入預(yù)先設(shè)置類型的結(jié)構(gòu)體中;將生成的結(jié)構(gòu)體存儲(chǔ)在隊(duì)列中;當(dāng)所述總線操作中有讀操作時(shí),當(dāng)從隊(duì)列中存儲(chǔ)的結(jié)構(gòu)體中或者從存儲(chǔ)器中讀取的數(shù)據(jù)與從通過(guò)所述讀操作讀取的數(shù)據(jù)相同時(shí),存儲(chǔ)器控制器工作正常。在本發(fā)明中,提供的驗(yàn)證方法可以驗(yàn)證在各種總線時(shí)序情況下,存儲(chǔ)器控制器能否對(duì)存儲(chǔ)器進(jìn)行正確控制。
文檔編號(hào)G06F13/16GK101923494SQ20091010832
公開(kāi)日2010年12月22日 申請(qǐng)日期2009年6月17日 優(yōu)先權(quán)日2009年6月17日
發(fā)明者卿梅, 王恒軍, 胡勝發(fā), 趙玉梅 申請(qǐng)人:安凱(廣州)微電子技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1