Welcome to the website of James W. Hanlon. Here you'll find notes on subjects of interest and projects I've been working on, as well as various archived documents and talks.
Browse: by catergory, by tag.
Computing / electronics
Thoughts on the requirements of software infrastructure to support chip design.
A rationale and strawman for a processor to accelerate dynamic-language workloads.
A hardware implementation of a Hex processor with some basic tooling, including a complete compiler for a simple programming language.
Choosing seeds for parallel xoroshiro128+ generators using fixed offsets produces correlated outputs.
A short summary of an investigation into the statisitical quality and implementation cost in hardware of the xoroshiro128aox PRNG.
Using Hamming Codes for single error correction and double error detection.
Details of new chips that have been built recently to accelerate machine intelligence workloads.
A description of how digital circuits are modified to allow scan testing to be performed.
Experimental lighting using high-power LEDs in generous volumes and behind translucent acrylic plastic to create big blocks of colour.
An LED driver module controlled by a PIC12F1572 and with CAT4101 drivers, deployable in an array via a RS485 interface.
A description of a command-line tool I created for tracing timing paths from a flattened netlist back through the RTL.
Coding style for RTL design using Verilog / SystemVerilog. Updated 2024.
Using empirical statistical tests to determine the quality of PRNGs.
A C++ implementation of a convoluational neural network building on the explanation in Michael Nielsen’s book ‘Neural Networks and Deep Learning’.
Neural networks have become a hot topic in computing and their development is progressing rapidly. They have a long history with some of the first …
An overview of the key features of the language, many of which derive from occam.
An overview of my PhD thesis.
Sustainability / environment / DIY
Retrofitting insulation in a timber-framed top floor.
Investigation of thermal faults using a thermal-imaging camera.
A review of human impacts on nature as a way to reflect and navigate environmental bad news.
Retrofitting an existing shed/workshop with insulation to improve its energy efficiency and make it a usable space throughout the year.