張躍軍,趙志偉,欒志存,張會紅
(寧波大學信息科學與工程學院,浙江寧波 315211)
集成電路是信息技術產業的核心,是支撐國家經濟社會發展和保障國家安全的戰略性、基礎性和先導性產業。擁有強大的集成電路產業和領先的技術,已成為實現科技強國、產業強國的關鍵標志[1-3]。我國集成電路產業經過30 年的發展,已初步形成了半導體材料、芯片設計、芯片制造和封測三業并舉、較為協調的發展格局。在全球集成電路市場快速增長的帶動下,我國集成電路產業快速發展,但是同時也面臨著諸多的問題與挑戰。“中興事件”和“華為事件”凸顯我國集成電路核心技術的卡脖子問題[4-6]。解決我國集成電路核心技術受制于人的關鍵在于人才,人才是產業創新的第一要素。2019 年12 月復旦大學集成電路一級學科的成功設立,表明了國家和業界對集成電路人才培養的重視,給集成電路產業的發展帶來新的契機。一級學科的成立,有利于擴大集成電路專業招生規模,更有利于針對性地培養專業人才,也必然帶來集成電路相關課程的教學改革[7-8]。
數字集成電路后端設計及其工程實踐作為電子信息科學與技術專業的集成電路技術及應用方向模塊選修課程,是一門知識覆蓋面廣,各章節內容相對獨立,課程內容多,更新快,理論性和應用性都很強的課程。其課程教學一般分為兩大部分同時進行,一部分是理論教學,共17 學時,另一部分是實驗教學,共68 學時,總學時85 學時。主要教學內容包括集成電路自動設計流程,自動版圖設計方法以及Synopsys 工具的使用方法等內容。課題以集成電路原理為基礎,同時作為數字集成電路前端設計及其工程實踐的延伸和發展,在數字集成電路技術研究中扮演著很重要的角色[9-10]。因此,有效地提高這門課程的教學質量和課程建設水平,對提高電子信息工程和電子信息科學與技術專業教學質量,對培養學生的基本實驗技能,使學生養成理論聯系實際的良好學風,提高學生實際動手能力,培養高素質的新型集成電路專業人才具有重要而深遠的影響[11-12]。
集成電路后端設計及其工程實踐課程的教學內容具有理論性強、實際操作性高的特點,涉及集成電路相關的具體概念、靜態時序分析、EDA 工具應用等較多內容,要求學生具有較好的數字集成電路基礎和實際動手能力,需要將理論知識與實際相結合,利用EDA相關工具進行實際操作,將掌握的理論知識轉換為工具的熟練使用和高效的電路設計能力。由于部分知識點理論性強、EDA工具規則細瑣以及腳本語言復雜等原因,學生往往會感到課程內容難于理解和掌握,從而影響了他們的學習積極性。因此,如何結合學生的特點,積極在教學內容、教學方式和手段、實踐教學和考核方式等方面進行改革與探索,以提高課堂教學的效果,是當前這門課程教學過程中面臨的一個十分突出的問題。
教材、教輔用書建設是課程建設的重要內容,是教學思想與教學內容的重要載體。雖然目前國內集成電路課程相關的教材和教輔用書很多,但是絕大多數教材和教輔用書的定位都是面向碩士研究生,而較少考慮本科生。因此,研究和選擇更加適合針對本科人才培養目標和學生特點的教材和教學用書,編寫適用于本科生特點的習題和實驗指導方面的教輔資料,并構建相應的網絡課程,與課堂教學形成互補,是當前這門課程建設中急需解決的一個問題。
EDA軟件的選擇也是課程建設的關鍵性內容,只有選擇適合的軟件才更有利于課程的開展和建設。目前市場上DEA 軟件基本上是以Cadence、Mentor、Synopsys公司的產品為主流,3 家公司的軟件相互獨立,但又存有共性。所以如何選取適合學生所用的軟件也是當前一大難題。
人才是集成電路產業發展的前提,集成電路產業對人才的要求比較高,集成電路公司招聘從業者一般都要求本科以上學歷,我國每年對數字集成電路后端的人才需求在逐年增加。而目前開設該門課程的學校僅有清華大學、西安電子科技大學等幾所高校,人才缺口已經成為當下制約我國集成電路發展的瓶頸。目前,我國集成電路后端設計從業人員總數不足10 萬人,預計到2020 年我國集成電路后端產業人才缺口將達到30 萬人,所有半導體企業人力資源部門都面臨著前所未有的巨大挑戰和機遇。如何培養出符合產業需要的高質量集成電路后端設計人才是需要解決的又一個重要問題。
關于數字集成電路后端設計及其工程實踐課程改革的探討將圍繞解決課程存在的主要問題展開,包括教學方法與手段建設、教學內容的優化、教材、教輔用書建設、EDA軟件選用等幾個方面。將實驗討論模式與課堂教學策略學習方法相結合,依托多種教學手段,設計數字集成電路后端設計及其工程實踐翻轉課堂教學模式,如圖1 所示。

