Weekly Reports

Eric’s Status Update for 10/24

Eric’s Status Update for 10/24

This week, I worked more on the encoder software simulator. This module has to tie in pretty closely with both the settings and display modules, so I’m trying to find a setup that is extensible enough to work in a variety of circumstances, yet well-tuned enough to work with these modules without much fuss. My current plan is as follows: We split the encoders into two modules. The first module takes in the raw data of the encoder, synchronizes it,…

Read More Read More

Manav’s Status Report for 10/24

Manav’s Status Report for 10/24

This week I worked on coding more of the MIDI decoder in RTL. This has a few cases that I thought I would need to cover, but actually do not for the purposes of this project, so I am considering just implementing the extent of what I need to and moving on. I also realized the event dispatcher is a lot harder than I initially envisioned it being so, so I spent more time rethinking the specifics of my design before…

Read More Read More

Manav’s Status Report for 10/17

Manav’s Status Report for 10/17

This week, I spent most of my time mocking up a python script to create a software version of the sampler and MIDI decoder. This made it easier to identify what I may have been missing in the hardware model of those components. As for the event dispatcher, I have started to create a software version of that way we can evenly distribute the load of the four note polyphony to the APUs. There were a couple of things I had…

Read More Read More

Team status report for 10/17

Team status report for 10/17

Some of the feedback from our presentation showed concern with the size of our project, and we would agree that currently, the biggest risk to our project is time. It’s  proving tough to keep up with our schedule. We have already planned for this and have revised our schedule since the proposal to be a bit more realistic while still building in slack to our schedule. Eric has determined that the video layer will require a bit more complexity in…

Read More Read More

Eric’s Status Update for 10/17

Eric’s Status Update for 10/17

This week, I worked on a few PRs from Joe, but mostly, I worked on figuring out what our hardware looks like. My first RTL Design is the encoders, so it’s important to make sure I know their exact functionality before doing any spin-off parts, like the display or the settings. I worked a bit on the software and hardware models for the encoders, but mostly, I just made a quick hardware schematic (which involves a few more resistors than…

Read More Read More

Joe’s status report for 10/17

Joe’s status report for 10/17

This week, I implemented the wavetable oscillator in Python. It meets our requirements of <1% deviation in pitch, and can output sawtooth, square waves, and sine waves. I am very happy with it because it was the one component we were nervous about meeting our requirements for, since we didn’t have too much of a basis for deviation in pitch. The model was written very similar to how it would be implemented in hardware, so it should be fairly fast…

Read More Read More

Eric’s Status Update for 10/10

Eric’s Status Update for 10/10

After Joe wrote the testbench last week, I refactored it pretty heavily into something that was a little easier to use. Our final UVM-esque environment is something that I’m very proud of–we have cycle-accurate checking now, and we even automatically look up python modules based on the path of their containing file, which is a bit of Python3 that I wasn’t sure was super possible. Next week, I really have to get to work on the encoder stuff, though–I imagine I’ll…

Read More Read More

Team Status Update for 10/10

Team Status Update for 10/10

This week, we worked on catching up from the missed time last week. We all are well into designing our respective components. Currently, we don’t have any major risks for the project; we’ve spent a lot of time discussing the oscillator module, because it has turned out to be more complicated than we have planned for.

JOE’S STATUS UPDATE FOR 10/10

JOE’S STATUS UPDATE FOR 10/10

This week, I implemented and verified a software model of the envelope detector module, which makes plots of like the image below for given values for attack, decay, sustain, and release. I’ve implemented it with hardware in mind, so it should be very easy to port it over to SystemVerilog. I’ve also worked on the software model for the wave table oscillator, which is proving to be more difficult than expected. I’ve put a lot of thought and testing into…

Read More Read More

Manav’s status update for 10/9

Manav’s status update for 10/9

This week, I focused on studying the test suite and example python scripts to model a software version of the sampler and MIDI decoder. I had to refactor the MIDI decoder from last week since there were a couple of misunderstanding. I will be trying to decide whether to use UART or USB for the MIDI input. For the sample, I have determined and made pseudocode for a basic version of the sampler in SystemVerilog. I have started to study…

Read More Read More