Overview of the Student Processing Unit and associated system. We look at the architectural components of the CPU and memory and thoroughly cover the instruction set.
Early in the video I mention this design is by no means perfect. However, I failed to identify any example issues in the video. One issue is with the SYS function 0, which outputs a character to a terminal via a reference (pointer) in AR. This might be better if it output a character from AR rather than from a reference. Why?... In the "Hello, world for the SPU" video, when printing the string in a loop, we must load the char from the AR reference to see if we've reached the NULL terminator yet. If not, we could print the character that was already loaded from memory. Instead, we ask the operating environment to load it AGAIN to print it... that's an extra memory access (slow) for no good reason.
Slides from the video (PDF as seen in the video): https://drive.google.com/file/d/1ki1g...
Slides from the video (up to date Google Presentation): https://docs.google.com/presentation/...