Home
2021年
2020年

8月31日 超軽量8bit CPU WZeta搭載パソコンのコンセプト

今年の2月の日記にICF3-Zを並列につないだVattles というパソコンのコンセプトを考えていますが、また新しいパソコンのコンセプトです。 結論を先に言うと8千~1万円の既製品のボードを買って BASICや機械語などの言語を付けて、そのままパソコンにして数万円で売れば儲からないか? みたいなことです。
昨日、次世代MSXがネット上で噂になりました。
4Gamer.net記事 MSXの立役者・西 和彦氏が“次世代MSX”に「もうすぐ」とコメント。 自身で“狂気の沙汰”と呼ぶプラットフォームとは
次世代MSXのCPUは2つあって1つはFPGAなので、これをWZetaに置き換える改造もあるかと 思ったのですが、次世代MSXが東京大学で開発されていると上記の記事に、 はっきり書いてあって、これは税金プロジェクトになりそうなので WZetaの方針に反するので無理ということに。
税金プロジェクトだとWZetaの普及が阻まれるので問題なのです。 そしてWZeta搭載のパソコンを考えても、次世代MSXに市場を奪われるのかなと考え、 WZeta搭載のパソコンの方針を変更かなぁと。
新しいCPUのWZetaは新しい価値を創造します。 少しでも将来の仕事になることを考える人向けのWZeta搭載パソコンになればいいなぁと。 まだ動作検証中のCPUなので必ず成功するということはないです。 CPUが普及しなかった責任を僕せいにしようと思う人は使ってほしくないと思っています。

以下はツイッターのサブ垢 のツイートの転記です。
次世代8bit CPU!?、WZeta の命令セットは公開されています。少ないトランジスタ数で構成され、 8bit幅のメモリ1個でいいことやシリアル転送による 基板実装のし易さなど製造原価を下げるのに向いています。 他にないハードマクロ命令はコンパイラに新世界をもたらします。
命令セットは16bit固定長でオペランドの8bitだけで投機的に実行が開始できる命令セット。 この結果、メモリをリードしてライトするまで5サイクルの命令が4サイクルに高速化される。 全く独自のアーキテクチャも売り。
IoTのCPUは要求仕様を満たす範囲で最も低スペックなCPUを選択するのだと思います。 将来、IoTを作るときに、まずWZetaで要求仕様を満たすか?を判断するようになればと思っています。 つまり多くの人がWZetaを知ることになり、それが、さらにWZetaの普及につながってWZetaが世界へ広がっていけばと。
安価な8bit CPUのパソコンを作ることを目指すなら XilinxのFPGA搭載のCmod A7-15T(75ドル)をUSBでパソコンにつなげて テキスト・ターミナルでBASIC、機械語が動くようにするとか。 これだとGPUを追加設計する必要がない。 A7-15TはSRAM512KB搭載なのでメインメモリとして使える。すぐにパソコンできそう。
XilinxのFPGA搭載のボード Cmod A7-15T(75ドル)
Cmod A7-15Tは入手しにくいようなら上位モデルの Cmod A7-35Tが秋月で約1万円で売られている。 僕はA7-35Tを持っているけど8bitパソコンを作る時間があるか、どうか。 もう少し安価なCmod S7もあるけどSRAMが搭載されてない。
こんな感じの8bit CPUのパソコンになるのかも。
こちらのブログにArduinoでシリアル・コンソールのBASICを作った人、いるみたいです。 Arduino Basicを改良してシリアルコンソール対応


8月31日 進捗報告、動作検証環境の仮想化

QEMUが6.1.0になったので、頑張ってCentOS8+QEMU6.1.0の 動作検証環境を作りましたが、CentOS7+QEMU6.0.0に戻しています。 Xilinxの開発環境VivadoがCentOS8.2までしか対応していないので、 ホストOSでVivadoが走らないという問題が起きたので。
長時間シミュレーションをゲストOSで走らせておいて、 Vivadoによる論理合成が、必要になったところで、 ゲストOSを止めて、ホストOS上で論理合成をできるようにします。 ゲストOSの停止はCtrl-A + CでモニターにしてからSTOPコマンド一発でゲストOSが止まります。 再会はCONTコマンド一発で再会、モニターから通常のターミナルに戻るのはCtrl-A + C。(←QEMUの機能)
かなり便利な環境ができたかもと思ってます。


8月30日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 目を開けているのが辛い。気づくと左目をつぶりながら作業していることが、 しばしばある。作業が完全に停止するほどではないが頭痛で能率が低下している。 一度低下した機能が完全に戻らないことの方が多く、脳劣化の問題は大きい。


8月29日 進捗報告、動作検証環境の仮想化

CentOS7+QEMU6.0.0で動作検証の仮想化が、ほぼ終わったところで QEMUが6.1.0になったので、もう少し頑張ることに。 ところが6.1.0はCentOS7に対応していないためCentOS8を考えざるを得なくなった。 そして、ここ数日でCentOS8+QEMU6.1.0を完全オフラインでインストールしていました。 CentOS8はEverythingバージョンがなくなったためCentOS7を使い続けようかと 思っていたのですが、やれば、どうにかなるのかも。
CentOS7ではゲストOSにserial、curses、vgaの3種類で接続する方法でした。 CentOS8ではserial接続だけで操作できるようになってます。(GUIが必要なときだけvnc接続)

30年前、9600bpsのモデムで大学に接続してUNIXワークステーションを使うことに 慣れていたのでserial接続のCUIが便利に感じるのかも。 当時、秋葉原でCPU 486DX2(66MHz) メモリ8MBのパソコン(50万円)、9600bpsのモデム(8万円)を購入。 パソコンのシリアルI/Fの処理速度が追いつかず、16550のFIFOカード(8000円)と メモリ8MBを追加購入。研究室の他の人は2400bpsだったから、結構、パソコンに お金をかけていたかも。
パソコンに386BSD(今でいうFreeBSD)をインストールしてX-windowを動かしてkterm(xterm)から、 tipxコマンドで大学のワークステーションに接続していた。 386BSDのインストールはフロッピー数十枚、カーネルのリコンフィグとか修士1年の ゴールデンウィークは386BSDのインストールに、すべて使われた記憶が。


8月27日 超軽量CPUの使い道

8bit CPU WZeta の動作を検証する環境の構築に時間がかかっていますが、 超軽量CPUの使い道の一つについて書いてみます。

一昨日のGIGAZINE記事
AMD復活の功労者でFPGA開発企業CEOのジム・アンダーソン氏へのインタビューが公開中

何年か前、記事のFPGA開発企業Latticeの講習会に参加したときに、 もう少しFPGAのメリットについて講師が説明されていたこと思い出しました。
同じFPGA企業のXilinxは大型、超大型のFPGAが多いので、超軽量8bit CPUを 実装しただけのマイコンを作っても、コスト的に見合うものを作るのは難しいかなと思ってました。
一方、LatticeのFPGAは小型のFPGAが多く、ASICとピン互換のFPGAマイコンを作れば、 ASICマイコンがEOL(製造中止)になっても、FPGAにすれば、いいというメリットを 講習会で説明していました。
小型のFPGAだと超軽量8bit CPUすら入らないサイズのものもあるので、 ピン互換なFPGAマイコンに使うCPUとして、WZetaは最適かも、と思っていたりします。
ピン互換FPGAマイコンのメリットがどのくらいなのかは、 具体的に製品を製造しているところでないと、わからないと思いますが。


8月24日 右腕の上部が痛む

産業スパイによる脳直結回線を使った攻撃で右腕の上部の筋が、 数カ月、被弾し続けた。普段は、痛まないが右腕を上にあげると軽い激痛で、 叫び声が出る。産業スパイが攻撃できる部位は全身どこでもいけるということが 理解できるくらい、いろいろ被弾している。
世の中にはグレーな問題もあるが、 僕はそうではない。攻撃されるのは、おかしい。


8月24日 進捗報告、動作検証環境の仮想化

これまで仮想化のテスト環境を構築していました。 実稼働用の仮想化OSのイメージの作成に入りました。 サイバー攻撃から守るためネットワークデバイスを すべて無効にしても運用できるような環境が出来上がりました。
ゲストOSのネットワークデバイスをすべて無効にしていますが、 ホストOSの標準入出力とゲストOSのシリアルポートを接続する方法で、 ゲストOSにログインします。GUIを使わない、 この方法はメモリも節約できるし、遠隔でゲストOSを起動できます。 遠隔のパソコンもホストOSを動かすパソコンもインターネットに 接続しないので、ネットからのサイバー攻撃を受けません。
cursesを使った方法も試しましたが、 serial接続を便利に使いこなす方法が先に確立できました。 複数のターミナルからゲストOSに接続することができないこと以外は、 Emacsのキーバインドと競合することもなく、ほとんどの操作可能。
気づくと、自宅に計算専用のVPSサーバを設置できたのと同じかも。 ネットワークを本業にしている人は、ネット上に多いので、 この方法を日記に書くと、ネットワークを本業にしている人とかに、 いじめられそうなので、書かないことにします。


