Re: [討論] GPU加速Transistor層的模擬器

看板Soft_Job作者 (helloWorld)時間3年前 (2020/12/31 13:15), 編輯推噓6(6067)
留言73則, 7人參與, 4年前最新討論串2/5 (看更多)
1. 你所描述的聽起來不是 transistor 層模擬,而是邏輯閘層次的模擬。Transistor 模 擬是指像 spice 那樣模擬時間 vs 電流之類的類比計算,就像用工具幫你做 smith 電子 學習題這樣。 2. 你內文裡面比較「cpu 指令層」, 「cycle-accurate」,「邏輯閘層」模擬,提到哪些 運算量比較大,哪些比較準,這些都是 ic 設計常識。一般公司的設計流程,在設計晶片 架構時,用 c++ 寫 transaction accurate simulation,用 c++ 或是 systemC 寫 cycl e accurate simulation,等架構設計確定後,開始寫 HDL,HDL 小部分用 EDA tool 看 波形圖做驗證,大範圍 HDL 用商業廠商買來的emulation設備,也就是 FPGA 做模擬,這 裡的 FPGA 並不是只有一塊 FPGA,有可能是很多塊 FPGA 湊在一起模擬一部分ASIC 的電 路行為。 3. 所以問題就是,為什麼 emualtion 要使用 FPGA 而不是 GPU?答案是 gate count 還 有開發時間。FPGA都裝不下現代稍微複雜一點的 IC,GPU 更不可能。HDL 要翻譯成 CUDA 也不切實際,除了驗證沒有其他價值。 ※ 引述《erspicu (.)》之銘言: : 不想走冤枉路.... 雖然有找過資料 : 但找到的資料似乎是一些大學教授和硬體大廠的研界成果發表 論文也有 : 感覺有很高的技術門檻 門檻高就算了 主要是怕結果實際上也沒如同想像中好 : 想問看看有沒有已經走過這條路了 不知道通不通或是值不值得 : 模擬器最傳統的做法是cpu指令層的模擬 這種模擬方式好實作 : 但正確度要拉高到一個水準 就需要很高代價 : 尤其是cycle accurate的模擬問題 : 要100%正確 就要層邏輯閘層去模擬運算結果 : 但邏輯閘層運算量遠大於指令模擬 主要是因為邏輯閘層運算都是同時間平行的 : 這種特性很適合GPU 如果像是紅白機MOS 6502的話邏輯閘數大概有4千5百多 : 目前看到用一般cpu去計算邏輯閘模擬計算 非常多秒才能算出一張frame : 用指令集模擬的方式 每一秒可以算出好幾百張frame 差異非常巨大 : 不知道用gpu來模擬FPGA那種陣列 先不提有沒有商用價值 : 效率能不能提升到實用價值 不知道有沒有人公司剛好有做過這研究 : 之前移植專案做到一半 想研究一下改用GPU平行處理來處理邏輯閘模擬 : 寫一寫 還沒到改寫的部分 還在JS PORTING到C#的階段就丟著 : 如過是死路 就算了 : PS.我的理想是靠GPU模擬一張FPGA 拆晶片用放大鏡把內部邏輯描繪出來 : 然後燒到FPGA上 有一些骨灰迷是有在做這事情 : 像這網站 http://www.visual6502.org : 但目前還沒看到靠GPU模擬FPGA 把電路燒進去的 : 現在還在移植 http://www.visual6502.org/JSSim/index.html 到C#版本 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.224.62.188 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1609391714.A.720.html

12/31 13:43, 3年前 , 1F
12/31 13:43, 1F

12/31 13:51, 3年前 , 2F
可能是稱呼有些翻譯上或是認知上落差 後來想想
12/31 13:51, 2F

12/31 13:51, 3年前 , 3F
更正確應該是稱呼Gate-Level Simulation 不過
12/31 13:51, 3F

12/31 13:52, 3年前 , 4F
查資料過程有些也是以transistor level simulation稱呼
12/31 13:52, 4F

12/31 13:53, 3年前 , 5F
另外FPGA主要是沒辦法普遍普及 然後早期處理及GATE數量
12/31 13:53, 5F

12/31 13:55, 3年前 , 6F
早期處理氣邏輯閘數量並沒有那麼多幾K到萬初而已
12/31 13:55, 6F

12/31 13:56, 3年前 , 7F
即使無法一次完成整個週期動作 靠著現在GPU速度快
12/31 13:56, 7F

12/31 13:56, 3年前 , 8F
多幾次動作去完成 可能也可行 但不確定效果好不好
12/31 13:56, 8F

