BETA

1999年のICF3はアマゾンとイーサリアムの課題を計算できます

投稿日:2019-08-06
最終更新:2019-08-07

2019年8月7日 00:38 修正( 誤 t=30、 正 t=2^30 )

1999年の暗号LSI ICF3は「米アマゾンとイーサリアム財団ら、賞金10万ドルのFPGAデザインコンテストを開催」 の課題のコアの部分、1024bitのA×A mod N (A,N: 1024bit かつ A < N)はICF3のプロセス270nmのASICですが約6448[ns]で計算できます。
この課題をICF3のシミュレータで演算できるコードは下記です。OpenICF3のサイトのブラウザ版のシミュレータで実際に動作させることができます。 レジスタ0にN、レジスタ1にxを設定します。 Nは、既に記載されているのでxを書き換えるだけです。10進数ではなくて16進数です。 コードには最初に2048サイクルの除算がありますが、これは最初の1回でいいので1回のA×A mod N は後半の約520サイクルで実行できます。1999年のICF3の1サイクルは12.4[ns]なので520×12.4 = 6448[ns]になります。

$R0 = b0ad4555c1ee34c8cb0577d7105a475171760330d577a0777ddcb955b302ad0803487d78ca267e8e9f5e3f46e35e10ca641a27e622b2d04bb09f3f5e3ad274b1744f34aeaf90fd45129a02a298dbc430f404f9988c862d10b58c91faba2aa2922f079229b0c8f88d86bfe6def7d026294ed9dee2504b5d30466f7b0488e2666b  
$R1 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa  
###################################  
# A = R1 x R1  mod R0  ( R1 < R0 )  
###################################  
    X=0;A=SEL1;C=SEL2  
    X=1;SEL(X);D=SEL2  
    SEL(X);B=SEL2;J=1024  
YDIV:  
    ADDL=DIVA;ADDR=D;CMP;SUB;INV;A=SEL3;B=SEL3;C=SEL3;BJ(YDIV)  
    ADDL=DIVA;ADDR=D;CMP;SUB;INV;A=SEL3;B=SEL3;C=SEL3  
    X=0  
    SEL(X);B=SEL2;X=1  
    SEL(X);D=SEL2   
    MRES  
    J=256;XCOUNT  
YLBL1:  
    XCOUNT;MMUL;BJ(YLBL1)  
    XCOUNT;MMUL  
    MMUL;MRES;A=SEL1  
    CMP;SUB;INV;ADDL=A;ADDR=B;A=SEL1  
    END(0);@A  
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

なにか思いついたことを不定期に更新。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!