Aadi Desai
|
17bb4ae5cd
|
Swap note header and helper functions for audio
|
2023-06-08 00:40:48 +01:00 |
|
Aadi Desai
|
9d5b77be87
|
Update make.py to use TestWave from TestSaw
|
2023-06-07 23:02:11 +01:00 |
|
Aadi Desai
|
4c4d287c63
|
Update genWave to use 24.4 bit fixed point
Improve frequency target accuracy from 1Hz to 0.0625Hz
|
2023-06-07 23:01:20 +01:00 |
|
Aadi Desai
|
c19b7e625f
|
Add testWave.py LiteX wrapper
|
2023-06-07 22:55:08 +01:00 |
|
Aadi Desai
|
54654bd5f8
|
Add genWave.sv
Supports 64 oscillators
Merges waveforms with volume reduced to range 0.5-1 of single wave
Heavily optimised to reduce area / MUL requirements
|
2023-06-07 22:53:04 +01:00 |
|
Aadi Desai
|
c9e9f9b483
|
Clean up main.py
|
2023-06-07 22:49:25 +01:00 |
|
Aadi Desai
|
fd53e3c579
|
Move sine bit inversion from genSaw to saw2sin
|
2023-06-06 18:51:36 +01:00 |
|
Aadi Desai
|
964d0b0c5e
|
Add propegation test and results waveform
|
2023-06-05 18:28:22 +01:00 |
|
Aadi Desai
|
b9ea99a601
|
Clean up build + make scripts, add links to readme
|
2023-06-05 16:35:17 +01:00 |
|
Aadi Desai
|
a8748bb424
|
Update demo C++ readme with instructions
|
2023-06-05 13:53:29 +01:00 |
|
Aadi Desai
|
47574015e4
|
Remove unused files
|
2023-06-05 13:52:59 +01:00 |
|
Aadi Desai
|
aac2ad4c62
|
Add always_ff in saw2sin to fix glitches
|
2023-06-04 14:14:05 +01:00 |
|
Aadi Desai
|
6d670dc903
|
Add function to play audio from CAN frames, no polyphony
|
2023-06-04 13:45:17 +01:00 |
|
Aadi Desai
|
8e534f9858
|
Extend defined notes in note header
|
2023-06-04 13:11:45 +01:00 |
|
Aadi Desai
|
392374b8dc
|
Add functions to demo to test CAN block / helpers
Get / Set can filter ID & mask
Read last CAN frame
Read CAN frames in a loop
|
2023-06-04 12:58:14 +01:00 |
|
Aadi Desai
|
6cf6d0a643
|
Create CAN helper functions
Get / Set CAN filter ID
Get / Set CAN filter mask
Get latest valid CAN frame in `can_frame` struct
|
2023-06-04 12:42:03 +01:00 |
|
Aadi Desai
|
a000c35f46
|
Add CAN receiver / pin definitions to make.py
|
2023-06-04 12:40:54 +01:00 |
|
Aadi Desai
|
ac92cebbae
|
Create CAN wrapper module
`CSRStorage` for setting CAN filter ID and Mask
`CSRStatus` for received message ID and 8 data bytes
|
2023-06-04 12:39:51 +01:00 |
|
Aadi Desai
|
743c9fdb64
|
Create CAN RX block, ACKs frames, no TX
|
2023-06-04 12:38:39 +01:00 |
|
Aadi Desai
|
4b57bdfa80
|
Update cordic.sv and saw2sin.sv for better accuracy, genSaw.sv to fix polarity of tri/sin
|
2023-06-04 12:07:28 +01:00 |
|
Aadi Desai
|
59ec852558
|
Add links for CAN Implementation to readme.md
|
2023-06-04 12:03:22 +01:00 |
|
Aadi Desai
|
07edec0fb7
|
Update build.sh dfu-util to wait for device if not present
|
2023-06-04 12:01:56 +01:00 |
|
Aadi Desai
|
d784f6d251
|
Add sine wave generator using cordic
|
2023-05-28 16:07:23 +01:00 |
|
Aadi Desai
|
6601b6f3af
|
Add quarter wave cordic block
|
2023-05-28 16:06:49 +01:00 |
|
Aadi Desai
|
032bb59dea
|
Remove volume module for now as it stops boot
|
2023-05-27 12:08:03 +01:00 |
|
Aadi Desai
|
4b58db7921
|
Update Sin polynomial approx image
|
2023-05-26 16:54:10 +01:00 |
|
Aadi Desai
|
2f40fb3bb5
|
Rename ledchaser module to line up with ifdefs
|
2023-05-24 12:42:34 +01:00 |
|
Aadi Desai
|
48b8e17ff2
|
Add ZipCPU article link
|
2023-05-24 12:39:11 +01:00 |
|
Aadi Desai
|
c5f69a4d0e
|
Update .gitignore
|
2023-05-24 12:38:20 +01:00 |
|
Aadi Desai
|
a6168e85e8
|
Add missing LEDs CSR ifdef
|
2023-05-24 12:36:34 +01:00 |
|
Aadi Desai
|
bb94e58a53
|
Completed dacVolume.sv, issues remain
If dacVolume and testSaw are instantiated in the same design, the design fails to run
|
2023-05-22 13:28:14 +01:00 |
|
Aadi Desai
|
4c831539a8
|
Add ifdefs for CSR in note header and source
|
2023-05-22 13:26:37 +01:00 |
|
Aadi Desai
|
6c54b80d80
|
Add volume control to main.cpp
|
2023-05-21 01:23:08 +01:00 |
|
Aadi Desai
|
275a74013c
|
Create volume control module, not functional
|
2023-05-21 01:22:39 +01:00 |
|
Aadi Desai
|
40a969e30d
|
Notes for saw -> sine conversion
|
2023-05-21 01:21:41 +01:00 |
|
Aadi Desai
|
8dbcd18269
|
Auto calc safe max depth for Litescope Analyzer
Avoids failed compilations and manually hunting for usable, valid depth
|
2023-05-18 16:21:45 +01:00 |
|
Aadi Desai
|
c4469cd6f6
|
Flip MSB of square wave, avoid DAC automute
|
2023-05-18 16:19:53 +01:00 |
|
Aadi Desai
|
79ab8cd538
|
Add waveform selection to demo software
Available waveforms: Sawtooth, Square, Triangle, Sine (To be completed)
|
2023-05-18 12:52:17 +01:00 |
|
Aadi Desai
|
6381cb53a8
|
Optimise triangle wave gen and add comments
|
2023-05-18 12:42:09 +01:00 |
|
Aadi Desai
|
a17429c105
|
Support selecting waveform in genSaw
|
2023-05-18 12:35:39 +01:00 |
|
Aadi Desai
|
166e6c913c
|
Clean up .svlint.toml
|
2023-05-18 12:34:03 +01:00 |
|
Aadi Desai
|
81cf1ebc5c
|
Replace assign with always_comb in rtl/
Update to better match IEEE1800-2017
|
2023-05-18 12:01:56 +01:00 |
|
Aadi Desai
|
afcf1093be
|
Update note.cpp and main.cpp for new CSRStorage layout
|
2023-05-18 11:38:39 +01:00 |
|
Aadi Desai
|
b2573b5f95
|
Add docs link for MigenAsyncFIFO to readme
|
2023-05-16 22:22:19 +01:00 |
|
Aadi Desai
|
5b80f2538f
|
Update litescope for new TestSaw module
Also increase scope download baudrate
|
2023-05-16 22:14:09 +01:00 |
|
Aadi Desai
|
3190265343
|
Update testSaw to match updated genSaw / dacDriver
|
2023-05-16 22:13:24 +01:00 |
|
Aadi Desai
|
06fc184cc5
|
Working version of dac driver
Output limited to 16bit as the set bitclock rate is too low for 24bit
Main work was on timing issues and inconsistent output
|
2023-05-16 22:12:41 +01:00 |
|
Aadi Desai
|
0ce0835a45
|
Working version of sample generator
|
2023-05-16 22:11:17 +01:00 |
|
Aadi Desai
|
cf504787e2
|
Create note control library for testing
|
2023-05-16 22:09:35 +01:00 |
|
Aadi Desai
|
2717f4e417
|
Update .gitignore
|
2023-05-15 17:55:41 +01:00 |
|