8月23日 左目の視界が歪んで見えにくい

産業スパイによる脳直結回線を使った攻撃で左目の視界が歪む。 昨日ほど、酷くないが、まだなおっていない。 歪んでいるのは視界だけではなく、それ以外も歪んでいるのだろう。 左目を開けていることができず、左目をつぶりながらの作業。


8月22日 進捗報告、動作検証環境の仮想化

FreeBSD 13.0のQEMU版があったので試してみることに。 amd64版とi386版は修正することなく、あっさりOSが起動してCD-ROMのマウントや ホストOSへシリアル転送でファイルを転送することができました。

Perlがインストールされていないことを確認。 Perlが無いことを想定したWZetaのC言語による命令セットシミュレータを 考えることに。以前はPerlでテストベンチっぽいものを作っていましたが、 C言語でできるように。

RISC-V 64bitのFreeBSD 13.0のQEMUのイメージがあったので、 動作するか試してみました。 biosなどのバイナリを別途ダウンロードできれば、ネットにある 手順通りで起動します。
opensslによるrsa 2048bitのベンチマークを走らせると CPUエミュレーションでも20分の一の速度で動作しました。


8月22日 左目の視界が歪んで見えにくい

産業スパイによる脳直結回線を使った攻撃で左目の視界が歪む。 歪んでいるのは視界だけではなく、それ以外も歪んでいるのだろう。 左目を開けていることができず、左目をつぶりながらの作業。


8月22日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 目を開けているのが辛い。凹レンズで歪んで見えるようだが、歪みより、 目を開けていることが辛い。左目をつぶりながら作業。


8月21日 進捗報告、動作検証環境の仮想化

LinuxのUbuntu、僕はあまり使っていないのですがメジャーなLinuxなので、 仮想化された動作検証環境を作ることに。普通にインストールするとC/C++はインストールされない。 ネットワークに接続していればaptでbuild-essentialをインストールすればいい。 完全オフラインのインストール方法を数日かけて、ようやく見つけた。 ネットにある方法をいくつも試したが、上手くいかなかった。 多分、簡単にできるとLinuxエンジニアの給料に影響するのかもしれないと思った。
結局、手作業でdepパッケージを依存関係と戦いながら、インストールする方法を、 確立した。それほど多くない作業でbuild-essentialを完全オフラインでインストールできる。


8月20日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 目を開けているのが辛い。凹レンズで歪んで見えるようだが、歪みより、 目を開けていることが辛い。左目をつぶりながら作業。
最近の日記で表現が露骨かもと思うようになったので○○というように置換しました。 3箇所です。


8月18日 頭痛で辛い

産業スパイによる脳直結回線を使った攻撃を受け頭痛で辛い。 視神経からの情報を理解するところの機能が低下。 意識は、それほど揮発しないため、動きが完全に止めるということはないが、 読んだ文章を理解できず、目があまり見えず、頭痛と同じ。 手を動かすことはできても、頭が動いていない。
ちなみに意識を揮発させるタイプの攻撃もある。 これは、やられると痛みより、脳が壊れが心配になる。


8月18日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 目を開けているのが辛い。凹レンズで歪んで見えるようだが、歪みより、 目を開けていることが辛い。左目をつぶりながら作業。


8月17日 動作検証環境の仮想化

ちょっと早いのですがオープンソースを公開するために 動作検証環境を整備しています。 完全オフラインで整備するため、あれこれ、やってきましたが、 ようやくCentOS7にQEMU6.0.0をインストールして、ゲストOSを CUIで動かすことができるようになりました。
これが素早くできたのは以前、 QEMUをChromeブラウザの中で動かす(YouTube)というようなことをしていたからかも。 趣味だけでやるのは時間的に厳しい。 QEMUの解説本が出れば違うのかもしれないけど、 時代は少し変わったかなという気がしています。


8月17日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 目を開けているのが辛い。凹レンズで歪んで見えるようだが、歪みより、 目を開けていることが辛い。左目をつぶりながら作業。
頭痛攻撃、少しの問題もない人間に、やっていいことではないはず。


8月15日 RockyとかAlterLinuxをインストール

公安が軍事に関わる技術がLinuxから漏洩するという口実を作り家宅捜索する 可能性に気づいたので日記に書くことに。
これからオープンソースにするものを少しテストしてみるだけなので、 重要技術が漏洩することは、ないと思っています。
そして完全オフライン・インストールで環境を構築しています。 ネットワークに接続しないので、漏洩する心配は、ないと思っています。
Emacsなど必要なソフトをソースコードからコンパイルして、 インストールしていきます。難しい作業ではないのですが時間がかかる作業です。
しかし機密を漏洩させないためには完全オフラインで開発環境を構築する 必要があると思っています。


8月15日 2005年に日立製作所を辞めた理由

いつも○○したり脅迫してくる産業スパイなのですが、 理由について日記に書くように言っている。 話すと長くなるので手短に話してみます。 2002年に大型コンピュータ事業部から金融部門に転勤になった。 営業配転ということは聞いていなかったので営業の人に囲まれながら、 1人黙々とプログラミングをしていた。 日立や関連企業が開発するソフトウエアを買って売る 立場だった。つまりエンジニアがボッタクリな値段を 言ってくるのを、やり方含め、適正な価格で買うことが自分の 将来の仕事になるのだろうと思っていた。 だから日立や関連企業のソフトウエアエンジニアに混じって ソフトウエアをやるわけにいかなかったのである。 その後、日立の研究所に金融部門の所属のまま出向。
熱の出ない風邪で1週間近く休むことが良く起きた。 1人黙々とプログラミングをしているわけですから、 自分の成果を上げるのは、自分しかいない。 風邪で苦しい状態で寝ていたが、それ以上に、辛かった。
そしてUSBメモリをICカードエミュレーションする ソフトウェアが完成した。 これは現在も公開中のmyuToken のことです。2004年12月、日立社内に展開するべく会社に 報告しようとしたところで、風邪が悪化して、出社できない状態になった。
熱の出ない風邪も、風邪の悪化も会社の嫌がらせだと思っていたが、 当時、あまりそれをうまく説明する方法を思いつけなかったし、 そもそも大型コンピュータ事業で活躍していたので、 会社を辞めさせられると思っていなかったためリストラに対する 準備がなかった。
このため自己都合で辞めることになったのですが、 事実上は汚い方法で会社に辞めさせられたのです。

もう少し言うなら、活躍した僕を辞めさせると会社は 大儲けという状況。汚い方法で辞めさせたことを隠蔽するために、 ○○で口を封じるのだが、なかなか、これをネット上で言うのは、 難しい。しかし、そろそろ、自転車創業を見逃すのも、 法学関係の人にとっても、限界ということにならないだろうか。
当時、僕がプロジェクトに参加すると1億円が出るような、 うわさが立っていた。僕を半殺しにして口封じをして 1億円をリストラ屋が得たという事件でもあると僕は思っています。 1億円出せるってことは、僕はいったい何億、稼いでいたのだろうかということかも。


8月14日 超軽量8bit CPU WZeta作業報告

WZetaのC言語によるシミュレータはアセンブラ(wzasm)に内蔵 させていたのですが、C言語実装のWZeta命令セットシミュレータ(wzsim) として分離作業中。高速なシミュレータを目指すというよりは、 簡単に作れることが目標になっています。内蔵だったのを分離するだけの 作業なのですがアドレス拡張を考え12GBのメモリにアクセス できるように作り直しています。12GBのメモリをアクセスするためには calloc()で12GBのメモリが確保できるOSである必要がありますけど。 最大192KBのメモリをアクセスできれば良かった実装では、 気にしなくてよかった問題が、12GBでは起きるので。
産業スパイによる妨害で眠くて、作業が進まない。


8月13日 自作標準ロジックCPUをWZetaでエミュレート(2)

補足。仮想マシンの分岐命令やCALL命令の実装で割込み禁止が必要だと書きましたが、 なくても問題なく動作します。昨日の日記のほうも取り消し線で修正しました。 なるべく情報を早く出そうとした結果なのですが、あまり大きな問題ではないと思っています。 まだverilogなどのファイルを公開していないので、本格的に考える人があると 思っていなかったのです。1人で開発をやっているので万全な広報をするのは、少し大変。


8月12日 自作標準ロジックCPUをWZetaでエミュレート

