This week began very slowly as I had to quickly learn up on how computers worked, therefore I set out to finish a text book by A. Tanenbaum on Structured Computer Organization recommended by Dr. Shawn which I’ve previously only read 3 chapters. It turned out to be useful as in writing C++ drivers as some topics in the book did shed some light on it.
As I started to work on the drivers, I failed terribly the first time as I used a script found online that converted Verilog to C++ code which is in hindsight completely missing the big picture and doesn’t resemble a driver at all. Following some guidance from Dr. Shawn I managed to work through the remained of the later half of the week to come up with a working driver, which I verified using the simulator to check that the registers are at the correct addresses and that the operations are indeed taking place at those addresses.
This week, I intend to understand and implement the API as well as get cracking on the GPIO, SPI and sensor drivers.