新四季網

一種基於lfsr的外部存儲接口的隨機測試裝置的製作方法

2023-05-22 15:27:21

專利名稱:一種基於lfsr的外部存儲接口的隨機測試裝置的製作方法
技術領域:
本發明涉及隨機測試電路設計領域,特別涉及一種基於LFSR的外部存儲接口的 隨機測試裝置。
背景技術:
近年來,由於計算機的計算複雜度大大增加,其電路驗證難度大大提高,驗證複雜 度和工作量也在整個設計工作量中佔有很大比重。目前在SoC(SyStem on Chip,片上系統) 開發中,驗證已逐漸成為SoC開發中的瓶頸。存儲器系統在SoC設計中佔有重要地位,存儲 器性能相對於處理器性能的緩慢增長使得存儲器系統設計的問題越來越關鍵,對存儲器接 口的驗證已成為SoC系統設計中非常重要的一步。外部存儲器接口基於AHB (Advanced High performance Bus,高級高性能總線) 從設備接口,主要面向嵌入式SoC應用,該接口內部信號符合AHB協議,響應CPU、DSP或 EDMA等不同主設備的請求,根據不同的片選信號可以分別控制SRAM(StaticRAM,靜態存 儲器)、SDRAM (Synchronous Dynamic Random Access Memory,同步動態隨機存儲器)、 N0RFLASH(非易失快閃記憶體技術)、FIF0(First In First Out,先進先出的數據緩存器)等讀寫 操作。對外部存儲接口的驗證是檢驗其是否實現了所需功能,測試方法一般分為黑盒 法、白盒法和灰盒法。黑盒法只關心待驗證模塊的外部埠信號,而不關心模塊內部的結 構,不依賴具體的實現方式,是真正的一致性驗證,但很難對錯誤定位,缺乏對設計的可控 性;白盒法可以迅速設置測試輸入,但需要詳細掌握設計細節,並且可移植性較差;灰盒法 兼具黑盒和白盒的優點,是兩種驗證方法的這種,該方法不但關注外部埠信號,同時也關 注內部表現、內部結構。灰盒法驗證環境的質量優劣取決於對待驗證模塊輸入的激勵,這些 激勵通過搭建相應的測試平臺來實現。對於簡單的模塊,可以通過遍歷的直接驗證方式來驗證,這種方式需根據測試功 能點直接對待驗證模塊輸入激勵。這種方式對人工的依賴性非常強,因此對於較為複雜的 模塊驗證就具有很大的局限性。隨著設計複雜度日益上升以及驗證空間急劇增大,直接驗 證已越來越不能滿足驗證需要,此時隨機驗證的優越性就凸現出來。隨機驗證通過對待驗 證模塊輸入大量隨機測試向量來覆蓋測試功能點,這樣提高了驗證質量和效率,減小了對 人工的依賴性,並可對直接驗證難以考慮的特殊行為和難以覆蓋的驗證空間進行驗證,因 此彌補了直接驗證的局限性,大大提高了對當前設計水平和驗證要求的適應能力。隨機驗 證一般驗證序列較長,為了避免完全的隨機,需要通過相應約束來指導隨機驗證朝著特定 功能的方向進行,這種約束來源於輸入總線協議和對測試功能點的覆蓋要求。因此,帶約束 的隨機驗證可以生成更符合實際情況的激勵,更大程度的覆蓋驗證空間,提高驗證的質量 禾口效率。其中,隨機測試電路是隨機測試激勵生成的關鍵,它將隨機數生成模塊生成的隨 機數轉化成對待驗證模塊輸入的激勵。
現有技術存在的缺點是,目前還沒有針對外部存儲器接口的隨機測試的方案。例如,在申請號為200510086445. 7,名稱為一種在指令級隨機測試中支持EJTAG 測試的實現方法的專利申請中,僅給出了包含EJTAG片上交叉調試器的微處理器核的測試 和驗證,沒有針對外部存儲器接口的隨機測試。在申請號為200910083767. 4,名稱為.隨機 測試程序生成方法和系統以及設計驗證方法的專利申請中,僅給出了減少了實際RTL仿真 時的時間消耗的方法,沒有針對外部存儲器接口的隨機測試。