標準ロジックで自作したCPUの命令セットは部品点数などの制限から、 非常に少ない命令数になることが多く、WZetaの仮想マシン機能で エミュレーションできることが、しばしばあります。
WZetaでエミュレーションできることで自分の自作CPUに興味を持つ人がでてきて、 ソフトウェアを作ってくれる人が増えるかもしれません。 一方、互換CPUを勝手に作られて、自分のCPUが、全く売れないということも 起きるかもしれません。 標準ロジックで自作したCPUの命令セットに対して、どうのようなライセンスなのかが 明記されていれば、WZetaの仮想マシンでエミュレーションして、何かできそうかを 考えることがきるのかもしれないと思います。
WZetaの仮想マシンで最も効率のいい命令コードのフォーマットは16bit固定長、 6bitのオペコードと8bitのオペランドです。 Z80のような8bit可変長の命令セットでも、比較的効率良く変換できるかもと 思っています。プログラムコード1バイト毎に WZetaの仮想マシンの命令コード2バイトを割当てるのです。 バイナリ互換のエミュレーションではなくなりますが、 アセンブラのコードがあれば、一対一の変換が可能です。 WZetaは全命令2バイト固定長なので、分岐命令のアドレスは、 2バイト単位のアドレスなのです。 つまり1バイトの命令コードに2バイトを割当ますが、分岐アドレスは同じ になります。一対一のときに再計算する必要がありません。 WZetaのPC(プログラムカウンタ)をエミュレーションするCPUの PCとして使えるということです。
エミュレーションCPUのアプリが64KBを使い切るような場合でも、 WZetaはプログラム128KB、データ64KBをアクセスできるので、 自己書き換えするようなアプリでなければ容易にアプリを 移植できるだろうと思います。
エミュレーションするCPUの分岐命令やCALL命令は、GETPC命令、SETPC命令を使うことで実装できます。 GETPCやSETPCはWZetaのPC(プログラムカウンタ)の値を取得したり変更したりします。 仮想マシン(ハードマクロ命令)実行中は、WZetaはハードマクロ命令の カウンタで動いてるのでPCを変更しても、動作がおかしくなることはありません。 ただ割込み禁止状態でGETPC、SETPCを実行する必要があると思います。 あるいはINT命令でGETPC、SETPCの実装をすれば、割込み禁止にする手間が省けます。 (割込み禁止にしなくても、問題なく動作します)
もしご興味がある方があれば、お気軽にご連絡ください。


8月11日 8bit CPU WZetaの仕様を更新しました

今回は更新したPDFを公式サイトではなくsubnote のほうに置きました。オプションで4GBのメモリにアクセスできるような命令セットの案です。 少ないトランジスタ数で4GBのメモリアクセスできることに重点が置かれています。 性能は良くないと思いますが、シンプルな命令セットなので使い易いかと。


8月11日 8bit CPU WZetaアドレス拡張(案)第2回目

SNSで未使用の命令コードを使わないの?という感じのものもありましたが、 一昨日の日記のPREFIXが良さそうだと思います。もっと具体的に書いてみました。
第2回目の案


8月9日 8bit CPU WZetaアドレス拡張(案)

WZetaのメリットはトランジスタ数が 少ないこと。このため192KB(プログラム128KB、データ64KB)のアドレス空間でもいいだろうと 設計を進めてきました。ようやくアドレス拡張について考える時間ができたので、 考えはじめています。まだ本当に実装できるのか不明ですが、 良さそうな案ができたので、案を書いたPDFを ここに置いてみます。 案という状態で公開しようと思った理由は、先に公開している命令セットを僅かに変更したため。 SETPCとSETMCのオペコードを変更しただけなので気になる人もいないと思っています。
もう一つの理由は、うまくアドレス拡張できているので、WZetaの将来性の 評価を良くできないかと思ったからです。 トランジスタ数を、あまり増やさないことを最大の目標としているので、 性能は非常に遅いのですが、わかりやすく、使い易い。そして自然に拡張された アドレスへのメモリアクセスのサイクル数を増加させられるので実装しやすい。
最大8GBのプログラム、4GBのデータにアクセスできますが、 レジスタの数は増えていません。 性能は非常に遅くなると思うので期待できませんが、これで大きなシステムでも動かすことはできるかな?


8月8日 僕とコンパイラ

今年の2月末から新型の8bit CPU WZeta を開発してきました。FPGAに実装できるverilogファイルでプログラムを動かして動作検証をしています。 近日中にApache License 2.0(←予定)のオープンソースのライセンスで公開予定です。 WZetaは税金を使わないことを方針としているので学会関係と相性は良くありません。

前置きは、ここまでで「僕とコンパイラ」いきます。

僕が、はじめてコンパイラを使ったのは1982年に発売されたSHARP MZ-2000という 8bitパソコン向けのWICSという整数型BASICコンパイラでした。 まだ中学生でしたが、周囲の中学生はゲームに熱中する中、 コンパイラを購入するような子供だった。 何故、ゲームに熱中しなかったのか、自分でも不思議。 工学社I/Oに掲載されていた3Dの迷路のゲームを打ち込んで BASICより10倍以上速いということを体感。
高校に入ってSHARP PC-1251というメモリがたったの4.2KBのコンピュータ で遊ぶことが多かったのですが、工学社I/Oに「ポケコンパイラ」という コンパイラが掲載されていたのを見て、こんなメモリが少ないコンピュータでも コンパイラが動くのかと感動した覚えがあります。 PC-1251はメモリの節約のためBASICの予約語は中間コードで保存する方式です。 この中間コードにコンパイラ独自の意味を割当てるなどして、 少ないメモリで動くコンパイラを作っていたようです。
大学では筧先生の学部の授業でコンパイラの作り方を習いました。 PL/0というPASCAL風の言語のコンパイラを実際に作って実習させていただきました。 10年くらい前に大学で会合があったときに、その場にいらしたので、名刺を持って、 ご挨拶に伺ったこともあったのですが、大勢の中の一人だったから、覚えてないと思いますけど。 PL/0はLL(1)文法でパーサが作りやすのでyacc&lexを使わない方法だったと思います。
コンパイラの研究室に入ってコンパイラで使われる 最適化アルゴリズムの研究をしていました。 このとき大学の先輩に言われてコンパイラの名著「ドラゴンブック」の 英語版を買ったりもしています。著者は2020年にチューリング賞を受賞した有名人。 この本にはyacc&lexについても書かれていました。
PL/0の出所が日立絡みだとすると、回避してyacc&lexを選択か? いや僕がWZetaのコンパイラまで手をだせる時間はあまりないかも。


8月7日 Windows11で必須のTPM(暗号プロセッサ)

この秋に登場する次期Windows11で必須となるTPM2.0(暗号プロセッサ)は RSA暗号2048、楕円暗号、SHA-256などの暗号演算をするプロセッサです。 OSやファームを書き換えるサイバー攻撃を防止できるもので必要度の高いプロセッサだと思います。 僕が使っているパソコンは5年前くらいに自作したものでTPMがありません。 産業スパイによるサイバー攻撃で、あれこれ妨害されるので僕もTPMが欲しくなっています。
TPM2.0で必要な暗号演算のすべての論理設計を僕1人で持っています。 僕が開発した暗号プロセッサICF3(1999年) はRSA暗号の性能が世界一でした。大型コンピュータの暗号装置として世界の銀行などに製品出荷されました。 そして2018年に僕が発明した暗号プロセッサSnakeCube は高速&高効率で世界最高の技術です。これを活かしていれば日本は儲かっていたのではないでしょうか。

これを活かせなかったのは産業スパイが原因であり、日本の大きな損失となってしまいました。

仮にSnakeCubeの技術を使ったディスクリートTPMを開発したとしましょう。 新しいCPUにはTPMの機能を内蔵しているので、多くの人はパソコンを買い換えることになると思います。 このためディスクリートTPMの売れる数は、それほど多くないと思いますが、 日本の知名度が向上する分、儲かったと言えるように思います。
それ以外にも、メリットはあります。 量子コンピュータの進歩によりRSA暗号が解読される心配があります。 鍵を長くするのではなく、鍵をとてつもなく長くすることで回避するという方法の 選択肢を世界の人に提供できるという価値を、僕の暗号プロセッサSnakeCubeは 創造できます。またSnakeCubeは巨大な整数の四則演算が必要とされる 新しい公開鍵暗号の発明できるという選択を可能にします。 公開鍵の安全性は素因数分解の困難性などの性質を使います。 人類が選択でき得る困難性の幅を広げておけば、公開鍵が全滅するという シナリオを想定する重税を回避できると思うのです。
なんとかすべきです。○○を続ける産業スパイと話をしていても、うまくいかないのです。 現在も、なお産業スパイが僕に害を与え続けているため、 僕が発明の収益に期待する量が増加している問題を考える必要があります。


8月6日 8bit CPU WZetaの仮想マシン機能

