Re: [問題] 請問systemverilog的優缺點和合成

看板Electronics作者 (眾生都是未來佛)時間13年前 (2010/11/27 08:39), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串4/4 (看更多)
※ 引述《Holysml (Ah)》之銘言: : ※ 引述《zxvc (眾生都是未來佛)》之銘言: : : 我有在用,不過我只是學生,我不清楚業界的狀況。 : : 目前我試過Design Compiler似乎是支援度最高的, : : 就連Synopsys VCS一些不支援的語法它都支援。 : : 但Xilinx ISE目前還不支援SystemVerilog的synthesis, : : 不過我曾在他們網站上看到員工說ISE一定會支援。 : : 若講simulator,我用過ModelSim似乎支援度最高。 : : 其實tools的說明書都會寫哪些語法可合成。 : : Design Compiler的SystemVerilog User Guide就有講哪些語法可合成。 : : Precision RTL的說明書也有寫。 : : 其實我也認同你前面說的,SystemVerilog所多的設計部分 : : 主要在於code較精簡與彈性、更容易寫scalable IP。 : : 至於SystemVerilog推不推的起來,不如從另一個角度來問它會不會被其它人打敗。 : : 坦白來講我對SystemVerilog的"陣列"有點憂心, : : 它不像MATLAB的陣列這麼好用。 : : 而我印像中MATLAB好像也有在搞合成的東西了。 : : 又SystemVerilog的OOP與verification(如UVM), : : 真的打的敗發展那麼久的SystemC嗎? : 驗證其實就像軟體的Unit Test是一樣的觀念,在小系統用簡單的mcu+ASIC解決一些 : 客戶的需求,這樣scale的東西通常designer就是自己開發自己測試(RTL+asm+自己驗證) : 但是現在的趨勢已經是ARM/MIPS CPU + IP化ASIC(ASIC scale大到一定的程度跟area) : 然後House的SW RD要完整整合出BSP給客戶的時代,所以整個電路的規模已經不是可以 : designer自己驗就可以保證faultness的可馬上接上MP(Mass Production)的狀況。 : 所以就跟軟體的驗證技巧一樣,電路的驗證也是求對Design 的Coverage能到一定 : 的程度,為了成本商業考量可能會不同版本接上不同等級的IP,要保證接的對又沒錯 : 就是目前重要的課題。 : 但是在系統廠/House工作的的軟體朋友都知道,SW就是萬能; : 大至幫忙擦design Bug 的屁股,或是為了產品加值,為了讓系統廠的RD們開心 : 不會一邊coding一邊問候寫code的爸媽,所以在House內一定都會要對自己的BSP : 跟IC的整合測過;但是以複雜的IP來說,現在都是會需要FW(韌體)介入控制的需求 : 所以在驗證電路時,某些程度上也會需要拿FW來跟電路一起模擬驗證整合的正確性。 : 但是simulation的痛苦在於時間的長短,要跑的詳細就花的久;但是TapeOut的 : 時間不會等你,所以為了效能取捨,不同的階段就會換上不同的語言來處理。 : 大型正規一點的電路會先從Architect開始做,這個階段建Model用SystemC是比較快的。 : 因為跟軟體一起co-sim的速度比較 : FPGA >> SystemC(SC) > SystemVerilog(SV) > Verilog : 所以在初期要切割軟硬體的介面跟各自的界圍,用SC是比較好用的。或者是當你的一些 : IP都已經完整驗過,目標是要驗外面接的interface( Bus / 跟其他的IP連接 ) : 所以在速度上的考量就可以拿SC Model來加速驗證。 : 但是Model最後總是要轉實際電路,接後段,卡STA Layout etc.完整的Flow。 : 所以最後還是要驗證RTL出來的waveform是否正確,這個階段就會是用SV建環境、Model : 跟Design一起跑驗證的階段,因為在卡timing phase(Cycle Accurate),SV是比較接近 : Verilog 的用法,所以也比較能方便的一起驗證。 : 至於所謂用Tool幫助合成電路的想法,就跟軟體界一直希望把UML拉好就可以 : 把Code全部長好是一樣的有夢最美,但Tool永遠比不上人的準確;所以你我就可以 : 還可以當鄉民說的奴性重的工程師去賣命貢獻實力換取老闆施捨的薪水。 : EDA的語言出現總會希望能取代前輩的完整功能(像前文提到的Synthesis), : 但是就像Java出現沒有幹掉C/C++,有了駱駝還多了大蛇丸跟紅寶石; : 在適合的場所用的好就是好語言;加上業界的變化多端,所以要所謂的全取代 : 是不太可能的。 : 至於SV的那堆Framework/語言的戰爭就又是另一段故事的開始了... : ( VMM; OVM; UVM; / E; Vera; etc. ) : 現在賣IP也是要甚麼都要做給客人就是了(Model, SW, assertion ...) : 所以SC不能取代RTL, SV跟SC也不是競爭的角色,一切都看你的老闆要用甚麼實做。 其實不同語言、工具為了避免被淘汰都會擴展它們自己的深度與廣度。 例如:Verilog為了要能作系統的快速驗證而有了SystemVerilog。 MATLAB、SystemC為了要能合成,也都有在作合成的研究。 我不清楚未來究竟誰會成為主流。 但我是認識的一個同學,他們實驗室有在研究ESL, 他們非常看好SystemC在ESL這塊領域的發展, 甚至大膽的說覺得SystemVerilog不會成功。 另外說也奇怪,SystemC與SystemVerilog都是2005年推出標準的, 但不知為何好像SystemC的驗證IP較常聽到。 另外一個八卦是之前我看到Synopsys退出SystemC的發展的新聞, 但不知為何Synopsys今年把CoWare買下來了。 講這些我只是想強調,這些語言、工具的戰爭似乎還沒有結束。 -- 信佛的人要知道:佛絕不會說謊。但請把握時光。 法滅盡經: http://www.cbeta.org/result/normal/T12/0396_001.htm 共勉之。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.221.79

11/27 09:22, , 1F
最近參加Mentor graphic的workshop,根據他們的統計目前
11/27 09:22, 1F

11/27 09:23, , 2F
Verification的language目前是SV, C++, SystemC. others
11/27 09:23, 2F

11/27 09:24, , 3F
未來怎麼樣還不清楚,之後有碰到Sales再問詳細一點
11/27 09:24, 3F

11/27 14:18, , 4F
ESL = Model, 本來就是SC的專長, 只是看你要不要拿來驗證
11/27 14:18, 4F

11/27 14:19, , 5F
有心驗證,C/C++也可以拿來驗證,看的scope不一樣(BHV/Time)
11/27 14:19, 5F
文章代碼(AID): #1Cy5ChWZ (Electronics)
討論串 (同標題文章)
文章代碼(AID): #1Cy5ChWZ (Electronics)