4 ms·
I was more interested in the Silice project above: https://github.com/sylefeb/Silice/tree/draft https://github.com/sylefeb/Silice/tree/draft
by wrycoder 5y ago
I was more interested in the Silice project above:
https://github.com/sylefeb/Silice/tree/draft https://github.com/sylefeb/Silice/tree/draft
- zsmi 5y agoMe too. I was particularly hopeful that they would explain why they decided to not go with systemC as it seems to solve a similar problem but I couldn't find anything. https://en.wikipedia.org/wiki/SystemC https://en.wikipedia.org/wiki/SystemC
- sylefeb 5y agoHi, Silice author here. I cannot provide a detailed answer as I am not familiar enough with SystemC. I started Silice as a "quality of life" (in the video game sense) thin layer above Verilog, hoping to obtain something that would be more enjoyable to write with. I'd like this to be true both for getting started with FPGA, but also when describing advanced designs with efficiency concerns in mind (LUT count, max perf, hardware specificity such as DSP blocks, etc.). In many ways Silice is very simple. Just a thin abstraction layer with helpful syntax helpers (groups, interfaces, pipelines, fsm), automating some checks and performing simple optimizations (e.g. flip-flop pruning). But please see the README for all details. The spirit in which I am developing Silice is "I hope you'll find it useful" and absolutely not "this will be the definitive HDL". First, I am surely not qualified enough to imagine achieving such a goal, and second I am a big believer in having various tools for various problems and various styles. So I hope you'll find it useful :) I am taking great care in providing a build system to make it easy to get started both in simulation and real FPGA hardware. This relies on many other great projects: yosys, nextpnr, edalize, openfpgaloader, verilator, icarus, ... Also, Silice comes with fun examples! https://github.com/sylefeb/Silice/tree/master/projects https://github.com/sylefeb/Silice/tree/master/projects
- zsmi 5y agoThanks for the pointers! I'll definitely take a look.
- TomVDB 5y agoIt looks interesting enough, but I see that it's AGPL 3.0 licensed. AFAIK, the perceived toxicity of that license makes it impossible for use in a commercial setting?
- lsb 5y agoThere's always the option of paying someone who wrote the thing you need to give you a nicer license
- TomVDB 5y agoI like to learn new stuff by doing personal projects, but since there are so many things to learn, I select those that, one day, might benefit me professionally as well: as a consultant, to help me with perform some task at work more efficiently, etc. Most new languages that gather some kind of following get their start outside a commercial environment. If a tool has a license so toxic that many companies (1) simply rule out their installation on company servers or company laptops out of principle, I move on and select something else to learn. > the thing you need The license makes it so that I'll never know whether I need it or not. (1) Google is one of them: https://opensource.google/docs/using/agpl-policy/ https://opensource.google/docs/using/agpl-policy/
- nkssy 5y agoI'm delighted to hear that you will be writing a clone of this and will release it as MIT or BSD license due to your strong ethical stance. This is great news. Both projects will improve now as they can now bounce ideas off each other.