EDA免费开源工具分享
电子设计自动化(EDA)主要包含“模拟芯片、数字芯片验证和数字芯片实现”三大部分。目前,中国EDA公司在模拟和数字实现部分的自主创新已有一定突破,但在数字芯片验证部分,虽占据了芯片设计过半的研发时间与成本,却因其技术密集性更高,在数字验证工具的领域仍是一片空白。随着科技发展进入快车道,芯片需求剧增,完善自主研发的EDA技术刻不容缓。
开源EDA解决方案最近由于半导体业界对于开源硬件的兴趣而被大家重新提上了议程。但是业界这次对开源EDA是否存在着足够的动力推进其成功或者能开发到何种规模,这些疑问目前还没有确切的答案。根据赛迪的报告显示,2019年中国EDA市场规模约为5.8亿美元,仅占全球市场的5.6%。中国EDA厂商总营收不到4.2亿元,规模只占全球市场份额的0.6%;中国EDA国产化率约为10%在这种情况下,开源EDA作为一项比较新的项目也可能会为本土企业带来新的发展契机,因此,开源EDA的发展也引起了本土企业的关注。
开源工具Magic – IC layout, extraction, DRC
下面就介绍几款开源的EDA工具,涉及IC、FPGA、System和PCB。
IC
Alliance/Coriolis – VHDL compiler, simulator, logic synthesizer, automatic place and route
Chisel – Hardware compiler framework
cocotb – coroutine based co-simulation testbench environment for verifying VHDL and SystemVerilog using Python
Edalize – Python library for interfacing EDA tools (Icarus, Yosys, ModelSim, Vivado, Verilator, GHDL, Quartus)
FuseSoc – package manager and a set of build tools for HDL code.
GHDL – G HDL, a VHDL analyzer, compiler, simulator and synthesizer
Gnucap – GNU Circuit Analysis Package
Icarus Verilog – Verilog simulator (free)
ipyxact – Python based IP-XACT parser
IRSIM – switch-level simulator
LiteX – Migen/MiSoC based Core/SoC builder
Magic – IC layout, extraction, DRC
Migen – Python toolbox for HDL design
Netgen – Layout Versus Schematic (LVS) tool
nMigen – Python based HDL design
Ngspice – SPICE circuit simulation
OpenRAM – Memory compiler development framework
OpenROAD – RTL to GDS in 24 hours, no human in the loop
OpenSTA – Static Timing Analyzer
Oregano – schematic capture and SPICE circuit simulation
Qrouter – multi-level, over-the-cell maze router
Qucs – Quite Universal Circuit Simulator
RePlAce – global placement tool
SpinalHDL – HDL that creates VHDL or Verilog
Verilator – Verilog simulator
XCircuit – Schematic capture for SPICE netlists and PostScript
Xyce – Parallel analog circuit simulator from Sandia National Laboratories
Yosys – Verilog RTL synthesis
FPGA
Project IceStorm – Lattice bitstream format documentation
Qflow – digital synthesis flow using Verilog or VHDL, targets Xilinx or Altera
nextpnr – FPGA place and route
SymbiFlow – FPGA framework for tools, Verilog to bitstream
SYSTEM
PandA-bambu – framework for research in high-level synthesis and HW/SW co-design
QElectroTech – Electronic diagrams
WaveDrom – draws your Timing Diagram or Waveform from simple textual description
PCB
Electric – IC design with schematic capture, layout, routing, LVS, PCB layout
Fritzing – Schematic capture and PCB layout
gEDA – Schematic capture
KiCad – PCB layout
KTechLab – Electronic and PIC microcontroller design
LibrePCB – PCB Layout
LTspice – SPICE simulation, schematic capture, waveform viewer, Analog Devices
PCB – PCB layout
pcb-rnd – PCB layout