From 91201a00fa6030bf4ae793b90f91af6febaefd15 Mon Sep 17 00:00:00 2001 From: Jake <jake.read@cba.mit.edu> Date: Thu, 4 Jan 2024 11:37:53 -0500 Subject: [PATCH] notes on spi rates --- README.md | 27 +++++++++++- rpi_spi/2023-12-29_pi-spi-rates.md | 40 +++++++++--------- rpi_spi/code/spi_peripheral_bare/spipi.cpp | 6 +-- rpi_spi/images/2024-01-04_spi-traces-10Mb.png | Bin 0 -> 23648 bytes rpi_spi/images/2024-01-04_spi-traces-1Mb.png | Bin 0 -> 20247 bytes 5 files changed, 50 insertions(+), 23 deletions(-) create mode 100644 rpi_spi/images/2024-01-04_spi-traces-10Mb.png create mode 100644 rpi_spi/images/2024-01-04_spi-traces-1Mb.png diff --git a/README.md b/README.md index d17620c..bca73d0 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,29 @@ - see even i.e. transfer of some tens-of-megabytes onto an SD card (copying a gcode file) - we observe only ~ 20mb/sec of advertized 80mb/sec or so - otherwise, you have notes on what-the-point is in your `scratch` - and consider linking to the ring-test page -- and discuss that at the embedded limit, we often run into interrupt-request-handling-time troubles before anything else... \ No newline at end of file +- and discuss that at the embedded limit, we often run into interrupt-request-handling-time troubles before anything else... + +## TODO + +- test the D51 for device-to-device uart +- likewise for RPI (five?) to device SPI link + +--- + +## Next + +- the SPI can work, I suspect + - probably needs that sweet sweet 250MHz-es + - can crank up to 16-bit words in the FIFO, for 2x less starvation + - can PIO do 32-bit words, perchance ? + - fire the interrupt on transmit buffer not-full, rather than half-full ? + - actually no interrupt exists for this + - can we do a proper echo test, then check for drops, etc, for max speed ? +- do the RP2040-to-RP2040 UART PIO test +- finish the thought, blog it up (1 day, max) +- take i.e. [notes](https://abyz.me.uk/rpi/pigpio/pigs.html), right ? + - incl. the maybe-likely-change to use PIO spi-slave, not this bs +- i.e. go-notes/ref/rp2040 ? + - https://cec-code-lab.aps.edu/robotics/resources/pico-c-api/index.html + - https://github.com/raspberrypi/pico-examples/tree/master + - https://www.circuitstate.com/tutorials/making-two-raspberry-pi-pico-boards-communicate-through-spi-using-c-cpp-sdk/ \ No newline at end of file diff --git a/rpi_spi/2023-12-29_pi-spi-rates.md b/rpi_spi/2023-12-29_pi-spi-rates.md index 78300c7..a2757d3 100644 --- a/rpi_spi/2023-12-29_pi-spi-rates.md +++ b/rpi_spi/2023-12-29_pi-spi-rates.md @@ -87,22 +87,24 @@ I'm going a bit mad with this; I can get GPIO interrupts to fire *just on a fall There's another oddity in here... the RP2040 only uses SPI framing where the CS line is pulsed per frame (7-16 bits), so we need to handle it in software, though IDK exactly how to do this as a peripheral, though apparently [this lad](https://github.com/raspberrypi/pico-sdk/issues/88#issuecomment-1402204730) found [a workaround?](https://github.com/uwopus/pico-code/blob/3594e67c1ac34e5454eb4db8362b673bcc7c8862/opus_comms/opus_comms.c#L44-L46) which references 4.4.3.13 ---- - -## Next - -- the SPI can work, I suspect - - probably needs that sweet sweet 250MHz-es - - can crank up to 16-bit words in the FIFO, for 2x less starvation - - can PIO do 32-bit words, perchance ? - - fire the interrupt on transmit buffer not-full, rather than half-full ? - - actually no interrupt exists for this - - can we do a proper echo test, then check for drops, etc, for max speed ? -- do the RP2040-to-RP2040 UART PIO test -- finish the thought, blog it up (1 day, max) -- take i.e. [notes](https://abyz.me.uk/rpi/pigpio/pigs.html), right ? - - incl. the maybe-likely-change to use PIO spi-slave, not this bs -- i.e. go-notes/ref/rp2040 ? - - https://cec-code-lab.aps.edu/robotics/resources/pico-c-api/index.html - - https://github.com/raspberrypi/pico-examples/tree/master - - https://www.circuitstate.com/tutorials/making-two-raspberry-pi-pico-boards-communicate-through-spi-using-c-cpp-sdk/ \ No newline at end of file +## 2024 01 04 + +Well, I got this recording histograms today, here's 1, 10, 11 and 15 MBit/s + +| Mbit/s | Histogram | +| --- | --- | +| 1 |  | +| 10 |  | +| 11 |  | +| 15 |  | + +They are nicely packed / consistent, and we can basically get up to 5Mbit/sec when we use 10Mbit underlying rate - which is rad, but... not the whole 10Mbit, is it? + +This is because of - once again - that inter-packet time, which we can see in 1 and 10Mbit traces here, where CH1 is chip select and CH2 is DO. + + + + +We can see that the actual packet transmission (the solid blue chunk) is taking place ~ just over half of the time at 10Mbit, and we are otherwise in deadzone: CS hi, or CS lo but no transmission happening. I didn't observe this deadzone ever being any smaller than 10us, and it would sometimes grow to 40 or 50us, which would impose a real-bandwidth cap even as we increase underlying bitrates. This is why, in our 1Mbit histogram, our real rate is somewhere around 0.7Mbit, whereas even when we crank the bitrate to 10Mbit, our real rate only climbs to 5Mbit. This also means that this link (like many others) is going to reward large packets / frames. + +There's also a significant dropoff in quality just above 10Mbit, we jump from three zeroes to one, and then up to 15Mbit only we are hitting full missus. I suspect that this is a hard interrupt handling time limit. \ No newline at end of file diff --git a/rpi_spi/code/spi_peripheral_bare/spipi.cpp b/rpi_spi/code/spi_peripheral_bare/spipi.cpp index 163758d..3d56b44 100644 --- a/rpi_spi/code/spi_peripheral_bare/spipi.cpp +++ b/rpi_spi/code/spi_peripheral_bare/spipi.cpp @@ -25,7 +25,7 @@ #define PIN_RX 12 #define PIN_TX 11 -#define BITRATE 10000000 +#define BITRATE 11000000 #define SPI_INST spi1 #define SPI_HW spi_get_hw(SPI_INST) @@ -48,7 +48,7 @@ volatile uint8_t txPtr = 0; volatile uint8_t txLen = 64; // we catch rising edges to delineate packet-end -void spipi_gpio_irq_handler(uint gpio, uint32_t events){ +void __not_in_flash_func(spipi_gpio_irq_handler)(uint gpio, uint32_t events){ if(gpio_get(PIN_CS)){ txPtr = 0; rxPtr = 0; @@ -56,7 +56,7 @@ void spipi_gpio_irq_handler(uint gpio, uint32_t events){ } } -void spipi_irq_handler(void){ +void __not_in_flash_func(spipi_irq_handler)(void){ // gpio_put(PIN_DEBUG, !gpio_get_out_level(PIN_DEBUG)); // both have up to 8 bytes to read / write per interrupt ? // write bytes while writable diff --git a/rpi_spi/images/2024-01-04_spi-traces-10Mb.png b/rpi_spi/images/2024-01-04_spi-traces-10Mb.png new file mode 100644 index 0000000000000000000000000000000000000000..de8a8bf4641b79364bd51775dc27e77c5ab25e09 GIT binary patch literal 23648 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 literal 0 HcmV?d00001 diff --git a/rpi_spi/images/2024-01-04_spi-traces-1Mb.png b/rpi_spi/images/2024-01-04_spi-traces-1Mb.png new file mode 100644 index 0000000000000000000000000000000000000000..6d0a549942975cc57e22210dbd8ea872bdc1ac44 GIT binary patch literal 20247 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 literal 0 HcmV?d00001 -- GitLab