當(dāng)前,由于IC在速度,價值和尺寸方面的挑戰(zhàn)不斷提升,使得參與IC研發(fā)和生產(chǎn)的團隊之間在布局描述層面的交流增加,同時,對可控性和可靠性的需求也在增加。雖然可以使用常規(guī)完整性控制(例如循環(huán)冗余校驗,加密散列函數(shù)和ECC),但這些方法的局限性愈加突出。
經(jīng)常發(fā)生的情況是,兩個團隊使用不同的方式同時處理相同的布局,如專有的,標(biāo)準(zhǔn)或半標(biāo)準(zhǔn)的格式,如GDSII,MEBES,OASIS和OASIS.MASK。
通過比較兩個數(shù)據(jù)庫來檢查它們之間的差異是一個復(fù)雜且耗時的過程,并且要求其中一方擁有這兩個文件。出于安全考慮,通常避免將不必要的數(shù)據(jù)傳輸給合作伙伴。
標(biāo)準(zhǔn)的可追溯性流程通常始于創(chuàng)建與產(chǎn)品轉(zhuǎn)讓相伴隨的獨特簽名,確保收件人能夠保證收到產(chǎn)品的真實狀態(tài)。良好的可追溯性系統(tǒng)必須是可靠和安全的,并且獨立于任何特定的實現(xiàn)方式,以確保異構(gòu)環(huán)境之間的互操作性。而且,必須避免泄露它所保護的信息。
待解決的難題
目前,市場上還沒有太多解決這些需求的方案。傳統(tǒng)格式(如GDSII或MEBES)不提供完整性控制。較新的格式,如OASIS包括循環(huán)冗余校驗(CRC)和選項,但其有一些缺點:
1、使用CRC算法會將讀取和寫入轉(zhuǎn)換為線性操作 - 文件的字節(jié)必須按順序讀取 - 禁用基于大型文件并行性的優(yōu)化。
2、CRC算法是錯誤檢測代碼,并且不提供安全保證。例如,創(chuàng)建具有不同內(nèi)容的兩個文件很容易,但CRC校驗和相同。
3、由于它不是強制性的,因此許多編寫者省略校驗和,一些讀者不愿費心去檢查它。
考慮到以上這些問題,使用其它安全高效的工具很有必要,包括加密校驗和 - 安全散列算法(SHA)或不推薦的消息摘要5(MD5)。像CRC校驗和一樣,它們是字節(jié)相關(guān)的,這意味著文件中的單個位變化會引發(fā)校驗和的劇烈變化。通常情況下,這將被視為一項特性。對于布局數(shù)據(jù)庫,這是一個缺點,因為需要保護和追蹤的內(nèi)容不是文件中的字節(jié),而是實際的設(shè)計或幾何描述。
檢查兩個文件實現(xiàn)相同幾何設(shè)計的唯一方法是對它們運行異或(XOR)操作,這是一項復(fù)雜的操作,需要時間和昂貴的工具。與校驗和不同,它需要原始文件具有可用性,且需要比較文件。用戶不能輕易地知道設(shè)計是否相同,但這恰恰是他們想要做的。
布局文件控制的特定約束
在大多數(shù)情況下,檢查和驗證文件的內(nèi)容很重要,這在電子設(shè)計自動化(EDA)處理流程中具有強制性,這是出于描述相同事物的各種方式考慮。除了對文件簽名的一般性考慮外,微電子還有其特定的需求和限制。
在設(shè)計方面,大多數(shù)布局文件使用GDSII格式,這是事實上的標(biāo)準(zhǔn),盡管一些公司正在轉(zhuǎn)向OASIS,但大面積普及還需要一段過渡期,因為所有的EDA工具都不支持OASIS格式,這意味著設(shè)計后端流程需要在定義的步驟中通過一些轉(zhuǎn)換來管理GDSII和OASIS文件。
由于缺乏快速簡便的方法來驗證OASIS中的布局描述與GDSII中的布局描述相同,因此,用戶不愿意切換,因為GDSII提供了格式獨立的簽名。簽署GDSII中描述的布局和簽署OASIS中描述的相同布局必須產(chǎn)生相同的結(jié)果,與OASIS.MASK或MEBES等其他格式相同。
大多數(shù)芯片布局格式本身為描述結(jié)構(gòu)提供了很大的自由度。例如,在GDSII中,文件中描述的單元格的順序完全是任意的。
即使較低級別的多邊描述相同且層次結(jié)構(gòu)相同,也不可能通過使用文件級別簽名來比較兩個文件。在EDA工具中讀取GDSII文件,并在不進行修改的情況下重寫該文件會破壞簽名,因為它還包含創(chuàng)建日期和其他元數(shù)據(jù)。這使得任何校驗和都不可用。OASIS的問題更嚴重,因為格式提供了許多不同的方式來保存相同的數(shù)據(jù),包括嚴格模式,通過引用或名稱。這些非幾何錯綜復(fù)雜的特征不應(yīng)該影響簽名。
主要的幾何問題是EDA工具和文件格式允許用不同的方式來描述相同的事情。例如,“線”可以被描繪為“路徑”,即具有給定寬度的對接片段的連續(xù)或者可以被描述為基本梯形的組合體的復(fù)雜多邊形。
圖1:不同的EDA工具和文件格式允許用不同的方法來描述相同的幾何體
另外,關(guān)于多邊形的描述沒有限制。它是從多邊形的一個任意點開始并沿順時針或逆時針方向旋轉(zhuǎn)的邊的列表,使得簡單多邊形描述的經(jīng)典簽名無關(guān)緊要。如果用戶不關(guān)心同一圖層中的多邊形重疊,則有意義的簽名只能考慮整個多邊形的最終包絡(luò),且頂點順序上有明確的規(guī)定。
驗證文件完整性時,全局校驗和或簽名就足夠了。在大多數(shù)情況下,簡單的“去/不去”信息在大型布局文件中毫無用處,重要的是要知道差異的數(shù)量以及它們的位置。例如,在比較兩個文本文件時,使用“diff”會比使用簡單的校驗和提供更多的信息,因為用戶可以知道有多少行,哪些包含差異。
以同樣的方式,布局文件可以在窗口中分割以比較兩個文件。通過窗口進行比較。如果需要,可以在報告的窗口上運行更詳細的“XOR”。
簽名可以使用相同的機制。而不是報告整個布局的單個校驗和,簽名可以是校驗和列表 - 每個窗口一個。簽名變成一個包含每個窗口的窗口信息和校驗和的文件。
芯片布局描述文件通常包含多個圖層。當(dāng)芯片需要返工時,通常用金屬固定件制造,其中僅改變少數(shù)互連層。這是通過使用已經(jīng)處理到互連層的晶圓來降低掩模成本并加速交貨時間的必要條件。對于掩模數(shù)據(jù)準(zhǔn)備小組,重要的是快速檢查所有前端圖層是否完全相同,而只有預(yù)期的金屬層已被更改。布局數(shù)據(jù)庫的簽名必須按層分割。
在審查了芯片布局文件的具體需求之后,為了實現(xiàn)高效的簽名策略,應(yīng)該滿足一系列約束條件。簽名文件必須驗證內(nèi)容,并且必須滿足以下條件:
1、獨立于文件格式和描述策略
2、基于多邊形的最終幾何包絡(luò)
3、拆分窗口和圖層
解決方案:新簽名方法
從約束列表中可以看出,芯片布局文件的新簽名標(biāo)準(zhǔn)是必要的。該標(biāo)準(zhǔn)必須能夠?qū)崿F(xiàn)簽署任何布局數(shù)據(jù)庫的獨特和通用的方式。它不會是單個校驗和,而是包含每個窗口和每個圖層的校驗和的文件,并且包含窗口大小和列/行數(shù)等信息。
圖2:新的簽名標(biāo)準(zhǔn)將為簽署任何布局數(shù)據(jù)庫提供一種新方法
如上所述,盡管描述方法可能不同,但兩個相同的布局必須提供相同的簽名。為了得到這樣的結(jié)果,必須定義一種獨特的方法來描述幾何形狀 - 更準(zhǔn)確地說,是幾何包絡(luò)。
為了保證它的唯一性,這個描述必須滿足多個約束條件,比如定義頂點的順序和精確定義哪些點是描述的一部分。然后,使用諸如SHA256或SHA3的標(biāo)準(zhǔn)算法,可以保證描述簽名的唯一性。
與原始數(shù)據(jù)庫相比,簽名文件較小,并隨時用作參考。兩個布局數(shù)據(jù)庫之間的比較不會通過完整的XOR來完成,而是通過比較兩個數(shù)據(jù)庫的簽名來完成。還可以將數(shù)據(jù)庫與先前計算的簽名文件進行比較。
通過這種基于幾何描述的簽名,布局的任何物理變化都將被快速檢測到,無論是意外的還是故意的。
例如,一旦在設(shè)計上要求返工(即金屬修補),將新數(shù)據(jù)庫與原始數(shù)據(jù)庫進行比較,以檢查只有預(yù)期的圖層已更改,并且通常僅在少數(shù)局部區(qū)域中進行更改。這總是耗時且需要恢復(fù)原始數(shù)據(jù)庫存檔。
使用簽名文件作為參考可以簡化過程,因為它足夠小以便于訪問。它還包含足夠的信息,以保證某些層之間的相似性。如果需要,可以運行詳細的XOR,但只能在包含差異的窗口中運行。
由于簽名僅依賴于物理布局,很容易用工具或格式轉(zhuǎn)換來檢查簡單的讀/寫,例如GDSII轉(zhuǎn)為OASIS沒有作出任何幾何修改。而且,由于簽名不會改變,除非在布局中引入了幾何變換,所以它非常適合驗證新工具和復(fù)雜流程,例如層次展平或分層。
結(jié)論
提議的簽名是針對布局數(shù)據(jù)庫文件完整性控制量身定做的。它是安全的,可靠的,而且最重要的是關(guān)注真正重要的部分 - 幾何描述。它允許快速輕松地比較大型數(shù)據(jù)庫,僅基于小型簽名文件,該文件不包含敏感信息并可以安全地發(fā)送給任何合作伙伴。這樣的簽名將對半導(dǎo)體行業(yè)開放標(biāo)準(zhǔn)產(chǎn)生積極的影響。包含簽名方案的專利合理使用政策將得到執(zhí)行。
作為一個開放標(biāo)準(zhǔn),簽名變得更加有用。例如,它可以直接嵌入到OASIS或OASIS.MASK數(shù)據(jù)庫中作為特殊屬性。
-
芯片
+關(guān)注
關(guān)注
459文章
52308瀏覽量
437811 -
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3905瀏覽量
65878 -
異構(gòu)環(huán)境
+關(guān)注
關(guān)注
0文章
2瀏覽量
6046
發(fā)布評論請先 登錄

硬件工程師看了只會找個角落默默哭泣#硬件工程師 #MDD #MDD辰達半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師


工程師手冊:常用電子物料封裝及參數(shù)介紹


硬件系統(tǒng)工程師寶典—完整版
推薦資料!硬件系統(tǒng)工程師寶典,工程師必備寶典

硬件工程師的終極幻想:焊板子焊上人生巔峰!#半導(dǎo)體器件 #硬件工程師 #MDD辰達半導(dǎo)體

不同時期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過于真實 #YXC晶振 #揚興科技

當(dāng)你的工程師朋友失聯(lián)時,別氣,ta真的是在忙工作 #搞笑 #電子愛好者 #硬件工程師 #晶振 #揚興科技

FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?


評論