[Cryptech Tech] Happier RSA timing numbers
Joachim Strömbergson
joachim.strombergson at assured.se
Tue May 22 08:39:21 UTC 2018
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Aloha!
Some more results.
I have now coalesced the round operations in aes_encipher to a single
cycle. This reduces the number of cycles for AES-128 ECB Encipher to 17
cycles. An improvement of 3.35 compared to the old aes core.
With these changes the core implemented results are:
- - 2168 slices
- - 2984 regs
- - 122 MHz. (8.17ns)
Slightly bigger core. Still good margin to 100 MHz. I will implement
similar optimization to aes_decipher.
Yours
JoachimS
Joachim Strömbergson wrote:
> Aloha!
>
> Joachim Strömbergson wrote:
>> Aloha!
>
>> Rob Austein wrote:
>>> For future reference: a branch of the existing aes repository
>>> would have been much simpler to test than a whole new
>>> repository.
>> I did considered that, but decided that having two separate cores
>> with different architectures would be much less confusing.
>
> To clarify: I expected that the aes core optimized for speed would be
> so much larger (in terms of resources used) that we would never merge
> it into the normal aes core. My experience is that having two quite
> different architectures and designs in the same repo in different
> branches that never merge will lead to confusion. Normally the one
> not being the master will be lost, forgotten, not found etc. Even if
> you try to be very explicit in branch naming, documentation etc.
>
>
> But I have now done some synthesis runs of the aes_speed core and
> compared it to the normal aes core. I think that we could consider
> replacing the aes core with aes_speed.
>
> Results for Xilinx Artix7-t200.
>
> Old core (aes) - 2102 slices - 2991 regs - 113 MHz (8.79ns)
>
> New core (aes_speed) - 2019 slices - 2984 regs - 131 MHz. (7.58ns)
>
> The better clock speed and a few less registers isn't surprising. A
> couple of MUXes to provide S-box sharing within the encipher path
> and between encipher and key expansion has been removed.
>
> But the number of slices is a bit surprising. The mapping tool seems
> to do a great job mapping the S-boxes. For reference, I've done a
> similar modification of the AES core for an ASIC-implementation, and
> there we could see an increase in cells as the number of S-boxes
> increased.
>
>
> So, we need to test the AES core in the actual FPGA. If it works we
> should probably replace the old aes core with the design in
> aes_speed.
>
>
> One thing I will do right away is to further optimize performance and
> do cycle measurements between aes and aes_speed.
>
> This is fun! _______________________________________________ Tech
> mailing list Tech at cryptech.is
> https://lists.cryptech.is/listinfo/tech
- --
Med vänlig hälsning, Yours
Joachim Strömbergson - Assured AB
========================================================================
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQIcBAEBCAAGBQJbA9c5AAoJEF3cfFQkIuyN+Y0QAMeDcc/oJ5TI89/kuC7D0K33
1ftvcvHdM+4fOwSQ+ipZOmXaMrdoGDb+J7Bg8HAeNYdAhsoojEQrAZoXvBVzscua
TErxbZz0GyK4EIjR3/mO/Pi6birKjD3UQXjJGXC23gKJvIdcjkHHqU7bFhAXdMpc
OBd5y36P1V8IVl7XAni7BQ+lzBX2mlZvyut3gHlzFMi0NJE+55uyUFuQUjRVdrKA
4vjIk4ygsE7t2r1jVIucQBiG4J8Skfd07W9DqLS/WnYEWuj0p5fWGnmoaM16VIzg
PWY95WeTeD4TjuwUschzi4Z3TggeHkzuP7blbQ3RexWPlJOQPhNQlAdLtZP+y7c8
4FtRMPQyFGWuFxjCCUOIXOmpW2JVYJGPafe53z9z29pJOrZRPabJ+n5GLNZYrpQX
rokFN6Na2o0WlHw9C+ZK+GH7WND4ZXQFyuJ0Q2uretUGwW8IGlEdQ3Wg2zp9Y3oy
F21znDtqh8Hzn4LSlLagqnY2+TPrknWxnkeKRdJFkgHvHfrace7udSKHjR0aUAiX
uL8irKDKXBAcV+dBP3qk5En8P6qrAqwxHyqdUeDZ+BCjUndvaXZleaLGwehb84yl
lgdgZXpyjmbjojifGzOizRNt5ExNCOIgtJ4+vz0WsbOriQhdiXT8kS0VzM4uDzIi
T+EbIH7jnhMViFhce3mG
=SGRU
-----END PGP SIGNATURE-----
More information about the Tech
mailing list