專利名稱:驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質的制作方法
技術領域:
本發(fā)明涉及用于支持LSI(大規(guī)模集成電路)設計的驗證作業(yè)的驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質。
背景技術:
在LSI設計中,為了盡快將具有競爭力的產品供應市場,一直以來,要求縮短設計周期以提高作業(yè)效率,另一方面,在設計期間必須進行驗證LSI是否正確工作的驗證作業(yè),特別是對于要求大規(guī)?;⒏咝阅芑?、高速化和低功耗的LSI,其驗證作業(yè)對于維持高品質至關重要。
這里對現有的LSI設計的設計期間中的驗證作業(yè)進行具體說明。當開發(fā)了某種LSI時,有時要對該已開發(fā)的LSI進行改進而得到下一期的LSI。下一期的LSI與作為改進基礎的LSI僅部分電路不同,其他部分是相同的。另外,通常在對LSI整體進行驗證時,準備進行邏輯驗證的各種測試,對LSI進行測試。因此,在對下一期的LSI整體進行驗證時,通常再利用對作為改進基礎的LSI所進行過的測試來進行驗證。具體而言,對于下一期的LSI,既可以全部采用對作為改進基礎的LSI所進行的測試來實施驗證作業(yè),也可以基于設計者的經驗,從對作為改進基礎的LSI所進行的測試中選擇必要的測試來實施驗證作業(yè),或者通過對下一期的LSI的程序結構進行解析,利用對作為改進基礎的LSI所進行的測試中的與改進部分有關的測試來實施驗證作業(yè)。
但是,如上所述,由于LSI的大規(guī)?;透咝阅芑瑢ψ鳛楦倪M基礎的LSI所進行的測試數量變得龐大,從而導致驗證作業(yè)所需時間變長,結果存在導致設計期間變長的問題。另外,在基于設計者的經驗來實施驗證作業(yè)時,有時會選擇了與改進部位無關的測試,從而也導致驗證作業(yè)所需時間變長,結果存在導致設計期間變長的問題。另外,在通過對下一期的LSI的程序結構進行解析來實施驗證作業(yè)的情況下,雖然能夠僅選擇必要的測試,但是由于程序解析費時,結果也存在導致設計期間變長的問題。
發(fā)明內容
本發(fā)明目的在于解決上述現有技術的問題,提供驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質,能夠通過簡單且高效地檢測出能夠通用的測試平臺,來實施驗證作業(yè)的支持。
為了解決上述問題并實現目的,本發(fā)明的驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質通過對在時間序列中表現設計對象的處理的圖表進行修正,來對修正后的圖表所表現的設計對象的邏輯驗證進行支持,其特征在于,接受所述修正后的圖表的輸入,基于作為修正基礎的圖表和輸入的修正后的圖表,檢測出經過修正的處理(以下稱為“修正處理”),根據檢測出的修正處理,判定在所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否被通用于所述修正后的圖表所表現的設計對象的邏輯驗證,并基于該判定結果輸出所述測試平臺。根據本發(fā)明,能夠僅通過輸入修正后的圖表,來檢測出作為修正基礎的圖表所表現的對設計對象使用的測試平臺。
圖1是表示本發(fā)明實施方式的驗證支持系統(tǒng)的概略結構的說明圖。
圖2是表示本發(fā)明實施方式的驗證支持裝置和終端裝置的硬件結構的框圖。
圖3是表示順序圖數據庫的存儲內容的說明圖。
圖4是說明測試平臺數據庫的存儲內容的說明圖。
圖5是表示順序圖一測試平臺對應表格的說明圖。
圖6是表示存儲于源碼數據庫中的存儲內容的說明圖。
圖7是表示回歸測試運行記錄數據庫的存儲內容的說明圖。
圖8是表示圖3所示順序圖數據庫中存儲的順序圖的一例的說明圖(之一)。
圖9是表示圖3所示順序圖數據庫中存儲的順序圖的一例的說明圖(之二)。
圖10是表示本發(fā)明實施方式的驗證支持裝置的功能結構的說明圖。
圖11是表示本發(fā)明實施方式的驗證支持處理步驟的流程圖。
圖12是表示圖11所示的1次回歸測試的處理順序的流程圖。
圖13是表示圖11所示的順序圖更新處理步驟和源碼更新處理步驟的流程圖。
圖14是表示圖11所示的測試平臺檢索處理步驟的流程圖。
圖15是表示n+1次回歸測試處理步驟的流程圖。
具體實施例方式
下面參照附圖對本發(fā)明的驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質的優(yōu)選實施方式進行詳細說明。
(實施方式1)(驗證支持系統(tǒng)的概略結構)首先對本發(fā)明實施方式的驗證支持系統(tǒng)的概略結構進行說明。圖1是表示本發(fā)明實施方式的驗證支持系統(tǒng)100的概略結構的說明圖。驗證支持系統(tǒng)100把驗證支持裝置101與多個終端裝置102經由LAN、WAN、英特網等網絡103連接成可相互通信。
驗證支持裝置101通過對按時間序列來表現設計對象的處理的圖表(例如順序圖)進行修正,來支持利用修正后的圖表來表現的設計對象的邏輯驗證。具體而言,輸出利用修正后的圖表所表現的對設計對象所使用的測試平臺。另外,驗證支持裝置101具備順序圖數據庫104;測試平臺數據庫105;順序圖-測試平臺對應表格106;源碼數據庫107;以及回歸測試運行記錄數據庫108。對于這些數據庫和表格在后面進行敘述。終端裝置102通過用戶的輸入操作,接收經由網絡103從驗證支持裝置101輸出的測試平臺。
(驗證支持裝置101和終端裝置102的硬件結構)
下面對本發(fā)明的實施方式的驗證支持裝置101和終端裝置102的硬件結構進行說明。圖2是表示本發(fā)明實施方式的驗證支持裝置和終端裝置的硬件結構的框圖。
圖2中,驗證支持裝置101和終端裝置102分別具備CPU 201;ROM 202;RAM 203;HDD(硬盤驅動器)204;HD(硬盤)205;FDD(軟盤驅動器)206;作為可裝卸的記錄介質-例的FD(軟盤)207;顯示器208;I/F(接口)209;鍵盤210;鼠標211;掃描儀212;打印機213。并且,各構成部分通過總線200分別連接。
這里,CPU 201對驗證支持裝置101和終端裝置102整體進行控制。ROM 202存儲引導程序(boot program)等程序。RAM 203用作CPU 201的工作區(qū)域。HDD 204根據CPU 201的控制來控制對HD 205的數據的讀/寫。HD 205存儲通過HDD 204的控制而寫入的數據。
FDD 206根據CPU 201的控制來控制對FD 207的數據的讀/寫。FD207存儲通過FDD 206的控制而寫入的數據,或者將存儲于FD 207中的數據讀取到驗證支持裝置101和終端裝置102。
作為可裝卸的記錄介質,除了FD 207以外,也可以是CD-ROM(CD-R、CD-RW)、MO、DVD(Digital Versatile Disk)、存儲卡等。顯示器208顯示以光標、圖標或者工具箱為代表的文檔、圖像、功能信息等數據。該顯示器208可以采用例如CRT、TFT液晶顯示器、等離子顯示器等。
I/F 209通過通信線路與英特網等網絡103連接,并經由該網絡103與其他裝置連接。并且,I/F 209作為網絡103與內部的接口,控制來自外部裝置的數據的輸入輸出。在I/F 209中例如可以采用調制解調器或者LAN適配器等。
鍵盤210具有用于輸入字符、數字、各種指示等的鍵,執(zhí)行數據輸入。另外,也可以是觸摸面板式輸入盤或者0~9數字鍵等。鼠標211能夠進行光標的移動和范圍選擇或者窗口的移動和尺寸變更等。只要具有與作為指示設備的一樣的功能,也可以是跟蹤球或操縱桿等。
掃描儀212對圖像進行光學讀取,將圖像數據取入驗證支持裝置101和終端裝置102內。另外,掃描儀212也可以具有OCR(光學字符識別)功能。另外,打印機213打印圖像數據或文檔數據。打印機213例如可以采用激光打印機或噴墨打印機。
(各數據庫和表格的存儲內容)下面使用圖3~圖7對圖1所示的順序圖數據庫104、測試平臺數據庫105、順序圖-測試平臺對應表格106、源碼數據庫107和回歸測試運行記錄數據庫108中存儲的內容進行說明。首先,對順序圖數據庫104進行說明。圖3是表示順序圖數據庫的存儲內容的說明圖。
圖3中,順序圖數據庫104對每個設計對象存儲了順序圖、順序圖的版本號和回歸測試的版本號。該順序圖是利用UML(Unified ModelingLanguage,統(tǒng)一建模語言)等計算機可讀取的記述語言所制作的圖,是按時間序列來表現設計對象的處理的圖表的一例。這里,雖然舉出了順序圖的例子,但是也可以使用用例(Use case)圖按時間序列來表現數據流。
另外,順序圖的版本號是把順序圖存儲于順序圖數據庫104中時所賦予的編號。另外,回歸測試的版本號是在利用順序圖表現的設計對象的邏輯驗證(回歸測試)合格時所賦予的編號。當未進行邏輯驗證時,或者在邏輯驗證不合格時,不賦予回歸測試的版本號。
這里,對圖3所示的例子進行具體說明,對設計對象“○○裝置”存儲兩個順序圖300、301。版本號1.0的順序圖300在版本號5.0的回歸測試中合格。另外,版本號1.1的順序圖301是對版本號1.0的順序圖進行了修正的順序圖,在版本號5.1的回歸測試中合格。
下面對測試平臺數據庫105的存儲內容進行說明。圖4是說明測試平臺數據庫105的存儲內容的說明圖。在圖4中,在測試平臺數據庫105中存儲了測試平臺test1.cpp~test3.cpp;該測試平臺test1.cpp~test3.cpp的版本號;以及回歸測試的版本號。測試平臺test1.cpp~test3.cpp是用于驗證設計對象的動作例如時鐘的產生、輸入模式的產生、與期待值的比較等的記述,由圖3所示的順序圖300、301的參與者(actor)提供。另外,測試平臺test1.cpp~test3.cpp的版本號是在把測試平臺test1.cpp~test3.cpp存儲于測試平臺數據庫105中時所賦予的編號。另外,回歸測試的版本號是在測試平臺所提供的設計對象在邏輯驗證中合格時所賦予的編號。當未進行邏輯驗證時,或者邏輯驗證不合格時,不賦予回歸測試的版本號。
下面對順序圖-測試平臺對應表格106進行說明。圖5是表示順序圖-測試平臺對應表格106的說明圖。圖5中,把表現設計對象的順序圖和對利用該順序圖表現的設計對象所使用的測試平臺,與順序圖-測試平臺對應表格106對應起來。在圖5所示例中,把表現被執(zhí)行了圖3所示的版本號5.0的回歸測試的設計對象的順序圖300,與在圖4所示的版本號5.0的回歸測試中使用的測試平臺test1.cpp~test3.cpp對應起來。
下面對源碼數據庫107的存儲內容進行說明。圖6是表示存儲于源碼數據庫107中的存儲內容的說明圖。圖6中,在源碼數據庫107中,對每個順序圖存儲了源碼和源碼的版本號。源碼是表示利用順序圖表現的設計對象的設計內容的設計數據。另外,源碼的版本號是在把源碼存儲于源碼數據庫107中時所賦予的編號。
在圖6所示例中,對圖3所示的順序圖300存儲了源碼AAA、BBB、CCC。版本號1.0的源碼AAA是以順序圖300為基礎而設計的數據。版本號1.1的源碼BBB是對源碼AAA進行了修正的數據。版本號1.2的源碼CCC是對源碼BBB進行了修正的數據。
下面對回歸測試運行記錄數據庫108的存儲內容進行說明。圖7是表示回歸測試運行記錄數據庫108的存儲內容的說明圖。圖7中,在回歸測試運行記錄數據庫108中存儲有回歸測試的測試執(zhí)行日期時間;已執(zhí)行回歸測試的源碼;用于回歸測試的測試平臺;以及基于回歸測試的邏輯驗證的合格與否判定結果。例如,對圖6所示的源碼AAA使用測試平臺test1.cpp~test3.cpp,全部合格。
下面對存儲于圖3所示的順序圖數據庫104中的順序圖的一例進行說明。圖8和圖9是表示圖3所示順序圖數據庫104中存儲的順序圖300、301的一例的說明圖。圖8中,在順序圖300中記述了參與者800和對象810。參與者800表示在順序圖300中從外部進行數據輸入的抽象的外部實體。作為圖8所示的參與者800,記述了用戶801、圖像輸入裝置802、電視接口(TV I/O)803。
這里,對象810表示設計對象內部的結構(包括硬件和軟件)。作為圖8所示的對象810,記述了接口化的八個類811~818(控制軟件811;流接收部812;流解析部813;內部解壓縮部814;中間解壓縮部815;圖像輸出部816;圖像緩沖器817;解壓縮后數據傳送部818)。另外,各參與者800和類的縱軸稱為各參與者800和類的生存線,在部分類的生存線上記述了表示生存周期的活性區(qū)間(生存線上的矩形)。另外,在對象810之間,或者參與者800與對象810之間表示參與者800和對象810(類811~818)的處理(方法)821~836。該處理821~836稱為表示對象810的動態(tài)特性的“操作”,記述為成員函數。
這里對所述圖8所示的順序圖300的處理流程進行說明。所述設計對象在這里表示DVD播放器。首先,當從用戶801輸入“解碼開始”的處理821時,控制軟件811執(zhí)行“流接收開始”的處理822。另外,當從圖像輸入裝置802通過圖像數據的寫入處理(“write(流)”)823執(zhí)行了流接收時,流接收部812對流解析部813執(zhí)行發(fā)送所接收的圖像數據(流數據)的發(fā)送開始信號的處理(“start()”)824。流解析部813對流接收部812執(zhí)行要解析的圖像數據的讀取處理(“read()”)825,當積累了一定量的圖像數據時,對流解析部813執(zhí)行所接收的圖像數據的發(fā)送處理(“流數據”)826。
流解析部813對所接收的圖像數據進行解析,提取出內部數據和中間數據。另外,執(zhí)行將所提取的內部數據發(fā)送給內部解壓縮部814的發(fā)送處理(“write(內部數據)”)827,以及將所提取的中間數據發(fā)送給中間解壓縮部815的發(fā)送處理(“write(交互數據)”)828。內部解壓縮部814執(zhí)行將經內部解壓縮的數據發(fā)送給解壓縮后數據傳送部818的發(fā)送處理(“write(內部解壓縮后數據)”)829。反復執(zhí)行該發(fā)送處理829直到一張圖像被處理。中間解壓縮部815對圖像緩沖器817執(zhí)行參照圖像數據的讀取處理(“read”)830,圖像緩沖器817執(zhí)行將參照圖像數據發(fā)送給中間解壓縮部815的發(fā)送處理(“參照圖像數據”)831。然后,中間解壓縮部815執(zhí)行將經中間解壓縮的數據發(fā)送給解壓縮后數據傳送部818的發(fā)送處理(“write(中間解壓縮后數據)”)832。
解壓縮后數據傳送部818執(zhí)行將圖像數據發(fā)送給圖像緩沖器817的發(fā)送處(“write”)833。反復執(zhí)行該發(fā)送處833直到一張圖像被處理。另外,在已處理了一張圖像的情況下,圖像緩沖器817執(zhí)行對解壓縮后數據傳送部818發(fā)送該意思的處(“successful”)834。然后,圖像輸出部816在進行了三張圖像的過濾時,執(zhí)行該圖像的讀取處理(“read”)835。然后,圖像輸出部816執(zhí)行對電視接口803發(fā)送通過讀取處理835讀取的圖像的發(fā)送處(“write(data)”)836。
下面對圖9所示的順序圖301進行說明。圖9所示的順序圖301是對圖8所示的順序圖300進行了修正的圖。具體而言,是在流解析部813與內部解壓縮部814之間追加了逆量子化部819的圖,除此以外與順序圖300相同,因此標以相同符號并省略其說明。通過增加該逆量子化部819,流解析部813執(zhí)行將所提取的內部數據發(fā)送給逆量子化部819的發(fā)送處理(“write(內部數據)”)827a,以及將所提取的中間數據發(fā)送給逆量子化部819的發(fā)送處(“write(中間數據)”)828a。逆量子化部819將所接收的內部數據逆量子化,執(zhí)行發(fā)送給內部解壓縮部814的發(fā)送處理(“write(數據)”)827b。反復執(zhí)行該發(fā)送處理827b直至一張圖像被處理。另外,逆量子化部819將所接收的中間數據逆量子化,執(zhí)行將其發(fā)送給中間解壓縮部815的發(fā)送處理(“write(數據)”)828b。
(驗證支持裝置101的功能結構)下面對本發(fā)明的實施方式的驗證支持裝置101的功能結構進行說明。圖10是表示本發(fā)明實施方式的驗證支持裝置101的功能結構的說明圖。圖10中,驗證支持裝置101具備圖表存儲部1001;測試平臺存儲部1002;源碼存儲部1003;回歸測試運行記錄存儲部1004;圖表制作/修正部1005;圖表提取部1006;邏輯驗證信息生成部1007;合格與否判定部1008;修正處理檢測部1009;通用判定部1010;測試平臺輸出部1011;邏輯驗證部1012;源碼制作/修正部1013。
圖表存儲部1001存儲按時間序列來表現設計對象的處理的圖表和與該圖表有關的信息。圖表存儲部1001具體而言,存儲圖8或圖9所示的順序圖300、301,更具體而言,由圖3所示的順序圖數據庫104構成。測試平臺存儲部1002存儲用于設計對象的邏輯驗證的測試平臺。測試平臺存儲部1002具體而言,由圖4所示的測試平臺數據庫105構成。
源碼存儲部1003存儲表現設計對象的設計內容的源碼。源碼存儲部1003具體而言,由圖6所示的源碼數據庫107構成?;貧w測試運行記錄存儲部1004存儲回歸測試的運行記錄?;貧w測試運行記錄存儲部1004具體而言由圖7所示的回歸測試運行記錄數據庫108構成。另外,圖表存儲部1001、測試平臺存儲部1002、源碼存儲部1003以及回歸測試運行記錄存儲部1004具體而言,例如可利用圖2所示的ROM 202、RAM203、HD 205、FD207等實現其功能。
圖表制作/修正部1005執(zhí)行按時間序列來表現設計對象的處理的圖表的制作和修正。具體而言,例如通過設計者的操作,制作圖8所示的順序圖300,并將制作的順序圖300修正為圖9所示的順序圖301。制作和修正的順序圖300、301存儲于圖表存儲部1001。
圖表提取部1006提取出存儲于圖表存儲部1001中的圖表。具體而言,通過設計者的操作,從圖3所示的順序圖300中提取出任意的順序圖,例如提取出通過圖表制作/修正部1005進行了修正的修正后的順序圖301。
邏輯驗證信息生成部1007生成與對設計對象執(zhí)行的邏輯驗證有關的信息。具體而言,在邏輯驗證(回歸測試)合格時,作為與邏輯驗證有關的信息,生成該回歸測試的版本號,賦予給表現回歸測試合格的設計對象的處理的順序圖、在合格的回歸測試中使用的測試平臺、表現回歸測試合格的設計對象的設計內容的源碼。
合格與否判定部1008基于通過邏輯驗證信息生成部1007生成的與邏輯驗證有關的信息,判定利用由圖表提取部1006所提取的修正后的圖表所表現的設計對象在邏輯驗證中是否合格。具體而言,根據對由圖表提取部1006提取出的修正后的順序圖301是否賦予了回歸測試的版本號,來進行判定。
修正處理檢測部1009對作為修正基礎的圖表和由圖表提取部1006提取出的修正后的圖表進行比較,檢測經修正的處理(以下稱為修正處理)。具體而言,對同一設計對象而言,對圖3所示的作為修正基礎的版本號1.0的順序圖300(參照圖8)和圖3所示的成為修正后的版本號1.1的順序圖301(參照圖9)進行比較。另外,從成為修正后的版本號1.1的順序圖301中檢測出輸入逆量子化部818的活性區(qū)間的處理827a、828a,作為修正處理。另外,修正處理檢測部1009在通過合格與否判定部1008判定為在邏輯驗證中不合格的情況下,也可以對修正后的圖表和作為修正基礎的圖表進行比較,檢測出經修正的處理。
通用判定部1010基于通過修正處理檢測部1009檢測出的修正處理827a、828a,判定在利用修正后的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否在利用修正后的圖表所表現的設計對象的邏輯論證中通用。對于該通用判定部1010的具體內容在后面敘述。
測試平臺輸出部1011根據由通用判定部1010所判定的判定結果,輸出測試平臺。具體而言,根據由通用判定部1010所判定的判定結果,從測試平臺存儲部1002中提取可通用的測試平臺,向邏輯驗證部1012輸出。邏輯驗證部1012使用從測試平臺輸出部1011輸出的測試平臺,執(zhí)行源碼的回歸測試。
源碼制作/修正部1013執(zhí)行表現設計對象的設計內容的源碼的制作和修正。具體而言,例如通過設計者的操作,制作圖6所示的源碼AAA,另外,將制作的源碼AAA修正為源碼BBB,進而將修正后的源碼BBB修正為源碼CCC。制作和修正的源碼存儲于源碼存儲部1003。
下面對通用判定部1010進行具體說明。圖10中,通用判定部1010具備外部實體檢測部1021;外部實體判定部1022;通用判定執(zhí)行部1023。外部實體檢測部1021從表現設計對象的修正后的圖表中從外部執(zhí)行數據輸入的外部實體群中,檢測出通過輸入相應數據而使得由修正處理檢測部1009檢測出的修正處理被執(zhí)行的外部實體。具體而言,從作為圖9所示的修正后的順序圖301中記述的外部實體的多個參與者(actor)800(參照圖8)中,檢測出執(zhí)行修正處理827a、828a的參與者800。更具體而言,檢測出執(zhí)行作為修正處理的圖像數據發(fā)送處理(“write(內部數據)”)827a的作為類的流解析部813,檢測出發(fā)送處理(“流數據”)826的作為類的流接收部812,該發(fā)送處理826發(fā)送由所檢測出的流解析部813進行解析的流數據(圖像數據),檢測出向所檢測出的流接收部812進行流數據(圖像數據)的發(fā)送處理(“write(流)”)823的作為參與者800的圖像輸入裝置802。
外部實體判定部1022判定通過外部實體檢測部1021檢測出的外部實體是否包含于作為修正基礎的圖表中。具體而言,判定通過外部實體檢測部1021所檢測出的圖像輸入裝置802是否被記述于作為修正基礎的順序圖300中。然后,在未記述的情況下,判定為通過外部實體檢測部1021所檢測出的外部實體未包含于作為修正基礎的圖表中。另一方面,在記述了的情況下,判定記述于修正后的順序圖301中的圖像輸入裝置802(所檢測出的參與者800)所執(zhí)行的處理823,與記述于作為修正基礎的順序圖300中的圖像輸入裝置802所執(zhí)行的處理823是否一致。在不一致的情況下,判定為通過外部實體檢測部1021所檢測出的參與者800未包含于作為修正基礎的順序圖300中。另一方面,在一致的情況下,判定為通過外部實體檢測部1021所檢測出的參與者800包含于作為修正基礎的順序圖300中。
通用判定執(zhí)行部1023根據通過外部實體判定部1022所判定的判定結果,判定在利用作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用修正后的圖表所表現的設計對象的邏輯驗證。具體而言,在通過外部實體判定部1022判定為由外部實體檢測部1021所檢測出的參與者800包含于作為修正基礎的順序圖300中的情況下,判定為能夠通用用于通過該作為修正基礎的順序圖300所表示的設計對象的測試平臺。更具體而言,對于與圖9所示的順序圖301對應的源碼,能夠通用在與圖8所示的順序圖300對應的源碼的邏輯驗證中使用的測試平臺。
另外,通用判定部1010具備源碼提取部1024;修正記述檢測部1025;處理檢索部1026;處理判定部1027。源碼提取部1024在通過合格與否判定部1008判定為在邏輯驗證中合格的情況下,從表現在該邏輯驗證中合格的設計對象的設計內容的源碼群中,提取在該合格的邏輯驗證中使用的源碼和對該源碼進行了修正的修正后的源碼。對于將在邏輯驗證中使用的源碼進行了修正的修正后的源碼,能夠通過對源碼版本號的比較來確定。例如,在圖6中,在用于合格的邏輯驗證的源碼為源碼BBB的情況下,提取出被賦予了與源碼BBB的版本號相比為最新的版本號的源碼CCC。
修正記述檢測部1025對由源碼提取部1024提取的源碼相互進行比較,檢測出經修正的記述(以下稱為修正記述)。具體而言,使用diff命令來檢測修正記述。
處理檢索部1026從表現在邏輯驗證中合格的設計對象的圖表以外的其它圖表中,檢索利用由修正記述檢測部1025所檢測出的修正記述所表現的處理。具體而言,檢索圖表存儲部1001,從表現在邏輯驗證中合格的設計對象的順序圖以外的其他順序圖中,提取利用所檢測出的修正記述(成員函數)表現的處理。
處理判定部1027判定通過處理檢索部1026所檢索出的處理是否包含于表現在邏輯驗證中合格的設計對象的圖表中。具體而言,在通過處理檢索部1026所檢索出的處理包含于表現在邏輯驗證中合格的設計對象的順序圖中時,測試平臺輸出部1011參照圖5所示的順序圖-測試平臺對應表格106,從測試平臺存儲部1002中,提取與包含有通過處理檢索部1026所檢索出的處理的順序圖對應的測試平臺。
另外,上述的圖表制作/修正部1005、圖表提取部1006、邏輯驗證信息生成部1007、合格與否判定部1008、修正處理檢測部1009、通用判定部1010、測試平臺輸出部1011、邏輯驗證部1012、以及源碼制作/修正部1013具體而言,例如通過由CPU 201執(zhí)行記錄于圖2所示的ROM202、RAM 203、HD 205、FD 207等中的程序,或通過I/F 209,來實現其功能。
(驗證支持處理順序)下面對本發(fā)明的實施方式的驗證支持處理順序進行說明。圖11是表示本發(fā)明實施方式的驗證支持處理順序的流程圖。圖11中,首先執(zhí)行初始數據登記處理(步驟S1101)。在該處理中,將作為設計對象的1次開發(fā)的設計數據的版本號1.0的順序圖300、測試平臺test1.cpp~test3.cpp、版本號1.0的源碼AAA,登記于各數據庫104、105、107。接著,利用通過初始數據登記處理所登記的數據執(zhí)行1次回歸測試(步驟1102)。所述初始數據登記處理(步驟S1101)和1次回歸測試(步驟1102)稱為1次開發(fā)步驟。然后,執(zhí)行用于確定在回歸測試中合格的源碼的發(fā)布處理(步驟S1103)。
接著通過順序圖更新處理進行順序圖的更新(修正)(步驟S1104),通過源碼更新處理進行源碼的更新(修正)(步驟S1105)。然后,進行測試平臺檢索處理(步驟S1106)。具體而言,從在作為修正基礎的順序圖或源碼中使用的測試平臺中,檢索能夠通用于修正后的順序圖或源碼的測試平臺。然后,通用所檢索出的測試平臺,進行n+1次回歸測試(步驟S1107)。從該順序圖更新處理到回歸測試的處理步驟(步驟S1104~步驟S1107)稱為n+1次開發(fā)步驟(n=1,2,3,…)。當在n+1次回歸測試中合格時(步驟S1108是),轉入發(fā)布處理(步驟S1103),當不合格時(步驟S1108否),轉入下一個n+1次開發(fā)步驟(步驟S1104)。
(回歸測試的處理步驟)下面對圖11所示的1次回歸測試的處理順序進行說明。圖12是表示圖11所示的1次回歸測試的處理順序的流程圖。圖12中,首先從源碼數據庫107中提取任意的源碼(步驟S1201)。另外,從測試平臺數據庫105中提取任意的測試平臺(步驟S1202)。然后,判定所提取的測試平臺是否已經用于所提取的源碼(步驟S1203)。在已經使用時(步驟S1203是),轉入步驟1210。另一方面,在未使用時(步驟S1203否),使用所提取的測試平臺,執(zhí)行對根據源碼所設計的設計對象的動作進行驗證的模擬(步驟S1204)。
當在模擬中不合格時(步驟S1205否),轉入步驟S1209。另一方面,當在模擬中合格時(步驟S1205是),生成回歸測試的版本號(步驟S1206)。另外,對與該源碼對應的順序圖賦予回歸測試的版本號(步驟S1207),將回歸測試運行記錄數據庫108更新為所使用的測試平臺(步驟S1209)。
當存在未執(zhí)行過模擬的測試平臺時(步驟S1210是),轉入步驟S1202。另一方面,當不存在未執(zhí)行模擬的測試平臺時(步驟S1210否),結束1次回歸測試。
(順序圖更新處理順序和源碼更新處理順序)下面對圖11所示的順序圖更新處理順序和源碼更新處理順序進行說明。圖13是表示圖11所示的順序圖更新處理順序和源碼更新處理順序的流程圖。圖13中,當不修正順序圖時(步驟S1301否),轉入步驟S1306。另一方面,當要修正順序圖時(步驟S1301是),提取要修正的順序圖(步驟S1302)。然后,修正所提取的順序圖(步驟S1303)。另外,針對順序圖數據庫104,將版本號賦予給修正過的順序圖(步驟S1304),更新為修正后的順序圖和版本號(步驟S1305)。
然后,當不修正源碼時(步驟S1306否),結束一系列的處理。另一方面,當要修正源碼時(步驟S1306是),提取要修正的源碼(步驟S1307),修正所提取的源碼(步驟S1308)。然后,對修正過的源碼賦予版本號(步驟S1309),更新為修正后的源碼和版本號(步驟S1310)。
(測試平臺檢索處理順序)下面對圖11所示的測試平臺檢索處理順序進行說明。圖14是表示圖11所示的測試平臺檢索處理順序的流程圖。圖14中,首先從順序圖數據庫104中提取任意設計對象的最新版本的順序圖(步驟S1401)。然后,判定是否對已所提取的順序圖賦予了回歸測試的版本號(步驟S1402)。
當未賦予回歸測試的版本號時(步驟S1402否),利用所提取的順序圖所表現的設計對象是未驗證的設計對象。因此,從比來自所提取出的順序圖的版本號更老的版本號的順序圖(作為修正基礎的順序圖)中,提取出具有回歸測試的版本號的最新版本的順序圖(步驟S1403)。
接著對所提取的順序圖相互進行比較,檢測出修正處理(步驟S1404)。然后,當未檢測出修正處理時(步驟S1405否),結束一系列的處理。另一方面,當檢測出修正處理時(步驟S1405是),通過參照圖5所示的順序圖-測試平臺對應表格106,判定對利用老的版本號的順序圖所表現的設計對象使用的測試平臺能否通用(步驟S1406)。
當不能夠通用時(步驟S1406否),結束一系列的處理。此時,用戶801通過執(zhí)行測試平臺的版本升級,對圖5所示的順序圖-測試平臺對應表格106進行更新。另一方面,當能夠通用時(步驟S1406是),從測試平臺數據庫105中提取出被判定為能夠通用的測試平臺(步驟S1407)。
另外,當賦予了回歸測試的版本號時(步驟S1402是),參照回歸測試運行記錄數據庫108,從源碼群中,提取表現在回歸測試(邏輯驗證)中合格的設計對象的設計內容的源碼(步驟S1408),其中該源碼群表現利用在邏輯驗證中合格的最新版本的順序圖所表現的設計對象的設計內容。
另外,參照源碼數據庫107,從源碼群中,提取最新版本的源碼(步驟S1409),其中該源碼群表現利用在邏輯驗證中合格的最新版本的順序圖所表現的設計對象的設計內容。然后,對通過步驟S1408和步驟S1409提取的源碼相互進行比較(步驟S1410),檢測出修正記述(步驟S1411)。
當未檢測出修正記述時(步驟S1141否),結束一系列的處理。另一方面,當檢測出修正記述時(步驟S1411是),從表現在回歸測試中合格的設計對象的順序圖以外的其他順序圖中,檢索利用所檢測出的修正記述表現的處理(步驟S1412)。
然后,判定通過步驟S1412所檢索出的處理,是否包含于通過步驟S1401提取出的最新版本的順序圖中(步驟S1413)。當通過處理檢索部1026所檢索出的處理未包含于通過步驟S1401提取出的最新版本的順序圖中時(步驟S1413否),結束一系列的處理。另一方面,當通過處理檢索部1026所檢索出的處理包含于通過步驟S1401提取出的最新版本的順序圖中時(步驟S1413是),參照圖5所示的順序圖-測試平臺對應表格106,提取出與包含步驟S1412中檢索出的處理的順序圖對應的測試平臺(步驟S1407)。
(n+1次回歸測試的處理順序)下面對圖11所示的n+1次回歸測試的處理順序進行說明。圖15是表示n+1次回歸測試處理順序的流程圖。圖15中,首先從源碼數據庫107中提取與最新版本的順序圖對應的源碼(步驟S1501)。然后,判定所提取的測試平臺是否已經對所提取的源碼使用(步驟S1502)。當已經使用時(步驟S1502是),轉入步驟S1509。另一方面,當未使用時(步驟S1502否),使用所提取的測試平臺,執(zhí)行對根據源碼所設計的設計對象的動作進行驗證的模擬(步驟S1503)。
當在模擬中不合格時(步驟S1504否),轉入步驟S1508。另一方面,當在模擬中合格時(步驟S1504是),生成回歸測試的版本號(步驟S1505)。另外,對與該源碼對應的順序圖賦予回歸測試的版本號(步驟S1506),對使用的測試平臺賦予回歸測試的版本號(步驟S1507)。然后,對回歸測試運行記錄數據庫108進行更新(步驟S1508)。
當存在未執(zhí)行模擬的測試平臺時(步驟S1509是),轉入步驟S1502。另一方面,當不存在未執(zhí)行模擬的測試平臺時(步驟S1509否),結束n+1次回歸測試。
根據本實施方式的驗證支持裝置101,能夠從作為修正基礎的順序圖300中,檢測出修正后的順序圖301中的修正處理,因此,設計者在進行n+1次開發(fā)時,能夠容易且高效地檢測出用于過去的開發(fā)中的測試平臺。因此,能夠大幅縮短驗證作業(yè)所需的時間,提高驗證作業(yè)的效率。并且,不會通用不需要的測試平臺,因此不會進行無用的回歸測試,提高驗證作業(yè)的效率。
另外,即使在對不需要進行順序圖修正的源碼僅作簡單修正時,也能夠通過對源碼之間進行比較來檢測出修正記述,因此設計者能夠與上述情況同樣地,在進行n+1次開發(fā)時,能夠容易且高效地檢測出用于過去的開發(fā)中的測試平臺。因此,能夠大幅縮短驗證作業(yè)所需的時間,提高驗證作業(yè)的效率。
另外,本實施方式中說明的驗證支持方法,可通過由個人計算機或工作站等計算機執(zhí)行預先準備的程序來實現。該程序記錄于硬盤、軟盤、CD-ROM、MO、DVD等計算機可讀取的記錄介質中,通過由計算機從記錄介質中讀取來執(zhí)行。另外,也可以是能夠經由英特網等網絡發(fā)布該程序的傳輸介質。
如上所述,根據本發(fā)明的驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質,能夠僅通過輸入修正后的圖表,來檢測出對利用作為修正基礎的圖表所表現的設計對象使用的測試平臺,從而能夠簡單高效地僅檢測出能夠通用的測試平臺,實現能夠支持驗證作業(yè)的效果。
如上所述本發(fā)明可用于支持LSI設計的驗證作業(yè)的驗證支持裝置、驗證支持方法、驗證支持程序和記錄介質。
權利要求
1.一種驗證支持裝置,該裝置通過對按時間系列來表現設計對象的處理的圖表進行修正,來支持利用修正后的圖表所表現的設計對象的邏輯驗證,其特征在于,該驗證支持裝置具備圖表輸入單元,其接受所述修正后的圖表的輸入;修正處理檢測單元,其根據作為修正基礎的圖表和通過所述圖表輸入單元輸入的修正后的圖表,檢測經修正的處理(下面稱為“修正處理”);通用判定單元,其根據通過所述修正處理檢測單元所檢測出的修正處理,判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證;以及測試平臺輸出單元,其根據通過所述通用判定單元所判定的判定結果,輸出所述測試平臺。
2.根據權利要求1所述的驗證支持裝置,其特征在于,所述通用判定單元具備外部實體檢測單元,其從表現所述設計對象的修正后的圖表中從外部執(zhí)行數據輸入的外部實體群中,檢測出通過輸入相應數據而使得由所述修正處理檢測單元所檢測出的修正處理被執(zhí)行的外部實體;以及外部實體判定單元,其判定通過所述外部實體檢測單元所檢測出的外部實體是否包含于所述作為修正基礎的圖表中,根據通過所述外部實體判定單元所判定的判定結果,判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證。
3.根據權利要求1所述的驗證支持裝置,其特征在于,該驗證支持裝置具備邏輯驗證信息生成單元,其生成與對所述設計對象執(zhí)行的邏輯驗證有關的信息;以及合格與否判定單元,其根據通過所述邏輯驗證信息生成單元所生成的與邏輯驗證有關的信息,判定由通過所述圖表輸入單元所輸入的修正后的圖表所表現的設計對象在邏輯驗證中是否合格,所述修正處理檢測單元在通過所述合格與否判定單元判定為在邏輯驗證中不合格時,對通過所述圖表輸入單元所輸入的修正后的圖表和作為修正基礎的圖表進行比較,檢測出經修正的處理。
4.根據權利要求3所述的驗證支持裝置,其特征在于,所述通用判定單元具備源碼提取單元,其在通過所述合格與否判定單元判定為在邏輯驗證中合格時,從表現在該邏輯驗證中合格的設計對象的設計內容的源碼群中,提取在該合格的邏輯驗證中使用的源碼、和對該源碼進行了修正的修正后的源碼;修正記述檢測單元,其對通過所述源碼提取單元所提取的源碼之間進行比較,檢測出經修正的記述(以下稱為“修正記述”);處理檢索單元,其從表現在所述邏輯驗證中合格的設計對象的圖表以外的其他圖表中,檢索出利用由所述修正記述檢測單元檢測出的修正記述所表現的處理;以及處理判定單元,其判定通過所述處理檢索單元檢索出的處理,是否包含于表現在所述邏輯驗證中合格的設計對象的圖表中,所述測試平臺輸出單元根據通過所述處理判定單元所判定的判定結果,輸出在所述處理檢索單元檢索出的處理的邏輯驗證中使用的測試平臺。
5.一種驗證支持方法,該方法通過對按時間系列來表現設計對象的處理的圖表進行修正,來支持利用修正后的圖表所表現的設計對象的邏輯驗證,其特征在于,該方法包括圖表輸入步驟,接受所述修正后的圖表的輸入;修正處理檢測步驟,根據作為修正基礎的圖表和通過所述圖表輸入步驟輸入的修正后的圖表,檢測經修正的處理(下面稱為“修正處理”);通用判定步驟,根據通過所述修正處理檢測步驟所檢測出的修正處理,判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證;以及測試平臺輸出步驟,根據通過所述通用判定步驟所判定的判定結果,輸出所述測試平臺。
6.根據權利要求5所述的驗證支持方法,其特征在于,所述通用判定步驟包括外部實體檢測步驟,從表現所述設計對象的修正后的圖表中從外部執(zhí)行數據輸入的外部實體群中,檢測出通過輸入相應數據而使得由所述修正處理檢測步驟所檢測出的修正處理被執(zhí)行的外部實體;以及外部實體判定步驟,判定通過所述外部實體檢測步驟所檢測出的外部實體是否包含于所述作為修正基礎的圖表中,根據通過所述外部實體判定步驟所判定的判定結果,判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證。
7.根據權利要求5所述的驗證支持方法,其特征在于,所述驗證支持方法包括邏輯驗證信息生成步驟,生成與對所述設計對象執(zhí)行的邏輯驗證有關的信息;以及合格與否判定步驟,根據通過所述邏輯驗證信息生成步驟所生成的與邏輯驗證有關的信息,判定由通過所述圖表輸入步驟所輸入的修正后的圖表所表現的設計對象在邏輯驗證中是否合格,所述修正處理檢測步驟在通過所述合格與否判定步驟判定為在邏輯驗證中不合格時,對通過所述圖表輸入步驟所輸入的修正后的圖表和作為修正基礎的圖表進行比較,檢測出所述修正處理。
8.根據權利要求7所述的驗證支持方法,其特征在于,所述通用判定步驟包括源碼提取步驟,在通過所述合格與否判定步驟判定為在邏輯驗證中合格時,從表現在該邏輯驗證中合格的設計對象的設計內容的源碼群中,提取在該合格的邏輯驗證中使用的源碼、和對該源碼進行了修正的修正后的源碼;修正記述檢測步驟,對通過所述源碼提取步驟所提取的源碼之間進行比較,檢測出經修正的記述(以下稱為“修正記述”);處理檢索步驟,從表現在所述邏輯驗證中合格的設計對象的圖表以外的其他圖表中,檢索出利用由所述修正記述檢測步驟檢測出的修正記述所表現的處理;以及處理判定步驟,判定通過所述處理檢索步驟檢索出的處理,是否包含于表現在所述邏輯驗證中合格的設計對象的圖表中,所述測試平臺輸出步驟根據通過所述處理判定步驟所判定的判定結果,輸出在所述處理檢索步驟檢索出的處理的邏輯驗證中使用的測試平臺。
9.一種驗證支持程序,實現通過對按時間系列來表現設計對象的處理的圖表進行修正,來支持利用修正后的圖表所表現的設計對象的邏輯驗證的驗證支持方法,其特征在于,該驗證支持程序使計算機執(zhí)行如下步驟圖表輸入步驟,接受所述修正后的圖表的輸入;修正處理檢測步驟,根據作為修正基礎的圖表和通過所述圖表輸入步驟輸入的修正后的圖表,檢測經修正的處理(下面稱為“修正處理”);通用判定步驟,根據通過所述修正處理檢測步驟所檢測出的修正處理,判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證;以及測試平臺輸出步驟,根據通過所述通用判定步驟所判定的判定結果,輸出所述測試平臺。
10.根據權利要求9所述的驗證支持程序,其特征在于,所述通用判定步驟包括外部實體檢測步驟,從表現所述設計對象的修正后的圖表中從外部執(zhí)行數據輸入的外部實體群中,檢測出通過輸入相應數據而使得由所述修正處理檢測步驟所檢測出的修正處理被執(zhí)行的外部實體;以及外部實體判定步驟,判定通過所述外部實體檢測步驟所檢測出的外部實體是否包含于所述作為修正基礎的圖表中,所述驗證支持程序使計算機根據通過所述外部實體判定步驟所判定的判定結果,來判定在利用所述作為修正基礎的圖表所表現的設計對象的邏輯驗證中使用的測試平臺,能否通用于利用所述修正后的圖表所表現的設計對象的邏輯驗證。
11.根據權利要求9所述的驗證支持程序,其特征在于,所述驗證支持程序包括邏輯驗證信息生成步驟,生成與對所述設計對象執(zhí)行的邏輯驗證有關的信息;以及合格與否判定步驟,根據通過所述邏輯驗證信息生成步驟所生成的與邏輯驗證有關的信息,判定由通過所述圖表輸入步驟所輸入的修正后的圖表所表現的設計對象在邏輯驗證中是否合格,所述修正處理檢測步驟在通過所述合格與否判定步驟判定為在邏輯驗證中不合格時,對通過所述圖表輸入步驟所輸入的修正后的圖表和作為修正基礎的圖表進行比較,檢測出所述修正處理。
12.根據權利要求11所述的驗證支持程序,其特征在于,所述通用判定步驟包括源碼提取步驟,在通過所述合格與否判定步驟判定為在邏輯驗證中合格時,從表現在該邏輯驗證中合格的設計對象的設計內容的源碼群中,提取在該合格的邏輯驗證中使用的源碼、和對該源碼進行了修正的修正后的源碼;修正記述檢測步驟,對通過所述源碼提取步驟所提取的源碼之間進行比較,檢測出經修正的記述(以下稱為“修正記述”);處理檢索步驟,從表現在所述邏輯驗證中合格的設計對象的圖表以外的其他圖表中,檢索出利用由所述修正記述檢測步驟檢測出的修正記述所表現的處理;以及處理判定步驟,判定通過所述處理檢索步驟檢索出的處理,是否包含于表現在所述邏輯驗證中合格的設計對象的圖表中,所述測試平臺輸出步驟根據通過所述處理判定步驟所判定的判定結果,輸出在所述處理檢索步驟檢索出的處理的邏輯驗證中使用的測試平臺。
13.一種記錄介質,該記錄介質記錄了權利要求9~12中任一項所述的驗證支持程序。
全文摘要
本發(fā)明提供驗證支持裝置、驗證支持方法。驗證支持裝置(101)通過對按時間序列來表現設計對象的處理的順序圖(300)進行修正,來支持利用修正后的順序圖(301)所表現的設計對象的邏輯驗證。圖表提取部(1006)提取修正后的順序圖(301)。修正處理檢測部(1009)對作為修正基礎的順序圖(300)和修正后的順序圖(301)進行比較,檢測出修正處理(827a、828a)。通用判定部(1010)基于修正處理(827a、828a),判斷在利用作為修正基礎的順序圖所表現的設計對象的回歸測試中使用的測試平臺,是否能夠通用于利用修正后的順序圖(301)所表現的設計對象的回歸測試。測試平臺(1011)基于通用判定部(1010)的判定結果輸出測試平臺。
文檔編號G06F17/50GK1926548SQ20048004228
公開日2007年3月7日 申請日期2004年3月3日 優(yōu)先權日2004年3月3日
發(fā)明者佐佐木貴行, 安倍健志 申請人:富士通株式會社