圖1 數字集成電路后端設計及其工程實踐翻轉課堂教學模式
以數字集成電路后端設計及其工程實踐課程分析方法(標準庫設置、整體布局、時鐘樹綜合、整體布線、LVS&DRC)為例,展示數字集成電路后端設計及其工程實踐翻轉課堂教學模式。基于數字集成電路后端設計及其工程實踐課程特點,以問題為導向,將整個教學工程分解為課前、課內、實驗、課外4 個階段。
課前教師要給學生選定好課程教材以及供學生查閱的參考資料。對于在課堂教學中涉及的難點以及在實驗過程中遇到的具體問題,學生往往不能很好地及時解決,需要課后自學予以補充。由于本科學生對于集成電路主流技術和研究現狀認識有限,對于良莠混雜的網絡資料難以有效甄別,任由其自行選擇可能帶有很大的盲目性和隨機性。因此教師要在課前選好教材、教輔用書,便于學生課后查閱和自學。課前要精心選擇EDA軟件,合適的軟件會使課程教學事半功倍。本課程實驗教學過程中需要使用的多款軟件,要使數字集成電路后端設計及其工程實踐翻轉課堂教學模式順利進行,采用化整為零、同類軟件并行比較、擇優選擇、有機整合的方法,不局限于采用某一家公司的軟件,而是根據教學目標和要求確定需要的功能軟件,再選擇主流軟件公司功能和性能相對更好的軟件構成本課程軟件環境,滿足教學實驗需求。
依據學生這一主體的學習基礎、年齡特點、心理特點,合理地綜合利用各種教學手段和方法,進一步激發學生的學習興趣、研究興趣和創新意識,提高學生學習的主動性和有效性。在課堂教學中,堅持“以人為本,以學生為中心”的現代教育教學理念,強化對學生系統思維方法的訓練,培養其分析問題、解決問題的能力和科學實驗的素養。積極采用探究式等先進的教學方式,加強習題課、課堂討論和實驗等環節,增加與學生的互動交流,進一步活躍課堂氣氛,調動學生學習的主動性和積極性,引導他們進行主動學習,構建既能發揮教師主導作用,又能體現學生認知主體作用的教學模式,培養學生的自學習慣,變傳統教學為創造性教學。設計既包含課堂需要掌握的知識又由學生自學能夠回答的問題,涵蓋該課的重點和難點,并通過口頭演示來加深學生的理解。探索更加適用有效的考核方法和方式,以更好地促進學生的學習、更科學地評價學生的學習[13-14]。
實驗中合理配置團隊是數字集成電路后端設計及其工程實踐翻轉課堂教學模式的核心。合理配置團隊是達到良好教學效果的關鍵。在高效配置團隊方面,考慮每個團隊小組人數不能過多或過少,由于該課程注重實踐性,為了能讓每個學生真正參與實驗,團隊由2 或3 名學生構成比較合適。每組必須能夠分配和協調任務,而小組成員的分配需要參考學生的能力、成績和認知的高低搭配分組,盡量避免一組的成員都很優秀或都很差的情況,教師應該盡量合理分工和協調。在整個實驗過程中,教師多留意學生的實驗過程,要善于引導學生解決實驗過程中所遇到的問題。為了更好地理解和實驗,學生須獨立完成實驗報告,實驗報告內容包括實驗方法和實驗過程的簡要介紹、實驗數據的整理、實驗過程中遇到的問題以及解決方法。最后,教師分別對項目的完成情況給予量化評價。教師結合小組成員的表現給每位組員打分,其中包括實驗流程及實驗結果的獨立性、實驗報告撰寫的規范性、實驗過程中對問題的理解等方面,最終作為平時成績一部分。通過本教研項目的實施,以期有效地提高學生的實際動手能力,更好地激發他們的學習興趣和探索精神,達到工學一體化的目標,培養出高水平的數字集成電路后端設計的應用型人才。
課后全面依托網絡學習和開放實驗室來完成知識的鞏固和總結。每個課內的設計項目均制定任務時間節點表。學生嚴格按照任務節點,按時完成方案設計說明、數字后端綜合設計、實驗報告分析、項目總結等內容,教師及時給予支持和指導。每個項目完成后,教師的引導以及合理的歸納與總結,使學生進行知識點的回顧從而構建完整的知識認知體系。
標準庫是ICC布局布線所必須的文件。后端所需要的數據可分為邏輯層、物理層和設計3 類數據。具體可以細分為以下6 種文件:①工藝文件,規定工藝上的層次定義;②單元庫,包含每個單元的CELL View,FRAM View,TIM View 和PWR View;③子庫,一般由Macro或Block的LEF或者GDSII文件生成;④綜合后網表文件,Verilog,VHDL 或edif 格式均可;⑤約束Pad位置的TDF文件;⑥綜合后給出的時序約束文件。設置命令及代碼如圖2 所示。
整體布局設計將影響到芯片的面積、速度信號完整性和設計周期。一個好的布局,將大大減少后續布局布線以及時序收斂所耗費的時間和資源。整體布局的主要目的是為模塊、輸入輸出(I/O)接口、電源焊盤分配相對的位置,并定義時鐘和電源分配[15]。在布局之前需要明確每個模塊的電路尺寸和運行頻率,以及模塊之間的連接關系,這樣才能設計出更好的布局。同時,整體布局也是在數字IC的后端設計中人工手動參與相對較多的階段。在SoC 系統芯片后端設計中,做好布局設計,芯片后端設計就成功一半。芯片版圖layout的整體布局示例,如圖3 所示。

