丁濤杰 鄭利華 李鑫鵬 王進祥 姚金藝
(1.中國電子科技集團第五十八研究所 江蘇省無錫市 214072 2.哈爾濱工業大學 黑龍江省哈爾濱市 150001)
SiP(System in Package)是一種系統集成方式,通過封裝技術將多個具有不同功能的芯片及有電子器件互聯構成一個實現某種功能的系統或子系統,實現一個包含多種具備不同功能器件的組合體[1]。SiP 技術是目前實現高集成微系統的主要技術手段之一,具有良好發展前景,是提高電子系統集成化、小型化的關鍵技術和有效手段[2],相較于SoC(System on Chip)等其他電路集成方式,SiP技術具有輕、薄、小的特點,芯片間連線更短,具有更低的功耗和更小的連線延遲[3],芯片組裝系統方式更靈活。SiP 還可以與引線鍵合技術、倒裝焊技術和其他技術[4]同時使用,并使用三維堆疊封裝,大大縮短產品投放市場的周期,也滿足現代電子系統對小型化、高可靠性和低成本的需求[5]。SiP 得到了廣泛的應用,在常見的迷你移動存儲卡、各種智能卡和手機芯片[6]的核心電路中,都可以看到系統級封裝器件的應用[7],由于SiP 能滿足航天電子產品低功耗、小型化的突出特點,在航天領域也得到了廣泛應用[8]。
SiP 將多個芯片通過封裝技術連接成一個系統,首先需要確保芯片連接關系的正確性,審查工具可以對各芯片連接關系進行檢查,因此設計一種可靠的芯片接口仿真模型審查工具對完善SiP 開發流程,具有重要意義。
2003年,西安電子科技大學和華為合作開發原理圖自動審查平臺,使用工具命令語言(Tool Command Language,TCL)實現,可以編寫規則腳本實現原理圖檢視,缺點是使用DxDesigner 的私有形式,通用性不強[9]。
本文提出了一種基于SiP 的接口仿真模型審查工具,使用高級語言Python 實現,把ISCF(Intel Schematic Checking Format)格式作為芯片連接信息輸入,可以對建模庫中的芯片進行連接性規則檢查。支持擴展規則,將芯片專家的經驗和計算機高速檢查相結合,避免芯片連接錯誤。
本文采用Python 作為審查工具實現語言。Python 具有豐富的庫支持,其中正則表達式支持re模塊在連接規則檢查中有重要作用;Python 可進行面向對象編程,并兼容多平臺,具有較好的可讀性和可擴展性。

圖1:系統整體框圖
審查工具執行流程如圖 2所示,首先對輸入參數進行檢查,并根據當前操作模式配置報告輸出形式、級別,調用輸入分析文件分析ISCF 文件將連接關系存入設計數據模塊中的芯片連接關系數據庫,由用戶配置檢查芯片種類、芯片電壓輸入參數等信息,最后執行規則檢查并生成報告。

