Aadi Desai
|
fe3b92d527
|
Switch from vexriscv to picorv32
Interrupts appear to be broken on `vexriscv`
Performance of `picorv32` is significantly lower than `vexriscv`
|
2023-06-10 14:08:56 +01:00 |
|
Aadi Desai
|
9da49fa5e3
|
Add can_init() and can_isr()
|
2023-06-10 14:07:36 +01:00 |
|
Aadi Desai
|
be6ab940ff
|
Add interrupt output to can wrapper
|
2023-06-10 14:06:09 +01:00 |
|
Aadi Desai
|
4c8687014e
|
Add custom isr.cpp to project
|
2023-06-10 14:04:15 +01:00 |
|
Aadi Desai
|
eb55b06779
|
Add pulse output to can for frame received
|
2023-06-09 13:58:42 +01:00 |
|
Aadi Desai
|
391c58c7c6
|
Update demo readme.md for updated BUILD_DIR
|
2023-06-09 11:15:02 +01:00 |
|
Aadi Desai
|
d970fded6a
|
Fix can_listen_cmd()
|
2023-06-08 16:14:03 +01:00 |
|
Aadi Desai
|
795a9d2916
|
Fix genWave output glitches
|
2023-06-08 16:13:32 +01:00 |
|
Aadi Desai
|
80f82cdc10
|
Fix genWave wave addition
|
2023-06-08 16:13:18 +01:00 |
|
Aadi Desai
|
5bf1833a03
|
Fix BUILD_DIR var in demo Makefile
|
2023-06-08 11:22:25 +01:00 |
|
Aadi Desai
|
8be509cd90
|
Update main.cpp to use audio header and helpers
|
2023-06-08 01:37:59 +01:00 |
|
Aadi Desai
|
f1dc882f93
|
Remove float from audio headers and helper files
|
2023-06-08 01:26:23 +01:00 |
|
Aadi Desai
|
cfa699fe84
|
Revert genWave to 24bit int, floats fail to compile
|
2023-06-08 01:19:36 +01:00 |
|
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 |
|