Jolin’s status report for 4/10/2021

  • This week I spent a ton of hours writing full system integration and the progress is shown in this pull request. (The pull request shows some older commits but the main progress was made earlier this week).
  • The project structure is now much more clear. I decoupled the hardware interfaces from the core system with a clear division of responsibility. The ChipInterface connects the core system conFFTi to hardware PLL clock, data read in from UART driver and send the audio out to the DAC driver. This setup isolates the core system logic from the hardware interface, so in the future if we want to use a different FPGA board or use a different audio codec, all we need to do is to change the device drivers without modifying the core system.
  • The system also becomes easily configurable. I defined all the configuration constants in one file. It’s super easy to change all system configurations from the output audio bit width to the number of polyphony support all by just changing the numbers in this file.
  • The code for each subsystem is organized into its own folder: midi, dispatcher, pipeline, and mixer. Each subsystem comes with its own unit test suite for all the modules. To make life easier, I standardized the testing procedure with the Makefiles (rule definition, file dependency). Testing is now much less painful.
  • My work concludes checkpoint 2 of our project.

I am on schedule.

I received the new TRS to MIDI cable and DAC controller with the headphone jack today. Next week I will be working on the arpeggiator control.

Leave a Reply

Your email address will not be published. Required fields are marked *