新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 使用開源工具設計芯片:Silicluster的發展

        使用開源工具設計芯片:Silicluster的發展

        作者:Uriel Jaramillo Toral 時間:2025-07-23 來源: 收藏
        盡管使用的過程乍一看似乎令人生畏,但這是一次寶貴的學習經驗,可以導致創建像 這樣的基礎芯片。

        在半導體設計領域,從頭開始學習的挑戰常常被低估。工具和知識方面的障礙可能是壓倒性的。然而,隨著開源軟件和硬件計劃的興起,對于那些希望接受這一挑戰的人來說,出現了一個新的機會。

        本文詳細介紹了設計 的過程,這是一種使用設計的芯片,重點關注可訪問性和可負擔性(圖 1)。

        1753250320224.png

        芯片設計的開始

        芯片設計之旅出人意料地開始了。從小,人們就一直對事物的運作方式著迷,但從未想過這種好奇心會轉化為對電子產品的熱情。學術道路導致我攻讀了電子工程學士學位、電子設計碩士學位,并最終獲得了博士學位。

        然而,后來人們發現,使用傳統芯片設計工具的高成本和障礙是一個挑戰。在許多墨西哥機構中,由于許可證成本高昂,無法獲得高端工具。

        這一認識導致了對的探索,這有望減少半導體設計的障礙。它導致了 的創建,這是一種旨在讓學生、教育工作者和小型企業都能負擔得起且易于使用的芯片。

        安裝和學習工具

        這段旅程中面臨的第一個障礙是安裝必要的工具。與擁有官方支持和文檔的傳統商業 EDA 工具不同,開源工具更像是一種“自己動手”的體驗。這是首次與用于 RTL 到 GDS 流程的 OpenLane 和用于原理圖捕獲的 Xschem 等工具進行交互。雖然沒有官方支持結構,但社區和可用文檔有助于入門。

        最大的挑戰之一是應對安裝過程的復雜性。每個工具都需要不同的依賴關系,即使在安裝后,也需要一個學習曲線來了解如何有效地使用它們。不過,回報是值得的。Magic、Netgen 和 OpenLane 等工具使設計和制造定制芯片成為可能,而成本僅為傳統解決方案的一小部分。

        學習過程需要時間,但社區的協作性質使其成為一種更有價值的體驗。如今,這些工具可以相對輕松地安裝,并且由于共享知識和社區努力,該過程變得更加順利。

        設計選擇:Silicluster

        當需要選擇要設計的芯片時,目標是創造一些可以作為各種項目基礎的東西。這個想法是設計一種可以容納多個小模塊(多達 256 個獨立電路)并且足夠靈活以處理數字和模擬信號的芯片。這導致了 Silicluster 的發展。

        該芯片的目標是提供一個低成本平臺,讓多個用戶分擔制造成本,同時支持獨立項目。它基于多路復用架構,其中每個項目(ASIC 或多路復用器)通過輔助多路復用器連接,最終選擇由中央多路復用器進行。該架構允許集成多達 16 個單獨的模塊,從而優化芯片上的空間利用。

        該設計的一個關鍵部分是 8 位逐次逼近寄存器 (SAR) ADC,負責將模擬信號轉換為數字信號(圖 2)。

        1753250406723.png

        這與 8 位 DAC 相輔相成,以確保芯片的數字和模擬組件之間的兼容性(圖 3)。

        1753250452163.png

        將模擬和數字電路集成到單個設計中的能力是 Silicluster 最吸引人的功能之一。它為希望構建復雜系統而無需為每個功能使用單獨芯片的用戶提供了許多可能性。

        Silicluster 背后的技術

        Silicluster 采用 SkyWater 的 130 納米技術設計,這是開源半導體項目的經濟實惠且功能強大的選擇。這項技術與開源工具相結合,大大降低了與芯片設計和制造相關的成本。

        值得一提的一個重要方面是這個過程中的中介:Efabless,一家促進設計師和制造設施之間聯系的公司。通過 Efabless,可以利用可用的制造基礎設施,而無需傳統方法的高成本。這種合作對于實現 Silicluster 和其他項目至關重要。

        學習電路設計

        Silicluster 的設計涉及學習電路設計的基本原理以及構建可以處理數字和模擬信號的芯片所需的具體細節。首先,我們查閱了經典書籍和在線資源,例如 Allen 和 Holberg 的 CMOS 模擬電路設計,以了解模擬電路的復雜性。

        同時,回顧了數字邏輯設計的教程和文檔,重點關注電路不同組件之間的相互作用。一個關鍵的要點是使電路的每個部分盡可能高效的重要性。

        設計具有合理分辨率(圖4)的ADC,以適應芯片的嚴格面積限制(圖5和6),同時保持低功耗是一項需要仔細考慮的挑戰。

        1753250566114.png

        1753250530615.png

        1753250643009.png

        設計流程:原理圖、仿真、布局

        在對電路要求有了深入的了解后,是時候繼續設計流程了。第一步是使用 Xschem 進行示意圖捕獲。創建原理圖既是一次有益又令人沮喪的經歷,因為必須就每個組件的配置做出許多決定。

        完成原理圖后,使用ngspice進行仿真,以驗證電路是否按預期工作,如圖7所示的DAC。仿真有助于識別可能影響芯片功能的問題,例如信號完整性問題或不正確的配置。

        1753250755490.png

        通過仿真驗證原理圖后,下一階段是布局。這尤其具有挑戰性,因為它需要將設計安裝到非常小的芯片區域中??臻g限制雖然在創新方面令人興奮,但也造成了設計瓶頸。

        每個組件的放置都必須正確,而且必須以最小化干擾和最大化性能的方式排列。這部分設計過程需要多次迭代,因為每個布局決策都會影響后續步驟(圖8和圖9)。

        1753250838594.png

        1753250874865.png

        布局完成后,Magic 和 OpenLane 等工具將用于最后步驟:DRC(設計規則檢查)、LVS(布局與原理圖)和 GDSII 生成。此過程的每一步都需要仔細注意,以確保最終設計能夠順利制造。

        設計流程中最困難的部分是在芯片有限的區域內調整所有內容。在優化空間、功耗和功能設計之間不斷來回,這讓人筋疲力盡,但最終是必要的,以確保芯片能夠在現實條件下運行。

        經驗教訓和需要改進的領域

        設計 Silicluster 是一個復雜但回報豐厚的過程。我們學到的最重要的經驗之一是迭代和仔細規劃的價值。事后看來,在設計的早期階段,本可以花更多的時間來完善架構,以更好地適應布局約束。這將在流程的后期節省大量時間,因為有幾次重新設計設計以適應可用空間的情況。

        另一個學習經驗是,使用開源工具需要耐心和創造力。很多時候,無論是通過論壇、GitHub 上的問題還是閱讀大量文檔,都會向社區尋求支持。使工具順利運行的過程教會了堅持和協作的價值。

        下一步是什么?

        展望未來,計劃繼續完善 Silicluster 并將新功能集成到設計中。目的是提高芯片的能效,并可能探索更先進的制造技術,例如使用更新的工藝或集成更復雜的模數轉換機制。此外,該芯片應該更容易獲得,為其他人提供全面的指南,讓他們使用所學的工具設計自己的芯片。

        未來的項目還有其他想法,包括開發一種針對物聯網應用的新型低功耗微控制器芯片。這將建立在 Silicluster 的經驗教訓之上,但更具體地關注某些市場。

        最后的想法:會推薦嗎?

        對于那些有數字或模擬電路設計經驗的人來說,絕對推薦嘗試使用開源工具。這個過程乍一看似乎令人生畏,但學習經驗是無價的。這是擴展半導體設計知識和獲得實踐經驗的絕佳方式。

        對于初學者來說,建議先從更簡單的項目開始,然后再處理像 Silicluster 這樣復雜的項目。但無論經驗水平如何,當今可用的工具和資源都使芯片設計比以往任何時候都更容易獲得。


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 嫩江县| 玛曲县| 海宁市| 那曲县| 陆川县| 祁门县| 涿鹿县| 福建省| 琼海市| 镇康县| 噶尔县| 白银市| 普兰店市| 安宁市| 湟源县| 通海县| 邛崃市| 巴东县| 武冈市| 嘉荫县| 太保市| 越西县| 上高县| 唐山市| 龙州县| 睢宁县| 祥云县| 钦州市| 隆化县| 衡阳市| 元氏县| 富阳市| 祥云县| 山阴县| 枞阳县| 汝州市| 沂南县| 澄迈县| 四会市| 广汉市| 德安县|