|
2月26日 技術収支の管理は厳格技術収支の管理はしっかりしているという話。
20年くらい前の日立の大型コンピュータを開発している事業所のことですが、事業所には
仕事を発注する事務所っぽい部署と、技術開発をしている部署がある。
技術開発をしている部署では常に技術を開発していればいいが、僕のいた事務所は、そうではない。
技術開発部から取り入れる技術を事業に必要な最小限のものに絞る。
必要以上の技術を取得してはいけないのです。 2月25日 自作ドライバのほうが品質がいい自作の品質はどうなの?と思う人あると思います。日立関係の人は読みましょう。
とっておきの話で、これまでも何度か説明しています。
10年前のことですが国税が確定申告で国民に使わせていた日立製作所の
ICカードリーダのPC/SCドライバの品質が非常に粗悪で複数アプリケーションで
同時にアクセスするとICカードとの接続が切れるなどの現象を起こします。
他のメーカーのPC/SCドライバは、そういうことはなく正常に動作します。
ただ複数アプリケーションで同時にアクセスしなければ問題がなく、結果、
1年以上放置されていました。 2月24日 ICカードの暗号ライブラリは自力で開発暗号ハードウェアを開発してソフトどうするの?という話ですが、 2007年ごろにICカードのハードを買って販売していたことがあります。 そのときはソフトは全部、自力で開発していました。日立関係ありませんということです。 日立に絡まれそうな話をしておこうと思います。 2005年に日立を退職しています。それまでの数年、システム開発研究所に放置されていました。 そこにいた数名でICカード用の暗号ライブラリ(Windows CSP)を試作していました。 儲かる案件にならなかったので、すぐに潰れました。 その後、自力で全部を開発して、自分のコードに置換しました。 それを社内展開しようとしたところで、謎の風邪で出社できなくなり、 身の危険を感じて退職することになったのです。 開発したソフトというのは、現在もバージョンアップをしているmyuTokenのことです。 USBメモリをカーネルドライバでICカードにエミュレーションしているのでセキュリティ以外は本物と同じレベルでエミュレーションします。 全世界的に見ても、ここまでできているのを見たことはなく、日本語のマニュアルしかないフリーウェアですが 海外でも利用されているようです。独立行政法人IPAの未踏ソフトに採択されています。 管理費を引かれて、僕の手取りは320万円(全額税金)くらいでした。 プロジェクトマネージャーは当時、コーエーの社長だった松原氏です。 なんと!暗号プロセッサICF3を開発した東大卒が多い部署の近くにいた東大卒の方です。 未踏に応募してから、気づいたのですが、後の祭りでした。 お世話になった期間、僕の日立問題について、ひとことも話ていないので、僕の方では状況を把握していません。 2月23日 今、ICF3-Fを急いでいます僕が、これまでSNSで書いてきたことを読んでいる人には説明する必要がないのですが、 FPGAのICF3-Fを急いでいます。 ICF3-FはASICの状況に依存しますがFPGAが有利でASICが有利になる状況は難しいと考えている。 2月22日 僕はまだICF3-Vの将来を見ているICF3-F、ICF3-Vの2つのプロジェクトがあって、たまに混同することがあるようです。 ICF3-Vは面積を小さくすることに特化したマイコンを目指したもの。 これまでのマイコンになく小さいことが期待されるメリット。 何か、たまにイベントがあったときだけ動作して普段はあまり動いていないという状況が多ければ、 低消費電力を頑張るより、面積が小さいほうがいい場合もあるかと。 実際に利益を上げることを目標にして、低性能なマイコン1個の値段が100円以下の場合もあるとすると、 それなりの体制で進めないといけない。 オープンにするルールをICF3-V専用のものにしたほうが、いいと思っています。 アセンブラを境界線として成果を分けることが比較的できそうということ。 OS・コンパイラを押さえられても、アセンブラだけでもやっていけそうだからです。 僕のような貧乏人では金持ちにオゴれなくて、僕中心なプロジェクトになってしまうので、 プロセッサ・アーキテクチャの研究目的では、難しいのかも。 そして実験の成功が保証されていません。 僕の人生の成果に対する処遇が十分にあれば状況は変わるので、本当はそういうところを考えてもらいたいところです。 追記(2月23日) 税金を使うと売れなくなるので、そういう人はアセンブラで開発。 OS・コンパイラが税金を吸ってプロセッサ・アーキテクチャにフィードバックされることについて。 このプロセッサ・アーキテクチャは、面積を小さくすることが目的であり、 OS・コンパイラの開発が不便でも、それに合わせる他ないので、フィードバックはあまりない。 強引な言い分ですが、この時代にプロセッサの設計が進められることのメリットを考えてもらえればと。 2月21日 LSI設計の話が好きなおじさんは多い低消費電力なのは最先端のテクノロジーの効果なのか、設計&ソフトウェアの成果なのか。
大型コンピュータはお金を儲けるためのマシンということ。
当時(1990年代)の日立のLSI設計環境はディレイをコントロールするソフトウェアに全然、
お金がかかっていなくて、ソフトウェアの改善で性能が伸びる状況だった。
しかし、そのおかげで僕のいた部署の儲けは大きくなっている。
ゲーテッドクロックなどを使ったパワーコントロールができなかった理由のひとつは、
ソフトウェアの問題があったように思う。
そもそも当時の高性能サーバーは低消費電力の需要は、それほどなくて、安価な開発コストのほうが重要だった。
2月21日 今日の作業一日中、風邪で熱が出た時のように体全体が痛かった。風邪の悪寒はない。
そのせいであまり作業は進んでいない。
これまでFPGAのクロックはクロックウィザードを使って自動生成してきたが、
MMCMをマニュアルで使うべく、調べ始めました。
僕が日立にいてLSIを開発していた20年前はゲーテッドクロックとか禁止でしたが、今は積極的使って
低消費電力にするのが普通になっているようです。1997年の暗号LSI、ICF1は僕がリーダーでした。
計画表を書いて進捗管理をする事務員の傍ら、論理設計もしていました。
そしてLSIが実際に製造されて届いたとき「クロックの波形が少しおかしい」と
残業のつかない時間帯を狙って呼び出された。
(僕の論理設計に問題があったわけではなくリーダーだから)
2月20日 4種類のFPGAボードを作れる準備日記が書けるくらいまで頭(目)が回復したが今日、1日、作業は完全に停止していました。 この遅れをどうにか損失試算することで頭痛になる問題を回避したい。 しかし損失試算で回避することより、普通に開発を進めたほうが、僕にとって有利だと考えて欲しい。 昨日の作業になるのですが4種類のFPGAボードに実装するための手順を確立していました。 Arty初期版、Cmod A7、Arty-S7-50、Cmod S7の4種類。 それぞれLEDの数が違うのでVerilogのコンパイル指定子によって差分を吸収できるようにしました。 後はI/Oピンの配置が、どのボードも全く違うので、 ボード毎に異なるXDCファイル(I/Oピンのファイル)を1つのVivadoプロジェクトでできるようにしました。 要するにXilinxの開発環境Vivadoの使い方を調べて勉強しました。 2月19日 脳内でLチカああ、止めないと止まらないみたい。
「Lチカ」というのは電子工作の初心者が最初に試すことが多いLEDを点滅させるだけの簡単な電子工作。
LEDは電気のエネルギーが光になって目の網膜に届くのだが、
目の網膜を直接、光らせる脳内Lチカというものがあることを30分前に目が覚めた瞬間知った。
目をつぶると目に映る画像全体がチカチカ光る。
今まで、そういう経験はない。
こういうヤバい技術を明らかにしないほうが、いいと思う。
世の中には、いろいろな人がいる。反社会的勢力とか。ヤバい技術の使いどころはあるでしょう。
僕についていえばIBM互換の暗号LSIを圧倒的に安く開発したおかげで競合他社に差をつけることができて、
日立の大型コンピュータが売れたという功績があるのです。
儲かったのは東大卒が多い部署でした。
その僕の貢献に対するリターンをヤバい技術でどうにかすることは問題だと思います。
追記(午前7:40) 頭の痛みが酷くなってきたので、何もできず、しばらく寝てしまいそうです。 2月18日 ICF3-Vもあるよ今日のGIGAZINEの記事にRISC-Vがインドの国家CPU命令セットに認定、みたいな記事があって、
CPU命令セットが話題になっているようです。
僕のCPU命令セットICF3-Vがどうなっているのかというと、あります。
失敗だといけないので自分で検証します。
2月17日 ついでにICF3-Fの進捗ここ3、4日の話になるのですが夜8時か9時に頭の痺れが厳しくなって、
眠くないのに寝ると早朝、4時くらいに目が覚める。痺れはとれている。
2月16日 明日は日記を書かなくていいようにならないか体が壊れていくのに耐えるのが辛い。壊れなければ、それほど頻繁に日記を書く必要はない。 僕から見て状況は、あまり変化していない。 重要なのはICF3-Fの性能が正確に出るあたりまでは僕が壊れると問題が多い。 それまで作業を速やかに進められないだろうか。 その後、僕はどう考えているか。僕はICF3-Fは従来の研究、製品と比較して優れた性能(コスパ)になると思っています。 そうなれば道は開けるだろうと思っている。 ICF3-FのSSLアクセラレータを導入すれば、システム性能が上がり、単純に得になることを目指しています。 2月15日 ICF3-FのBRAM3重化による高信頼化まだ頭が痺れて動けなくなって寝ていたが、今日の午後からは、わりと動けたのでICF3-Fの作業をした。
余談になるのですが学生の頃、コンピュータサークルの友人がいて、良く話していたのですが、
僕が日立に入ることを決めたことを言うと「頭にチップを埋め込まれて改造人間にされる」と何度も言われた。
会社に不都合な発言をしようとした瞬間、チップが作動して「ピーーー」となるのだそうだ。有名な話みたいだった。
会社に入ったあと大学の友人たちに会いにいくと「どうした、下級戦闘員のチップ埋め込まれて、頭にきているのか?」
と冷やかされたものだ。今日の、今ほど、いい友達(後輩)を持ったと思ったことはない。 2月14日 CRC32演算器の面積を調べましたCRC32演算器をXilinxのFPGA Artix-7にインプリメントして面積を調べてみました。
面積は演算器2個分のものを調べています。
普通のCRC32、Intel版のCRC32、垂直パリティの3種類の演算ができます。
1個のBRAMを共有していますが独立に動作します。
入力は1バイトのデータとスタート信号、1バイト転送コマンド信号で、出力は1バイトのデータです。
内部では32bitで演算していますが、計算結果は、1バイト毎に出力します。
写真をマウスでクリックすると拡大されます 2月13日 2つのCRC32の回路を1つにまだ目まいがして作業が、あまり進んでいません。日記を書くことにしますが進捗がない。
今、2つあるCRC32の回路を1つにしている。1つのBRAMを2つのCRC32の回路で共用できるはず。
そうすると普通のCRC32、Intel版 CRC32、垂直パリティの3っつが同時に入る。
普通のCRC32はサーバーのCPUで演算するには重い処理、IntelのCPUでSSE4.2(SIMD命令)を
持っている場合はIntel版CRC32を使うと高速に演算できる。
それ以外のCPUで性能を重視する場合は垂直パリティ、
信頼性を重視する場合は普通のCRC32ということになる。 2月12日 大型コンピュータの事業部の同期の話また頭が痛くなって作業ができなくなったので1995年頃、入社2年目のときの同期の話。 僕は、すべてが特別扱いだったので、最初のころに同期会に1、2度呼んで いただいたことがある程度で交流はない。 ただし同期(94年入社)の東大卒2人の結婚式の2次会に参加はしている。 あるとき開発部で旅行に行ったとき同期(多分、名工大卒)が話しかけてきて僕の瞬間的な記憶力をテストしようとした。 僕は断ったのだが、真剣な顔をして「お前のためにやっている。」と言ったのだ。 当時、この意味が少しは理解できたが、、今なら良くわかる。 頭が悪くなってないかのテスト、、、 2月10日 通信ハードの設計図がほぼできた?2月4日の通信シミュレーションでプロセッサの性能不足が確認され、 性能対策をした設計図が「ほぼ」できました。まだverilogのコードにしていないので、ホントに動作するのか、 確認できていませんが、性能は劇的に改善されています。 送受信回路-BRAM間を直接転送できるようにしてプロセッサは、それを制御する方式にしました。 双方向にCRC32を演算する専用ハードを入れています。 CRC32の専用演算ハードの単体シミュレーションは動作が確認できています。 普通のCRC32、Intel版のCRC32、垂直パリティの3種類から2つを選んで演算できるハードです。 2つはサーバーの環境によって選択可能です。 2月8日 頭痛が直りました以前と変わった様子はありませんが作業再開。 8bit CPUの性能不足はUART回路からBRAMに直接書き込むようなハードを追加して解決できるか検討中 2月7日 この状況について親は僕にどう言っているのか「社会が悪い」自分には責任がないということを一貫して言っています。 2月7日 どうして頭痛が起きるのか?なんか、できないのを頭痛のせいにして、逃げ出したように思う人もあったのかと。
むしろ逆で頭痛を起こさなければ、できてしまうからだと思う。 2月7日 頭痛が続いている2月4日に通信シミュレーションができるようになり、
Yが全力で送信すると受信しきれないことがわかった。Wが遅いのかと思われていたがXが遅いようです。
通信プロトコルを処理しやすいものにして、これから実装というところで頭痛で倒れました。
まだ頭痛が続いています。寝ている時間が多いが、たまに起きてインターネット上の記事を読むと、
ある程度自分の状態がわかる。 追記 2月4日の通信シミュレーションはハード検証用のもので実際よりも重たい処理。 最初、最大通信速度が出ないという表現を使ったのが良くなかったのかもしれない。 ハードの転送速度は4Mbaudで動作しています。 8bit CPUは通信速度に比例するクロックを使っているので、より実際に近いシミュレーションをして、 うまくいくと、ハードで12Mbaudで動作するとソフトも12Mbaudで動作するということなのです。 2月6日 よくスパコンについて聞かれる世界一高速なLSIを開発しましたと言っているのでスパコンについて良く聞かれます。
有名なメディアにも聞かれたこととかあります(実は友人)。
僕は会社に入ってからスパコンの開発には一度も関係したことがないので良く知らないのです。 2月6日 ICF3-Fの開発が遅れると問題頭痛が酷くなって寝込むことが増えてICF3-Fの開発が遅れています。 この遅延が目に見えて問題になることは、あるように思います。 頭痛を起こすことを、止めないと、止まらない。 ICF3-Fは性能を加速する機能だけとはいえ暗号技術なので 政府関係の方の視野にも入っていると思われます。 それでもなお頭痛を起こせる。そこに問題があるような気がします。 2月5日 UART送信回路の設計図公開開発中の設計図で実機で4Mbps(正しくは4Mbaud)の速度で通信できたもの。 著作権とか主張しないかわりに、開発中のものなので、正しいことも保証しません。 先月、UART受信回路の設計図を公開しましたが送信回路は?という意見もあり公開してみました。 特に目立つところはなく受信回路と同じhalf信号の作り方です。 UARTで必要なFIFOバッファはリード・ライトが同時に可能な汎用的なFIFOである必要がないことを使って 1ポートメモリで実装したため2倍の64バイトのFIFOになっています。 大容量になったおかげで緊急レスポンスを即時に入れることが楽になったように思います (プログラム中なので結果はまだ)。 頭痛に耐えながら設計しているので僕の全力は出ていませんが残る力で頑張っています。 写真をマウスでクリックすると拡大されます 2月5日 中央研究所の新人工場実習の話頭が痛くて作業ができなくなったので日記を書いています。 僕が日立の中央研究所に配属されたのは1994年4月。 その後、工場実習で千葉県の茂原工場に3か月くらい行きました。 大型テレビが売れていた頃でブラウン管の製造ラインに入って ブラウン管の前面のガラスを露光する仕事でした。 大型テレビなので前面部分のガラスだけでも、かなり重たく重労働でした。 中央研究所の同期で東北大卒の人が途中でリタイアしたので 同期のみんなで見送りをしたのですが、とても脅えた表情をしていたのを覚えています。 同期には東北大卒の博士が2名いましたがリタイアしたのは修士の方です。 僕は話をしたことはありませんが。 重労働が辛くてリタイアしてのではなく「壁から声が聞こえる」という発音をしていたようです。 脳に届くのが声だけならともかくコマンドが送信されて心臓とか止まったら終わりだったかもと。 僕は呼吸が止まったことがあって、人生で一番あせった瞬間でした。 呼吸が止まって数十秒が経過し、あと少しであの世に行くのかと思ったのですが、 水中と違って呼吸が止まっても1分くらいは平気なようです。 実際、どのくらいの時間だったのか、あせっていた僕にはわからないですが。 しばらくして呼吸が回復し、普通の状態に戻りました。 2月4日 通信ハードのシミュレーション開通Y→X→BRAM→W→BRAM→X→Zの経路でデータ転送が正しく通るようになりました。
10通り以上の周波数でテストしても正しく動作することを確認。
X、Wでは送受信を1つのプロセッサで行っています。
どちらか一方で待ちが入っても、もう一方を滞りなく動作させるようなプログラムにしました。
しかし、かなり遅いものとなり、Yが全力送信するとXの受信バッファ(64バイト)が溢れることが発生。
Yの送信スピードを落として動作確認ということになりました。
モンゴメリ乗算の性能をテストするだけなら、このままでも、いいように思うのですが、もう少し考えることに。
2月2日 RSAの需要予想RSAを高速に演算するICF3-Fを開発しているのでRSAの需要予想は、いろいろ考えています。
説明は省きますが、あまり小さくない確率でRSAの大きな需要があるように思っています。
ICF3-F以外にも方法はありますがICF3-Fが最もいいように考えています。
1月30日 UART受信回路の設計図公開開発中の設計図で実機で4Mbps(正しくは4Mbaud)の速度で通信できたもの。 著作権とか主張しないかわりに、開発中のものなので、正しいことも保証しません。 公開理由は産業スパイが設計図を盗難している可能性があるので特許を取られないように。 XilinxのFPGAに特化しています。特許になるのかとかまでは、わからないです。 位相のずれやノイズに強いのが特長。通信速度の5倍の周波数で動作させます。
シリアル転送1bitの時間が5サイクルです。
XilinxのFPGAでは1LUTの大きさでLUT5が2個入るものがあって、それを有効に利用しています。
図の左側にフリップ・フロップが7個並んでいます。その下にLUT5 x2が3個ありますが、
ここで前後に1サイクル(1/5bitの転送時間)ずれても正しく取れるようになっています。
フリップ・フロップのうち1つがノイズによってビット反転してもLUT5 x2で補正されます。
ノイズが多くて正しいと思われないデータはエラー報告します。 追加 毎回、スタートビットの立下りを基準にしているので1バイト単位で位相が360度づれても動作します。 追加2 公開してから考えることになったのですがLUT5x2ではなくてF7MUXを使うともう少し面積を小さくできるかも 写真をマウスでクリックすると拡大されます 1月29日 開発が無駄に遅れています数日、かなり回復した体調も、今日は頭痛、強制半睡眠、
頭が悪くなったせいでネット上の記事の日本語が読みにくく、目を開けているのが辛いという状況で
開発が停滞してしまいました。やっぱりなんとかしないと、なんとかならないようです。
1月26日 大型の高基数の効率モンゴメリ乗算の高基数型でRSAの鍵を長くしていくと効率が下がるかもしれない。
それはわからない。もし下がると低基数のほうが効率が良くなることはあるかもしれない。
急いだほうがいいと思っています。 1月25日 ICF3-Fの作業再開ここ数日、目と頭の不調に悩まされ作業が完全に停止していました。 頭の調子が戻っているのかは、わかりませんが、各部が回復してきたので作業再開します。 これまでと、あまり何もかわっていないようです。 1月24日 高効率な低基数だと思ったわけ昨年の8月にICF3-Fの低基数のモンゴメリ乗算器をシミュレーションして実装しています。
SSLアクセラレータとして製品化するため演算器を受けるプロセッサ、通信回路と、
設計をしてきて半年近く経過しています。
低基数な演算器が完成したとき、あまりにも効率よく、ハマったので、
高基数にも勝てないかと思いました。
説明しても、良く伝わらないかもしれないですが、DSPで乗算、累積加算させながら、
別系統の乗数のシフトを同時にします。これができたのは運がいいという感じです。
1月24日 GPUによる低基数GPUで低基数を使ったRSAの演算はできます。 僕はGPUのプログラムを書くこともできるので自分でもできる範囲かなという話だけ。 ちなみに僕の作ったGPUプログラム。 sha1bench まだ目と頭の調子が悪くて休んでいたのですが、目をつぶったまま考えることはできたから、 考えていると、GPUの話を思い出したということでした。 考え出すと、GPUでは、ひどい性能になる可能性があるので、話だけにとどめることにしました。 一刻も早く、ICF3-Fの作業を進めたいし、それをするためには、どうしたらいいのかなど、考えてました。 1月23日 このままいくとどうなるか昨日も今日も目の調子が悪くて作業が全く進んでないです。 まだそういう状況が続いているということは、常時監視員を全面的に撤廃しないとICF3-Fはいつまでもできず、 日本の成果が無駄に減っていきます。 低基数でどこまで性能が出せるかなど日本の暗号プロセッサの成果としてあると思います。 ICF3-Fの低基数の回路が、思ったよりもかなり効率的なので、高基数と実際に比較できるのではと思っています。 僕の頭が壊れてICF3-Fを交代しても、交代した人が犯罪者の仲間のように見られたら、終わりです。 全員を味方にできない限り、突き刺されるでしょう。 常時監視員の異動を考えていただいて、日本の成果が無駄に減ってしまうのを避けてほしいのです。 ちなみに日本ではFPGAのRSAは広島大学で研究されているものが有名なようです。 小さな高基数をたくさん並べて最大性能を出すもののようです。 1月22日 低基数型と高基数型RSAや楕円暗号を高速化するためのモンゴメリ乗算を使った演算器には低基数型のものと高基数型のものがあります。
演算器についてだけ言えば高基数型が高速ですが性能を引き出すための回路の面積が大きかったり、設計コストがかかります。
僕も1999年のICF3の前後に高基数型の検討をしています。
OpenICF3の公式サイトのトップページに
「幻のICF4」があります。
演算器だけでなく暗号演算全体での性能で評価しなければならないと思います。
また高基数型では周波数を高くする必要があるので省電力を含めた評価が必要です。
単純に大きな乗算器を実装すれば、周波数以外の問題でも消費電力が気になります。
開発費が大きいと量子コンピュータの解読リスクに耐えられないなど、必ずしも高基数型が有利ということにならないかもしれない。
ICF3-F(低基数型)では、鍵長が長くなっても、半導体のトランジスタの特性が違っても、再設計コストが小さいのが利点になります。
高基数型で、そういった問題が、どこまで解決されるかにかかるのでしょう。
設計コストをかけるより、半導体チップの面積を大きくしたほうがビジネスでは有利ということも。
面積を大きくできるならCPUでいいと思った人は、SSLアクセラレータはディスクリート(外付け)が可能なので、
CPUによる最大性能に追加して、サーバーの性能を向上できる点を考えてみてください。
1月21日 偏差値の出力調整脳に偏差値マイナス30の出力調整を加えただけでは、恐らく成功が見込まれたのだろう。
一段と厳しくなってきた。偏差値マイナス50になると目が見えにくくなったり、もっと致命的な問題が自覚できる。
出力調整のひどい悪用は信用の低下による問題のほうが大きいと思う。
失敗するまで調整することが予想され、この国の多くの人にとって、あまりよくない方向だと思ってます。
低度な出力調整でも出力調整要員が存在するためにはお金が必要なのだから
出力調整の全撤廃をするよう見直しすべきかと。 1月20日 Canonのプリンタを購入15年前に購入したプリンタが故障した。
紙詰まりが起きてカートリッジを引っ張りだそうとしたら、トナー置き場のパーツとトナーのパーツが折れて壊れました。
あたかも普通に壊れたようにも思えるが、紙詰まりを起こしてトナーを引っ張り出すとパーツが折れるようにセットしてあったのかもしれない。話は変わるがUSBケーブルでmicroUSBのコネクタが少し小さめのケーブルがある。
ほぼちゃんと挿入されるが、接触不良を高い確率で起こす、そして見た目正常というやつだ。
電源ケーブルにもそういうものがあって、ほぼ正常な状況で接触不良起こせる巧妙にうまくできたケーブル。
故障しなければ、こういう話をすることはない。 1月20日 サーバー施設の費用っていくらなんだろ?あまり良くわからないですが、仮に5千万円、50台とする。
ICF3-Fによってサーバーの性能が5%上がれば250万円の価値が向上することになる。
このくらいの額だと世界へもいけそうな気がします。 1月19日 通信回路と暗号プロセッサ間の転送ついでの説明。 性能を上げるためには暗号プロセッサを休ませることなく連続で動作させなければならない。 そのためには暗号プロセッサの演算中に次の演算のためのデータをレジスタに8bitづつ転送していくこと。 16本のレジスタを2セット持てば容易だったのですがFPGAの分散メモリでは 32本のレジスタ1セットになるため煩雑になるかと思っていたのです。 1セットでは暗号プロセッサがレジスタをリード、ライトしているタイミングに通信回路からデータを送受信することはできない。 暗号プロセッサがレジスタにアクセスしていないタイミングで送受信しなければいけないからです。 32本、2セットにしてもできますが暗号プロセッサのレジスタは1本、1032bitなのでかなり無駄が生じます。 目標のFPGA、XC7A35Tの全SLICE数(4LUT+8FFのブロック)は5200個ですが、 8bit当たり1SLICEの増加、全体で約130SLICEの増加で、どうにか実装できるかも、、、ということになったのです。 1月19日 ICF3-Fの開発が急速に開発が進み始めたというより通信回路と暗号プロセッサ間の転送回路が
思ったよりも簡単にできそうだということが判明したということです。
開発の見通しは良好で、もしXilinxのFPGA XC7A35TにICF3-Fが入れば通販サイトで約1万円で販売されている
Cmod A-35Tに
開発したSSLソフトウェアを書き込んで販売が可能になります。
まだどうするのか決めていませんがSSLソフトウェアだけをダウンロード販売することも可能になるでしょう。
1月18日 シリアル通信の性能改善の先送りインターネットを調べて4Mbpsを12Mbpsに性能改善できそうなことは確認しましたが、 XilinxのFPGA XC7A35TにICF3-Fが入ることを確認してからXC7A35Tの実機で性能改善することにしたため、 少しの間、先送りとなりました。 1月18日 ICF1、ICF2の通信回路そういえば僕は1997年のICF1、1998年のICF2の通信回路の論理設計担当でした。 話せば長くなるので、ここで必要なことだけ。 大型計算機の高信頼通信回路の技術が漏洩していないか?と考えた人もいたかもしれないので、 説明すると、そういうことはありません。ICF1、ICF2の回路はシリアル通信ではなく平凡な論理回路です。 1月17日 再び目が悪くなった度の強い眼鏡をかけても2重に見える。いや見えているだけいいのか。 父親にコードがちぎれそうなイヤホンを渡され「これ使えそうか?」と聞かれた。 イヤホンのコードを見て、一瞬で答えを返そうとした瞬間、「目が見えない」と答えた。 コードが切れているか、すぐに判定できる大きさなのは、わかっているのにだ。 明日には直ったりするのかもしれない。しかし、この状態が、どうして続いていいのか、わからない。 1月17日 ケースFANの故障パソコンの電源を入れると大きな騒音がする。 最初は古いHDDが振動しているのかと思ったが、 ケースFANが始動時にうまく回りはじめないと騒音がでる状態になっていた。 電磁石の銅線が惜しいと思いながら廃棄。 写真をマウスでクリックすると拡大されます 1月17日 サンプル回路の信頼性昨日の日記、「通信回路の面積比較」、SNSでブーストされたり、多少反応があったみたいです。 ちょっとうれしい。自作回路は僕が1から設計しているのですがXilinxのサンプル回路をベースに 再構成されたものだと思った人もあったようでXilinxのサンプル回路を見てみることにしました。 LUTをディスアセンブル?するツールを作らないと、いけないと思ったのですが仕事を進めることが優先で、 あまり詳しく見ていません。ただXilinxのサンプル回路ではノイズ対策は全くしていないようです。 もし僕の勘違いなようでしたら、ご連絡ください。 僕の自作回路が、そんなに凄いのかと言われると良くわからない。 信頼性のある回路はXilinx製orサードパーティ製の有料IPを使うことが前提になっているのかもしれません。 自作回路のノイズ対策ですがUARTのパリティビットを使うと転送レートが下がったりデメリット多いので 使わずに対策する方法を考えました。フルデジタルで移植性の高い方法だと思います。 実際にノイズ発信源を用意して確かめているわけではないので、もし見つけても参考にしないほうがいいかもですが。 追記 送信側と受信側で位相がずれてきて信号が切り替わるタイミングでFFが 受信して0,1が安定しない場合でも正しく動作するようになっています。 1月16日 通信回路の面積比較XilinxのFPGAに演算させるためのデータを送受信する通信回路を自作しています。
自作しない場合と面積や性能がどのくらい違うのか比較してみました。
自作通信回路の転送性能は12Mbpsになるように作業中。 Xilinxのサンプル回路がどうなっているのかverilogを読んでないのでわからないのですが、 自作ではフルデジタルですがノイズに対して強くなるように1から設計しています。 数十パーセントのジッタや、データのFFが1つぐらいビット反転しても、正しく受信できるように工夫しました (パリティとかではなくて)。 転送レートよりも高い周波数でデータを取得して複数ポイントで0,1を判定、有効なデータをチェックして、データを取り込みます。 他の人の回路とか、読んでないので、これがどのくらいの回路なのか、自分でもわからないが、安全にできていると思う。 1月15日 人生の楽しみが削れても死ぬほどではないインターネットの記事を速読していると、全然、目が追いつかなくなることがある。 1文字読むのに0.5秒くらいの速度まで落ちる。当然、違和感は感じる。失神しやすくなっていることに気づく。 体力は常人の5%くらいしかない。登山とか過度なことをしない限り30%あれば、生活で困ることはないが、 困るレベルである。旅行は10年前、立命館大学に行ったきり行っていない。 同じ時期に名古屋に行ったが、頭の痛みで途中で帰った。 オンラインゲームをやるには目も頭も辛い(楽しめない)。 アニメを見ても、話しを理解できないことが起きて、面白くない。そもそも面白くない。 車酔いをしている状態でアニメを見て面白いかというのに似ている。 それでも死ぬほどではない。孫悟空の頭の輪をはずすことができるなら、はずしたい。 200億円の儲けが8億になっても、腐っているかもしれないのに、マイナス5億+上記苦労はおかしい。 1月15日 自作通信回路が実機で動作Xilinxの8bit CPUのPicoBlazeのサンプル回路では3Mbpsの通信速度しか出せなかったが、 通信回路を自作して4Mbpsの通信速度を実機で確認できた。 Linuxにも依存するが定義される最大の通信速度は4Mbpsです。 XilinxのFPGAを搭載したArtyはハード的には12Mbpsまでいけるみたいなので、これからやっていきます。 1月11日 ICF3-FによるRSAの延命ICF3-Fは長い鍵長のRSA暗号の計算コストを下げるのに役に立ちます。(予定)
僕はRSA暗号の解読の専門家ではないですが、インターネットで調べる程度のことはしています。
写真をマウスでクリックすると拡大されます 1月10日 Intel 論理回路を垂直に積み重ねる技術を開発!?昨日のニュースに少し焦りました。 論理回路を垂直に重ねることができれば大演算器の配線遅延が改善され変革がもたらされるからだ。 が、読んでみるとIntel Foveros技術のことで複数のチップを重ねてパッケージすることみたいです。 それだと配線遅延は改善されない。 1月9日 通信回路のシミュレーションICF3-Fの進捗報告。 1月1日 今年の予定FPGAに特化したSSLアクセラレータ ICF3-Fの開発を進めて性能を実測すること。
シミュレーションの成果を軽視する傾向があるようだ。
なぜなのか、わからなかったが、設計方法が違うことが、原因なのかもと思った。
ゲートレベルの設計はRTL設計と違い、最初からディレイを考慮して設計するため、
シミュレーションで動作すれば、かなり実装が進んでいることになる。
|