圖2:系統執行流程圖
輸入分析模塊可分析ISCF 文件和擴展規則文件。
本文采用ISCF 格式作為審查工具輸入文件,ISCF 格式通過元件、管腳、總線、網絡、電源等幾個部分來描述芯片及元件的連接關系。本文設計的審查工具目的是進行芯片和元件間連接關系正確性檢查,ISCF 文件對連接關系的描述簡約且足夠進行規則檢查,因此使用ISCF 文件作為審查工具輸入文件。
擴展規則文件支持用戶對現有規則進行擴展,用戶可按照規定的文本格式編寫擴展規則,編寫規則需要包含規則編號、規則警告級別、規則檢查代碼、報錯信息等,支持遞歸包含其他規則接口,實現層級調用。
輸入分析模塊基于Lark 實現,使用Lark 分析ISCF 文件和擴展規則文件。Lark 是一個文本解析器,能分析文本并生成存有文本信息的數據樹,Lark 具有Python 實現、能根據語法輸入自動構建數據樹等特點。使用Lark 分析規則/ISCF 文件,需要首先編寫規則/ISCF 語法文本,Lark 能根據規則/ISCF 語法文本讀取規則文件,并為規則/ISCF 文件中提取的數據元素創建樹結構,過程如圖 3所示。jinja2 是基于Python 的模板引擎,將規則信息和ISCF 文件獲取到的連接信息嵌入jinja2 提前定義好的模板,直接生成規則執行代碼和連接關系存儲數據庫。再將規則執行代碼放入規則執行列表,提取出的ISCF 文件的連接關系存儲數據庫放入設計數據模塊。
設計數據模塊包括兩部分,存儲芯片接口信息的芯片接口建模庫和存儲連接關系的連接數據庫。
芯片接口建模庫采用Python 二級字典實現,查找關系如圖 4所示,相較于列表等數據結構,鍵查詢速度很快,適用于在幾千個管腳中查找所需管腳信息。
劃痕實驗及Transwell小室法結果顯示,與對照組比較,SCC-15細胞中過表達miR-219能降低SCC-15細胞的遷移及侵襲能力。然而,當共轉染miR-219和PRKCI后,SCC-15細胞的遷移能力比單獨轉染miR-219的SCC-15細胞降低了50%以上(P<0.01),SCC-15細胞的侵襲能力比單獨轉染miR-219的SCC-15細胞降低了50%以上(P<0.05)。說明由于PRKCI的過表達,逆轉了miR-219抑制腫瘤遷移及侵襲能力的作用(圖2E,圖2F)。

圖4:芯片接口信息庫查詢方式圖
芯片管腳信息主要包括管腳的名稱、號碼、類型、極性、功能、電平等信息,以管腳名和管腳號作為輸入參數編寫管腳獲取信息功能函數以支持管腳信息獲取。
連接數據庫用于存儲ISCF 文件獲取到的連接信息,存儲結構如圖5所示,包含如下幾個部分。

圖5:ISCF 連接關系數據庫信息圖
ISCF 連接關系數據庫提供了如下接口以方便規則檢查:
(1)連接關系獲取接口:可根據輸入的芯片名、例化名、管腳名信息在連線網絡信息中找到與其相連的引腳。
(2)芯片管腳獲取接口:可根據輸入的芯片名、例化名、管腳名信息輸入相應管腳。管腳名支持通配符和正則表達式匹配方式。
(3)芯片搜索接口:可返回輸入的原理圖文件中包含的芯片與芯片建模庫的交集,即可檢查的芯片信息列表。
(4)獲取連線網絡信息:可根據輸入的芯片名、例化名、管腳名信息,返回管腳相連的網絡名稱。
規則執行模塊運行用戶實現的擴展規則和芯片規則,從連接關系數據庫查詢接口獲取連接關系,從芯片建模數據庫查詢接口獲取管腳信息,應用管腳信息對連接關系進行檢查。芯片規則比較典型的有平標準檢查和電平匹配檢查。
電平標準檢查對芯片電源管腳輸入電壓進行檢查,當電壓輸入值與管腳電壓輸入范圍不一致時在報告中報錯,執行流程如圖 6所示。

圖6:電平標準檢查流程圖
電平匹配檢查對相連管腳的電平標準進行檢查,當標準不一致時在報告中報錯,執行流程如圖7所示。

圖7:電平匹配執行流程圖
擴展規則也放入規則執行列表,由規則執行模塊調度執行。
本文實現的接口仿真模型審查工具,可進行的規則檢查類型如表 1所示。同時支持用戶擴展規則,可以對SiP 設計中芯片和元件的連接正確性進行檢查。

表1:規則檢查表
使用Python pytest 測試框架對實現的規則檢查進行測試,使用orCAD 軟件繪制原理圖,注入表 1 中各類型連接錯誤,編寫測試用例對表 1 中實現的規則檢查進行測試,測試結果如圖 8所示,所有測試用例均通過,證明該工具可以對注入的芯片連接錯誤進行正確響應。

圖8:測試用例執行結果展示
本文對一種接口仿真模型審查工具進行設計與實現,可以對芯片進行連接正確性檢查,能夠正確報告出模型中的錯誤連接。在SiP 開發過程中,可以使用本工具對芯片連接關系進行檢查,避免芯片連接失誤造成的損失。可用本工具的用戶擴展規則方式將芯片專家的經驗以代碼方式固化,完善SiP 開發流程。