【ZiDongHua 之設(shè)計(jì)自動(dòng)化收錄關(guān)鍵詞:生成器 函數(shù)開關(guān) 電子設(shè)計(jì)自動(dòng)化
  
  MLSynthesis v1.0 版本發(fā)布:重大特性升級!
  
  高層次綜合(HLS):現(xiàn)代設(shè)計(jì)的新方向
  
  高層次綜合(HLS)技術(shù)正在改變設(shè)計(jì)方式。它能夠?qū)⒏邔哟握Z言(如C、C++、SystemC)描述的邏輯結(jié)構(gòu),轉(zhuǎn)化為低抽象級語言(如Verilog、VHDL、SystemVerilog)描述的電路模型。高層次語言讓設(shè)計(jì)者無需關(guān)注繁瑣的時(shí)鐘和時(shí)序細(xì)節(jié),而低層次語言則精確描述了時(shí)鐘周期的寄存器傳輸級電路模型,在當(dāng)前的FPGA敏捷開發(fā)設(shè)計(jì)中被廣泛使用。
  
  MLSynthesis v1.0 版本發(fā)布:
  
  重大特性升級
  
  
  
  我們很高興地宣布,MLSynthesis v1.0版本已完成,帶來了諸多重要特性升級:
  
  01
  
  升級LLVM到llvm18版本
  
  新版本包括更多編譯器優(yōu)化,同時(shí)升級了對應(yīng)的MLIR版本,提升了整體性能和編譯效率。
  
  02
  
  硬件生成器后端
  
  升級為FIRRTL
  
  原有基于Chisel生成Verilog的流程較為復(fù)雜,需要依賴mill和sbt等工具,且Chisel轉(zhuǎn)Verilog過程中存在不確定性。在狀態(tài)機(jī)規(guī)模較大(STATE>200)時(shí),可能會(huì)出現(xiàn)Java內(nèi)存溢出問題,限制了大規(guī)模應(yīng)用。此外,由于Chisel本身缺乏testbench,驗(yàn)證工作需要額外的后端支持,增加了用戶測試的難度。
  
  CIRCT項(xiàng)目(Circuit IR Compiler and Tools)是基于電路中間表示(IR)的編譯器和設(shè)計(jì)工具。MLSynthesis v1.0 引入了firtool工具,能夠?qū)IRRTL Dialect轉(zhuǎn)換為SystemVerilog,并自動(dòng)生成對應(yīng)的testbench測試工具,用戶只需提供相應(yīng)的測試文件即可完成端到端測試。
  
  03
  
  增加對Vivado IP的支持,
  
  并實(shí)現(xiàn)端到端運(yùn)行
  
  以Xilinx的IP為例,MLSynthesis v1.0 將Xilinx的三十多種IP集成到軟件中,支持四五十種不同的運(yùn)算。同時(shí),軟件生成對應(yīng)的TCL腳本,實(shí)現(xiàn)FPGA仿真驗(yàn)證。
  
  04
  
  增加struct支持
  
  提供對C語言struct的全面支持,提升了代碼的組織和管理能力。
  
  05
  
  增加inline pragma
  
  內(nèi)聯(lián)函數(shù)開關(guān)
  
  函數(shù)內(nèi)聯(lián)能夠消除函數(shù)調(diào)用的開銷,并共享和優(yōu)化函數(shù)內(nèi)部的運(yùn)算。MLSynthesis v1.0默認(rèn)對除遞歸函數(shù)外的所有函數(shù)自動(dòng)進(jìn)行內(nèi)聯(lián)。若需關(guān)閉內(nèi)聯(lián),可在被調(diào)用函數(shù)內(nèi)使用#pragma HLS inline off,函數(shù)將不會(huì)被內(nèi)聯(lián)。
  
  06
  
  修復(fù)諸多bug
  
  新版本中,我們還修復(fù)了許多已知問題,進(jìn)一步提升了系統(tǒng)的穩(wěn)定性和可靠性。
  
  希望這個(gè)版本的MLSynthesis v1.0能為您的開發(fā)工作帶來更多便利與效率。感謝您對我們的支持!