Re: [討論] GPU加速Transistor層的模擬器
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
12/31 13:51, 3F
→
12/31 13:52,
3年前
, 4F
12/31 13:52, 4F
→
12/31 13:53,
3年前
, 5F
12/31 13:53, 5F
→
12/31 13:55,
3年前
, 6F
12/31 13:55, 6F
→
12/31 13:56,
3年前
, 7F
12/31 13:56, 7F
→
12/31 13:56,
3年前
, 8F
12/31 13:56, 8F
→
12/31 14:01,
3年前
, 9F
12/31 14:01, 9F
→
12/31 14:48,
3年前
, 10F
12/31 14:48, 10F
→
12/31 14:48,
3年前
, 11F
12/31 14:48, 11F
推
01/01 00:29,
4年前
, 12F
01/01 00:29, 12F
→
01/01 00:34,
4年前
, 13F
01/01 00:34, 13F
→
01/01 00:35,
4年前
, 14F
01/01 00:35, 14F
→
01/01 00:36,
4年前
, 15F
01/01 00:36, 15F
→
01/01 00:36,
4年前
, 16F
01/01 00:36, 16F
→
01/01 03:20,
4年前
, 17F
01/01 03:20, 17F
→
01/01 03:20,
4年前
, 18F
01/01 03:20, 18F
→
01/01 03:21,
4年前
, 19F
01/01 03:21, 19F
→
01/01 03:23,
4年前
, 20F
01/01 03:23, 20F
→
01/01 03:51,
4年前
, 21F
01/01 03:51, 21F
→
01/01 03:52,
4年前
, 22F
01/01 03:52, 22F
→
01/01 03:53,
4年前
, 23F
01/01 03:53, 23F
→
01/01 03:53,
4年前
, 24F
01/01 03:53, 24F
→
01/01 16:39,
4年前
, 25F
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
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
01/01 17:42, 33F
推
01/01 21:53,
4年前
, 34F
01/01 21:53, 34F
→
01/01 21:54,
4年前
, 35F
01/01 21:54, 35F
→
01/01 21:56,
4年前
, 36F
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
01/01 22:56, 39F
→
01/01 22:59,
4年前
, 40F
01/01 22:59, 40F
→
01/01 23:00,
4年前
, 41F
01/01 23:00, 41F
→
01/01 23:00,
4年前
, 42F
01/01 23:00, 42F
→
01/01 23:01,
4年前
, 43F
01/01 23:01, 43F
→
01/01 23:02,
4年前
, 44F
01/01 23:02, 44F
→
01/01 23:02,
4年前
, 45F
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
01/01 23:03, 48F
推
01/01 23:04,
4年前
, 49F
01/01 23:04, 49F
→
01/01 23:04,
4年前
, 50F
01/01 23:04, 50F
→
01/01 23:05,
4年前
, 51F
01/01 23:05, 51F
→
01/01 23:05,
4年前
, 52F
01/01 23:05, 52F
→
01/01 23:05,
4年前
, 53F
01/01 23:05, 53F
→
01/01 23:06,
4年前
, 54F
01/01 23:06, 54F
→
01/01 23:06,
4年前
, 55F
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
01/01 23:09, 61F
→
01/01 23:10,
4年前
, 62F
01/01 23:10, 62F
→
01/01 23:10,
4年前
, 63F
01/01 23:10, 63F
→
01/01 23:14,
4年前
, 64F
01/01 23:14, 64F
推
01/01 23:17,
4年前
, 65F
01/01 23:17, 65F
→
01/01 23:22,
4年前
, 66F
01/01 23:22, 66F
→
01/01 23:22,
4年前
, 67F
01/01 23:22, 67F
→
01/01 23:25,
4年前
, 68F
01/01 23:25, 68F
推
01/01 23:34,
4年前
, 69F
01/01 23:34, 69F
→
01/02 00:14,
4年前
, 70F
01/02 00:14, 70F
→
01/02 08:18,
4年前
, 71F
01/02 08:18, 71F
→
01/02 08:19,
4年前
, 72F
01/02 08:19, 72F
→
01/02 08:20,
4年前
, 73F
01/02 08:20, 73F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 5 篇):