changeset 613:ab4021fb1c66

doc/Loadtools-performance: flash programming added
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 24 Feb 2020 22:30:00 +0000
parents 52980e3a51c7
children 02bdb2f366bc
files doc/Loadtools-performance
diffstat 1 files changed, 19 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/doc/Loadtools-performance	Mon Feb 24 21:56:53 2020 +0000
+++ b/doc/Loadtools-performance	Mon Feb 24 22:30:00 2020 +0000
@@ -18,4 +18,23 @@
 port hardware - this host system dependency exists because of the way these
 operations are implemented in our architecture.
 
+Here is one example of expected flash programming time: flashing a FreeCalypso
+Magnetite hybrid fw image (2378084 bytes) into an FCDEV3B board (S71PL129N
+flash chip) via an FT2232D adapter at 812500 baud takes 2m11s on the Mother's
+Slackware 14.2 system.  This time is just for the flash program-bin operation,
+not counting the flash erase which must be done first.  Flash erase times are
+determined entirely by physical processes inside the flash chip and are not
+affected by software design or the serial link: for each sector to be erased,
+fc-loadtool issues the sector erase command to the flash chip and then polls
+the chip for operation completion status; the polling is done over the serial
+link and thus may seem very slow, but the extra bit of latency added by the
+finite polling speed is still negligible compared to the time of the actual
+sector erase operation inside the flash chip.  In contrast, the execution time
+of a flash program-bin operation is a sum of 3 components:
+
+* The time it takes for the bits to be transferred over the serial link;
+* The time it takes for the flash programming operation to complete on the
+  target (physics inside the flash chip);
+* The overhead of command-response exchanges between fc-loadtool and loadagent.
+
 [To be continued]