[Cryptech Tech] Status of RSA timing tests etc
Peter Stuge
peter at stuge.se
Sun May 27 13:03:18 UTC 2018
Rob Austein wrote:
> * Several of us are still suspicious of FMC I/O here
It seems quite likely. Busywaiting is never good for performance.
> * Paul (re-)raised an interesting question about whether we could
> clock the FPGA from the 90MHz FMC bus and make this a synchronous
> interface, which at least in theory might significantly increase
> throughput on the bus.
It will for sure, if it works.
> Might at least be worth the experiment, particularly if it:
>
> * Lets us get rid of the double read in fmc_read() and
This depends on the STM hardware. Maybe the errata says yes or no.
> * Lets us stop having to spin wait polling the FMC NWAIT GPIO pin
> after every 32 bit word we transfer(!).
It will.
> Assuming this change is workable, if we were to combine it with the
> trivial hack to move the bytes wapping to Verilog, we'd finally have
> an interface which looks relatively sane in terms of the number of
> ARM instructions involved in moving data between ARM and FPGA.
>
> Paul and I don't know enough about the FMC bus to know whether this
> is plausible.
Yes, I think it is.
> * I noticed a few more minor things we could do with the current FMC
> I/O code which might squeeze a few more cycles out of it, will try
> them at some point, but as long as we have the NWAIT poll after
> every word I would not expect this to make much difference.
Someone with access to an oscilloscope or logic analyzer could take a
look at the FMC sync signals to find out how long data transfer
takes.
And/or probe an STM32 IO (e.g. PA14 also used for SWDCLK) and make
software set that high before start of transfer and back low when done.
//Peter
More information about the Tech
mailing list