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

驗證芯片設(shè)計的方法

文檔序號:6635867閱讀:378來源:國知局
驗證芯片設(shè)計的方法
【專利摘要】提供一種驗證芯片設(shè)計的方法。所述方法包括:(A)根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項以及測試代碼;(B)基于測試代碼隨機測試功能覆蓋項,以獲得每次隨機測試結(jié)束時的累計功能覆蓋率;(C)在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間;(D)根據(jù)累計功能覆蓋率的收斂時間更新功能覆蓋項和/或測試代碼,然后基于更新的功能覆蓋項和/或測試代碼返回執(zhí)行步驟(B),其中,所述累計功能覆蓋率是累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。
【專利說明】 驗證芯片設(shè)計的方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及芯片設(shè)計【技術(shù)領(lǐng)域】,更具體地講,涉及一種驗證芯片設(shè)計的方法。

【背景技術(shù)】
[0002]驗證芯片設(shè)計就是驗證所設(shè)計的邏輯代碼是否符合預(yù)期的要求(例如,是否能實現(xiàn)預(yù)期的功能等),是否符合原來定義好的規(guī)范。隨著芯片設(shè)計的復(fù)雜度不斷提高和規(guī)模不斷增大,驗證芯片設(shè)計所需的時間越來越長,已經(jīng)占整個開發(fā)周期的70%,甚至更多。
[0003]目前,驗證芯片設(shè)計的方法大多基于以累計功能覆蓋率驅(qū)動的隨機驗證流程。圖1示出現(xiàn)有的驗證芯片設(shè)計的方法的流程圖。如圖1所示,在步驟S101,根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項以及測試代碼。在步驟S102,基于測試代碼隨機測試功能覆蓋項,以獲得每次隨機測試結(jié)束時的累計功能覆蓋率。累計功能覆蓋率簡單地說是一個比例數(shù)據(jù),指累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。驗證工作的目標就是盡量使累計功能覆蓋率達到預(yù)設(shè)值。因此,在步驟S103,判斷累計功能覆蓋率是否達到預(yù)設(shè)值。在累計功能覆蓋率達到預(yù)設(shè)值的情況下,驗證工作完成;在累計功能覆蓋率沒有達到預(yù)設(shè)值的情況下,返回執(zhí)行步驟S102,繼續(xù)進行隨機測試。通過現(xiàn)有的驗證方式進行芯片設(shè)計的驗證所需時間較長。


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

[0004]本發(fā)明的示例性實施例在于提供一種驗證芯片設(shè)計的方法,其能夠有效地預(yù)測芯片設(shè)計的驗證的完成時間并據(jù)此更新功能覆蓋項、測試代碼,以保證盡快、順利地完成芯片設(shè)計的驗證工作。
[0005]根據(jù)本發(fā)明提供一種驗證芯片設(shè)計的方法,包括:(A)根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項以及測試代碼;(B)基于測試代碼隨機測試功能覆蓋項,以獲得每次隨機測試結(jié)束時的累計功能覆蓋率;(C)在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間;(D)根據(jù)累計功能覆蓋率的收斂時間更新功能覆蓋項和/或測試代碼,然后基于更新的功能覆蓋項和/或測試代碼返回執(zhí)行步驟(B),其中,所述累計功能覆蓋率是累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。
[0006]可選地,步驟(C)包括:每隔預(yù)定隨機測試次數(shù)或每隔預(yù)定時間,在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間。
[0007]可選地,步驟(C)包括:(Cl)在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率,確定時間和累計功能覆蓋率之間的擬合曲線;(c2)確定所述擬合曲線的收斂時間,其中,所述擬合曲線第一次達到預(yù)定值的累計功能覆蓋率時對應(yīng)的時間為擬合曲線的收斂時間。
[0008]可選地,在步驟(D)中,在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,更新功能覆蓋項和/或測試代碼。
[0009]可選地,在步驟(D)中,在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,根據(jù)累計功能覆蓋率的收斂時間與目標完成時間之間的時間差更新功能覆蓋項和/或測試代碼。
[0010]可選地,所述方法還包括:(E)在累計功能覆蓋率的收斂時間沒有超過目標完成時間的情況下,返回步驟(B)。
[0011]根據(jù)本發(fā)明示例性實施例的驗證芯片設(shè)計的方法,可以有效地預(yù)測芯片設(shè)計的驗證的完成時間并據(jù)此更新功能覆蓋項、測試代碼,以保證盡快、順利地完成芯片設(shè)計的驗證工作。
[0012]將在接下來的描述中部分闡述本發(fā)明總體構(gòu)思另外的方面和/或優(yōu)點,還有一部分通過描述將是清楚的,或者可以經(jīng)過本發(fā)明總體構(gòu)思的實施而得知。

