@nlnet NLnet Foundation funded open source WireGuard router in FPGA. Featuring PipelineC for cryptography blocks 🤓

https://github.com/JulianKemmerer/PipelineC/wiki/Example:-ChaCha20%E2%80%90Poly1305-for-WireGuard

#hardware #fpga #rtl #hdl #hls #verilog #vhdl #cryptography #wireguard #pipelinec

See more about how this Chili.CHIPS project focused on open source projects including:

* PipelineC: HLS-like auto-pipelining
* Verilog-Ethernet: ETH networking IP library
* OpenXC7: Xilinx 7 series PNR
* VProc: System cosimulation with C/C++ interface
* PeakRDL: SystemRDL control and status registers
* SV2V: HDL converter

https://github.com/chili-chips-ba/wireguard-fpga

GitHub - chili-chips-ba/wireguard-fpga: Full-throttle, wire-speed hardware implementation of Wireguard VPN, using low-cost Artix7 FPGA with opensource toolchain. If you seek security and privacy, nothing is private in our codebase. Our door is wide open for backdoor scrutiny, be it related to RTL, embedded, build, bitstream or any other aspect of design and delivery package. Bujrum!

Full-throttle, wire-speed hardware implementation of Wireguard VPN, using low-cost Artix7 FPGA with opensource toolchain. If you seek security and privacy, nothing is private in our codebase. Our d...

GitHub

Consider how no longer relying on closed source manufacturer specific proprietary HLS tools means this design can easily be used on any other FPGA/ASIC platform.

With standard HDLs moving to a new platform would mean by-hand re-pipelining the complex ChaCha20 and Poly1305 cryptography blocks to meet the new device timing requirements.

PipelineC allows the same design to be used across devices portably without needing human intervention to make pipelines meet timing.

@pipelinec You'll want to mention @nlnet and not us. We make #OpenSource software ourselves, for #DNS and #BGP. 🩵
@pipelinec Congrats! This sounds pretty cool. Are they also planning to tape this out at some point or is it mainly FPGA focussed for now?
@pipelinec Does it even make sense to tapeout this kind of thing? Or do the protocols change often enough that reconfigurability is required? (I am definitely not a networking person, so I don't really have the intuition here)
@CanLehmann great question - it was mentioned as a 'what if someday someone did' but no concrete plans atm for ASICs. Reminds me of when microsoft has some networking FPGAs in datacenters and weighed ASIC vs them and needed to consider the years difference in dev time etc
@pipelinec @nlnet is this going to be synthesizable via an open source tool chain?
@scribblesonnapkins @nlnet yes that is the goal iiuc - they are working with OpenXC7 project 🔥