Commit Graph

18 Commits

Author SHA1 Message Date
morgan d5dd02736b sim: add frequency simulation 2024-05-07 15:39:08 +08:00
morgan 6f475e5c20 replace old example and update performance docs 2024-01-26 16:58:50 +08:00
morgan 547a02e6d3 sim: add step input to gtx 2024-01-26 16:58:50 +08:00
morgan 39bb656f85 sim: replace beating period error formula 2024-01-26 16:58:49 +08:00
morgan 5a9fa937ee sim: refactor into OOP & add FW collector 2024-01-26 16:58:43 +08:00
morgan f7a1d17628 notebook: convert all ipynb to py scripts 2024-01-22 10:35:21 +08:00
morgan 203bff205d formatting: add flake8-black
py: format using black
poetry: add flake8-black
flake: add buildInputs for flake8-black
2024-01-11 17:20:20 +08:00
morgan f58ab13e9b improve jitter generation
wave_gen: change to gussian jitter distribution
wrapper: reduce gtx_jitter to meet real world performance
docs: remove noise limitation
2023-12-13 17:14:20 +08:00
morgan 734e87eede add dcxo frequency change settling time
wrapper: add default settling value
sim: gate frequency change behind settling time
example: update adpll_period to 200μs to account for settling delay
example: update docs for adpll_period minimum value
docs: remove the settling time limitation
2023-12-13 15:53:11 +08:00
morgan 6e562732e5 turn .py files into wrpll_simulation package
py files & notebook: update import
docs: update install instructions
2023-12-13 15:51:46 +08:00
morgan daabecc4b6 add i2c communication delay
wrapper: add default delay and convert to timesteps
sim: add i2c delay before changing DCXOs frequencies
2023-12-13 15:45:29 +08:00
morgan 7c4a680787 notebook: update examples
refactor into import, simulation and plotting 3 codeblocks
remove extra config for wrapper
add docs string for RNG
change adpll_period & start_up_delay unit
2023-12-13 15:44:11 +08:00
morgan 0b724e84da wrapper: QoL improvement
time array is generated inside of wrapper
set default value for RNGs and ddmtd config
adpll_write_period and start_up_delay argument use seconds as their unit
freq_diff_error RNG now used the seed argument and uniform RNG
2023-12-12 13:33:02 +08:00
morgan 0a66f4c343 fix helper PLL glitches
sim: rename collector to phase_collector
sim: add period_collector for gtx tags
sim: trigger helper PLL after period_collector_r
sim: remove cycle slip compensation
sim: generator gtx in time loop
wave_gen: replace square generator with phase accumulator
wave_gen&wrpll: add white_noise generator
docs: remove section & png about cycle slipping and deglitcher failure
2023-12-12 13:32:22 +08:00
morgan da5908e754 sim: improve code style and cleanup
sim & wave_gen: use njit instead of jit(nopython=True)
sim: removing extra == 1
wrapper: remove unused import
2023-12-12 10:27:22 +08:00
morgan 3f6e525108 add notebook examples with 3 PLL modes 2023-12-05 14:58:20 +08:00
morgan 96280ac79a WRPLL simulation wrapper
wrpll: add gtx, base_adpll init
wrpll: config the 3 PLL modes, helper, main & both
wrpll: expose PID terms and sim options
2023-12-05 13:24:22 +08:00
morgan cbc9772efa WRPLL time domain simulation
wave_gen: add square wave with jitter generator
sim: add WRPLL gateware and firmware simulation
sim: add PID for main and helper PLL
sim: add options to choose PLL modes
sim: add cycle slip compensation for helper PLL
sim: optimize execution time with numba jit
2023-12-05 13:23:23 +08:00