【專利附圖】

【附圖說明】
[0013]通過下面結(jié)合示例性地示出實施例的附圖進行的描述,本發(fā)明示例性實施例的上述和其他目的和特點將會變得更加清楚,其中:
[0014]圖1示出現(xiàn)有的驗證芯片設(shè)計的方法的流程圖;
[0015]圖2示出根據(jù)本發(fā)明示例性實施例的驗證芯片設(shè)計的方法的流程圖。

【具體實施方式】
[0016]現(xiàn)將詳細參照本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中,相同的標號始終指的是相同的部件。以下將通過參照附圖來說明所述實施例,以便解釋本發(fā)明。
[0017]圖2示出根據(jù)本發(fā)明示例性實施例的驗證芯片設(shè)計的方法的流程圖。
[0018]如圖2所示,在步驟S201,根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項以及測試代碼。具體說來,根據(jù)需要驗證的芯片設(shè)計預(yù)期要實現(xiàn)的功能確定各功能覆蓋項以及測試代碼,各功能覆蓋項分別對應(yīng)于該芯片設(shè)計需要實現(xiàn)的各個具體功能。為了測試到各個功能覆蓋項,需要確定測試代碼,以基于測試代碼來測試各功能覆蓋項。
[0019]在步驟S202,基于測試代碼隨機測試功能覆蓋項,以獲得每次隨機測試結(jié)束時的累計功能覆蓋率。
[0020]這里,累計功能覆蓋率是累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。例如,第η次隨機測試結(jié)束時的累計功能覆蓋率是指通過已完成的η次隨機測試測試完的功能覆蓋項占全部功能覆蓋項的百分比。
[0021]在步驟S203,判斷累計功能覆蓋率是否達到預(yù)設(shè)值。在累計功能覆蓋率達到預(yù)設(shè)值的情況下,驗證工作完成;在累計功能覆蓋率沒有達到預(yù)設(shè)值的情況下,進入步驟S204。預(yù)設(shè)值可以是固定值(例如,100% ),也可以是驗證人員根據(jù)實際驗證情況所設(shè)定的值。
[0022]在步驟S204,在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間。
[0023]作為示例,可每隔預(yù)定隨機測試次數(shù)或每隔預(yù)定時間,在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間。
[0024]作為示例,在累計功能覆蓋率沒有達到預(yù)定值的情況下,可首先根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率,確定時間和累計功能覆蓋率之間的擬合曲線。
[0025]可利用各種適合的曲線擬合方法根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率,確定時間和累計功能覆蓋率之間的擬合曲線。例如,可以利用最小二乘、偏最小二乘等方法。
[0026]然后,確定擬合曲線的收斂時間。這里,擬合曲線的收斂時間是指擬合曲線第一次達到預(yù)定值的累計功能覆蓋率時對應(yīng)的時間。
[0027]在步驟S205,根據(jù)累計功能覆蓋率的收斂時間更新功能覆蓋項和/或測試代碼,然后基于更新的功能覆蓋項和/或測試代碼返回執(zhí)行步驟S20。換言之,以預(yù)測的驗證完成時間來調(diào)整功能覆蓋項和/或測試代碼,然后基于調(diào)整的功能覆蓋項和/或測試代碼返回執(zhí)行步驟S202。具體說來,如果累計功能覆蓋率的收斂時間較大,即還需較長時間才能夠完成驗證工作,則可對功能覆蓋項、測試代碼等進行調(diào)整,以保證能夠按時完成驗證工作。例如,可對始終沒有測試到的功能覆蓋項進行調(diào)整(修改或者刪除);也可對與該功能覆蓋項對應(yīng)的測試代碼作更明確地限定,以保證能夠盡快地測試到該功能覆蓋項。此外,本領(lǐng)域技術(shù)人員應(yīng)該理解,也可通過其他適合的方法對功能覆蓋項、測試代碼等進行更新,以保證在目標完成時間內(nèi)順利完成驗證工作。
[0028]作為示例,可在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,更新功能覆蓋項和/或測試代碼。
[0029]具體說來,以目標完成時間作為參考,累計功能覆蓋率的收斂時間超過目標完成時間,即,預(yù)測在目標完成時間內(nèi)無法完成驗證工作,因此,需要更新功能覆蓋項、測試代碼等。而在累計功能覆蓋率的收斂時間沒有超過目標完成時間的情況下,即,預(yù)測驗證完成時間不會超過目標完成時間,因此,不需要調(diào)整功能覆蓋項和/或測試代碼,可直接返回步驟S202,繼續(xù)進行隨機測試。
[0030]作為示例,可在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,根據(jù)累計功能覆蓋率的收斂時間與目標完成時間之間的時間差更新功能覆蓋項和/或測試代碼。
[0031]g卩,以預(yù)測的驗證完成時間與目標完成時間之間的時間差為依據(jù)來調(diào)整功能覆蓋項、測試代碼等。如果時間差較大(例如,時間差超過預(yù)設(shè)值),則需要對功能覆蓋項、測試代碼等作較大的調(diào)整,以保證在目標完成時間內(nèi)可以完成驗證工作。如果時間差較小(例如,時間差小于等于預(yù)設(shè)值),則不需要對功能覆蓋項、測試代碼等作調(diào)整或僅作較小的調(diào)整即可。
[0032]下面,以需要驗證的芯片設(shè)計是用于數(shù)據(jù)輸入的32位總線和用于數(shù)據(jù)輸出的8位總線為例,來說明根據(jù)本發(fā)明示例性實施例的驗證芯片設(shè)計的方法的流程。
[0033]這里,該芯片設(shè)計的預(yù)期目標如下:用于數(shù)據(jù)輸入的32位總線(以下,稱為BUS1)的數(shù)據(jù)傳輸格式為:8位地址、16位數(shù)據(jù)、4位傳輸類型、I位方向、3位傳輸長度,其中,方向位為“O”時執(zhí)行讀操作、方向位為“I”是執(zhí)行寫操作;讀操作和寫操作之間必須有2到10個時隙;傳輸長度位為“000”至“110”。用于數(shù)據(jù)輸出的8位總線(以下,稱為BUS2)的數(shù)據(jù)傳輸格式包括:4位地址、4位數(shù)據(jù),其中,數(shù)據(jù)位為“0000”至“1111” ;地址位為“0000”至“1110”。
[0034]首先,根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項為:功能覆蓋項1:BUS1的方向位為“O”時執(zhí)行讀操作、BUSl的方向位為“I”時執(zhí)行寫操作;功能覆蓋項2:BUS1的傳輸長度位為“000”、“001”、“010”、“011”、“100”、“101”、“110”;功能覆蓋項 3 -BUSl 讀操作和寫操作之間有2到10個時隙;功能覆蓋項4:BUS2的數(shù)據(jù)位為“0000”至“1111”;功能覆蓋項5:BUS2的地址位為“0000”至“1111”。
[0035]根據(jù)需要驗證的芯片設(shè)計確定測試代碼,基于確定的測試代碼可實現(xiàn):隨機生成用于BUSl輸入的數(shù)據(jù),BUS2將BUSl輸入的數(shù)據(jù)輸出。
[0036]然后,基于測試代碼隨機測試功能覆蓋項,獲得每次隨機測試結(jié)束時的累計功能覆蓋率,即,獲得每次隨機測試結(jié)束時累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。例如,基于測試代碼隨機生成的用于BUSl輸入的數(shù)據(jù)中的方向位為“O”時,檢測到BUSl執(zhí)行了讀操作,基于測試代碼隨機生成的用于BUSl輸入的數(shù)據(jù)中的方向位為“I”時,檢測到BUSl執(zhí)行了寫操作,則確定功能覆蓋項I已被測試完。BUSl的傳輸長度位為“000”至“110”都已被檢測到,則確定功能覆蓋項2已被測試完。BUSl讀操作和寫操作之間有2到10個時隙都已被測試到,且BUSl讀操作和寫操作之間沒有除2到10之外的其他個時隙,則確定功能覆蓋項3已被測試完。BUS2輸出的數(shù)據(jù)的數(shù)據(jù)位為從“0000”至“1111”都已被檢測到,則確定功能覆蓋項4已被測試完。BUS2輸出的數(shù)據(jù)的地址位為從“0000”至“1111”都已被檢測到,則確定功能覆蓋項5已被測試完。
[0037]在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間。
[0038]當累計功能覆蓋率的收斂時間大于目標完成時間且與目標完成時間之間的時間差較小時,可不對功能覆蓋項、測試代碼等作調(diào)整,僅繼續(xù)進行隨機測試即可,例如,再進行500次隨機測試后所有功能覆蓋項即可被全部測試到。
[0039]當累計功能覆蓋率的收斂時間大于目標完成時間且與目標完成時間之間的時間差較大時,則需要對功能覆蓋項、測試代碼等作較大的調(diào)整,以保證在目標完成時間內(nèi)可以完成驗證工作。例如,BUSl的傳輸長度位為“110”始終沒有被測試到,可通過調(diào)整測試代碼,使用于BUSl輸入的數(shù)據(jù)中的傳輸長度位為“ 110”,這樣,僅需要再進行一次隨機測試就可以測試到該功能覆蓋項。例如,BUS2的地址位為“1111”始終沒有測試到,如果設(shè)計本身不要求這個地址,是不會輸出這個地址的,因此,其屬于多余的功能覆蓋項,需要將其刪除。
[0040]根據(jù)本發(fā)明的示例性實施例的驗證芯片設(shè)計的方法,可以有效地預(yù)測芯片設(shè)計的驗證的完成時間并據(jù)此更新功能覆蓋項、測試代碼,以保證盡快、順利地完成芯片設(shè)計的驗證工作。
[0041]雖然已表示和描述了本發(fā)明的一些示例性實施例,但本領(lǐng)域技術(shù)人員應(yīng)該理解,在不脫離由權(quán)利要求及其等同物限定其范圍的本發(fā)明的原理和精神的情況下,可以對這些實施例進行修改。
【權(quán)利要求】
1.一種驗證芯片設(shè)計的方法,包括: (A)根據(jù)需要驗證的芯片設(shè)計確定功能覆蓋項以及測試代碼; (B)基于測試代碼隨機測試功能覆蓋項,以獲得每次隨機測試結(jié)束時的累計功能覆蓋率; (C)在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間; (D)根據(jù)累計功能覆蓋率的收斂時間更新功能覆蓋項和/或測試代碼,然后基于更新的功能覆蓋項和/或測試代碼返回執(zhí)行步驟(B), 其中,所述累計功能覆蓋率是累計的已測試完的功能覆蓋項占全部功能覆蓋項的百分比。
2.如權(quán)利要求1所述的方法,其中,步驟(C)包括: 每隔預(yù)定隨機測試次數(shù)或每隔預(yù)定時間,在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率計算累計功能覆蓋率的收斂時間。
3.如權(quán)利要求1所述的方法,其中,步驟(C)包括: (cl)在累計功能覆蓋率沒有達到預(yù)定值的情況下,根據(jù)已完成的各次隨機測試對應(yīng)的測試結(jié)束時間和累計功能覆蓋率,確定時間和累計功能覆蓋率之間的擬合曲線; (c2)確定所述擬合曲線的收斂時間,其中,所述擬合曲線第一次達到預(yù)定值的累計功能覆蓋率時對應(yīng)的時間為擬合曲線的收斂時間。
4.如權(quán)利要求1所述的方法,其中,在步驟(D)中,在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,更新功能覆蓋項和/或測試代碼。
5.如權(quán)利要求4所述的方法,其中,在步驟(D)中,在累計功能覆蓋率的收斂時間超過目標完成時間的情況下,根據(jù)累計功能覆蓋率的收斂時間與目標完成時間之間的時間差更新功能覆蓋項和/或測試代碼。
6.如權(quán)利要求4所述的方法,還包括: (E)在累計功能覆蓋率的收斂時間沒有超過目標完成時間的情況下,返回步驟(B)。
【文檔編號】G06F17/50GK104462674SQ201410691966
【公開日】2015年3月25日 申請日期:2014年11月25日 優(yōu)先權(quán)日:2014年11月25日
【發(fā)明者】呂明 申請人:三星半導(dǎo)體(中國)研究開發(fā)有限公司, 三星電子株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
永胜县| 资中县| 弥勒县| 安仁县| 盐亭县| 盐源县| 玉田县| 广河县| 朔州市| 德安县| 马关县| 六枝特区| 宁河县| 鸡泽县| 文昌市| 张家港市| 武定县| 永川市| 乌鲁木齐县| 武宣县| 石家庄市| 龙里县| 余庆县| 纳雍县| 开封市| 龙海市| 枣庄市| 宁陵县| 温州市| 密山市| 和静县| 东乡县| 偏关县| 龙海市| 白水县| 玛纳斯县| 获嘉县| 天祝| 班玛县| 云龙县| 右玉县|