12/31 14:01, 3年前 , 9F
主要希望目標是早期一些遊戲主機處理氣Z80 6502等等
12/31 14:01, 9F

12/31 14:48, 3年前 , 10F
沒,可以裝下,只是可能一萬鎂的裝個arm現代的core,十萬
12/31 14:48, 10F

12/31 14:48, 3年前 , 11F
鎂消費級AP,Intel他們可能是百萬鎂的跳。
12/31 14:48, 11F

01/01 00:29, 4年前 , 12F

01/01 00:34, 4年前 , 13F
上面那個大概就是你要的東西吧
01/01 00:34, 13F

01/01 00:35, 4年前 , 14F
FPGA是真正把電路放進去 gpu又不能放電路
01/01 00:35, 14F

01/01 00:36, 4年前 , 15F
連個接近都不是 所以沒有emu的意義
01/01 00:36, 15F

01/01 00:36, 4年前 , 16F
HDL跟cuda根本不是一回事 所以我也不懂這樣放意義
01/01 00:36, 16F

01/01 03:20, 4年前 , 17F
我並不是要啥現成模擬器商品或是程式 只是要探究一種
01/01 03:20, 17F

01/01 03:20, 4年前 , 18F
能夠在電腦上更正確模擬的方式 要知道早期很多CPU一些特
01/01 03:20, 18F

01/01 03:21, 4年前 , 19F
官方SPEC並不一定會寫出來還有一些硬體特性也是 BUG也是
01/01 03:21, 19F

01/01 03:23, 4年前 , 20F
GPU能不能放電路都沒關係 只是藉著GPU去處理邏輯閘運算
01/01 03:23, 20F

01/01 03:51, 4年前 , 21F
你現在連gpu為什麼連 gpu不太好做這事都不想理解了
01/01 03:51, 21F

01/01 03:52, 4年前 , 22F
還不如拿來解transistor level實在多了 這裡有數值的
01/01 03:52, 22F

01/01 03:53, 4年前 , 23F
解gate level除了timing 有得搞外 解邏輯 gpu不會比
01/01 03:53, 23F

01/01 03:53, 4年前 , 24F
較快 我拿個ARM海可能更快點 (這個是有產品的哦)
01/01 03:53, 24F

01/01 16:39, 4年前 , 25F
to erspicu:要不要先去修一些ic設計的課程再來講電腦模擬的
01/01 16:39, 25F

01/01 16:39, 4年前 , 26F
事,怕走冤枉路,背景知識不足也不聽勸,還能說什麼?
01/01 16:39, 26F

01/01 17:29, 4年前 , 27F
不聽勸 這帽子扣太大了吧 都只是交流一些想法
01/01 17:29, 27F

01/01 17:30, 4年前 , 28F
只是覺得沒必要把人家學者的研究描述成啥說幹話 不經思考
01/01 17:30, 28F

01/01 17:39, 4年前 , 29F
附帶一提的是 想當然也知道FPGA是花錢最快最棒的解法
01/01 17:39, 29F

01/01 17:40, 4年前 , 30F
問題是這回答跟 人家電腦上玩模擬器部分運作有問題
01/01 17:40, 30F

01/01 17:41, 4年前 , 31F
問人家玩模擬器的意義是啥 為啥不買實體機一樣
01/01 17:41, 31F

01/01 17:42, 4年前 , 32F
預設的情境就是電腦開啟執行去達成一個更高的模擬完成度
01/01 17:42, 32F

01/01 17:42, 4年前 , 33F
一直在那邊FPGA FPGA..我買FPGA 我乾脆買二手主機還便宜
01/01 17:42, 33F

01/01 21:53, 4年前 , 34F
大概是原PO背景知識落差太大了吧
01/01 21:53, 34F

01/01 21:54, 4年前 , 35F
這邊回你的很多都在豬屎屋/EDA/HPC業界有實務經驗
01/01 21:54, 35F

01/01 21:56, 4年前 , 36F
很多前提對他們來說是理所當然 但是對原PO不是
01/01 21:56, 36F

01/01 21:59, 4年前 , 37F
不過對個人這種需求真的是很怪
01/01 21:59, 37F

01/01 22:56, 4年前 , 38F
對於只是想玩玩遊戲主機模擬器玩遊戲 有更高模擬品質
01/01 22:56, 38F

01/01 22:56, 4年前 , 39F
你叫人家 不會去買塊FPGA喔 這才正解拉 這其實更奇怪
01/01 22:56, 39F

01/01 22:59, 4年前 , 40F
一個目的可能是商品雛型開發 一個是希望能在PC端找到一個
01/01 22:59, 40F

