-- Building an FPGA from 74-series logic ICs. For fun and education.
Figure 1. TTL-FPGA
Technology is becoming more complex every day. Devices get smaller, integration gets higher. Consequently, it is becoming increasingly harder to understand how modern devices work.
In the 80s, you could open your PC and start probing signals on the mainboard to understand which instruction the CPU executed. These days, pretty much everything can be integrated into a single chip and everything is hidden away. One example of such a highly integrated component is the field programmable gate array (FPGA).
FPGAs essentially allow the designer to create large digital designs inside of an IC without having to create actual new silicon. As these designs are created by writing software-like source code, one might easily forget the fact that what is created is, indeed, a digital circuit. The immense overhead to provide this flexibility is easy to underestimate when working with these devices.
To aid students learning about FPGAs better understand the technology, this project aims to provide a platform to look at the inner workings of such a chip by breaking it out of the IC and bringing it onto a PCB where every signal can be traced and measured. Such projects are often done for central processing units (CPUs), but there isn't much when it comes to FPGAs.
Before I delve any deeper into my implementation, I want to highlight that this is only one of many ways to construct such an "FPGA." Also, this project does not accurately represent the circuits inside a commercial FPGA. Many things, especially the routing, had to be grossly simplified in order to be feasible. The basic concepts, however, should still hold true.
-- What if random access memories were actually true to their name?
Figure 1. Why do they even call it random?
In this post I will analyze the feasibility of using a memory which randomly performs either a read or write operation instead of giving the user the ability to choose between the two. Spoiler: It sucks!
Figure 1. Thank you for 2018! 2018 is coming to an end, and so it's time to tend to things that didn't get done over the year.
For me, I've been wanting to talk about many of my old projects for quite a while now, but never got around to it.
So this December (or tbh, many were shot during November), I pulled together and made videos for 25 of my projects. They date from very recent (November 2018) back to my school days (2007), so there's quite some variation to the style and type of project. I hope that you will enjoy (at least some of) them.
-- Let's pretend FlightGear is a model airplane simulator
Figure 1. FlightGear controlled using the FlySky FS-i6
In this post, I will explain how to use the FlySky FS-i6 RC remote control as a game controller / joystick on Linux.
This post covers how to connect the FS-iA6B receiver to a computer and how to compile the driver and support software.
When ordering at Pollin Electronic, there is this unwritten rule of at least throwing in one probably useless item, one that you might never even get to work (or that is broken in the first place). In my last order, this was a Samsung HCS-12SS59T vacuum fluorescent display[1]. I absolutely love this kind of display and they were cheap at only EUR 1.75 a piece. So why not?
In this post, I will showcase the project that this display became.
Markus | Updated Monday, November 27th 2017, 18:37
-- Tiny and cheap, but versatile
Figure 1. A rendered 3D-image of the Tiny-XO2 board
Introduction
The Tiny-XO2 is a small, versatile and cost-effective development platform for Lattice MachXO2 field-programmable gate arrays (FPGAs). It is built around a MachXO2-1200HC FPGA which features 1280 LUTs, 64 kbits of EBR SRAM and one PLL besides various other features[1]. The development board extends the functionality by providing a USB-to-serial converter and a crystal to allow quick and easy prototyping. All I/O pins are available on the .1 inch headers and labelled directly on the board. Figure 2 provides an overview of all the board's functions.