WZetaが技術者の関心を引く理由について説明してみます。 CPUなんてどれも同じみたいに思っている一般の人向けです。 8bit CPU WZetaは優れたCPUです。 microPython(IoT向けPython)やLua言語のバイトコード(仮想マシンの命令セット)の実装について調べました。 microPythonのバイトコードは演算命令が見当たらず Pythonの文法の制御をするためのバイトコードという感じです。 一方、LuaのバイトコードはCPUの命令セットに近いので ソースコードを読んですぐに理解できるものでした。 仮想マシンのC言語実装は、どちらもオペコードの命令列を switch文あるいはジャンプテーブルで処理する方式でした。
WZetaの仮想マシン機能(ハードマクロ命令)は、この部分をハード的に高速にして、 かつ、仮想マシンの命令列をデータメモリからプログラムメモリに配置できるようにした点が、 従来8bit CPUにない機能なので関心を持った人が多くあったのではと思います。 これまでより少ないトランジスタ数のCPUで仮想マシンのメリットが得られるため、 製造原価が下がり、地球環境にも良さそうです。

以下は、おまけの内容になります。

WZetaの仮想マシン機能を想定した仮想マシンでなければ十分な性能は出ません。 しかしながらLua言語のバイトコードはWZetaでも比較的性能が出そうです。
WZetaで仮想マシンを作る場合、opコード6bit、オペランド8bitの16bit固定の 命令セットにする必要があるのですが、少し応用すれば、性能が下がりますが、 それ以外でも、どうにか実装できる場合もあります。 opコード5bit、サブopコード5bit、オペランド16bitの32bit固定の命令セットは、 性能が出る形式です。またこの形式はICF3-Zの 仮想マシンと相性がいいのでWZetaとICF3-Zの双方で 動作する仮想マシンが作れるかもしれません。

Z80をエミュレーションするには、完全を期待しなければ、以外と簡単にできます。 WZeta SDogはバンク切替をせずにプログラム128KB、データ64KBをアクセス可能です。 WZetaの仮想マシンのopコードにはZ80の命令であることを示すコードを入れます。 オペランドにはZ80のコードを入れます。このときZ80の命令であることを示す opコードを4っつ使って64命令に分けます。BレジスタにZ80のコードの6bit分を 2倍した値を入れます。次のようなハードマクロ命令4っつを実装します。 Z80_OPnは2命令の分岐命令が128個並んでいる命令列の先頭アドレスのラベル。
JMP ^Z80_OP0:B (Z80コード0~63)
JMP ^Z80_OP1:B (Z80コード64~127)
JMP ^Z80_OP2:B (Z80コード128~191)
JMP ^Z80_OP3:B (Z80コード192~255)

Z80の命令のオペランドの場合は、値を命令処理専用のスタックにPUSHしてハードマクロ命令を終了します。 最後のオペランドだった場合は、Z80のopコードとオペランドがそろった状態なので、 Z80の命令を解釈するルーチンに分岐します。 Z80の分岐命令のアドレスは、WZetaのアドレスとして、そのまま使えます。ただし アドレス低位のハードマクロ命令などがあるところは、ハードマクロ命令の命令コードがあるので、 不可です。性能的には既存のソフト仮想マシン方式とあまり変わらないと思いますが、 データ領域が64KBしかないWZetaではZ80のコードをプログラム領域128KBに置けて、かつ、 分岐アドレスがZ80とWZetaで一致するので、うまくZ80をエミュレーションできるような気がします。 Z80のCコンパイラで出力したコードをWZetaで動かすみたいなことは、できるかも。

8月7日追記
Lua言語もPythonと同じようにIoT向けのサブセットの言語仕様でないと 8bit CPUのメモリ空間に収めることは難しそうです。


8月4日 超軽量8bit CPU WZeta作業報告

長期間報告がないと、どうなったのか心配になるかと思ったので報告。 7月30日の日記で報告した プログラムとデータを分離するセキュリティ機能をASICをターゲットとして 練り直しているところです。


8月3日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 連日頭痛が続いています。脳の痺れでベッドで寝込んでいる時間が長くなっています。 脳の痺れは視覚にも影響しているようです。 産業スパイという表現が良くないという、うわさなのですが、 正確に表現するともっと良くないと言われそう。


8月3日 サイバー攻撃で今度はSSDが認識されなくなった

2004年製のHDDを使っていましたが一昨日、認識されなくなりました。 昨日はSATAのHDDに交換、HDD消去、HDD全セクタ診断、CentOS7オフライン・インストールまで できたところでHDDが認識されなくなりました。 今日は新しいSSDに交換、CentOS7のインストールが7割程度、完了したところでフリーズ。 SDDが認識されなくなりました。起動するとBIOSビープが鳴り響く状態。
マザーボードのIDEコネクタを故障させるサイバー攻撃と思われます。 しかもBIOSの水銀電池切れを使った証拠隠滅仕様ではないかと予測。
BIOSの水銀電池交換後、SATAtoUSBコネクタに変更して、今のところ無事、CentOS7が起動しました。
サイバー攻撃による故障で時間が奪われています。


8月2日 サイバー攻撃によりHDDが認識されなくなった

昨日、産業スパイによるサイバー攻撃でHDDが動かなくなったのでHDDの交換をしました。 IDEのHDDが底をついたのでIDEtoSATAのコネクタを使ってSATA HDDに交換しました。 交換したHDDの消去、HDDの全セクタ診断、CentOS7のオフライン・インストールまでは順調に進みました。 CentOS7のインストールが完了する直前にHDDが認識されなくなりました。 この作業に1日かかっているため、産業スパイによる時間の被害は大きいものとなっています。 頭痛でも作業効率が10%に低下することが、しばしばあったので、それと比較するなら、 まだ時間被害は小さいとも言えますが、非常に迷惑しています。
過去、この規模の妨害で進路を変更したことはありますが、今回は、その予定はありません。 無駄に時間が奪われることが問題となります。
おまけに産業スパイが左目の筋肉を外側に引っ張るので、左目をつぶらないと、日記が書けないのです。 半日前は、産業スパイの攻撃で、かなり頭痛が酷くて、作業が進んでいません。 さらに、この日記を作成しているエディタをセーブする前に落とされ、もう一度、日記を書き直すハメになりました。 24時間、本当に、いろいろ邪魔をされているという状況です。


8月2日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 連日頭痛が続いています。痛みのためベッドで寝込んでいる時間が長くなっています。


8月1日 サイバー攻撃でパソコンが停止

産業スパイによるサイバー攻撃でパソコンのHDDが動かなくなりました。
産業スパイの目的は8bit CPU WZeta向けにmicroPythonのコンパイラを移植する 作業を強力に妨害するつもりのようです。
僕がmicroPythonをWZetaに移植するかまだ、決めていませんが、調べているところでした。
WZetaは税金を使わないことを謳っています。 このためWZetaのアプリ開発環境も頑張る必要があるのです。
税金を使った低スペックCPUの新規研究を計画しているところもあります。 過去の実績から、税金を使った国産CPUが、この国で売れることは難しいだろうと思っています。 CPUの乱立を防ぎ、WZetaが8bit CPUのRISC-Vになるようにと考えています。
CPU開発が嫌いな人も、WZetaを応援しなくても、妨害を止めていただいたほうがいいかもです。

参考
3月26日 膨大な数のセンサーデバイス


8月1日 クレジットカードの不具合で購入を控えています

7月27日の日記 でクレジットカード決済がバグったことを報告しました。 99ドルの購入をしたお店では、引き落としはしていないという連絡が来ました。 しかし、まだカード会社の処理がまだなのです。 楽天ぐるなびテイクアウトの2重購入は、1つキャンセルされ返金されていますが、 念のためネット上での購入を控えています。


8月1日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 連日頭痛が続いています。作業が遅れています。


7月31日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 連日頭痛が続いています。 頭が半分壊れると、ますます利権による収入を当てにしなければ、 ならなくなることを考えれば、産業スパイを止めたほうがいいと思うのです。


7月31日 日立のSH-1マイコンとの関係は?

SHマイコンの技術がWZetaで利用されていないか?と思う人はあると思います。 WZetaにSHマイコンの技術は含まれていません。 WZetaの最初のコアSDogは、RISC型とも言えないオリジナルな実装です。
SHマイコンの命令セットは16bit固定長です。 SH-1ではノイマン型の実装だったようです。
WZeta、SDogと良く似ているのですが、WZetaはSHより 少ないトランジスタ数にするため、一般的なRISCよりも、ずっと命令数が少なく、 それを補うためのハードマクロ命令が追加されています。
これからゲートレベルの設計図も公開されます。そこで確認できると思います。 SHマイコン関係の人で気になる人があれば、ご連絡ください。


7月30日 WZeta仕様(7月30日版)をリリース

数日前に更新したバージョンとほぼ同じです。割込みの仕様を明確にしました。 WZetaの割込みの仕様はシンプルで十分に役立つようにと僕が考えたものです。 Z80の割込みと違うぞみたいな人もいたかもしれません。 WZetaのGETSTAT命令で得られる情報についてマイコンの実装依存なのですが、 そこに、割込み許可ビットをいれるか、否か。 割込み中は、割込み許可ビットに関係なく割込み信号を受け付けないので、読める必要がないかなと思っていました。


7月30日 SDogコアはプログラムとデータを分離できるモード搭載

