ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

ADVERTISEMENT

和ChatGPT聊聊天,就可解決CPU開發過程中的一大難題? 

紐約大學(NYU)研究人員完成了一件看似不可能的事情: 

無需專業的硬體描述語言(HDL),僅靠說人話就能設計晶片! 

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

在ChatGPT的幫助下,他們不僅設計出CPU上的一個元件,甚至還通過了有效性驗證環節。

這個元件主要負責創造出一種基於八位元累加器的微處理器架構的邏輯。而累加器本質上是暫存器(記憶體),是專門存放算術或邏輯運算的一個運算元和儲存運算結果的。這是CPU運作中不可或缺的一部分。 

所以,還有什麼是大語言模型不能做的? 

有網友表示: 

晶片設計的部分流程實現自動化無疑是個好消息。

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

也有網友表現出對在晶片設計中使用AI編寫HDL的擔憂:

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

ChatGPT對晶片設計什麼了什麼?

通常,設計和製造晶片的過程中會經歷幾個階段。 

其中一個階段是用硬體描述語言(HDL)(例如Verilog)描述晶片內不同部件的實際幾何形狀、密度和整體布局。 

在之前,作為一個極其專業化和複雜的領域,HDL編寫一直是一項相對罕見且非常難以掌握的工作。 

研究團隊成員之一、也是研究助理教授的Hammond Pearce博士更是認為: 

硬體描述語言的最大挑戰就是沒有多少人知道如何編寫它們,很難成為這方面的專家。

這也就意味著,即使是最好的工程師也還是經常需要用這種語言做一些瑣碎的事情。

而ChatGPT作為一種模式辨識器,可以在各種類型的語言中轉換自如,這就可以幫助工程師們跳過HDL階段。

使用 LLM 創建 IC(積體電路)的設計流程。

在這項研究中,研究人員分別使用LLM對八個具有代表性的硬體設計示例進行了研究。工程師與LLM之間即時來回互動,將純英文文本逐步轉化為Verilog(HDL)的等效程式碼。 

其中一位硬體工程師與LLMs共同設計了一種新穎的基於八位元累加器的微處理器體系結構。他們將這些基準測試和處理器發送到Skywater 130奈米Shuttle進行下線(tapeout)。 

這個過程中,研究人員評估了ChatGPT-4、ChatGPT-3.5、Bard、HuggingChat四個不同LLM創建硬體設計的Verilog能力:

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

此外,研究人員還針對8位移位暫存器進行了基準測試。告訴大模型正在嘗試為一個「測試名稱」創建一個Verilog模型。然後提供規範說明,定義輸入和輸出埠以及其他所需的具體資訊。最後詢問他該如何編寫一個滿足這些規範的設計。

8位元移位暫存器的設計提示

 

下面是不同的大模型給出的設計方案:

左圖是ChatGPT-4的八位元移位暫存器設計,右圖是ChatGPT-3.5

左圖是Bard(第4行的「紅色」輸入過寬),右圖是HuggingChat(截斷,格式化)

如上圖所示,雖然ChatGPT都能夠滿足規格要求並開始進行設計流程,但Bard和HuggingChat都未能滿足規格要求的初始標準。 

研究人員又基於Bard和HuggingChat的初始提示,讓它們重新產生了五次回答,但兩者還是都失敗了。Bard一直無法滿足給定的設計規格要求,而HuggingChat的Verilog輸出在模組定義之後就不符合語法規範。 

鑒於Bard和HuggingChat在初始的挑戰基準測試中表現不佳,研究人員決定後續完整測試僅對ChatGPT-4和ChatGPT-3.5進行。 

與此同時,順便讓大模型進行了Testbench(測試台)的設計: 

你能為這個設計編寫一個Verilog測試台嗎?測試台應該具備自檢功能,並且能夠與iverilog一起用於模擬和驗證。如果測試用例失敗,測試台應該能夠提供足夠的資訊,以便找到並解決錯誤。

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

 

最終結果表明ChatGPT-4的表現較為出色。大多數基準測試都通過了,並且大部分只需要工具回饋即可。 

與創建可運行設計相比,ChatGPT-4在創建可運行的測試臺上遇到了更多困難,往往還是需要人類的回饋意見。 

而與ChatGPT-4相比,ChatGPT-3.5的表現明顯較差,大多數基準測試都失敗了,而那些通過測試台的對話大多數也不符合規範。與ChatGPT-4相比,ChatGPT-3.5每次對話和基準測試之間會出現各種各樣的問題,在設計和測試台方面需要更頻繁地進行修正。

ChatGPT也能用來設計晶片!不用學專業硬體描述語言,說人話就可以

ChatGPT是晶片設計中的「力量倍增器」

隨著大語言模型(LLM)的繼續發展,未來從構想到功能設計,LLM或許都可以輕鬆實現。

研究人員用ChatGPT-4設計的基於累加器的資料通路(圖是人繪製的),控制訊號用虛線表示

研究人員認為: 

儘管我們強調了模型的單步性能(即一步完成設計),但對於硬體應用來說,讓它們以「共同設計師」的身份加入,可能會表現得更好。

當與經驗豐富的工程師協同工作時,它們可以成為一種「力量倍增器」。工程師可以根據模型提供的「初版設計方案」,進行微調和快速迭代。

Hammond Pearce博士說道: 

這項研究成果是我們認為首次完全由人工智慧生成的硬體描述語言(HDL)轉化為物理晶片的案例。一些人工智慧模型,比如OpenAI的ChatGPT和Google的Bard,可以產生不同程式設計語言的程式碼,但它們在硬體設計領域的應用尚未被廣泛研究。

而這項研究表明,人工智慧在硬體製造方面也具有潛力,尤其是在對話式應用中,通過反復交流可以完善設計。

並且,這樣一來HDL編寫過程中人為引起的錯誤就會減少,從而可縮短設計階段和上市時間,也可允許更多創造性的設計。 

不知一些HDL工程專家聽到這裡是否會略感緊張。 

研究人員認為如果這個過程能夠實現自動化,不僅可以加快現在的工作速度,還可以減輕人為瓶頸。但是,完全依靠類似於ChatGPT這種大模型,或者依賴電力運行的軟體機器也存在一定的風險。用於晶片設計的LLM在訓練階段也存在難解的黑盒子等一系列問題。 

資料來源:

Qbitai
作者

量子位(Qbitai)專注於人工智慧及前沿科技領域,提供技術研發趨勢、科技企業動態、新創公司報道等最新資訊,以及機器學習入門資源、電腦科學最新研究論文、開源程式碼和工具的相關報導。

使用 Facebook 留言
發表回應
謹慎發言,尊重彼此。按此展開留言規則