01/01 23:00, 4年前 , 41F
更精確模擬遊戲主機的方式 我一開始其實就講得很清楚了
01/01 23:00, 41F

01/01 23:00, 4年前 , 42F
你叫人家買FPGA 人家不如幾百元到網拍二手機主機更乾脆
01/01 23:00, 42F

01/01 23:01, 4年前 , 43F
既然都要走實體方案的話 二手主機也才多少錢
01/01 23:01, 43F

01/01 23:02, 4年前 , 44F
所謂有實務經驗 就是跟很多人一樣工作上用到FPGA
01/01 23:02, 44F

01/01 23:02, 4年前 , 45F
因為你問的不可行所以人家建議你去用FPGA啊
01/01 23:02, 45F

01/01 23:02, 4年前 , 46F
因為一些開發需求有用過一些現成套裝軟體而已
01/01 23:02, 46F

01/01 23:03, 4年前 , 47F
我以為是有人親自嘗試用這構想真正實作過
01/01 23:03, 47F

01/01 23:03, 4年前 , 48F
不需要建議用FPGA阿 買台二手主機更快拉
01/01 23:03, 48F

01/01 23:04, 4年前 , 49F
你不是要做雛型開發
01/01 23:04, 49F

01/01 23:04, 4年前 , 50F
大廠做雛型開發就是用FPGA啊 更精確用CPU GPU就抱歉沒有
01/01 23:04, 50F

01/01 23:05, 4年前 , 51F
而且GPU只是加速 通常不會更準確 反而是用精度換時間
01/01 23:05, 51F

01/01 23:05, 4年前 , 52F
從頭到尾 我第一篇文章和推文就有說過 在PC端使用的模擬
01/01 23:05, 52F

01/01 23:05, 4年前 , 53F
在PC端使用的遊戲主機模擬器 已經說過滿多次了
01/01 23:05, 53F

01/01 23:06, 4年前 , 54F
如果要用硬體的話 我乾脆去買二手主機不就得了
01/01 23:06, 54F

01/01 23:06, 4年前 , 55F
你插張PCIe介面的不就在PC端了
01/01 23:06, 55F

01/01 23:06, 4年前 , 56F
我就是要放出程式給大家用啊 幹嘛一定硬體阿
01/01 23:06, 56F

01/01 23:07, 4年前 , 57F
說白了 根本沒有人有實際親自實作測試的經驗可以分享
01/01 23:07, 57F

01/01 23:08, 4年前 , 58F
有的是 阿 你看看那些論文學者發表成果有多早
01/01 23:08, 58F

01/01 23:08, 4年前 , 59F
現在還不是沒有普遍商業化 所以我估計都是說幹話拉
01/01 23:08, 59F

01/01 23:09, 4年前 , 60F
這就是大家講你的不聽勸啊==
01/01 23:09, 60F

01/01 23:09, 4年前 , 61F
你以為豬屎屋花錢買EDA tool是盤子是不是
01/01 23:09, 61F

01/01 23:10, 4年前 , 62F
沒有模擬器親自實作經驗的人 用自己以為說他的推測而已
01/01 23:10, 62F

01/01 23:10, 4年前 , 63F
工作會用到FPGA會需要買套裝軟體使用又如何?
01/01 23:10, 63F

01/01 23:14, 4年前 , 64F
這構想做法早就有JS版實作後來有人改寫C++版
01/01 23:14, 64F

01/01 23:17, 4年前 , 65F
那就祝福你找到你想要的答案囉
01/01 23:17, 65F

01/01 23:22, 4年前 , 66F
https://tinyurl.com/y9oyde25 C++的CODE 每秒可以算到
01/01 23:22, 66F

01/01 23:22, 4年前 , 67F
大概1萬HZ的速度 這是在沒做任何平行處理優化狀況下
01/01 23:22, 67F

01/01 23:25, 4年前 , 68F
如果能夠優化到3.58MHz 就能達到實機運作速度了
01/01 23:25, 68F

01/01 23:34, 4年前 , 69F
好 你好棒 加油喔
01/01 23:34, 69F

01/02 00:14, 4年前 , 70F
www.udemy.com/course/design-a-cpu/ 教學用Logisim
01/02 00:14, 70F

01/02 08:18, 4年前 , 71F
我沒做過new gb這種模擬器 做過rv arm mips x86?
01/02 08:18, 71F

01/02 08:19, 4年前 , 72F
cell模擬器的可以嗎
01/02 08:19, 72F

01/02 08:20, 4年前 , 73F
(z80 好像有做過就是了@_@" 幫一個教授做課程project
01/02 08:20, 73F
文章代碼(AID): #1VxLvYSW (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1VxLvYSW (Soft_Job)