WZeta公式サイトで最初から公開していた資料の内容とほぼ同じ。
8bit CPU WZetaの最初のコア、SDogはプログラムとデータを1つのメモリで使えるため省リソースでした。 ただ信頼性やデバッグの面ではプログラムとデータの2つのメモリを使うハーバードアーキテクチャに劣ります。 そこでSDogにはプログラムとデータを分離する機能を持たせています。簡単に言えばプログラムをメモリの前半に、 データを後半に置くということをします。データポインタ0番地をアクセスしてもメモリアドレスの半分の 位置にハードによって変換される。このためデータポインタを間違いでプログラムコードを改変してしまう問題がありません。 プログラムとデータの境界線は1/2、1/4、…のように変更可能。


7月30日 WZetaのアセンブラやツール

まだ公開していないのですが、どういったライブラリを使っているのか、 気になった人があるのかも。C言語の標準ライブラリ以外、使っているものは無いです。 乱数系のシミュレーションをプロセッサコア数に合わせてジョブを投入するツールも、 C言語で書いています。大雑把に言えばpopen()が動く環境なら、どんなOSでも動作します。 これは産業スパイのサイバー攻撃で誤動作させられ混乱させられることを想定したものです。
wzetaコアのverilogシミュレーションはicarus verilogが対応するOSになるのですけども。


7月30日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 今日は起きたまま軽く眠った状態。後半は体がだるいくて作業できない。
日本の偉い人は脳直結回線による攻撃について日記に書くことを、 どうも良く思ってないらしい。それなら是非とも、 産業スパイを止めていただければと思うのです。
産業スパイの攻撃で目がかなり悪くなって車に乗れなくなってます。 脳も車に乗れるほどの処理能力がなくなりました。 車に乗らなくなったからか産業スパイは右肩の筋肉の腱を攻撃するようになった。 常時痛いということではないが、肩から上に右腕を上げられなくなる場合がある。 キーボードの操作では、痛みを感じる程度だが、マウスの操作は、やりにくくなっている。
僕を使った実験結果は、皆に反映されると思うので、必要悪を超えないことを、 皆で考える方向にならないだろうか。 僕の場合は産業スパイが、最初に大きく間違っていたと思っています。


7月29日 WZetaは低消費電力なのか?(改訂版)

語順を逆にすることでオペランドのメモリアドレスを投機的アクセス可能にしたWZetaですが、 投機的なメモリアクセスは電力を無駄に消費します。 しかしながら投機的アクセスによる性能向上によって電力当たりの性能は向上することもあります。 メモリアクセス1回の消費電力、プログラム、コアによってWZetaの消費電力は変化します。 SDogコアでは全命令、投機的アクセスをしますが、プログラムで各命令が投機的アクセスに成功する確率は 60~65%なので、性能向上による電力効果のほうが、大きいかもしれません。

投機的アクセス成功率は、
AES 約65%
SHA-1 約65%
RSA 約59%

これもサブノートにFAQのページ に追加しました。


7月28日 WZetaにNOT命令がない

AレジスタのNOTは
XOR A,0xFF
のようにすれば演算できます。 これもサブノートにFAQのページ に追加しました。


7月28日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 脳の痺れで作業が進みません。午後8時ごろ、落雷で停電しました。 久しぶりにMP3プレーヤーで音楽鑑賞をしましたが、脳の痺れで聞くのが辛くて、すぐに消した。 現在も、左目をつぶらないと日記が書けない。 産業スパイに攻撃できる理由はないのです。損害を返して!


7月28日 サブノートにFAQのページを追加

この日記サイトよりは更新頻度の低いsubnoteのサイトにWZetaの FAQのページを追加しました。 取り急ぎWZetaの命令セットは逆ポーランドなのか、について書きました。


7月28日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で目が辛い。


7月27日 重要な技術だと理解してもらえているのだろうか?

他の人がコピーできるものを僕がだしても、力の強いところに奪われる。 他の人がコピーできないものを発明して、僕を中心に、この国の産業を発展させるということをしないと、 東大卒が過去にやらかした問題を引きずりながらでは、僕に勝利はありません。
そして僕は奇跡的に優れた発明を思いつくことに成功しています。 このまま潰されると国の損失は少なくないと思っています。 数日前、発表した8bit CPU WZetaも、成果を上げてくれるように思っています。
現在も、産業スパイによる攻撃で、頭痛になり苦しめられています。


7月27日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 脳内の痺れでハクチ化している。辛い。今日も、あまり仕事が進まない。


7月27日 クレジットカード決済がバグった

クレジットカードの記録に99ドル支払が記載されたにも関わらず、商品が届いていない事態が発生。 これ以後の事故を未然に防ぐためにも、取り急ぎご連絡まで。


7月26日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛による痛みと目を開くことが辛い問題で、今日一日、ほとんど何もできない状態でした。


7月25日 超軽量8bit CPU WZetaのトランジスタ数(速報版)

全機能を作り込んだWZetaのSDogコアのverilogが完成しました。 ある程度、動作検証もできていますが、バグはまだあるかもしれません。 ただ、これまで何度かXilinxの合成ツールVivadoで合成していますが、 トランジスタ数に大きな影響はないという予測です。
トランジスタ数を書かれても、比較できるものがなければ、あまりわからないと思いましたので Intel 8bit CPU、8051の軽量な互換実装 light52と比較しました。freeで公開しているlight52の開発者の人に感謝。

light52で使われるXilinxのFPGAとWZetaで使っているFPGAと同じなので、直接比較できる数字です。 light52のCPUコアが811LUTに対してWZeta SDogコアは366LUT(プログラムとデータ共用のRAM4KBを装着した場合) 半分以下です。これはWZetaの命令セットの命令数が少ないことが理由の一つだと思います。 周波数はlight52は50MHzとなっていますがSlackが3.97nsであることから、62MHz程度で動作すると思われます。 WZetaは今回、166MHzで合成できました。2.67倍の周波数です。またlight52は1命令に約6サイクル必要ですが、 WZetaは全命令4サイクルです。つまりlight52が1命令実行している間にWZetaは4命令実行できます。 これは命令数が少ないことを考慮しても、半分以下のトラジスタ数で倍の性能がでる可能性があります。

WZetaは命令数が少ないので、そのままではプログラムメモリの効率がlight52(Intel 8051)より悪いのですが、 ハードマクロ命令という機能でカバーします。よく使う命令列を1命令に短縮する機能です。 高速で呼び出しにかかるメモリの少ないサブルーチンということもできる機能です。 この機能で整数型32bit仮想プロセッサを作り、32bit CPU向けに作られたプログラムを 移植することが容易にします。コンパイラが作りやすい命令を用意することができるなど、 興味深い機能となっています。

最近、「金」の相場が上がっているようです。配線材料で金を使っていることもあると思います。 WZetaの公式コアSDogは配線数を減らせる工夫により、 地球環境や原材料コストの低減も期待できる8bit CPUです。 プログラムメモリとデータメモリを1個にまとめることもできます。

WZeta SDogは制限の緩いオープンソースのライセンスで公開予定なので、 8bitのRISC-Vのような感じで、世界に広く普及させ、この国に有利な展開をしていけるようにと思っています。

WZetaのC言語版のCPUシミュレータの精度がいいのでレトロパソコンでありがちな著作権の問題をクリアするため WZetaで新規に8bitパソコンのエミュレータを作るのも面白いかもと思っています。 ただ僕は暗号プロセッサSnakeCubeのほうが重要なので、あまり時間がありません。 8bitパソコンのエミュレータを作ってみたい人とかあれば、 連絡していただければ、話せるように思ってます。僕も他の人の作ったゲームエンジンを Chromeブラウザに移植したことがあり、 SDLのライブラリとかも使ったことがあるので、その気なら、いろいろできます。

追記。WZetaには乗算命令がありませんがRSA暗号や楕円暗号で良く使われる モンゴメリ乗算を高速、かつ省メモリに実装できるような命令セットになっています。 非常に大雑把な言い方をすれば、Z80のような一般的な命令セットから暗号に 必要な命令に絞られているとも言えます。

図をマウスでクリックすると拡大されます


7月24日 Xilinxの論理合成ツール

8bit CPU WZetaの論理合成にXilinxのVivadoを使っています。 手動での最適化を、はじめたのですが、産業スパイによるサイバー攻撃で妨害されています。 開発向けに設定をしたネットワーク接続のないCentOS7.7を使っています。 CentOS7.7はネットワークに接続することなくインストールが可能なLinuxとして人気のあるOSです。 過去にCentOS7.7のインストール中に妨害された回数は多く、産業スパイの動きを封じないと、 開発がうまく進まない状況です。
僕は産業スパイによる妨害の被害を少しでも小さくするために複数のパソコンに複数の バージョンの論理合成ツールをいれ、Windowsでも開発できる開発環境を構築してきました。 しかし、これには大きな管理コストかかり、開発コスト上昇につながっています。