發明內容
本發明的目的旨在至少解決上述技術缺陷之一,特別針對基於LFSR產生外部存 儲接口隨機測試激勵,實現對外部存儲接口的隨機測試,提出了一種基於LFSR的外部存儲 接口的隨機測試裝置。為實現上述目的,本發明實施例提出了一種基於LFSR的外部存儲接口的隨機測 試裝置,包括偽隨機數生成模塊,用於生成偽隨機數;偽隨機數寄存模塊,用於存儲來自所述偽隨機數生成器的偽隨機數;測試激勵產生及輸出模塊,用於根據來自所述偽隨機數寄存模塊的偽隨機數,生 成對所述外部存儲接口的隨機測試激勵信號;和測試模塊,用於將來自所述外部存儲接口的讀數據信號與來自所述測試激勵產生 及輸出模塊的對外部存儲器同一地址寫入的數據進行對比,當上述兩個數據相等時,表示 讀寫操作均已正確執行,測試通過,否則表示對外部存儲器的寫和讀操作至少一個出錯,測 試失敗,統計失敗的總次數。本發明的基於LFSR(Linear Feedback Shift Register,線性反饋移位寄存器)的 外部存儲接口的隨機測試裝置,以LFSR為偽隨機數生成器,將其產生的偽隨機數轉化成符 合AHB總線協議的隨機測試激勵,產生外部存儲接口隨機測試激勵,實現了對外部存儲接 口的隨機測試。本發明附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變 得明顯,或通過本發明的實踐了解到。


