Showing posts from May, 2022

How to build a very simple RISC-V Processor

Disclaimers I’m not an expert, and this was done a year ago, so I might get a lot of things wrong. Introduction The Task Last year (December 2021), The final course project for “HARDWARE SYNTHESIS LAB” was to implement in FPGA an Calculator with following spec: 5 decimal point precision Can do Addition, Subtraction, Multiplication, Division, and Square Root Use UART Serial Terminal as an UI Done Individually Solutions: Motivation for using High-level Approach One of the most common solutions last year was to do the UI Interaction with a Finite State Machine (FSM), a communicating UART state machine, and a dedicated circuit to perform calculations using Fixed Point Decimal Representation. This method is efficient and straight-forward to implement. However, The limitations of this approach is that translating Calculator design into an FSM is a laborious process since FSM is really low-level. This makes complex functionalities difficult. Given that this year’s final project required a

Capturing image with under-powered microcontoller: OV7670 + STM32F401

In this article, I will present the challenges and the solution to capturing images using the most under-powered microcontroller in the STM32F4 series. The article will go into explaining the reason why we are doing this, an alternative solution, the works of other people trying to do the same, and our solution. I've filled the article with several small remarks that I think would be helpful to people who want to use OV7670 or to connect it to STM32. Disclaimer : I'm technically a web developer so I may lack expertise and get some of the detail wrong. Furthermore, I wrote this one year after it was done, so I might misremember some details. Prelude In my university's 2nd year Embedded System Lab course, the course's final assignment is to build a device that Can connect to WiFi Uses STM32F401RE Nucleo-64 boards Have at least two peripheral It can be anything: an automatic trash can, a door lock, an air quality tracker. However, some of the student might think that they