7月23日 超軽量8bit CPU WZeta作業報告

先にverilogを完成させることを急ぎました。OFビットの検証をせずに、 メモリの保護機構を実装しました。公開している命令セットのPDFにおおよそ 書いていた機能です。 ユーザーモードで低位のアドレスのメモリをアクセスした場合、 アドレス例外(AE)ビットを立てて割込み1番を発生させます。 GETSTAT命令でAEビットが立っていることを確認して、アドレス例外の処理をした後、 AEビットをCLEAR命令(新規追加命令)でクリアします。
C言語のシミュレータとverilogのシミュレータの双方でアドレス例外のテストが、 うまくいきました。


7月23日 暗号プロセッサSnakeCubeの技術

SnakeCube の技術が、うまく運用できないことを、考えないといけないと思っています。 僕に直接連絡がなければ解決することはないと思っています。 クレジットカードなんかのICチップのほうが重要かなと思っていたりしますが、 SNSでWindows11で必須となるTPM 2.0チップの話を言う人がいました。
このTPMチップは、2004年ごろだったかTPMチップがなくて日立が ヒューレットパッカード社のパソコンを購入することを決め、日立の パソコン事業の撤退が始まったという歴史もあって、僕もその現場にいた。
今、TPMを調べてみると日本ではCanonがスポンサーをしているようです。 大学時代、電気工学実験で同じだった友人がいたので、SNSで連絡を、 してみたのですが、あまりSNSを利用していないのか、返信がないままという状況。
事業をしている法人なんかでは、大きな鍵を高速に計算できるTPMがあったほうが、 いい場合もあってSnakeCubeが役に立つ領域かなと思います。 どのくらい儲かるかを計算すると、まったく割に合わないということが多く、 僕が1人で、何でもやるということでないと、計画できない場合が多いと思っています。
案件を集約して開発効率を上げることができなかと思います。
日立関係の人は、僕が日立に入ってから退職まで、どういったことがあったのかを、 調べて理解して欲しいと考えます。


7月22日 超軽量8bit CPU WZeta作業報告