圖2 標準庫文件設置命令
時鐘樹綜合是建立時鐘網絡的技術,也就是通常所說的時鐘樹生成[16]。在System on Chip(SoC)片上系統芯片設計中,由于需要的時鐘數目多,時鐘結構復雜,有很多葉節點同屬于多個時鐘。時鐘分布網絡的設計一直是高性能芯片設計中的一個重大挑戰。在集成數千萬甚至上億個晶體管后,要將時鐘信號接近零偏差地傳輸到芯片每一個局部區域是非常困難的[17]。時鐘樹綜合在芯片設計的數字后端設計過程中,對保證數字集成電路的時序性能是非常關鍵的。一般布局布線工具中時鐘樹綜合流程分為創建時鐘樹特性定義、定義時鐘樹、時鐘樹綜合以及分析時鐘樹。標準單元放置后,時鐘樹示例如圖4 所示。

圖3 芯片整體布局

圖5 芯片整體布線
布線是繼布局和時鐘樹綜合之后的重要物理實現過程,其內容是將分布在芯片核內的模塊、標準單元和輸入輸出接口單元按邏輯關系進行互連。其要求是必須完成它們之間的所有邏輯信號的互連,并在滿足各種約束條件下進行優化。能否按照設計的需求將信號線布通是決定芯片是否能夠成功流片的首要前提。消除布線阻塞、優化時序、減少耦合效應、消除串擾、降低功耗、保證信號完整性和提高成品率是衡量布線優化工作的重要指標。芯片整體布線后如圖5 所示。
設計規則檢查(Design Rule Check,DRC),主要是根據工藝廠商提供的設計規則檢查文件,對設計的版圖進行檢查。該檢查以版圖層為主要對象,對相同版圖層以及相鄰版圖層之間的關系以及尺寸進行規則檢查,DRC流程如圖6 所示。版圖與電路圖一致性布局對線路圖(Layout Versus Schematic,LVS)檢查,目的在于檢查人工繪制的版圖是否和電路結構相符,LVS 流程如圖7 所示。

圖6 DRC流程圖

圖7 LVS流程圖
集成電路技術的飛速發展和產業界對專業型人才的需求,對集成電路專業課程教學內容、教學方法、教學手段提出了新的要求,為有效應對這一變化,提出利用EDA技術來開展數字集成電路后端實驗課程教學改革,并將其貫穿于集成電路專業課程教學和實驗過程的新思路。一方面,將EDA技術引入課堂教學可以將教學過程中許多抽象和難理解的內容具體化、直觀化,便于學生理解和掌握。另一方面,應用EDA 技術開展綜合性實驗可以充分調動學生的想象力、創造力,更好地培養學生分析解決集成電路設計具體問題的能力與創造性思維。近幾年來,在教學實踐中逐步建立了基于EDA技術的數字集成電路教學新模式。實踐證明,在數字集成電路教學和實驗中應用EDA技術進行改革,不僅能幫助學生加深對所學內容的理解,提高學生對本課程的學習興趣與效率,而且能使學生跟上集成電路產業的發展,提高學生數字電路設計的實際動手能力。