A tour of some XLS/xlsynth codegen options This is a brief tour of some options for generating pipelines from the “Accelerated Hardware Synthesis” (XLS) project. Namely, whether to flop inputs/outputs or to alternatively allow “combinational overhang” for the module you’re generating, i.e. whether to assume you …
github.com/xlsynth/xlsynth release process TL;DR: The xlsynth/xlsynth GitHub repository is a lightly-modified release fork of google/xls , mainly to provide timely, multi-platform C ABI library artifacts (like libxls.so and .dylib ) for broader ecosystem use (e.g., in Rust). It tracks upstream closely, occasionally carrying patches …
What follows is a transcript (with some edits for clarity) of the XLS (Accelerated HW Synthesis) guest lecture from Professor Beamer's CSE 228A - Winter 2024 UC Santa Cruz . Note that while the topic of this lecture is the XLS (Accelerated HW Synthesis) hardware development environment / toolkit this is primarily a …
I can calculate the motion of heavenly bodies, but not the madness of people. — Isaac Newton (purportedly) Limited though they may be, C macros as implemented in the C Preprocessor are still useful in these heady, modern, chainsaw-juggling C++ days. One aspect that keeps C macros useful in this modern …
Chop your own wood and it will warm you twice. — Henry David Thoreau via Henry Ford Allow me to tell you a tale: of the stack that's not the stack. A mysterious place where nulls are pushed and popped in lieu of PyObject s. A wondrous place, where tracebacks are …
[Latest from the "I can't believe I'm writing a blog entry about this" department, but the context and surrounding discussion is interesting. --Ed] If you're like me, or one of the other thousands of concerned parents who has borne C code into this cruel, topsy-turvy, and oftentimes undefined world, you …
Reading some of the original traits papers, I got to the part where they mention the conceptual difficulties inherent in multiple inheritance (MI), one of which is "factoring out generic wrappers". [*] [*] Fun concept from the papers: the conceptual issue with MI is that classes are overloaded in their purpose: they …
Steel your mind for a tale of intrigue, intertwingled with a complex topic in browser security. (It's kind of all over the place, but I might spray something useful.) Our story, like so many others, starts out with a browser user like yourself, a bottle of red wine, and a …
The Mozilla JavaScript-engine team has been hard at work since the shiny new JägerMonkey Just-In-Time compiler hit the betas. We're viciously ripping apart any bug that stands between us and shipping Firefox 4 . One could say that we're coming at you like a SpiderMonkey . Alongside our ferocious fixing, one of …
Inline caching is a critical ingredient in the delicious pie that is dynamic language performance optimization. What follows is a gentle-albeit-quirky introduction to what polymorphic inline caches (PICs) are and why they're useful to JavaScript Just-In-Time compilers like JaegerMonkey. But first, the ceremonial giving of the props : the initial barrage …
I've had some unique experiences interacting-with and participating-in tool development at previous companies that I've worked for, with the quality of those experiences in the broad spectrum from train-wreck to near-satisfactory. From that mental scarring has emerged the weighty goo of an idea, which may be interesting food for thought …
In anticipation of a much-delayed dentist appointment tomorrow morning and under the assumption that hard liquor removes plaque, I've produced [*] an entry in the spirit of Stevey's Drunken Blog Rants , s/wine/scotch/g . I apologize for any and all incomprehensibility, although Stevey may not mind since it's largely an …
One of my friends at work was fakeplaining [*] that he had been on the Python programming mailing list at work for some time, yet still did not know Python. Being hopelessly suggestible in the face of obvious sarcasm, I decided to sacrifice a few hours of sleep to the god …