Files
yapicoprobe/doc/optimizations.adoc
Hardy Griech ba9dd2d993 reworking docu
2023-04-22 18:53:58 +02:00

34 lines
1.1 KiB
Plaintext
Executable File

:imagesdir: png
:source-highlighter: rouge
:toc:
:toclevels: 5
## Optimizations
### SWD / PIO
Several PIO optimizations has been implemented. Main idea of PIO control has
been taken from https://github.com/essele/pico_debug/blob/main/swd.pio[pico_debug].
To monitor the progress between the several versions,
https://sigrok.org/wiki/PulseView[PulseView] has been used. LA probe was
https://github.com/pico-coder/sigrok-pico[sigrok-pico].
#### First Version (03.01.2023 - e2b4a67)
image::Screenshot_20230103_074404.png[First Version]
#### (Currently) Final Version (06.01.2023 - 28fd8db)
image::Screenshot_20230106_153629.png[06.01.2023]
#### Explanation / Conclusion
The plots above were taken at SWCLK=15MHz. Absolute time of the four command sequences
shrunk from ~25us to 18us. Not bad.
Nevertheless there are still gaps which may give more optimization opportunities.
Switching times between read / write and the gap between two commands are
candidates. Note that moving code into RAM did not really help (and
optimization is still a non/slow-working mystery).