利用數字水印技術進行ip核版權確認的方法
2023-04-27 16:32:11 4
專利名稱:利用數字水印技術進行ip核版權確認的方法
技術領域:
本發明屬於IP核集成電路的數字水印技術領域,尤其是一種利用數字水印 技術進行IP核版權確認的方法。
背景技術:
隨著集成電路技術和產業的迅速發展,集成電路的設計方法也在不斷的進 歩,設計者們希望能夠集成更多的功能於單獨的晶片,而同時來自市場需求的壓 力,需要具有更多出發點的設計,更短的設計周期,更強大的設計生產力。因此 基於IP重用的軟硬體協同設計的SOC (System on Chip,片上系統)設計思路己 成為當今設計方法學的主流。其中IP核是具有智慧財產權(Intellectual Property) 的集成電路芯核的簡稱,在IP供應商、第三方專用集成電路庫供應商、IP集成 工具供應商以及像其他相關的業界組織的共同努力下,IP的可重用性和期待價 值已經有了很大的提高。
然而,現今限制IP重用技術發展的主要因素是缺少有效而經濟的機制來保 護IP創建者和IP所有者的合法權利。目前業界通常採用直接加密數據文件或者 籤訂保密協議的方式來進行IP的保護,但是前者需要耗費大量成本,而後者將 冒較大的洩密危險。對於絕大多數的IP,基於數字水印的方法將是用於版權保 護的一個新選擇,因為它提供了相對可靠的IP認證方法而代價甚少。數字水印 技術是將信息嵌入到偽裝載體中的一種技術,該技術可以使得所傳送的信息不可 察覺。在IP保護領域,數字水印指嵌入到IP內部的一些表徵版權的信息,可以 嵌入到IP設計過程中的各個設計層次。基於數字水印的IP保護平臺應該包括兩 部分組成,數字水印的嵌入以及數字水印的提取。保護平臺把IP提供者和使用 者的信息以數字水印的方式嵌入到IP當中,這樣通過提取IP當中的水印信息就 可以判斷IP的版權歸屬以及使用的合法性。
目前提出的多種基於數字水印的IP保護方法均只停留於概念提出和實驗的階段,在水印的產生、加入、提取及驗證等過程中需要很多的人工工作,缺少一 個可行的、集成而自動化的方法來提高效率。同時目前提出的IP保護方法均只 關注到技術實現的層面,而沒有將其同集成電路領域中現有的IP交易以及IP使 用的模式相結合起來,因此缺少一個完整的IP保護的應用模式來提高IP保護方 法的實用性和可行性。
發明內容
本發明的目的在於提供一種集成而自動化的基於數字水印技術的IP保護方法。
本發明所述的IP保護方法的思路在於,針對IP設計過程中的版圖層加入水印。 水印加入的對象是GDS(或者等同格式的比如DEF,CIF,Oasis等)這樣的版圖數 據。這些數據文件實際上是定義了一系列用於製造掩模版的幾何圖形。類似於多 媒體圖像中的"像素",如果將這些幾何圖形格點化,格子的邊長一般可以使用最 小的工藝特徵尺寸,每個格子都有自己的屬性,例如是否與多晶矽或者金屬有重 合等,它們就像是這些格點的"顏色"。在常用的版圖編輯器裡我們都能直觀的看 到這些"顏色",不同的設計具有不同的版圖,即他們的版圖存在很多不同"顏色" 的格點。換句話說,這些點就代表了這個版圖的版權資訊。本方法通過將所有選 中的特定位置的格點屬性的歸一化,例如和多晶矽層有重合,來達到特定的代表 版權資訊水印的嵌入,從而得到帶有水印信息的版圖數據文件。水印提取的過程 並不是水印嵌入過程的逆序,而是與其基本相同,通過檢測版圖數據文件中所有 選中的特定位置的格點的屬性,例如是否和多晶矽層有重合來判定IP的版權歸屬 以及使用的合法性。
本發明所述的IP保護方法的特徵在於包括下列歩驟
—-水印嵌入,具體包括下列步驟
(1) 參數設定將用戶配置的物理版圖數據、初始水印文件信息輸入計算機,
所述初始水印信息文件包含了IP的版權資訊、所要生成的水印點的數量及最後成
功嵌入的最小百分比、水印點的初始坐標、版圖中水印點的邊長;
(2) 解析物理版圖數據計算機按照制定用戶配置的工藝文件和參數讀取物理版圖數據,對其中的圖形和層信息按照版圖文件標準進行解析,將其轉化為易 於處理的數據結構,方便程序處理;
(3) 建立水印點的初始坐標計算機根據用戶提交的初始水印信息文件, 建立水印點的初始坐標。設計人員根據自己需要的水印強度配置水印點的數量, 點越多強度越大,但是對電路的影響越大和嵌入的成功率越低;
(4) 確定水印點坐標的偏移量利用單向的Hash函數和偽隨機數發生函數, 根據初始水印文件信息和所需水印點的數量產生偽隨機分布的水印點坐標的偏 移量;
(5) 確定偽隨即分布水印點計算機根據用戶提交的原始版圖數據,利用 水印點的初始坐標以及坐標偏移量,將水印點擴散到版圖中去,得到偽隨機分布 的水印點;
(6) 根據水印規則判斷水印點是否加入到版圖數據文件,包括下列具體歩
驟
(6.1) 根據用戶輸入的版圖數據,判斷偽隨機分布後相應的水印點是否和原
有版圖中的多晶矽層重合,即版圖中的多晶矽圖形是否與水印點對應的圖形是否
交疊,判斷由程序根據前面的從版圖中得到的數據運算得到;
(6.2) 根據判斷結果,記錄重合的水印點為成功嵌入水印信息的點,在沒有 與多晶矽層重合的水印點處,判斷是否可以添加額外的多晶矽塊來滿足水印規 則,並且不會和版圖設計規則發生衝突,這個是否衝突也是由程序判斷圖形之間 的交疊與否和距離大小來確定的;
(6.3) 根據判斷結果在不會發生與設計規則衝突的水印點處添加額外的多晶 矽塊,塊的邊長等同于格點化版圖的格子邊長,並記錄為成功嵌入水印信息的點, 同時記錄會發生衝突的水印點坐標信息為未成功嵌入水印信息的點;
(7) 計算機判斷成功嵌入的水印點的百分比是否達到之前的設定標準;若 達到,則說明水印點成功嵌入到版圖數據中,則執行步驟(8);否則循環執行 步驟(5) (7)直至達到所需要的成功百分比;
(8) 向原物理版圖數據中所有記錄為可以添加多晶矽塊的位置,按照版圖
文件標準定義的格式寫入多晶矽塊數據,即得到帶有水印的物理版圖數據;輸出 所有水印點的位置信息至記錄文件,該文件記錄了所有水印點被嵌入時的循環輪次,在提取水印時是恢復水印點坐標的必需信息; ——水印提取,具體包括下列歩驟
(1) 參數設定將用戶配置的物理版圖數據、初始水印文件信息輸入計算 機,所述初始水印信息文件包含了IP的版權資訊、所要生成的水印點的數量及最 後成功嵌入的最小百分比、水印點的初始坐標、版圖中水印點的邊長;
(2) 計算機按照制定的用戶配置的工藝文件和參數讀取物理版圖數據,對 其中的圖形和層信息按照版圖文件標準進行解析,將其轉化為易於處理的數據結 構(同嵌入)。
(3) 計算機根據用戶提交的初始水印信息文件,得到水印點的初始坐標, 其中初始水印信息文件包含了IP的版權資訊,所要生成的水印點的數量及最後成 功嵌入的最小百分比,水印點的初始坐標,版圖中水印點的邊長;
(4) 計算機利用單向的Hash函數,根據所要生成的水印點的數量,對IP的
版權資訊進行處理,得到足夠多(同嵌入過程中的水印點數量)的偽隨機分布的
水印點坐標的偏移量;
(5) 計算機根據用戶輸入的初始水印點位置信息文件,由每個水印點的成 功嵌入輪次組成,恢復出所有最終成功嵌入的水印點的坐標信息;
(6) 計算機根據用戶輸入的待提取水印的版圖數據,判斷最終成功嵌入的 水印點是否和此版圖中的多晶矽層重合;
(7) 根據判斷結果,輸出水印提取報告,所述報告包括判斷重合的比例以 及版權判斷結果。
所述的易於處理的數據結構為版圖文件經過處理轉化為兩個鍊表,StrPtr 鍊表記錄版圖中所有出現過的單元的名稱和位置信息,LeafStrPtr鍊表則記錄了 版圖中各單元的圖形信息。
所述判斷偽隨機分布後相應的水印點是否和原有版圖中的多晶矽層重合,水 印規則檢測分兩步,第一步根據當前水印點的坐標査詢StrPtr鍊表,確定水印點 是否在某個單元範圍內,如果水印點在其範圍內,則依據此單元的名稱在 LeafStrPtr鍊表中查詢找到該單元,並根據這些準確的邊界數據計算水印點是否 在圖形上即重合,或者在圖形外距離是多少;第二步根據StrPtr鍊表査詢結果中 單元的位置和姿態信息,將水印點坐標映射到由LeafStrPtr鍊表查詢得到的單元上,根據水印點在該單元中的坐標和單元中圖形的邊界信息,計算出水印點是否 與單元中的圖形重合或交疊,如果不重合則計算他們之間的最小距離,如果它比 代工廠的設計規則所允許的最小距離大那麼就代表不違反設計規則,可以嵌入。
還包括下列步驟建立有公認的可信任的權威機構作為第三方機構,負責 保存和記錄每一個合法發布的IP以及每一個IP保護工具,即IP資料庫和IP保護工 具資料庫,任何IP以及IP保護工具合法發布前,均需要到第三方進行申請,驗證 和登記,記錄內容包括IP的設計數據,IP版權資訊,IP使用者的身份信息,所採 用的IP保護方法的信息,嵌入的相關水印信息,同時負責IP水印的嵌入,提取, 檢測以及版權歸屬、IP來源認證。
所述解析各種集成電路設計數據文件、按照用戶要求產生水印點、嵌入水 印信息以及輸出包含水印點信息的IP設計數據以及其他一些輔助功能通過水印 工具來實現,所述水印工具的母體dm—shell是一個開放式結構且可擴展的平臺。
實驗證明,本發明所述的IP保護方法具有以下優點
(1) 此方法針對的對象是GDS(或者等同格式的比如DEF,CIF,Oasis等)這樣 的版圖數據。這些數據文件實際上是定義了一系列用於製造掩模版的幾何信息。 這些幾何圖像拼起來構成了一副完整的版圖,而從另一方面看他們和一般的多媒 體圖片沒有太大的區別。無論是全定製設計還是基於標準單元綜合出來的版圖, 在這一點上都是相同的。因此可以對不同設計方法,不同工藝下所有種類的硬IP 進行保護,具有很好的普適性。這裡的硬IP是指以版圖形式進行交易或者發布的
IP;
(2) 此方法可以基於Linux平臺,利用C語言實現完全的自動化和工具化,使 用起來非常簡潔方便;
(3) 此方法和現有的集成電路設計流程兼容,當IP設計者按照正常的設計流 程完成版圖層的設計之後,可以選擇直接進行下一步的工作或者釆用此方法對此 設計進行保護,若選擇需要,則將原有版圖文件進行完全自動化的水印添加處理 後,得到帶有版權資訊的版圖文件,之後可以正常地進行接下來相應的工作;
(4) 此方法可以在有限的運行時間和和佔用極少的計算機系統資源的前提 下,達到高水印強度,也即水印的高嵌入率;實驗證明,在一個全定製的容量為 16*4的SRAM(靜態隨機存儲器)的設計好的版圖中添加如下所示數量的水印點,在有限的5輪循環中,即可將所有水印點成功嵌入,其中百分比是指各輪循環中 成功嵌入水印點的百分比;
所需嵌入的水印^M^12345
4384%95%97%99%100%
6477%92%97%99%100%
8570%89%96%98%100%
10069%89%96%98%100%
(5)由於此方法僅通過向版圖內添加一些不做任何連接的且尺寸相當於工藝 特徵尺寸的多晶矽塊來達到水印點的嵌入,因此在水印嵌入的前後對於原有IP 的版圖面積,時序性能,功耗等指標影響甚小,因此可以說採用本IP保護方法代 價很小。
本說明書中的附圖僅為圖示的目的而提供,並不對本發明的內容產生任何限制,
其中
圖la示出了本發明中IP保護方法的水印嵌入的流程圖lb示出了本發明中IP保護方法的水印提取的流程圖1C示出了本發明中水印工具對版形的處理方法說明圖ld示出了本發明中水印工具從版權資訊到水印點坐標的流程圖le示出了本發明中水印工具輸出處理結果的示意圖lf示出了本發明中每個水印點的檢査過程的示意圖; 圖lg示出了本發明中設計文件數據結構的構建示意圖2a示出了本發明中簡化的DRC(Design Rule Check:設計規則檢測)算法的效果 圖3示出了本發明中IP保護方法的平臺化水印工具的結構圖4a、 4b示出了本發明中IP保護方法的應用模式和詳細的運作機制流程圖。
具體實施例方式
本發明的一個顯著特徵在於所述的IP保護方法是一種間接保護IP的方法, 並不是直接防止IP被盜用,而是在侵權行為發生後,通過水印的提取,檢測得 到IP的真正的歸屬,同時在明確合法IP交易的雙方之後,除了可以嵌入合法的IP提供商的版權資訊以外還可以嵌入標識合法的IP使用者身份的信息,將帶有 這些信息的水印和IP設計本身相結合,則能夠一直跟蹤IP的使用,從而在侵權 行為發生後,也能檢測IP的來源。其中IP提供商是指任何擁有自主設計和自主 開發IP的企業,機構及個體;IP使用者是指任何購買IP或者IP使用權的企業, 機構及個體。
本發明的另一個特徵在於所述的IP保護方法得以真正實用的前提是必須有 公認的可信任的權威機構作為第三方機構,負責保存和記錄每一個合法發布的IP 以及每一個IP保護工具,即IP資料庫和IP保護工具資料庫。任何IP以及IP保護工 具合法發布前,均需要到第三方進行申請,驗證和登記。記錄內容包括IP的設計 數據,IP版權資訊,IP使用者的身份信息,所採用的IP保護方法的信息,嵌入的 相關水印信息等等,同時負責IP水印的嵌入,提取,檢測以及版權歸屬、IP來源 認證。
本發明的第三個特徵在於所述水印工具的母體dm一shell是一個開放式結構, 且可不斷擴展的平臺。在這個結構下可以根據需要不斷開發的新的可以自由裝載 的擴展功能模塊以及其他一些輔助功能,例如添加新的IP保護方法模塊等等,具 有很大的靈活性。
本發明的第四個特徵在於提出了一個簡化的版圖DRC(DesignRule Check:設 計規則檢測)檢測方法,使的本發明所述的IP保護方法得以實現自動化,並加快 了工具的處理速度。
下面將根據附圖對本發明的具體實施方式
進行詳細說明。 圖la示出了本發明中IP保護方法的水印嵌入流程。 一個已經完成版圖設計的 IP,如果不嵌入水印則可以繼續按照一般的設計流程繼續,如需要數字水印的保 護則進入水印流程。
過程開始,用戶需要提交原始物理版圖數據文件和水印信息文件。水印信息 文件包含IP的版權資訊、所要生成的水印點的數量、水印點的初始坐標及水印嵌 入的循環輪數L(實例中I^8),以及最後成功嵌入的水印點數量佔所需嵌入的水 印點的百分比P,版圖格點邊長的信息。其中IP的版權資訊由IP供應商的信息、 IP本身的名字以及IP發布的版本等一串具有特定含義的文字組成。物理版圖數據 是GDSII格式,這是現在最常用的一種版圖格式。 一個完成的GDSII文件可以直接交給晶片工廠進行生產,顯然保護了它也就保護了IP本身。
GDSII文件是業界通用的版圖文件格式,實際上是由一系列用於實際製造的 掩模版的幾何信息組成。在讀取版圖數據時水印工具會自動識別它的姿態,位置, 輪廓,邊界等信息並把它們按照特定的數據結構記錄下來,為此後的簡化的DRC 檢測作好準備。如圖lc所示,這個單元t-shape中包含了不同層的兩個圖形L和M。 把單元的這個姿態定為0, S卩pose-0,代表初始的正立形態,根據不同的旋轉或 者鏡像定義其餘的各種姿態。如果在調用該單元前,其坐標原點位於點0,那麼 現在點0的坐標,即該單元相對於新原點的偏置,就表示了它的位置。而它的左 下角坐標和右上角坐標,即點7和點6的坐標,表示了單元最大的輪廓邊界(圖 中虛線)。圖形L的準確邊界則可以用其所有頂點來準確描述,即點坐標 0-l-2-3-4-5-0的形式。
版圖文件經過處理轉化為兩個鍊表,如圖lf示出。最常見的版圖文件以GDSII 格式提供,它對應了一系列單元組成的圖形,經過處理最後形成了兩個鍊表, StrPtr鍊表記錄了版圖中所有出現過的單元的名稱和位置信息,包括姿態、輪廓; LeafStrPtr鍊表則記錄了版圖中不同單元的圖形信息,主要是圖形的準確邊界。 這裡的數據結構和此後在嵌入和提取水印過程中都涉及到的水印規則檢測方法 是密切相關的。
LSW雜湊算法是我國自主開發的一種hash算法。這裡使用它對IP的版權資訊 進行處理,得到一個256bit的二進位比特流,然後將其分成8組(1^8),每組32bit, 作為初始隨機種子。根據所要生成的水印點的數量m,利用C語言中自帶的偽隨 機數發生器,得到8組,每組m個坐標的偽隨機分布的水印點表wplstTable,作為 下一步水印點擴散各輪循環的偏移量。
數據準備完成後,計算機根據處理後的版圖數據,利用水印點的初始坐標以 及水印點表中的8申m個坐標偏移量,將m個水印點擴散到版圖中去,並逐個進行 水印規則檢查,最終的目標是找到一組m個儘可能符合水印規則的點,這些點位 置信息記錄roundTable中,整個過程如圖ld所示。
水印規則的判斷是個循環的過程,預先根據水印點表的維度定義循環的輪 數L和用戶認為成功嵌入水印點的百分比P。每輪循環依次從水印點表中取一 組,並查找roundTable中還沒有滿足水印約束的點的位置,然後檢査水印點表中當前列的相同位置上的坐標是否能夠滿足水印約束。如果滿足則把本輪的輪次信 息N和水印點的坐標都記錄到roundTable中。對於已經找到滿足水印約束的坐 標的則跳過。符合水印約束可能有兩種情況,一種是不需要調整原來版圖就滿足, 即"符合";另一種就是原版圖不滿足但是在不違反DRC規則的條件下可以通過 增加一個多晶塊的方式滿足,即"嵌入";如果某水印點在水印點表中其對應得所 有位置上都沒有找到滿足水印約束的坐標,即經過了至少L輪循環仍然沒有符 合,那麼這就是第三種情況"衝突",換句話說在這一點嵌入水印失敗。
每多檢查一輪,滿足水印約束的點所佔的比例Q將越大,因此我們可以設 定一個界限P,比如P-95M,如果Q^P,則我們認為水印嵌入成功;否則經過L 輪循環檢查了整個水印點表仍然沒有達到這個界限P ,那麼有兩個解決辦法, 一是調整水印點的個數,二是重新設定初始水印點的位置或版權資訊生成新的水 印點表,然後重新開始整個水印過程,直到成功。
圖le示出了水印嵌入過程的最後一步,按照固定的格式生成帶有水印的物理 版圖數據文件和水印點位置記錄文件。最終所有的m個水印點的位置信息都將包 含在roundTable中,它包含兩部分內容——水印點在版圖中的坐標以及這個坐標 在水印點表中的位置(即輪次N,也對應相應坐標點表中的列),在這一歩依照 GDSII格式向原物理版圖文件中插入必要的圖形和坐標數據完成水印點的真正 嵌入,另外按照本發明定義的格式將坐標在水印點表中的信息記錄到水印點位置 記錄文件中。
圖lb示出了本發明中IP保護方法的水印提取流程。過程開始用戶需要提交 的物理版圖數據文件,水印信息文件和水印點位置記錄文件。其中物理版圖數據 文件和水印信息文件和水印嵌入相同,系統也將作相同的處理。此外還需要水印 嵌入過程中生成的一個水印位置記錄文件,水印提取過程不需要循環檢查水印點 表的每一組,只需要按照此文件中的記錄恢復出來一組坐標,即最後成功嵌入水 印點的坐標信息,然後對這一組水印坐標進行水印規則檢測,得到滿足水印條件 的比例Q ,然後依此為根據得到結論。顯然這個比例越高則說明該設計和原設 計越相似,這裡也可以規定一個界限P', 一般的P'SP,作為被檢測設計是否成 功提取到水印的門限。
在水印的嵌入和提取過程中都要進行水印規則檢測的流程。它是一個類似於版圖DRC的問題,所有熟悉DRC的人都知道這是一個非常複雜的計算機圖形 學問題。各個EDA公司都在此投入了大量的研究經費和人員,如果我們也遵循 他們相同的方法的話這將是我們一個不可逾越的障礙。 一般DRC的實現難度主 要在於兩點, 一是設計規則種類條目繁多;二是設計圖層眾多且相互之間存在影 響。針對以上兩點本發明中根據水印規則檢測的特殊性對一般的DRC進行了簡 化, 一是只檢測兩個圖形的重合以及外部距離兩種關係,二是只檢測水印多品矽 層及相關的有源區層。如圖2a所示,通過對比可以看出來簡化後的版圖比原版 圖簡單了很多。
水印規則的檢測方法和版圖處理得到的數據結構是密切相關的,在嵌入和提 取的過程中都有所涉及。如圖lg所示,規則檢測分兩歩,第一步根據當前水印 點的坐標查詢StrPtr鍊表,因為它包含了所有單元的輪廓信息,可以確定水印點 是否在某個單元範圍內。如果水印點恰好落在其範圍內,則依據此單元的名稱在 LeafStrPtr鍊表中查詢找到該單元,因為它包含了該單元的所有圖形邊界信息, 程序將根據這些準確的邊界數據計算水印點是否在圖形上(即重合)或者在圖形 外距離是多少。第二步根據StrPtr鍊表查詢結果中單元的位置和姿態信息,將水 印點坐標映射到由LeafStrPtr鍊表査詢得到的單元上。根據水印點在該單元中的 坐標和單元中圖形的邊界信息,程序就能計算出來水印點是否與單元中的圖形重
合(或交疊),如果不重合也能得到他們之間的最小距離。如果它比代工廠的設計 規則所允許的最小距離大那麼就代表不違反設計規則,可以嵌入。
圖3示出了本發明中IP保護方法的工具實現及其結構圖,是Linux系統下 基於shell操作的平臺化水印工具。此水印工具的母體dm—shell是一個丌放式結 構可不斷擴展的平臺。在這個結構下,可以根據需要不斷開發的新的可以自由裝 載的擴展功能模塊以及其他一些輔助功能,例如添加新的IP保護方法模塊等等。 它的主要功能包括解析各種集成電路設計數據文件、按照用戶要求產生水印點、 嵌入水印信息,輸出包含水印點信息的IP設計數據以及其他一些輔助功能。
圖4a示出了本發明所述的IP保護方法的應用模式和運作機制,圖4b示出 了其更詳細的流程圖-
嵌入的過程發生於兩種情況
(1)當一個IP提供商需要在IP中加入水印版權資訊時,向第三方提出申請,第三方根據IP提供商的提供的IP版權資訊,加入時間戳,即提出申請的日期。 第三方利用掌握的圖3所述的IP保護工具,將IP版權資訊及時間戳以水印的形 式加入到IP提供商的提供的需要保護IP設計數據內。這個IP版權資訊及時間 戳是保密的,只有IP提供者和第三方知道。因為加入的水印信息的產生和的嵌 入過程都是由第三方來完成的,並記錄保存,所以可以避免盜用者對原有設計再 嵌入水印的過程。對於這種情況,如果盜用者用盜用的IP要求第三方加入水印, 而第三方恰好沒有檢査出來這個IP是盜用的,那麼由於加入的水印信息有時間 戳,當真正的設計者提出檢測要求的時候,還有可以由時間戳來判斷真^的所有 者;
(2)當IP使用者需要使用一個IP的時候,即向IP提供商購買IP時,第三 方在嵌入提供商版權資訊的同時,還會根據使用者的身份信息生成一個水印,嵌 入到IP當中。這個信息使用者是不知道的,否則他就可以篡改。當IP被盜用時, 通過判斷其中使用者的信息來追蹤IP的來源;
檢測的過程就是對比第三方保存的水印信息和IP內部嵌入的水印信息。這 個過程發生於兩種情況
(1) 當一個IP使用者需要確認購買所得的IP是否合法時,提出申請,第 三方利用資料庫中對於此IP的相關記錄,採用圖3所述的IP保護工具做出檢測, 以驗證IP使用者使用IP的合法性;
(2) 當一個版權不明的可疑IP在交易過程中被發現,任何一方均可提出檢 測申請,第三方利用資料庫中對於此IP的相關記錄,採用圖3所述的P保護工 具做出檢測,以驗證此IP的合法性;
正是因為可信任的第三方對水印進行嵌入,檢測和驗證,保證了水印信息不 被公開,這樣盜用者很難對水印信息進行篡改或去除。同樣,因為盜用者很難得 到版權的水印信息,所以也就無法偽造IP提供者的信息來擾亂其他IP的使用。 此外,由於時間戳的存在,盜用者很難通過在原有設計中再嵌入自己的水印去影 響版權資訊的識別
儘管本發明是參照某些優選實施實例進行說明的,但應該謹記本發明的範圍 並不僅限於這些具體的實施方式。對於本發明所作的修改以及本發明的變型形式 都落在本發明的設計思想與範圍之內,本發明的涵蓋範圍在以下的權利要求中定義。
權利要求
1、利用數字水印技術進行IP核版權確認的方法,其特徵在於包括下列步驟----水印嵌入,具體包括下列步驟(1)參數設定將用戶配置的物理版圖數據、初始水印文件信息輸入計算機,所述初始水印信息文件包含了IP的版權資訊、所要生成的水印點的數量及最後成功嵌入的最小百分比、水印點的初始坐標、版圖中水印點的邊長;(2)解析物理版圖數據計算機按照制定用戶配置的工藝文件和參數讀取物理版圖數據,對其中的圖形和層信息按照版圖文件標準進行解析,將其轉化為易於處理的數據結構,方便程序處理;(3)建立水印點的初始坐標計算機根據用戶提交的初始水印信息文件,建立水印點的初始坐標,設計人員根據自己需要的水印強度配置水印點的數量;(4)確定水印點坐標的偏移量利用單向的Hash函數和偽隨機數發生函數,根據初始水印文件信息和所需水印點的數量產生偽隨機分布的水印點坐標的偏移量;(5)確定偽隨即分布水印點計算機根據用戶提交的原始版圖數據,利用水印點的初始坐標以及坐標偏移量,將水印點擴散到版圖中去,得到偽隨機分布的水印點;(6)根據水印規則判斷水印點是否加入到版圖數據文件,包括下列具體步驟(6.1)根據用戶輸入的版圖數據,判斷偽隨機分布後相應的水印點是否和原有版圖中的多晶矽層重合,即版圖中的多晶矽圖形是否與水印點對應的圖形是否交疊,判斷結果根據前面從版圖中得到的數據運算得到;(6.2)根據判斷結果,記錄重合的水印點為成功嵌入水印信息的點,在沒有與多晶矽層重合的水印點處,判斷是否可以添加額外的多晶矽塊來滿足水印規則,並且不會和版圖設計規則發生衝突,這個是否衝突也是由程序判斷圖形之間的交疊與否和距離大小來確定的;(6.3)根據判斷結果在不會發生與設計規則衝突的水印點處添加額外的多晶矽塊,塊的邊長等同于格點化版圖的格子邊長,並記錄為成功嵌入水印信息的點,同時記錄會發生衝突的水印點坐標信息為未成功嵌入水印信息的點;(7)計算機判斷成功嵌入的水印點的百分比是否達到之前的設定標準;若達到,則說明水印點成功嵌入到版圖數據中,則執行步驟(8);否則循環執行步驟(5)~(7)直至達到所需要的成功百分比;(8)向原物理版圖數據中所有記錄為可以添加多晶矽塊的位置,按照版圖文件標準定義的格式寫入多晶矽塊數據,即得到帶有水印的物理版圖數據;輸出所有水印點的位置信息至記錄文件,該文件記錄了所有水印點被嵌入時的循環輪次,在提取水印時是恢復水印點坐標的必需信息;-----水印提取,具體包括下列步驟(1)參數設定將用戶配置的物理版圖數據、初始水印文件信息輸入計算機,所述初始水印信息文件包含了IP的版權資訊、所要生成的水印點的數量及最後成功嵌入的最小百分比、水印點的初始坐標、版圖中水印點的邊長;(2)計算機按照制定的用戶配置的工藝文件和參數讀取物理版圖數據,對其中的圖形和層信息按照版圖文件標準進行解析,將其轉化為易於處理的數據結構;(3)計算機根據用戶提交的初始水印信息文件,得到水印點的初始坐標,其中初始水印信息文件包含了IP的版權資訊,所要生成的水印點的數量及最後成功嵌入的最小百分比,水印點的初始坐標,版圖中水印點的邊長;(4)計算機利用單向的Hash函數,根據所要生成的水印點的數量,對IP的版權資訊進行處理,得到偽隨機分布的水印點坐標的偏移量;(5)計算機根據用戶輸入的初始水印點位置信息文件,由每個水印點的成功嵌入輪次組成,恢復出所有最終成功嵌入的水印點的坐標信息;(6)計算機根據用戶輸入的待提取水印的版圖數據,判斷最終成功嵌入的水印點是否和此版圖中的多晶矽層重合;(7)根據判斷結果,輸出水印提取報告,所述報告包括判斷重合的比例以及版權判斷結果。
2、根據權利要求1所述的利用數字水印技術進行IP核版權確認的方法,其 特徵在於所述的易於處理的數據結構為版圖文件經過處理轉化為兩個鍊表, StrPtr鍊表記錄版圖中所有出現過的單元的名稱和位置信息,LeafStrPtr鍊表則記 錄了版圖中各單元的圖形信息。
3、 根據權利要求1所述的利用數字水印技術進行IP核版權確認的方法,其 特徵在於所述判斷偽隨機分布後相應的水印點是否和原有版圖中的多品矽層重 合,水印規則檢測分兩步,第一步根據當前水印點的坐標査詢StrPtr鍊表,確定 水印點是否在某個單元範圍內,如果水印點在其範圍內,則依據此單元的名稱在 LeafStrPtr鍊表中查詢找到該單元,並根據這些準確的邊界數據計算水印點是否 在圖形上即重合,或者在圖形外距離是多少;第二步根據StrPtr鍊表查詢結果中 單元的位置和姿態信息,將水印點坐標映射到由LeafStrPtr鍊表查詢得到的單元 上,根據水印點在該單元中的坐標和單元中圖形的邊界信息,計算出水印點是否 與單元中的圖形重合或交疊,如果不重合則計算他們之間的最小距離,如果它比 代工廠的設計規則所允許的最小距離大那麼就代表不違反設計規則,可以嵌入。
4、 根據權利要求1所述的利用數字水印技術進行IP核版權確認的方法,其 特徵在於還包括下列步驟建立有公認的可信任的權威機構作為第三方機構,負 責保存和記錄每一個合法發布的IP以及每一個IP保護工具,即IP資料庫和IP保護 工具資料庫,任何IP以及IP保護工具合法發布前,均需要到第三方進行申請,驗 證和登記,記錄內容包括IP的設計數據,IP版權資訊,IP使用者的身份信息,所 採用的IP保護方法的信息,嵌入的相關水印信息,同時負責IP水印的嵌入,提取, 檢測以及版權歸屬、IP來源認證。
5、 根據權利要求1所述的利用數字水印技術進行IP核版權確認的方法,其 特徵在於所述解析各種集成電路設計數據文件、按照用戶要求產生水印點、嵌入 水印信息以及輸出包含水印點信息的IP設計數據以及其他一些輔助功能通過水 印工具來實現,所述水印工具的母體dmjhell是一個開放式結構且可擴展的平
全文摘要
具有代價小、普適性高、兼容性高、可行性高以及完全集成而自動化的利用數字水印技術進行IP核版權確認的方法。技術方案是其特徵在於,包括水印嵌入和水印提取部分,水印嵌入部分包括首先在版圖中選定初始水印點的坐標,把版權資訊通過單向Hash函數處理後,得到水印點坐標的偏移量,因此得到分散後的偽隨機分布在版圖中的水印點坐標;然後通過對選中的水印點的屬性的歸一化,來達到特定的代表版權資訊的水印的嵌入;接著對於前述兩種途徑中仍然沒有辦法達到屬性歸一化的水印點,通過反覆循環擴散,判斷以及額外添加的手段達到水印信息的成功嵌入,從而得到帶有水印信息的版圖數據文件;水印提取部分包括根據水印嵌入信息的記錄文件,通過像水印嵌入的方法,得到偽隨機分散後的水印點坐標,從而恢復出最後成功嵌入的水印點坐標;然後通過判斷最後成功嵌入的水印點是否和此版圖中的多晶矽層重合,輸出水印提取報告。
文檔編號G06F21/24GK101408923SQ20071017751
公開日2009年4月15日 申請日期2007年11月16日 優先權日2007年11月16日
發明者拜福君, 蔡雪昱, 陳玉潔, 高志強 申請人:清華大學