Kevin’s Design Notebook


Hello, this is my design notebook

Week of 20 January 2023

Project Work:

This week was spent attending the orientation meeting for all members and starting with Onboarding Lab 1. I learned the specifics of what CMake does and how it is used. I have interacted with CMake before but I’ve never fully understood or interacted with it until now.

I was having some indecisiveness about how to submit the lab report. In particular I wasn’t sure how I should submit the lab itself. I decided to create one repository for all of the onboarding labs that I will do in order to keep all my work in a single repository.

Week of 27 Feburary 2023

Project Work:

This week I completed the second onboarding lab. I got my first introduction to System Verilog and learned more about how unit tests are made and run. The lab itself didn’t take that much time. Instead I spent most of my time trying to figure out how the testing environment worked.

Week of 6 Feburary 2023

Project Work:

This week I focused on creating the WSL documentation. I struggled for the first few days because I misunderstood the purpose of this documentation but after a discussion with Vito I was able to finish it in a couple of days. I was slowed down because I did not have a good way of testing my guide since all of my computers already have WSL installed so Vito will be going through this guide and providing feedback on what does and doesn’t work.

Week of 13 Feburary 2023

Project Work:

This week I was planning on completing both labs 3 and 4 but was only able to finish lab 3 because I got stuck on some undefined behavior for C++ with bitshifts and modulus. Michael helped a lot by reminding me of an old message he sent about this issue a few weeks back. After he helped me I was able to finish the lab in a couple days without much issue.

Week of 20 Feburary 2023

Project Work:

This week I finished Lab 4 which was fairly straight forward. I had some trouble finding time to work on lab work before this weekend so I will be submitting this design notebook a little late.

Week of 27 Feburary 2023

Project Work:

This week I spent most of my time studying for midterms but I fixed the WSL documentation to install the correct version of CMake after Rishyak notified me that the normal install method doesn’t install the version that we use in our toolchain.

Week of 6 March 2023

Project Work:

This week I read up on the AMBA AHB module and familiarized myself with interfaces in system verilog. I initially thought the task would be fairly simple but its taking me a little longer than I thought to understand how it works.

Week of 13 March 2023

Project Work:

I did not spend much time working this week due to Spring break but I switched from working on the System Verilog part in favor of working on the tests first but I was slowed down by my limited understanding of CMake.

Week of 20 March 2023

Project Work:

I made a lot of progress on the subordinate and pushed a first draft on the dummy subordinate to feature-11-DummySub and will be continuing test creation and refining of the subordinate.

Week of 27 March 2023

Project Work:

This week I had a little trouble getting the tests to build. It ended up being an extra include statement that was causing issues. Once that was fixed I started drafting up simple tests and fixing some aspects of the dummy subordinate as I went. Next week I will be adding more tests and implementing additional features described on the AHB documentation.

Week of 3 April 2023

Project Work:

Slow week this time due to other work and school but I was able to finish a basic read and write test for the dummy subordinate. I had a decent amount of trouble getting the project to build on my main computer so I gave up and did the work on my laptop instead. Currently working with Rishyak to figure out the issue.

Week of 10 April 2023

Project Work:

Started work on the subordinate for the memory controller. I felt that since the dummy controller had basic reads and writes done, having an actual target component like the memory controller would be good for developing the more complex functions of the subordinate like bursts and transfer sizes.

Week of 17 April 2023

Project Work:

Continued work on the memory controller subordinate. I’m beginning to think that the state fields that I made on the dummy subordinate aren’t useful so I will see if I can finish the memory controller without the state.

Week of 24 April 2023

  • End of Semester Presentation: Finished end of semester presentation

Unfortunately we weren’t able to present this week due to time constraints but I was able to watch the presentations for the other teams which were very interesting. I didn’t do any work otherwise due to final projects.