# HG changeset patch # User Mychaela Falconia # Date 1582583400 0 # Node ID ab4021fb1c66b52c472e9afe3fbd24948bd31577 # Parent 52980e3a51c7a8c1542b0ee8ee8e12f660091966 doc/Loadtools-performance: flash programming added diff -r 52980e3a51c7 -r ab4021fb1c66 doc/Loadtools-performance --- 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]