本發明上述的和/或附加的方面和優點從下面結合附圖對實施例的描述中將變 得明顯和容易理解,其中圖1為根據本發明實施例的基於LFSR的外部存儲接口的隨機測試裝置的結構框 圖;圖2為圖1中的隨機測試裝置的結構示意圖;圖3為根據本發明實施例的LFSR結構示意圖;和圖4為根據本發明實施例的隨機測試裝置與外部存儲接口以及外部存儲器的連 接關係示意圖。
具體實施例方式下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終 相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附 圖描述的實施例是示例性的,僅用於解釋本發明,而不能解釋為對本發明的限制。本發明主要在於,基於LFSR產生的偽隨機數,將其產生的偽隨機數轉化成符合 AHB總線協議的隨機測試激勵,產生外部存儲接口隨機測試激勵,實現了對外部存儲接口的 隨機測試。具體的說,AHB總線信號包括時鐘信號HCLK,全局復位信號HRESET,從設備選 中信號HSEL,讀寫信號HWRITE,傳輸長度信號HSIZE,傳輸類型信號HBURST,傳輸模式信 號HTRANS,地址信號HADDR,寫數據信號HWDATA,讀數據信號HRDATA,傳輸狀態反饋信號 HRESP,準備就緒信號HREADY。其中HCLK、HRESET, HSEL等系統信號由系統提供,HRDATA, HRESP, HREADY等輸出 信號由外部存儲接口輸出。本發明提供基於LFSR的外部存儲接口的隨機測試裝置提供符 合AHB總線協議的測試信號讀寫信號HWRITE、傳輸長度信號HSIZE、傳輸類型信號HBURST、 傳輸模式信號HTRANS、地址信號HADDR、寫數據信號HWDATA,並統計測試結果。為實現上述目的,本發明提供了一種基於LFSR的外部存儲接口的隨機測試裝置。 圖1示出了該隨機測試裝置的結構框圖。如圖1所示,該隨機測試裝置100包括偽隨機數 生成模塊110、偽隨機數寄存模塊120、測試激勵產生及輸出模塊130和測試模塊140。具體的說,結合圖2所示,將反饋電路反饋的信號輸入到偽隨機數生成模塊110生 成偽隨機二進位數。在本實施例中,偽隨機數生成模塊110為線性反饋移位寄存器(LFSR)。 圖3示出了 LFSR結構示意圖。上述LFSR包括移位寄存器(b1; b2,b3,b4……bn_1 bn)和反 饋電路。其中,移位寄存器由觸發器串聯而成,在每次時鐘觸發時將信號從一個觸發器移到 下一個觸發器,在這個更新的過程中即可獲得一個位的輸出q。其中的部分觸發器輸出通過 反饋電路連接到移位寄存器輸入,從而形成一個反饋機制。上述反饋電路由反饋函數控制。LFSRl 10每產生一位數即將其移入偽隨機數寄存模塊120。在本實施例中,偽隨機 數寄存模塊120為一個32位移位寄存器。偽隨機數寄存模塊120存儲來自上述偽隨機數 生成模塊110的偽隨機二進位數q。結合圖2所示,測試激勵產生及輸出模塊130進一步包括讀寫信號生成器3、傳輸 長度生成器4、傳輸類型生成器5、地址生成器6、地址解碼器7、命令生成器8、數據生成器 9、讀寫信號選擇器13、傳輸長度信號選擇器14、傳輸類型信號選擇器15、地址信號選擇器 16、寫數據信號選擇器17和傳輸模式信號選擇器18。偽隨機數寄存模塊120將生成的32位的偽隨機數i輸出給讀寫信號生成器 (write生成器)3、傳輸長度生成器(size生成器)4、傳輸類型生成器(burst生成器)5、地 址生成器6和數據生成器9,作為信號產生的基礎。具體的說,write生成器3接收來自上述偽隨機數寄存模塊120的32位偽隨機數 i,對其進行最低位操作,以這個最低位作為write信號,以此決定本次對外部存儲器的訪 問是讀還是寫。其中,當write值為1時表示寫操作,當write值為0時表示讀操作。size生成器4對來自上述偽隨機數寄存模塊120的偽隨機數i進行除以3取餘數 的操作,輸出為3位傳輸長度size,即size可隨機在0、1、2中取值,分別對應的傳輸長度可為字節、半字、字。Burst生成器5對來自上述偽隨機數寄存模塊120的偽隨機數i進行除以8取餘 數的操作,輸出為3位傳輸類型burst值,即burst可隨機在0到7的整數中取值,分別對 應的傳輸類型就可為單個、不定長遞增、4拍回卷、4拍遞增、8拍回卷、8拍遞增、16拍回卷、 16拍遞增。地址生成器6根據來自上述偽隨機數寄存模塊120的32位偽隨機數i和來自size 生成器4的3位size信號,來自burst生成器5的3位burst信號,生成對外部存儲器的 32位訪問地址addr和2位傳輸模式信號trans,以及第一拍傳輸的後續傳輸拍數,即地址 增加次數count。具體的說,地址生成器6首先根據32位偽隨機數i生成起始地址。可根據i的最 高2位決定要訪問的外部存儲器。上述外部存儲器包括NORFLASH、SDRAM、SRAM和FIFO。定 義i最高2位為00時表示N0RFLASH,01表示SDRAM,10表示SRAM,11表示FIFO,這樣即可 實現隨機在四個外部存儲器中進行選擇。在選定外部存儲器後,根據具體的存儲器地址定 義確定地址中表示存儲器的特徵位,其餘位可直接使用i的相應位,由此生成起始地址。地址生成器6根據burst信號判斷出地址增加的次數count,然後在每次突發傳輸給 地址加上一個增量時就開始計數,當計數值達到地址增加次數閾值count值時就停止發送地 址,完成後計數器清零。其中,地址增加次數閾值count等於burst值表示的傳輸拍數減一。每次的地址增量由size決定,size為0時,每次地址增量為1位元組;size為1時, 每次地址增量為1個半字(等於2位元組);size為2時,每次地址增量為1個字(等於4字 節)。其中,size為0時,可用i作為起始地址,每次地址增量為1位元組。突發傳輸地址 的增加方式有遞增和回卷兩種。對於地址遞增傳輸,地址在每一拍傳輸都增加一個增量,即後續地址每次增加一 個字節,即 addr = addr+1。對於地址回卷傳輸,地址除了在碰到邊界時每一拍傳輸都增加一個增量,如果起 始地址不是按本次突發傳輸的總字節數對齊的,則地址在走到邊界時回卷。本次突發傳輸 的總字節數為傳輸長度與拍數的乘積。例如對於傳輸長度為字(4位元組)的4拍回卷,addr [1:0] = addr [1 0]+1,地址 在16位元組的地址邊界回卷,若起始地址為0x34 (即十六進位34),則這四拍傳輸的地址分 別為 0x34、0x38、0x3c、0x30 ;對於 8 拍回卷,addr[2:0] = addr[2:0]+l ;對於 16 拍回卷, addr [3:0] = addr[3:0]+l ;其中,addr [1:0]表示 addr 的 1 到 0 位,addr [1:0]在遞增到 最大值二進位11時,再加1就會溢出回到二進位00。由此達到了回卷的目的,其他以此類 推。當size值為1時,即傳輸長度為半字(2位元組),則地址以半字為單位,對字節不敏 感,因此地址的最低位為0,可將i的最低位變為0後作為起始地址。上述可通過跟32位二 進位數1111 1111 1111 1111 1111 1111 1111 1110進行按位與操作得到。對於地址遞增傳輸,則後續地址每次增加一個半字,即addr = addr+2。對於地址 回卷傳輸,則後續地址在碰到地址邊界前每次增加一個半字,在碰到地址邊界後回卷。例如對於4 拍回卷,addr [2:1] = addr [2:1]+1 ;對於 8 拍回卷,addr [3:1]=addr[3:l]+l ;對於 16 拍回卷,addr[4:l] = addr[4:l]+l。其中,addr[2:l]表示 addr 的 2到1位,addr[2:1]在遞增到最大值二進位11時,再加1就會溢出回到二進位00。由此 達到回卷的目的,其他以此類推。當size值為2時,即傳輸長度為字(4位元組),則地址以字為單位,對字節和半字不 敏感,因此地址的最低2位為00,可將i的最低2位變為00後作為起始地址。上述可通過 跟32位二進位數1111 1111 1111 1111 1111 1111 1111 1100進行按位與操作得到。對於地址遞增傳輸,則後續地址每次增加一個字,即addr = addr+4 ;對於地址回 卷傳輸,則後續地址在碰到地址邊界前每次增加一個字,在碰到地址邊界後回卷。例如對於4 拍回卷,addr [3:2] = addr[3:2]+l ;對於 8 拍回卷,addr [4:2]= addr[4:2]+1 ;對於 16 拍回卷,addr[5:2] = addr[52]+1 其中,addr[3:2]表示 addr 的 3到2位,addr[3:2]在遞增到最大值二進位11時,再加1就會溢出回到二進位00。由此 達到回卷的目的,其他以此類推。此外,地址增加次數count和增加方式則由burst信號決定。具體的說,burst為0時,傳送類型為單個傳輸。此時,count為0即只進行一次傳 輸,無地址遞增。burst為1時,傳輸類型為不定長地址遞增傳輸,即連續進行若干次傳輸。burst為2、4、6時,傳輸類型分別為4拍、8拍、16拍的地址回卷傳輸,count分別 為3、7、15,即連續進行4次、8次、16次傳輸,且在此期間write、size、burst等控制信號保 持不變。在地址回卷傳輸中,地址在未碰到邊界時逐次遞增,增量由size決定,在碰到地址 邊界時就開始回卷。burst為3、5、7時,傳輸類型分別為4拍、8拍、16拍的地址遞增傳輸,count分別 為3、7、15,即連續進行4次、8次、16次傳輸。在上述不同傳輸類型的傳輸過程中,write、size、burst等控制信號保持不變。在 地址遞增傳輸中,地址在傳輸中逐次遞增,增量由size決定。地址生成器6除生成上述訪問地址和地址增加次數count,還生成有傳輸狀態信 號trans信號。具體的說,在無傳輸時,trans信號值為0,表示空閒;在下一拍傳輸暫時不能進行時,trans信號值為1,表示繁忙;在突發傳輸的第一拍時,trans信號值為2,表示非順序;在突發傳輸的第一拍之後的拍數時,trans信號值為3,表示順序。地址解碼器7對來自地址生成器6的32位訪問地址addr進行解碼,以此判斷訪 問的是不是N0RFLASH,是否需要開啟命令生成器8。若addr在N0RFLASH地址範圍內,訪 問N0RFLASH,需要通過命令生成器8發出相應操作命令來實現對N0RFLASH的訪問;若為 SDRAM、SRAM或FIFO中的一種,則不需要使用命令生成器來實現訪問。地址解碼器7輸出 為命令生成器8的1位開啟信號cmd_en,當cmd_en為1表示開啟命令生成器8,cmd_en為 0表示關閉命令生成器8。數據生成器(wdata生成器)9根據輸入的32位偽隨機數i生成32位寫入外部存 儲器的數據。在本實施例中,由於沒有特殊要求,可以將偽隨機數i直接作為寫入數據wdata,否則可根據具體要求生成所需數據。命令生成器8在接收到上述1位開啟信號cmd_en、l位write、3位burst、32位 addr、32位wdata後,根據輸入的burst和write信號判斷操作類型,以確定發出的命令類 型。其中,命令通過地址、數據序列形式發出的,即連續對某些特定地址寫入特定數據。其 中,控制信號、地址、數據等也應符合AHB協議。命令生成器8根據上述輸入信號,輸出32位 cmd—addr、32 位 cmd—wdata、2 位 cmd—trans、3 位 cmd—size、3 位 cmd—burst、1 位 cmd—write, 即NORFLASH的操作命令以及相關控制信號。具體的說,命令生成器8在開啟信號cmd_en為1時開啟。開啟後,根據輸入的 burst和write信號判斷操作類型,以確定發出的命令信號類型。若對16位寬的NORFLASH進行訪問,則在寫命令時cmd_write為1,即寫操作;cmd_ size為1,即傳輸長度為半字;cmd_burst為0,即傳輸類型為單個傳輸;cmd_trans為2,即 傳輸模式為非順序。此外,cmd_addr和cmd_Wdata由具體命令決定。常用的16位NORFLASH操作命令如下,用十六進位地址、數據序列(cmd_addr,cmd_ data)形式表不program (編程)(555,aa),(2aa,55),(555,a0),(PA, PD);write-to-buffer (寫緩衝器)(555,aa),(2aa,55),(SA,25),(SAjWC),(PA,PD), (WBL,PD);program-buffer-to-flash (寫緩衝器到 flash) (SA, 29);chip-erase (全片擦除)(555,aa),(2aa,55),(555,80),(555,aa),(2aa,55), (555,10);sector-erase (扇區擦除)(555, aa), (2aa,55),(555,80),(555,aa),(2aa,55), (SA,30);reset (復位)(XXX,fO);program/erase-suspend (編程 / 擦除中止)(XXX,b0);program/erase-resume (編程 / 擦除恢復);(XXX,30)。;其中,PA為編程地址,PD為對地址PA的編程數據,SA為扇區地址(扇區地址的劃 分根據具體晶片參數確定),WBL為寫緩衝器位置(在突發寫操作中為突發傳輸的後續地 址),WC為數據計數值(等於count),XXX表示任意值。在對NORFLASH寫入數據前應先對其進行擦除操作,可發送chip-erase命令進行 整片擦除,在只訪問某些扇區時也可只對這些扇區用sector-erase命令進行扇區擦除;對 NORFLASH的單個寫需要先發出program命令,再寫入數據;對NORFLASH的突發寫需要先發 出write-to-buffer命令,再突發寫入數據,這樣即可將數據寫入緩衝器,完成之後就發出 program-buffer-to-flash命令,將數據從緩衝器寫入NORFLASH ;對NORFLASH的讀操作跟 其他存儲器類似,沒有特殊操作命令。命令生成器 8 生成的 1 位 cmd_write、3 位 cmd_size、3 位 cmd_burst、2 位 cmd_ trans,32位cmd_addr和32位cmd_wdata分別輸入到讀寫信號選擇器(HWRITE選擇器)13、 傳輸長度信號選擇器(HSIZE選擇器)14、傳輸類型信號選擇器(HBURST選擇器)15、地址信 號選擇器(HADDR選擇器)16、寫數據信號選擇器(HWDATA選擇器)17和傳輸模式信號選擇 器(HTRANS選擇器)18。
其中,HWRITE選擇器13,從讀寫信號生成器3和命令生成器8產生的讀寫信號中 選擇一個有效信號輸出。即輸入為1位write、1位cmd_Write和1位cmd_en,輸出為1位 HWRITE。當HWRITE為1時,表示寫操作;當HWRITE為0時,表示讀操作。當cmd_en為1時, 選擇 cmd_write ;當 cmd_en 為 0 時,選擇 write。HSIZE選擇器14,從傳輸長度生成器4和命令生成器8產生的傳輸長度信號中選 擇一個有效信號輸出。即輸入為3位size、3位cmd_size和1位cmd_en,輸出為3位HSIZE, 表示傳輸的長度,0表示字節(8位),1表示半字(16位),2表示字(32位),其他傳輸長度 不支持。當cmd—en為1時,選擇cmd—size ;當cmd—en為0時,選擇size。HBURST選擇器15,從傳輸類型生成器5和命令生成器8產生的傳輸類型信號中 選擇一個有效信號輸出。即輸入為3位burst、3位cmd_burst和1位cmd_en,輸出為3位 HBURST。當 cmd_en 為 1 時,選擇 cmd_burst ;當 cmd_en 為 0 時,選擇 burst。輸出值HBURST表示傳輸類型,有單個、4拍、8拍、16拍和不定長傳輸,可以為地址 遞增或者地址回卷方式。其中,HBURST為0表示單個傳輸;HBURST為1表示不定長突發傳 輸;HBURST為2表示4拍回卷突發傳輸;HBURST為3表示4拍遞增突發傳輸;HBURST為4 表示8拍回卷突發傳輸;HBURST為5表示8拍遞增突發傳輸;HBUFST為6表示16拍回卷突 發傳輸;HBURST為7表示16拍遞增突發傳輸。HADDR選擇器16,從地址生成器6和命令生成器8產生的地址信號中選擇一個有 效信號輸出到32位地址總線。即輸入為32位addr、32位cmd_addr和1位cmd_en,輸出為 32位地址總線HADDR0當cmd_en為1時,選擇cmd_addr ;當cmd_en為0時,選擇addr。HWDATA選擇器17,從數據生成器9和命令生成器8產生的寫數據信號中選擇一個 有效信號輸出到32位數據總線。即輸入為32位wdata、32位cmd_wdata和1位cmd_en,輸 出為32位寫數據總線HWDATA ;當cmd_en為1時,選擇cmd_wdata ;當cmd_en為0時,選擇 wdata0HTRANS選擇器18,從地址生成器6和命令生成器8產生的傳輸模式信號中選擇一 個有效信號輸出。即輸入為2位trans、2位cmd_trans和1位cmd_en,輸出為2位HTRANS。 當 cmd_en 為 1 時,選擇 cmd_trans ;當 cmd_en 為 0 時,選擇 trans。輸出值HTRANS表示當前傳輸的模式,包括為非順序,順序,空閒或者繁忙。HTRANS 為0時表示空閒,總線沒有傳輸進行;HTRANS為1時表示繁忙,不能立即開始下一次傳輸; HTRANS為2時表示非順序,即傳輸的第一拍模式均為非順序;HTRANS為3時表示順序,即突 發傳輸第一拍的之後傳輸模式為順序。測試模塊140進一步包括寫入數據記錄存儲器10、讀出數據核對邏輯器11和測試 結果計數器12。寫入數據wdata在寫到外部存儲器的同時保存在寫入數據記錄存儲器10中,保存 的地址跟訪問外部存儲器的地址一致。寫入數據記錄存儲器10根據輸入的32位addr、32 位Wdata、3位size和1位write,生成32位re_data,用於記錄對外部存儲器寫入的數據, 以備將寫入數據讀出後進行核對,其編址和外部存儲器保持一致。AHB 信號 HWRITE、HSIZE、HBURST, HTRANS, HADDR 和 HWDATA 在訪問 N0RFLASH 時 分另1J連至1J cmd_write> cmd_size、cmd_burst、cmd_trans> cmd_addr 禾口 cmd_wdata ;在訪問 SDRAM、SRAM和FIFO時不需要通過命令訪問,則分別連到write、size、burst、trans、addr和wdata。上述訪問通過6個多路選擇器實現的,控制信號為cmd_en,當cmd_en為1時選 擇命令生成器8輸出的信號。寫入數據記錄存儲器10在對外部存儲器進行寫操作時,同時將寫入的數據保存 到寫入數據記錄存儲器10的相同地址;在對外部存儲器進行讀操作時,同時從記錄存儲器 中輸出相同地址上保存的數據記錄re_data,以備與從外部存儲器讀出的數據進行核對; 傳輸長度由size決定,以跟對外部存儲器的傳輸長度保持一致。將從外部存儲器讀出的32位數據HRDATA和從寫入數據記錄存儲器10的同一 地址輸出的32位數據re_data通過讀出數據核對邏輯11進行對比,得出1位核對結果 result。若HRDATA和re_data相等,則表示對外部存儲器的寫和讀操作都正確進行,即測 試通過,則輸出result為0 ;若HRDATA和re_data不相等,則表示對外部存儲器的寫和讀 操作至少一個出錯,即測試失敗,則輸出result為1。測試結果計數器12將整個測試過程中所有的result值進行累加,用於統計測試 失敗的總次數fail_count。若測試結束後,總失敗次數為0,表示全部測試通過;若總失敗次數不為0,表示測 試還存在問題,需要進一步排查錯誤。圖4示出了本發明的隨機測試裝置與外部存儲接口以及外部存儲器的連接關係 示意圖。如圖4中所示,時鐘信號HCLK、全局復位信號HRESET和從設備選中信號HSEL等系 統信號由系統提供。讀數據信號HRDATA、傳輸狀態反饋信號HRESP和準備就緒信號HREADY 等輸出信號由外部存儲接口輸出。外部存儲接口與外部存儲器NORFLASH、SDRAM、SRAM和 FIFO進行數據傳輸。本發明的隨機測試裝置基於LFSR其產生的偽隨機數為基礎,以生成讀寫信號 HWRITE、傳輸長度信號HSIZE、傳輸類型信號HBURST、傳輸模式信號HTRANS、地址信號HADDR 和寫數據信號HWDATA,並將上述信號寫入外部存儲信號。本發明的基於LFSR的外部存儲接口的隨機測試裝置,以LFSR為偽隨機數生成器, 將其產生的偽隨機數轉化成符合AHB總線協議的隨機測試激勵,產生外部存儲接口隨機測 試激勵,實現了對外部存儲接口的隨機測試。儘管已經示出和描述了本發明的實施例,對於本領域的普通技術人員而言,可以 理解在不脫離本發明的原理和精神的情況下可以對這些實施例進行多種變化、修改、替換 和變型,本發明的範圍由所附權利要求及其等同限定。
權利要求
一種基於LFSR的外部存儲接口的隨機測試裝置,其特徵在於,包括偽隨機數生成模塊,用於生成偽隨機數;偽隨機數寄存模塊,用於存儲來自所述偽隨機數生成器的偽隨機數;測試激勵產生及輸出模塊,用於根據來自所述偽隨機數寄存模塊的偽隨機數,生成對所述外部存儲接口的隨機測試激勵信號;和測試模塊,用於將來自所述外部存儲接口的讀數據信號與來自所述測試激勵產生及輸出模塊的對外部存儲器同一地址寫入的數據進行對比,當上述兩個數據相等時,表示對外部存儲器的寫和讀操作均已正確進行,測試通過,否則表示對外部存儲器的寫和讀操作至少一個出錯,測試失敗,統計失敗的總次數。
2.如權利要求1所述的隨機測試裝置,其特徵在於,所述偽隨機數生成模塊為線性反 饋移位寄存器,包括移位寄存器和反饋電路,所述移位寄存器通過觸發器串聯而成,在每次 時鐘觸發時將信號從一個觸發器移到下一個觸發器,以輸出1位偽隨機二進位數,其中部 分觸發器的輸出信號通過反饋電路反饋到線性反饋移位寄存器的輸入。
3.如權利要求1所述的隨機測試裝置,其特徵在於,所述偽隨機數寄存模塊為32位移 位寄存器,所述偽隨機數生成模塊每生成1位隨機二進位數,則移入所述偽隨機數寄存模 塊。
4.如權利要求1所述的隨機測試裝置,其特徵在於,所述測試激勵產生及輸出模塊包 括讀寫信號生成器、傳輸長度生成器、傳輸類型生成器、地址生成器、地址解碼器、命令生成 器、數據生成器、讀寫信號選擇器、傳輸長度信號選擇器、傳輸類型信號選擇器、傳輸模式信 號選擇器、地址信號選擇器和寫數據信號選擇器。
5.如權利要求4所述的隨機測試裝置,其特徵在於,所述讀寫信號生成器、傳輸長度生 成器、傳輸類型生成器、地址生成器和數據生成器分別接收來自所述偽隨機數寄存模塊的 偽隨機數,所述讀寫信號生成器,用於根據來自所述偽隨機數寄存模塊的偽隨機數進行取最低位 操作,以最低位作為讀或寫信號;所述傳輸長度生成器,用於將來自所述偽隨機數寄存模塊的偽隨機數除以3,得到餘數 作為傳輸長度值;傳輸類型生成器,用於將來自所述偽隨機數寄存模塊的偽隨機數除以8,得到的餘數作 為傳輸類型值;地址生成器,用於根據所述偽隨機數、傳輸長度值和傳輸類型值生成對外部存儲的訪 問地址、傳輸狀態信號和地址增加次數;地址解碼器,用於根據所述對外部存儲接口的訪問地址,生成所述命令生成器的開啟信號;命令生成器,用於在接收到所述開啟信號後,根據所述傳輸類型值、傳輸長度值、傳輸 類型值、讀或寫信號以及地址和數據判斷操作類型,根據所述操作類型發送命令信號; 數據生成器,用於根據所述偽隨機數生成寫入外部存儲器的數據; 讀寫信號選擇器,用於從所述讀寫信號生成器和命令生成器產生的讀寫信號中選擇一 個有效信號並輸出;傳輸長度信號選擇器,用於從所述傳輸長度生成器和命令生成器產生的傳輸長度信號中選擇一個有效信號並輸出,所述傳輸長度包括8位、16位和32位;傳輸類型信號選擇器,用於從所述傳輸類型生成器和命令生成器產生的傳輸類型信號 中選擇一個有效信號並輸出,所述傳輸類型包括單個傳輸、4拍回卷突發傳輸、4拍遞增突 發傳輸、8拍回卷突發傳輸、8拍遞增突發傳輸、16拍回卷突發傳輸以及16拍遞增突發傳 輸;傳輸模式信號選擇器,用於從所述地址生成器和命令生成器產生的傳輸模式信號中選 擇一個有效信號並輸出,所述傳輸模式包括非順序、順序、空閒或繁忙;地址信號選擇器,用於從所述地址生成器和命令生成器產生的地址信號中選擇一個有 效信號並輸出到32位地址總線;寫數據信號選擇器,用於從數據生成器和命令生成器產生的寫數據信號中選擇一個有 效信號並輸出到32位數據總線。
6.如權利要求5所述的隨機測試裝置,其特徵在於,所述傳輸長度生成器生成的傳輸 長度值對應的傳輸長度分別為字節、半字和字。
7.如權利要求5所述的隨機測試裝置,其特徵在於,所述傳輸類型生成器生成的傳輸 類型值對應的單個、不定長遞增、4拍回卷、4拍遞增、8拍回卷、8拍遞增、16拍回卷、16拍遞+飽+曰ο
8.如權利要求5所述的隨機測試裝置,其特徵在於,所述地址生成器生成對外部存儲 的訪問地址進一步包括根據所述偽隨機數最高兩位的二進位數,選取需要訪問的四個外 部存儲器,根據已選定的外部存儲器的地址確定所述對外部存儲的訪問地址中表示存儲器 的特徵位,所述訪問地址的其餘位採用所述偽隨機數的相應位。
9.如權利要求5所述的隨機測試裝置,其特徵在於,所述地址生成器對地址遞增的傳 輸,地址在每一拍傳輸都增加一個增量;對地址回卷的傳輸,地址除了在碰到邊界時每一拍傳輸都增加一個增量,當起始地址 不是按本次突發傳輸的總字節數對齊的,則地址在碰到邊界後回卷,所述總字節數為傳輸 長度乘以拍數。
10.如權利要求5所述的隨機測試裝置,其特徵在於,所述地址生成器根據來自所述傳 輸類型生成器的傳輸類型值判斷地址增加次數,在每次突發傳輸給所述訪問地址加一個增 量時開始計數,當計數值達到地址增加次數閾值時停止發送地址,計數值清零。
11.如權利要求10所述的隨機測試裝置,其特徵在於,所述地址增加次數閾值為所述 傳輸類型值的傳輸拍數減一。
12.如權利要求5所述的隨機測試裝置,其特徵在於,所述地址生成器生成傳輸狀態信 號進一步包括根據來自所述傳輸類型生成器的傳輸類型值,突發傳輸的第一拍傳輸模式為非順序; 在突發傳輸第一拍之後的傳輸中,傳輸模式為順序; 在沒有傳輸進行時,傳輸模式為空閒; 在下一次傳輸不能立即進行時,傳輸模式為繁忙。
13.如權利要求5所述隨機測試裝置,其特徵在於,所述命令生成器以地址、數據序列 形式發送命令。
14.如權利要求1所述的隨機測試裝置,其特徵在於,所述測試模塊包括寫入數據記錄存儲器、讀出數據核對邏輯器和測試結果計數器,所述寫入數據記錄存儲器,用於存儲來自所述測試激勵產生及輸出模塊的寫入外部存 儲器的數據;所述讀出數據核對邏輯器,用於將從所述外部存儲器讀出的數據與來自所述寫入數據 記錄存儲器的同一地址的數據進行對比,當上述兩個數據相等時,表示對外部存儲器的寫 和讀操作均已正確執行,測試通過,否則表示對外部存儲器的寫和讀操作至少一個出錯,測 試失敗;所述測試結果計數器,用於統計來自所述讀出數據核對邏輯器的失敗的次數。
15.如權利要求14所述的隨機測試裝置,其特徵在於,所述寫入數據記錄存儲器的編 址與外部存儲器的編址相同,在對所述外部存儲器進行寫操作時,同時將寫入的數據保存到所述寫入數據記錄存儲 器的相同地址;在對所述外部存儲器進行讀操作時,同時從所述寫入數據記錄存儲器中輸 出相同地址上保存的數據。
16.如權利要求15所述的隨機測試裝置,其特徵在於,所述寫入數據的傳輸長度由所 述傳輸長度值決定。
17.如權利要求14所述的隨機測試裝置,其特徵在於,所述測試結果計數器統計來自 所述讀出數據核對邏輯器的失敗的次數進一步包括將來自所述讀出數據核對邏輯器的輸出值進行累加,得到測試失敗的總次數,當測試結束後,總失敗次數為0,表示全部測試通過;若總失敗次數不為0,表示需要進一步排查錯誤。
全文摘要
本發明提出一種基於LFSR的外部存儲接口的隨機測試裝置包括偽隨機數生成模塊,用於生成偽隨機數;偽隨機數寄存模塊,用於存儲偽隨機數;測試激勵產生及輸出模塊,用於根據偽隨機數,生成隨機測試激勵信號;測試模塊,用於將讀數據信號與對外部存儲器同一地址寫入的數據進行對比,統計失敗的總次數。本發明的隨機測試裝置基於LFSR的外部存儲接口的隨機測試裝置,以LFSR為偽隨機數生成器,將其產生的偽隨機數轉化成符合AHB總線協議的外部存儲接口隨機測試激勵,實現了對外部存儲接口的隨機測試。
文檔編號G11C29/56GK101894591SQ20101023866
公開日2010年11月24日 申請日期2010年7月26日 優先權日2010年7月26日
發明者葉劍飛, 李兆麟, 李聖龍, 王芳, 鄭慶偉, 陳佳佳, 魏熾頻 申請人:清華大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