Three-Speed Logic is an instrumentation consultancy in Victoria, BC. I design full-stack, FPGA-based scientific instruments, including hardware, firmware, signal processing, high-speed networking, embedded Linux, and Python.
Hardware and software I've worked on run at the South Pole Telescope and on the CHIME radio telescope, and have flown at 35 km (117,000 ft.) on a stratospheric balloon. Nothing has made it to space yet, but I'm working on it.
See my work for projects and open-source code, or the notes below for longer write-ups. To get in touch, contact Graeme Smecher by e-mail or on LinkedIn.
Vivado in a Docker container with a bind-mounted installation. Replaces the (obsolete) LXC recipe.
A method to cosimulate C and RTL code under Python control
A hair-shirted remote-build and regression-test framework for Vivado, made of git hooks, worktrees, and tmux.
Running Vivado in an LXC container for fun and profit (2020; superseded by the Docker recipe)
Xilinx's simulator can intelligently display AXI in block designs. We want that in RTL too.
Designing CIC compensation filters without MATLAB
Teaching asyncio and interactive IPython/Jupyter sessions to get along.
An interesting, and (as it turned out) doomed, method of combining async and synchronous Python code
A look through the GOES satellite data archive