WZetaのSDogコアのverilogにOFビットは実装していたのですが、それを使いこなす アセンブラの対応が、まだだったので対応中。他のCPUではレジスタ・バンクという 言葉を使っていることもあるようです。WZetaでは厳密にはレジスタを切換えているわけではなくて、 メモリの低位アドレスの1バイトでアクセスできる範囲を切換えるものです。
命令セット(2021/06/12)β版に、少し変更を加えて、 割込み中はバンク0(OF=2'b00)のみ使用可という記述を追加。verilogのほうも、 強制的にOFを2'b00にする修正を加えます。


7月21日 自宅のネットワーク・セキュリティの強化

昨年はネットワークの監視サーバを自作して稼働させていました。 ルータにウィルスが入り込んでいることが確認されたので、 全てのルータの使用を辞めて、ネットワークを物理的に切断できるスイッチに 変更しました。4っつパソコンを1本のケーブルにまとめるスイッチ×2個。 こまめに切断をしているので、僕の所有する全パソコンがネットワークから 遮断されていることもあります。今日から運用を初めていますが、多少、 手動スイッチが面倒なので、長続きするのかは、わかりません。


7月21日 うな重をネットで購入

この日記はクレジットカードなどの決済関係の方のみ。 銀行は安心、安全だと思っています。 あまり無いとは思っているのですが産業スパイが僕の知らないところで 勝手に決済をする心配をしています。これまで、あまりそういったことはなかった。 ただ僕のアカウントのMegaのオンラインストレージサービスで回線が勝手に、 使われていたことは確認しています。 産業スパイは末端の行員より偉いと思われます。上からの指示を鵜呑みにせず、 注意してもらえればと。

今日、うな重3箱、約1万2000円を楽天ぐるなびで注文。 これで今年に入って3回目。 クレジットカード(オレンジ色 auPay)でネット上で決済しました。 連日の頭痛で注意力が低下してしまったのか、受け取り時刻を設定するのを 忘れて、注文してしまいました。慌てて、お店に連絡。 日時を変更したいだけだったのが、キャンセルという処理しかできず、 再注文をしたのですが、2重決済になりそうで心配です。 お店の人がキャンセル操作をしたのですが、キャンセルの返金を待ってい状態です。

今年に入って同じお店の「うな重」の注文3回していますが、 経営が多少変わって注文システムが、違うものになったせいか、 UIが非常に悪い。スマホや、タブレット用の画面に最適化されたものが、 パソコン用に流用されていたのは、いいとして、 受け取り日時を設定しなかった場合の処理を「最短」にしているのは 欠陥ではないだろうか。設定をせずに決済をした場合、 「受け取り日時が設定されていません。」と表示されれば、今回のような トラブルは発生しないと思います。


7月20日 暗号解読すると政府に暗殺!?

GIGAZINEの記事
「『膨大な桁数の素因数分解が可能なアルゴリズム』を開発したら政府機関に殺されてしまうのか?」

昔を思い出した。 僕が暗号プロセッサICF3(1999年)を開発後、 日立は後継プロセッサを開発せずにIBMから購入することを決めた。 ところがIBMの暗号プロセッサには鍵をバックアップする方法がなくて、鍵をバックアップする方法を、 開発部で検討することになった。このときまた、僕が、 数の性質から鍵をバックアップする方法を見つけたおかげで、 会社は儲かったのです。僕ばかりが活躍していたように思うのですが、このとき、 米政府機関に睨まれないかなぁと思ったことを思い出したのでした。

2016年のこのブログのページの最後に、 もう少しだけ詳しく書いていたので、それを転載。

IBMの暗号LSIを買ってきて日立の大型コンピュータの暗号装置として製品化することがあった。 国内向けの需要で暗号LSIから秘密鍵をバックアップできる必要があった。 しかしIBMが、その方法を教えてくれるはずもなかった。 なぜなら秘密鍵の盗難の方法を 教えるのと同じだからだ。 別の暗号装置にリストアすることはできないが、 同一の暗号装置ならバックアップできる方法はあった。 暗号装置にRSAの公開鍵暗号を設定することで、 それが可能になる。 説明は省略するがRSAの鍵は周期が大きくなるように作る。 そこに敢えて1とnを繰り返す周期の鍵を設定する。 暗号装置内部で生成される乱数によって1かnかになる。 確率50%で1になる。 1であることがわかれば、それを利用してバックアップする方法が見つかった。 確率50%では、何度か繰り返せば、普通にバックアップが可能だ。

------------------------------------------
僕の経験から後世の人に言えることは、国を発展させるには、 数学の才能がある人材を見抜いて登用すること。 大学受験は解法を覚えてしまえば高得点を取れることもあって、 才能を十分には測れていない。 旧帝大に合格している程度の才能では 僕のICF3の活躍はできなかったと感じているのです。


7月20日 RSA暗号解読の話がネットで話題に

GIGAZINEやSNSなど複数で話題になっているようです。
RSA暗号は現在も、インターネットなどの社会インフラで、まだ最も利用されている暗号アルゴリズムです。 このRSA暗号が解読される心配があるから、一般の人も、それに備えることを考えてください、 というメッセージなのだと思いました。

長い文章を読むのは大変だと思うので結論だけ言うと、 暗号プロセッサSnakeCubeの発明に関わった人は、 僕しかいないことを確認して、常時httpsのあたりで大きな需要があったにもかかわらず、 僕が発明するまで、誰もできなかったことを考えて、 僕がRSA延命のための開発ができるようにしたほうが良いと思います。


7月19日 超軽量8bit CPU WZeta作業報告

昨日、新型WZetaを初めてFPGAの実機で動作させました。 今日は乱数系の検証ツールを1個、作成。ハードマクロ命令を使ったSHA-1を演算させるものです。
Lチカ YouTube動画


7月19日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で少しの時間、倒れていました。


7月15日 ルータが不正アクセスを検出

単なるネットワーク管理メモ。 今年の1月にウィルスで誤動作する7000円弱のバッファローのルータ3個を倉庫送りにした。 本日の自宅ネットワーク改善作業で、再び、バッファローの安物ルータ3個を倉庫に送った。 ルータの不正アクセスのログにIPスプーフィングの記録があった。


図をマウスでクリックすると拡大されます


7月15日 自宅のネットワーク改善

単なる作業メモ。 ネットワークの接続が劇的に悪い状況が頻繁に発生していた。 一昨日、ネットバンクで100万円の定期預金の解約ボタンをクリック後、 ブラウザでウェイトを表す円がぐるぐる回ったまま数分以上経過。 別のタブからネットバンクのマイページを開くと100万円の定期預金だけが、 なくなっている表示だったので、慌てて銀行に電話をした。 定期の解約が正常終了していることは電話で確認できたが、 ネットワークの状況が悪いため、振込の作業ができずに、困窮している。
YouTube以外のサイトの接続が劇的に悪い状況が続いたため、 自宅内のネットワークの改善を試みた。 今年の1月に7000円弱のバッファローの有線ルータ3個がウィルスにやられたため、 倉庫に捨てた。そして安価なバッファローの有線ルータに交換したのだが、 もしかすると、またウィルスにやられたのかもしれない。 そこでバッファローのルータ3個を物理的にネットワークを切換えるスイッチに変更した。 この物理スイッチによって同時アクセス数が確実に制限され、ネットワークにも優しくなっているはず。
これで改善されれば、いいのだけど。


7月15日 超軽量8bit WZetaを汎用ロジックICで

超軽量8bit WZeta(SBaxコア)を汎用ロジックICで作ると、どのくらいの規模になるのか、 検討してみました。WZetaは汎用ロジックで作ることを前提としていなかったのですが、 パラレルのEPROM(64Kワード×16bti 約500円)を使って、 かなり部品数を削減できそうなので、汎用ロジックICで組み立てる ICカード基板の量産型はできる範囲にあるように思いました。
信頼できるEPROMやSRAMの入手が可能なら、 「誰が見ても安全だと思える」ICカードは作れるかもしれない。 暗号化が可能なタイプだと圧力が予想されるので署名、認証のみのものなら、 ビジネスが考えられる。
僕のほうは、暗号プロセッサSnakeCubeを急ぎたいので、汎用ロジックICに 興味のある人は連絡ください。


7月14日 超軽量8bit WZetaと既存のSRAM

ピン数の少ないシリアル転送のSRAMが秋葉原の通販とかで数十円から数百円で売られていたので、 仕様を見たのですが、WZetaで想定していた双方向のI/FになっているのでCPUコアに、 これらのI/Fを付ければ、いろいろな用途で活躍する様々な基板で原価低減とか、できるのかもと。 なんか、できそうな気がする。
競合8bitのAVRコアだと1回のリードで16bitのデータを読めるSRAMを使えば、いいのですが、 8bit×2回リードのWZetaと比較して周波数が遅くなりそうです。 WZetaの命令セットは1回目の8bitをリードしただけで命令の実行を開始できる 世界初の命令セットなので高速です。(実用化できたものでは世界初とか) またAVRコアではデータ用のメモリも別途必要なので、 メモリ1個で良いWZetaは安価です。データメモリを別にもつAVRコアに周波数で勝つことができても、 性能では負けるかもしれないですけど。

7月15日追記
従来のCPUはオペコード、オペランドの順番で命令が送られてきます。 WZetaはオペランド、オペコードの順番で命令を送ることで効率的な処理ができるような命令セットです。


7月14日 超軽量8bit WZetaの劣化版

公式コアとしてSDogを開発してきました。verilogがほぼ完成したのでSDogから 機能を削減した劣化版を作ってみました。 目的はTTLを使ったICカードの基板の設計図を作るためです。 実際に基板を作成することはないと思いますが、需要があるかもと思って、 やっています。興味がある方は、ご連絡ください。連絡がなければ、 ここで凍結します。
WZetaの命令セットは既に公開されていますが劣化版のSBaxでは、 割込み、ハードマクロ命令、オフセット、レベルなどの機能を削減しています。 XilinxのFPGAのLUT換算で35%程度、トランジスタ数を削減することができました。 通常の命令はすべて実装されているのでRSA暗号の演算は可能です。
劣化版のSBaxは、既にverilogが完成して、乱数系のRSA暗号テストをパスしています。
信用できるSRAMやEEPROMが入手できれば、かなり安全なICカードの基板が作れるように思いました。


7月13日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。
2:00 AM  全身が風邪を引いたような関節痛で痛い。
2:00 PM  記憶能力著しい低下と脳内を探索する能力が低下している。 作業はできても、いい仕事はできず、動画を見ていることが多い。
3:00 PM  痛みは酷くないが、動けなくなって寝た。
5:00 PM  頭痛が痛い


7月13日 半導体パッケージのコスト低減

半導体製造については、あまり詳しくないのですが、 雰囲気が険悪になっているだろうと思うので、強行して話をしてみることに。
会社に入ってすぐの頃は、大型コンピュータのマルチチップモジュールの アナログ電子回路シミュレーションの仕事をしていました。 ちょうどXilinxのテクノロジ、SSIでFPGAチップを複数搭載する シリコンインターポーザーを設計するためのシミュレーションと同じかもしれない。
ただしマイコンのパッケージについては、実際を知りません。 考えられる範囲で説明をしてみます。
競合8bitのAVRの中身を開けてみたことはないのですがCPUとメモリ間の接続を考えると、 16bitの命令コードなので16本の配線が必要です。 一方、8bit CPUWZetaの 最初の実装であるSDogは、16bit固定長の命令コードですが8bit単位で送信が可能な 命令セットなので8本の配線で済みます。 さらにシリアル転送の双方向にして2本(差動だと4本)にすることもできます。 双方向だと読み出しが完了する前に次の読み出しを発行できるので2本でも、 かなり性能が出るように思っているのです。 SDogのアーキテクチャは双方向を活かせるものになっています。
マイコンのパッケージの製造行程はテレビやYouTube動画でしか 見たことがありませんがCPUチップとメモリチップをミシンのように 金の配線で接続する機器を使うようです。
機器の針が16回、往復するコストや、16本の金のコストを 2本にできれば、原価を下げることができないかと思うのです。
多くのマイコンのCPUはハーバードアーキテクチャです。 AVRもハーバードアーキテクチャなので、プログラムメモリとデータメモリの 2つのメモリを配線する必要があります。
一方、WZetaのSDogはプログラムもデータもスタックも1個のメモリで、 いいアーキテクチャなので、製造原価のコスト低減 になっているだろうと思っているのです。
WZetaは、8bit単位で送信が可能な命令セットを実用的なレベルに完成させた、 特長のあるCPUです。世界初かも。 命令セットに、その特長が現れて、それを判別できるため 海賊版ができません。
WZetaは、世の中の役に立つだろうと思っています。 WZetaは制限の緩いライセンスで公開予定です。 今のところApache License 2.0を考えています。 WZetaを立ち上げていこうと思っています。


7月13日 見せしめにする人を間違っている

比較的言論の自由がある「つばさの党」のSNSの、 僕の日記に「監視され、とてつもなく酷い目にあっている」を昨日、書きました。 この日記を読んだ人の感想だと思われるものがツイッター上に現れたのですが、
大型コンピュータ事業部は長時間残業な職場でしたが、その中でも僕1人だけ特別な、 さらなる長時間残業をしていました。 才能があったおかげで、周囲の予想外にも、大成功してしまった。 何故か体が壊れ、頭が壊れて、人生全くいいことなく、現時点まできている。 そして周囲は、これを破壊で解決してきたため、発散している。
前述の日記にある通り、こちらに少しの落ち度もないので、 これまでの全責任を取るように要請します。
5億円の強奪なら、5億円を返金すれば、済む場合もある。 返済できない問題を、どうして新規に起こしたのか、非常に怒っている。 それを許した周囲も、非常に腹立たしい。


7月12日 頭痛による脳劣化が辛い(本日2回目)

まだ痛みを堪えて、じっとしている時間が長い。


7月12日 WZetaに貢献されたい方

WZetaは制限の緩いライセンスで公開予定です。 今のところApache License 2.0を考えています。 WZetaのプロジェクトは僕1人で管理する予定です。 それでも貢献したいという方は、貢献内容をウェブサイトに明記します。 つまり明記が、なければ誰も貢献していないということになります。


7月12日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で、あまりたいした作業ができない。
中学生のときに、やや不自然な事故で頭蓋骨にヒビが入っていないかなど、 脳の精密検査をされたことはある。僕の脳に用事があったのか。 しかしレントゲンのような機器で撮影するのみだった。
僕のような特殊なケースではなくて、これからの一般的なことを考えます。 直結回線は誰でも簡単に付けられるかもしれない。 脳の文字認識が遅くなるような妨害を受験生にすれば東大に合格できない。 東大卒が頭のいい人だと思う人が減るでしょう。

事故について、比較的言論の自由がある「つばさの党」のSNSの、 僕の日記に、詳しく書きました。SNSへの登録が必要となりますが、 「つばさの党」に賛同される方、あるいは、関心のある方は、次のタイトルです。
「脳改造された人間なのか」


7月11日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で、あまりたいした作業ができない。ほぼ止まることもしばしば。


7月10日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で、あまりたいした作業ができない。ほぼ止まることもしばしば。


7月9日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 頭痛で、あまりたいした作業ができない。ほぼ止まることもしばしば。


7月8日 超軽量8bit CPU WZeta SHA-1試作公開

WZeta β版verilogシミュレータでSHA-1の試作プログラムが、 多数の割込みが発生する状態でも、正しい計算結果を出力しました。 新型WZetaの発表から5カ月近くも経過しているのに、まだリリースできない状況ですが、 正しい計算結果を出力した試作SHA-1プログラムを公開します。 興味を持ってもらえればと。

8bit CPU WZeta β版向け SHA-1 試作

かなりverilog実装も完成してきたのでXilinxのFPGAで動作するように論理合成をしてみました。 お待ちかねのトランジスタ数についてですが、まだ安定した出力ではないので、 結果が変わってしまうことも多いと思いますが、従来WZetaの約6倍になってしまいました。
それでも最も小さいARMやRISC-Vと比較して3~5分の一程度なので、WZetaに置き換えれば、 チップの製造原価が下がるということはあると思います。
トランジスタ数は同じ8bit CPU ICF3-Zと同程度なのですが、WZetaは乗除算命令がないため 乗除算を使う制御では性能が厳しいかもしれません。しかしながら公開鍵暗号の演算は、 乗除算無でも演算できる計算法を実装できる命令セットになっているので、思ったよりは 高速に演算できます。ICF3-Zはハーバードアーキテクチャなので毎サイクル32bitの 命令コードを読み出します。そして毎サイクル8bitのリード・ライトをします。 スタックのメモリも別途必要です。 一方、WZetaはプログラムも、データもスタックも1個のメモリで済みます。 データ幅も8bitなので製造原価低減の役に立つと思います。
思ったよりトランジスタ数が多くなってしまったのでTTL向けに機能削減したWZetaを、 考える必要があるかも。


7月7日 超軽量8bit CPU WZeta作業報告

RSA暗号の演算をしているときに割込み0、割込み1が同時にONになる verilogシミュレーションをしても正しい答えが出ました。
新型WZetaの発表から5カ月近くも経過していると思った人も、あったようです。 ご興味を持っていただけのかも。
僕に問題を感じる人も多いと思いますが新型WZetaは、他のCPUを技術的に上回ると 思っているので、CPUの違いのわからない人が政治的に他のCPUを 考えないようにしないといけないかもと思っています。 WZetaは馴染みやすいCPUです。 しかし、かなり特長があるCPUなので他はマネできません。


7月7日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け脳が劣化が心配。 風邪の微熱のような状態で作業をしているのと同じ。 簡単なところは、なんとかなっても、 難しいところは、作業が止まってしまうという状況で辛い。
もし国の税金で海外流出しては問題と言っている僕の技術を 破壊しているのなら、この状況を止められるのかもしれない。


7月5日 頭痛で辛い

産業スパイによる脳直結回線を使った攻撃を受け、半分くらい動けなくなった。 目を開けるのが辛い。


7月5日 超軽量8bit CPU WZeta作業報告

頭痛であまり作業は進んでいませんがC言語のシミュレータでRSA暗号演算中に、 優先度の異なる複数の割込みを入れて正しい演算結果になることを確認できました。 現在、verilogでの動作を確認中です。


7月5日 SNS登録無で読めるようにしました、東大卒の方必見

今日も、産業スパイによる脳直結回線を使った攻撃を受け頭痛で、 痛みはそれほどではないが、脳劣化が心配。 痛み、眠気で動けなくなっていることもあるけど長時間、 動けなくなっているとうことはない。
量子コンピュータの進歩によってRSA暗号が破られる心配が出てきているけど、 特に問題が起きなければ2030年以降もRSA暗号が使い続けられる可能性はある。 高性能&高効率な暗号プロセッサSnakeCube の技術が、うまく運用できなくなる問題を避ける考えはないのだろうか。
東大卒の方は必見です。このままではパーフェクトな東大の劣悪さが3乗になるかも。 多くの東大卒の方は、それを避けたいと思うと考えました。
比較的、言論に自由がある「つばさの党」の日記に書いたのですが、 登録しないと読めないので、言論の自由で有名なSNS、GABに投稿しました。
「革命的暗号プロセッサの利権者は何者」
https://gab.com/zevios/posts/106524787452639942


「日本銀行の暗号装置の受注に失敗した話」
https://gab.com/zevios/posts/106524804103236480


7月4日 頭痛による脳劣化が辛い

産業スパイによる脳直結回線を使った攻撃を受け、確実にかなり脳が劣化している。 今日も、痛みは、それほどではないが劣化がかなり進んで辛い。 日本の半導体技術流出が叫ばれているのに、 半導体エンジニアの脳劣化を見逃しているような気がすると思いました。


7月3日 頭痛で作業速度が遅い

産業スパイによる脳直結回線を使った攻撃を受け、動けなくなるほどではないけど、 半分以下の速度しかでない。今日は、体が苦しいという表現が適切かも。


7月3日 CBDC(中央銀行デジタル通貨)のハードウォレット

各国で中央銀行デジタル通貨というものが、流行りだしたみたい。 ネットを調べてもデジタル人民元のハードウォレットが存在するのか、 しないのかという段階だが、暗号演算の得意なプロセッサは、これから流行るのかな。
僕が社長の会社があるのに、産業スパイの妨害のせいで、儲かるところが、 儲からないとか、そういうことにならないだろうか。
僕の暗号プロセッサは世界的に有名だし、それを活かせないというのは、惜しい。 考えることはできないのだろうか。


7月2日 超軽量8bit CPU WZeta作業報告

verilogシミュレータでINT命令を使ったマルチタスクのプログラムが動作しました。 次は割り込み信号による割り込み動作。


7月1日 サムシンググッドでのアルバイト

忙しい人は読み飛ばしてOKの内容です。 前回の日記で書いたサムシンググッドでのアルバイトの仕事について、 産業スパイから指摘が入った。 指摘の目的はサムシンググッドがプログラミングの勉強にアルバイト料を 出していたということにしたいらしい。(←こちらも厳しく書くことに)
実際、僕以外のバイトだとPASCAL言語の勉強をするように言われた人もいた。 PASCALは教育用言語として一時期、流行したが、すぐに廃れた。 C言語を勉強していれば、他のソフトハウスに就職後、楽ができただろうに。
僕もWindows3.1のプログラムのためASCII出版のWindowsのバイブルと呼ばれていた パープルブックを自費購入して、勉強をしていたこともあった。 初期のWindowsのプログラミングは、少し難しいものだったが、 早稲田大学の計算機センターでバイトすることになったので、初期のWindowsの プログラミングの知識が役立つことはなく、無駄になった。
その後、2002年になって日立、富士通、NECの3社で構成される認証局の会社に 周1回、通うようになった。法的効力のあるデジタル署名ができる証明書を発行できる会社だ。 ここで証明書のオンライン更新で使うデジタル署名のプログラムを、どうするのか議論になった。 僕がWindowsのソフトウェアを作ったのですが不採用になった。 この頃のWindowsの開発環境は進化していて、初期のWindowsのプログラミングは、 ほとんど役立たない状況になっていた。 煩雑なGUIプログラミングはMFCというライブラリを通すことで、 もう少し簡単にプログラム可能になっていたからだ。

余談になるのですが、オンライン更新のデジタル署名のプログラムを結局、どうしたのかといえば、 OpenOfficeを使ったデジタル署名を採用されたようです。 議論をしていたときはJavaのランタイムライブラリは30MBあるから、アナログモデムの人は、 厳しいとか言っていたのにOpenOfficeは数百MB、、、。 僕の1MB未満のデジタル署名のソフトウェアで足らせることは、できただろうと。


7月1日 元国会議員の叔父の話

頭痛で無性に昔の話がしたくなった。 僕の大学時代、元国会議員だった僕の叔父、平山誠は、まだ広告関係の仕事をしていた。 大学4年になったころ、東大卒が作ったソフトハウス、サムシンググッドがアルバイト情報誌 FromAに募集を出していたので、入ってみた。 開発部の多くが東大卒プログラマだということは、入ってから知ったこと。 バイト中に、ある日、突然、叔父がやってきて、サムシンググッドの経理と立ち話をしていた。 叔父は、僕のバイト料を値上げするように要請していたのだが、経理は本人の確認が必要だと言う返事をしていた。

叔父「(僕の)アルバイト料の値上げは?]
経理「ご本人に、言っていただかないと」
僕「・・・」

バイトを始めた直後は時給800円だった。 フロッピーディスクをコピーするだけとか、AI囲碁で遊んでいるだけでも、いい状況だった。 僕は時給850円になっていたが、ここで値上げを要望すると、責任が大きくなるのだろうなと、 思ったので無言で、やり過ごした。

大学に入ってから、ずっと朝、起きることが辛かったが、徐々に深刻になって、 そのことが叔父の耳に入ったらしい。 自宅にやってきたときに「朝、早起きできるやつが、勝つんだ」と盛んに言ってくる。

今、思うのは自分よりできるやつを、眠らせて、 東大に合格することは可能なのかもしれない。
叔父のおかげで、今、こんなことが書くことができたのかな。


7月1日 頭痛で作業速度が遅い

産業スパイによる脳直結回線を使った攻撃を受け、動けなくなるほどではないけど、 10%くらいの速度しかでない。あまり考える作業はできていない。


暗号プロセッサ OpenICF3