博客專欄

EEPW首頁 > 博客 > ChatGPT強(qiáng)勢加入芯片設(shè)計(jì)!

ChatGPT強(qiáng)勢加入芯片設(shè)計(jì)!

發(fā)布人:旺材芯片 時(shí)間:2023-06-21 來源:工程師 發(fā)布文章

來源:量子位

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

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

無需專業(yè)的硬件描述語言(HDL),僅靠說人話就能設(shè)計(jì)芯片!

圖片

在ChatGPT的幫助下,他們不僅設(shè)計(jì)出CPU上的一個(gè)組件,甚至還通過了有效性驗(yàn)證環(huán)節(jié)。

這個(gè)組件主要負(fù)責(zé)創(chuàng)造出一種基于八位累加器的微處理器架構(gòu)的邏輯。而累加器本質(zhì)上是寄存器(存儲(chǔ)器),是專門存放算術(shù)或邏輯運(yùn)算的一個(gè)操作數(shù)和存儲(chǔ)運(yùn)算結(jié)果的。而這是CPU運(yùn)作中不可或缺的一部分。

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

圖片

有網(wǎng)友表示:

芯片設(shè)計(jì)的部分流程實(shí)現(xiàn)自動(dòng)化無疑是個(gè)好消息。

圖片

也有網(wǎng)友表現(xiàn)出對在芯片設(shè)計(jì)中使用AI編寫HDL的擔(dān)憂:

圖片

ChatGPT對芯片設(shè)計(jì)干了啥?

通常,設(shè)計(jì)和制造芯片的過程中會(huì)經(jīng)歷幾個(gè)階段。

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

在此前,作為一個(gè)極其專業(yè)化和復(fù)雜的領(lǐng)域,HDL編寫一直是一項(xiàng)相對罕見且非常難以掌握的工作。

研究團(tuán)隊(duì)成員之一、也是研究助理教授的Hammond Pearce博士更是認(rèn)為:

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

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

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

使用 LLM 創(chuàng)建 IC(集成電路)的設(shè)計(jì)流程。

在這項(xiàng)研究中,研究人員分別使用LLM對八個(gè)具有代表性的硬件設(shè)計(jì)示例進(jìn)行了研究。工程師與LLM之間實(shí)時(shí)來回交互,將純英文文本逐步轉(zhuǎn)化為Verilog(HDL)的等效代碼。

其中一位硬件工程師與LLMs共同設(shè)計(jì)了一種新穎的基于八位累加器的微處理器體系結(jié)構(gòu)。他們將這些基準(zhǔn)測試和處理器發(fā)送到Skywater 130納米Shuttle進(jìn)行流片(tapeout)。

這個(gè)過程中,研究人員評(píng)估了ChatGPT-4、ChatGPT-3.5、Bard、HuggingChat四個(gè)不同LLM創(chuàng)建硬件設(shè)計(jì)的Verilog能力:

圖片

此外,研究人員還針對8位移位寄存器進(jìn)行了基準(zhǔn)測試。告訴大模型正在嘗試為一個(gè)「測試名稱」創(chuàng)建一個(gè)Verilog模型。然后提供規(guī)范說明,定義輸入和輸出端口以及其他所需的具體信息。最后詢問他該如何編寫一個(gè)滿足這些規(guī)范的設(shè)計(jì)。

圖片8位移位寄存器的設(shè)計(jì)提示

下面是不同大模型給出的設(shè)計(jì)方案:

左圖是ChatGPT-4的八位移位寄存器設(shè)計(jì),右圖是ChatGPT-3.5左圖是Bard(第4行的「紅色」輸入過寬),右圖是HuggingChat(截?cái)?,格式化?/span>

如上圖所示,雖然ChatGPT都能夠滿足規(guī)格要求并開始進(jìn)行設(shè)計(jì)流程,但Bard和HuggingChat都未能滿足規(guī)格要求的初始標(biāo)準(zhǔn)。

研究人員又基于Bard和HuggingChat的初始提示,讓它們重新生成了五次回答,但兩者還是都失敗了。Bard一直無法滿足給定的設(shè)計(jì)規(guī)格要求,而HuggingChat的Verilog輸出在模塊定義之后就不符合語法規(guī)范。

