-
Building a Processor, Part 6: Optimizing the Debouncer
This is part 6 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about optimizing part of the circuit that I built in the previous part. Previous: simple counter. In the previous post, I briefly touched on a simple speed optimization that I made to the […]
-
Building a Processor, Part 5: Simple Counter
This is part 5 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about adding some simple counter functionality to the push buttons. Previous: using a dcm. I now have a working display, but my board right now has no state to it. I can […]
-
Building a Processor, Part 4: Using a DCM
This is part 4 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about using a DCM to manage the clock frequency. Previous: seven-segment display. In the previous post, I created a simple driver for the display, which uses the externally-provided clock to count time. […]
-
Building a Processor, Part 3: Seven-Segment Display
This is part 3 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about getting the seven-segment display to work. Previous: first circuit. This post is going to be pretty short; there are many great resources out there that give step-by-step descriptions for building the circuitry […]
-
Upgraded blog host to Ubuntu 12.04
Linode actually made this remarkably easy to do, I just had to: Shut down the old vm Resize its disk to be less than half of my Linode disk quota Create a new 12.04 disk image, again with less than half my Linode disk quota Launch the vm but now from the 12.04 image, and […]
-
Building a Processor, Part 2: First Circuit
This is part 2 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about getting all the tools working, and getting a very basic circuit programmed onto the FPGA. Previous: getting started. At this point, I have a Nexys 3 board, and have Xilinx ISE […]
-
Building a Processor, Part 1: Getting Started
This is part 1 of my Building a Processor series, where I try to build a processor on an FPGA board. This post is about selecting+buying a development board, and what we’ll get with one. At this point, I’ve hopefully gotten you uncontrollably excited about buying and using an FPGA, and now you’re wondering […]
-
Building a Processor: The Plan
One of my current projects is to build a Python compiler — nothing to show yet, but the project is going well. In the course of doing it, I brought up the idea of “compiling” some of the Python to an FPGA instead of to machine code (or in the case of my compiler, LLVM […]
-
Reviving the blog
My one and only popular post was about choosing a hosting provider. At the time I recommended linode; I bought a Linode VPS and a prgmr.com one. Fast forward three years, and my exciting ideas for all the ways I could use a personal VPS have fizzled, and I’m now paying $20/month for a wordpress […]
-
Treasuries are a Giffen good
A Giffen good is something that people buy more of as prices increase, seemingly working against standard supply-demand theories. They’re different from luxury goods, which have similar behavior; luxury goods are assumed to become more desirable as they become more expensive, since they are more status-providing. A Giffen good, however, is purchased more because as […]