Lattice iCE40 Ultra Plus FPGA: Gnarly Grey UPDuino – Tutorial 1: The Basics

Long time no post! Now that’s out of the way… As ever, I’m always on the search for cheap electronics and this board is nearly mind blowing given both the price and form factor you can get it in. Enter the Gnarly Grey UPDuino v2.0 based on a Lattice iCE40UP5K FPGA featuring: 120Kbits of BRAM […]

FPGA based OV7670 – Image segmentation

As I mentioned in my last post, I wanted to try some image segmentation! I had a quick go at histogram based segmentation where the largest peak of the histogram was used to find the most occuring pixel (after the colour range was bit crushed) but this didn’t have particularly useful results. This could be […]

FPGA based OV7670 – Edge Detection

One of the staples of image processing is edge detection. Edge detection is generally one of the primary steps for further image processing methods including feature detection. Conceptually, edge detection is relatively simply. Look at the image and compare areas of low intensity to areas of high intensity, simple right? Actually yeh, it is that […]

FPGA + OV7670 = Super slow UART webcam

What do you get when you combine an FPGA with some SDRAM and an OV7670 camera, transferring uncompressed frames through UART? Really poor performance, reliability and a pretty useless end product… Though just because it sucks that doesn’t mean it isn’t worth doing! I’ve had my first exam and I’ve wanted to crack on with […]

FPGA VGA and SDRAM

The magic 3! FPGAs being the coolest components out there, with VGA being the standard for all graphics and finally; SDRAM, the base of all synchronous memories. These past few days, I’ve been designing an FPGA based SDRAM controller as I’ve got an SDRAM chip on my FPGA development board which I haven’t yet interfaced to. Instead […]

uHMCU Alpha 0.1 – Interrupts and improved assembly

Term is over! I’m free for another Easter so hopefully I can get a couple of blog posts done though I’m taking a trip to visit Chernobyl so my levels of irradiation might end up screwing up everything electronic… (lol.) Assembler The assembler I’ve been using previously had been written quite a while ago and […]

uHMCU – Alpha 0.1

After a pretty large redesign, I can now safely say that the uHMCU is in alpha stage! I’ve ironed out most of the bugs for my USART module and can now both send and receive data. I tested it up to 115200 baud with the USB <-> USART bridge on my FPGA board and after […]

uHMCU 7 – USART

I posted about my microcontroller design a couple of posts back. As it turns out, I had actually designed it wrong! I didn’t have the pipeline fully sorted meaning I couldn’t properly execute some instructions and some things weren’t working properly. After a quick stack overflow question, I realised the error of my ways and figured […]

uHMCU FPGA Implementation

Having already designed the microcontroller in a simulation environment, I wanted to take it to the implementation phase. I’d previously shown an implementation of a timer in simulation so keeping the same test program, I wanted to make sure it worked in implementation! Firstly, I decided to replace the simulation ROM and RAM for IP […]

Enter the uHMCU…

It’s been a while since I’ve sat down to do some proper VHDL but today (after MASSIVE advances with the Phobass these past few days), I’ve decided to write a miniature version of the HMCU. I say miniature in the lightest sense. Features: MISC architecture featuring 9 Instructions 16bit processing capability (22bit program word length) […]