軽量なろうリーダー

作品タイトル不明

第八十三話:春の手応え

明け方の開発室に、疲労した声が飛び交っていた。

GUI用の文字表示回路について議論が続く中、忠夫がふと口を開いた。

「最初の設定時に、使用言語を選択できるようにした方がいいと思います」

その一言で、空気が止まった。

「……簡単に言ってくれるな」

関根がマイラー紙から顔も上げずに言う。

赤と青の鉛筆で埋まった巨大な配線図の上を、定規が滑る。

キュッ、キュッ――。

「つまり、日本語も入れるということだよな?……ASCIIだけなら、まだ軽いし、フォント数はたかが知れてる。だが、漢字を本気で入れるとなると話は別だ」

「漢字ROMだけでメモリを食う。さらにさっき言ってたGUIまで重なれば処理が追いつかない」

製図台の向こうで、今川が顔を上げた。

「いや、いいアイデアだ」

一拍の間があった。

「……先生」

高村が静かに、しかし真っ直ぐに言った。

「言語が増えるたびにフォント処理も増える。VRAMアクセスも、漢字ROM参照も全部重くなる。論理検証がまた積み直しになりますよ」

「分かっている」

今川はそれだけ言い、マーカーを手に取った。

「だが、このOSを世界標準にするには必要だ」

誰も即座には答えられなかった。

小林が低く唸った。

「……世界標準か……ならこのCPUも世界で使われるということか」

「ああ」

「……面白い」

その言葉に反論する者はいなかった。

今川はホワイトボードに向き直り、線を引き始めた。

忠夫はその背中を見ていた。

一ヶ月後。

開発室の製図台には、赤と青の鉛筆の粉が積もっている。

関根の手が、ひたすら消しゴムを走らせている。小林はルーペを目に当てたまま微動だにしない。西村の充血した目が、タイミングチャートにへばりついている。

忠夫は端末から引き剥がしたばかりの連続用紙を手に取った。

ずっしりと重い。

ページをめくる手が、一瞬止まった。

エラー件数。先月の数字と比べる。

「……減っています」

高村が、掠れた声で答えた。

「ああ、VRレジスタ(タスク切り替え用レジスタ)の追加で一度振り出しに戻ったが、それも先週で片がついた。タイミングエラーは今朝の時点で、残り二件だ」

忠夫は用紙から目を上げた。

「どこです」

「ロード・ストアと演算器の間だ。連続してアクセスが重なった時だけ、一サイクル分の遅延が滲み出る」

西村がタイミングチャートの波形の一点を指で叩いた。

忠夫はその箇所を覗き込み、しばらく黙って数字の列を追った。

頭の中で、パイプラインを流れるデータの動きをシミュレートする。

「……物理的な配線の遅延じゃないですね」

「ああ」

「フォワーディング(データの追い越し)の条件が一つ、抜けています。演算結果を、レジスタに書き込む前に次の命令へ直接渡す経路です。ロード・ストアが絡んだ時だけ、条件判定から外れてデータが待機してしまっている。回路の配置ミスではなく、制御ロジックの記述ミスです」

高村がガタッと椅子を鳴らして身を乗り出した。

「……なるほど、そういうことか」

「はい。ネットリスト(論理的な接続情報)の修正だけで直ります」

関根が消しゴムを握ったまま、呆然と顔を上げた。

「ということは、マイラー紙の修正は必要ない……?」

「はい」

この一ヶ月、仕様変更のたびに何度もマイラー紙を描き直した。デジタイザで膨大な座標を手作業で打ち込む。それは正真正銘の地獄だった。

関根は天井を仰ぎ、全身の力が抜けたように、深く、長い息を吐き出した。

修正の結果が出たのは、翌朝だった。

高村が最後の一枚を引き抜き、エラー件数の欄に目を落とした。

数秒の沈黙。

「……ゼロだ」

誰も声を上げなかった。

関根が、手にしていた色鉛筆をゆっくりと製図台に置いた。

西村が目を閉じた。

大門が、短く息を吐いた。

小林が、ぼんやりと天井を見上げたまま動かない。

高村は用紙を折り畳み、静かに机の上に置いた。

「論理検証、完了だ」

それだけだった。

誰も立ち上がらなかった。誰も握手をしなかった。

ただ、徹夜明けの沈黙が、開発室をゆっくりと満たしていった。

忠夫は自分の手を見た。

震えてはいない。

だが、指先に鈍い疲労が残っている。

(……終わった)

論理検証の完了。

だが、5万のトランジスタを手作業で描くマイラー紙の作業は、まだ三分の二残っている。

春の足音とともに、彼らは次なる地獄へと足を踏み入れようとしていた。