Wildebeest

The Wildebeest project is an open-source RTL synthesis tool that builds on the mature Yosys platform and extends it with advanced logic synthesis algorithms for state-of-the-art quality of results (QoR).

The project is initially focused on supporting Platypus FPGAs. However, most of the Platypus-specific optimization passes are general-purpose and can be easily adapted for other targets. The long-term goal of Wildebeest is to serve as a common hierarchical synthesis engine, providing a library of high-performance optimization passes that can be shared between targets. The groundwork for this effort has already begun with the introduction of the -config option.

The table below shows how Wildebeest compares against both open-source and proprietary synthesis tools on the picorv32 CPU design.

To run Wildebeest across a broader set of benchmarks, see LogikBench.

DeviceArchToolSynthesis CommandLUTsLogic Depth
z1060LUT6wildebeestsynth_fpga231242
z1060LUT6wildebeestsynth_fpga -opt delay26776
Vendor-1LUT6vendor(proprietary)28707
Vendor-2LUT6vendor(proprietary)29478
xc7LUT6yosys (0.56)synth_xilinx -nocarry307217
z1010LUT4wildebeestsynth_fpga359339
z1010LUT4wildebeestsynth_fpga -opt delay41128
ice40LUT4yosys (0.56)synth_ice40 -dsp -nocarry437833

NOTE: We made a best effort to isolate synthesis QoR from hardware-specific details (e.g., LUT4 vs. LUT6, presence or absence of carry cells). For Yosys, this required disabling carry cells to match the Platypus architecture, which does not yet support them.

To learn more about Wildebeest, please visit the GitHub repo.