鑒于Bard和HuggingChat在初始的挑戰(zhàn)基準(zhǔn)測試中表現(xiàn)不佳,研究人員決定后續(xù)完整測試僅對ChatGPT-4和ChatGPT-3.5進(jìn)行。

與此同時(shí),順便讓大模型進(jìn)行了Testbench(測試臺(tái))的設(shè)計(jì):

你能為這個(gè)設(shè)計(jì)編寫一個(gè)Verilog測試臺(tái)嗎?測試臺(tái)應(yīng)該具備自檢功能,并且能夠與iverilog一起用于仿真和驗(yàn)證。如果測試用例失敗,測試臺(tái)應(yīng)該能夠提供足夠的信息,以便找到并解決錯(cuò)誤。

圖片

最終結(jié)果表明ChatGPT-4的表現(xiàn)較為出色。大多數(shù)基準(zhǔn)測試都通過了,并且大部分只需要工具反饋即可。

與創(chuàng)建可運(yùn)行設(shè)計(jì)相比,ChatGPT-4在創(chuàng)建可運(yùn)行的測試臺(tái)上遇到了更多困難,往往還是需要人類的反饋意見。

而與ChatGPT-4相比,ChatGPT-3.5的表現(xiàn)明顯較差,大多數(shù)基準(zhǔn)測試都失敗了,而那些通過測試臺(tái)的對話大多數(shù)也不符合規(guī)范。與ChatGPT-4相比,ChatGPT-3.5每次對話和基準(zhǔn)測試之間會(huì)出現(xiàn)各種各樣的問題,在設(shè)計(jì)和測試臺(tái)方面需要更頻繁地進(jìn)行修正。

圖片

ChatGPT是芯片設(shè)計(jì)中的“力量倍增器”

隨著大語言模型(LLM)的繼續(xù)發(fā)展,未來從構(gòu)想到功能設(shè)計(jì),LLM或許都可以輕松實(shí)現(xiàn)。

研究人員用ChatGPT-4設(shè)計(jì)的基于累加器的數(shù)據(jù)通路(圖是人繪制的),控制信號(hào)用虛線表示

研究人員認(rèn)為:

盡管我們強(qiáng)調(diào)了模型的單步性能(即一步完成設(shè)計(jì)),但對于硬件應(yīng)用來說,讓它們以“共同設(shè)計(jì)師”的身份加入,可能會(huì)表現(xiàn)得更好。

當(dāng)與經(jīng)驗(yàn)豐富的工程師協(xié)同工作時(shí),它們可以成為一種“力量倍增器”。工程師可以根據(jù)模型提供的“初版設(shè)計(jì)方案”,進(jìn)行微調(diào)和快速迭代。

Hammond Pearce博士說道:

這項(xiàng)研究成果是我們認(rèn)為首次完全由人工智能生成的硬件描述語言(HDL)轉(zhuǎn)化為物理芯片的案例。

一些人工智能模型,比如OpenAI的ChatGPT和谷歌的Bard,可以生成不同編程語言的軟件代碼,但它們在硬件設(shè)計(jì)領(lǐng)域的應(yīng)用尚未被廣泛研究。

而這項(xiàng)研究表明,人工智能在硬件制造方面也具有潛力,尤其是在對話式應(yīng)用中,通過反復(fù)交流可以完善設(shè)計(jì)。

并且,這樣一來HDL編寫過程中人為引起的錯(cuò)誤就會(huì)減少,從而可縮短設(shè)計(jì)時(shí)間和上市時(shí)間,也可允許更多創(chuàng)造性的設(shè)計(jì)。

不知一些HDL工程專家聽到這里是否會(huì)略感緊張。

研究人員認(rèn)為如果這個(gè)過程能夠?qū)崿F(xiàn)自動(dòng)化,不僅可以加快現(xiàn)在的工作速度,還可以減輕人為瓶頸。

但是,完全依靠類似于ChatGPT這種大模型或者依賴電力運(yùn)行的軟件機(jī)器也存在一定的風(fēng)險(xiǎn)。用于芯片設(shè)計(jì)的LLM在訓(xùn)練階段也存在難解的黑盒子等一系列問題。

對此,你有什么看法?

參考鏈接:
[1]https://arxiv.org/abs/2305.13243(論文鏈接)

[2]https://www.tomshardware.com/news/conversation-with-chatgpt-was-enough-to-develop-part-of-a-cpu

-End-


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: ChatGPT

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