Chips is a Python library for designing hardware devices that provides a high-level device modelling language. Native simulations integrate with Python so you can use Python extension modules such as Scipy, Numpy, Matplotlib, and PIL to provide a rich verification environment. Device models can be automatically translated into synthesizable VHDL, and highly optimized soft-processors are generated for an efficient implementation. A plugin mechanism is provided so that additional code generators can be added. C++ and Graphviz plugins are provided. Existing VHDL IP can be imported, and seamless co-simulation of C++ and VHDL outputs is is supported.
Ell is a library to write EBNF grammars as C++ code for quick development of LL(n) parsers or similar applications. It is not a tool to generate parsers (like ANTLR): the grammar you write is directly embedded into your C++ code. The core library is very light (less than 2000 lines of headers) and written in generation templates to achieve the fastest execution. The service provided by Ell is very similar to what Boost Spirit provides, but with a simpler object model, and without the need of the Boost library (it only depends on STL).