Research Log 2026-08-27 — Tang Nano 9K bitstream re-verify arc
Origin — 藤本さん directive + chat-Claude backup 議論
本 session 冒頭 chat-Claude 3 段 threads (空間エントロピー → 物体縮小 → TB/EB 解決 → DNA storage 実現 gap → PC 内実現) → 「PC 内で 何とか 実現できないか」 → chat-Claude 3 層 提案 (par2 誤り訂正 / ZFS-btrfs-restic 完全性検証 / restic WORM 運用)。
私 (Claude Code) response = Rei-AIOS 資産 mapping (memory/ + Papers + Lean 4 は既に protected)、 未 protected は Tang Console bitstream 34MB + git bundle。 4 案 (A par2 bitstream / B git bundle / C 全部 / D 何もしない) → 推奨 A。
藤本さん 「Tangnano9k を 取り付ければ 宜しいでしょうか?」 → 私 = par2/backup には Tang Nano 9K 取り付け不要と説明、 別価値 3 択 (A bitstream re-verify / B STEP 1399 pickup / C 何もしない) → 推奨 A。
藤本さん 「すみません!tangnano9k を 取り付けました!お願い致します。」 → 実行。
Device 検出
$ programmer_cli.exe --scan
Scanning!
Target Cable: Gowin USB Cable(FT2CH)/0/None/null@2.5MHz
Device Info:
Family: GW1NR
Name: GW1N-9C GW1NR-9C (One of them)
ID: 0x1100481B
1 device(s) found!
Cost 0.17 second(s)
IDCODE 0x1100481B = GW1N(R)-9 C revision (Gowin LittleBee Programming Manual Table 5-5、 STEP 1038 documented mapping と一致)。 GW1N(R)-9 original 旧 revision は 0x1100581B、 完全に別値。
Bitstream 1: LED Blinky (STEP 1038 build 2026-05-09、 3.5 ヶ月経過)
--device GW1NR-9C --cable-index 1 --operation_index 2
--fsFile hardware/phase-c/04-tang-nano-9k-led-blinky/impl/pnr/led_blinky.fs
| 項目 | 実測 (2026-08-27) | STEP 1038 (2026-05-09) | 一致 |
|---|---|---|---|
| Target Device | GW1NR-9C(0x1100481B) | GW1NR-9C(0x1100481B) | ✅ |
| User Code | 0x0000A5F4 | 0x0000A5F4 | ✅ 完全一致 |
| Status Code | 0x0003F020 | 0x0003F020 | ✅ Success |
| Cost | 3.63 sec | 3.55 sec | ✅ ~同等 |
| Physical LED | on-board LED1 ~1.6 Hz 点滅 | 藤本さん目視 confirm 済 | ✅ |
109 日経過後に 完全再現。
Bitstream 2: fixpoint_relax_v1 (STEP 1399 build 2026-08-24、 3 日経過)
--device GW1NR-9C --cable-index 1 --operation_index 2
--fsFile hardware/phase-c/07-tang-nano-9k-fixpoint-relax-v1/impl/pnr/fixpoint_relax_v1.fs
| 項目 | 実測 (2026-08-27) | STEP 1399 (2026-08-24) | 一致 |
|---|---|---|---|
| Target Device | GW1NR-9C(0x1100481B) | GW1NR-9C(0x1100481B) | ✅ |
| User Code | 0x00002FE6 | 0x00002FE6 | ✅ 完全一致 |
| Status Code | 0x0003F020 | 0x0003F020 | ✅ Success |
| Cost | 3.5 sec | ~3 sec | ✅ ~同等 |
| Physical LED | 藤本さん 「はい!点滅しております!」 | 藤本さん目視 confirm 済 | ✅ |
72 時間経過後に 完全再現。 Bit-clear R(x) = x & (x-1) の 収束過程 が LED 1-4 (x[3:0]) + LED 5 (Fix flag) + LED 6 (step tick) で 動作。
意義 — 4-substrate verification chain の 生存性
Rei-AIOS の 4-substrate = (a) Aer simulator + (b) IBM Heron r2 real quantum + (c) Tang Console NEO GW5AST + (d) Tang Nano 9K GW1N-9C。 本 STEP の (d) re-verify で 4 substrate 全て が 「今も動作可能」 status:
| Substrate | 元 STEP | 状態 | 再現手段 |
|---|---|---|---|
| (a) Aer simulator | 1030-1036 | ✅ 再現可能 | Python + qiskit-aer install |
| (b) IBM Heron r2 | 1030+1035 | ✅ 再現可能 | Open Plan 月 10 min budget 内 で ibm_kingston aliased backend |
| (c) Tang Console NEO | 1028+1029 | ✅ 予備 | 再取り付け で verify 可能 (User Codes 0x000084BA + 0x00005C27) |
| (d) Tang Nano 9K | 1038+1039+1399 | ✅ 本 STEP で verify 完了 | 本 SRAM Program 手順 |
chat-Claude backup 議論 との 接続
chat-Claude 提案 の par2/restic/ZFS は 「backup した data が 復元可能か」 の 保証層 (デジタル層)。 本 STEP は 「backup した bitstream が 現存 hardware で programmable state を 維持 している」 の empirical evidence (物理層):
- Verilog source → Gowin EDA build →
.fsbitstream file (git tracked、 34 MB 級 は Zenodo) - 現物 verify = programmer_cli.exe で SRAM Program → User Code 一致 + 藤本さん 目視 LED activity
この chain が 3.5 ヶ月 + 3 日 の 両 time scale で 動作 = backup が 「デジタル的に完全」 かつ 「物理的に再生可能」 の 二重証明。 par2 冗長化を 追加する場合の baseline verified state が 確定。
Honest scope
1. User Code 一致 ≠ bitstream 全体 の md5 一致: User Code は FPGA 内部 register の 値 (build 時 に Gowin EDA が embed)、 bitstream file 全体 の cryptographic verify とは 別軸。 md5sum で bitstream file 一致は 別途 verify 可能 (今回 未実施)。
2. 実効 verify = programming + 目視 activity: 藤本さん 「LED 点滅しております!」 が 「bitstream の 動作意味 が 保持」 の 最終 evidence。 プログラム可能 verify のみでは 動作 verify 不十分 (bitstream corruption だと programming は success でも 動作しない case あり)。
3. 「生存性」 主張 の 前提: Tang Nano 9K hardware + FT2CH cable + Gowin EDA V1.9.12.02 install の 3 要素 が 現存 する 前提。 hardware 消失時 は Sipeed 秋月電子 g117448 ¥2,980 re-purchase + STEP 1038 REPRODUCING.md 手順 で 復元可能 (Layer 2 = ~¥3K commodity)。
次段候補
- par2 追加 (chat-Claude 案 A 実装) =
.fsbitstream file を par2 10% 冗長 で 外付け media 2 media 分散 - md5 cryptographic verify = bitstream file 全体 の md5 一致 追加 verify
- Tang Console NEO re-verify = STEP 1028/1029 の 再取り付け で 4-substrate 全 完全生存性 evidence 完成
- STEP 1399 発展 (5 選択肢 (e) 別 fixpoint、 D-FUMT₈ ledger silicon 化、 d8_ledger_query silicon 検証) = 本 verify で 直近 arc warm 状態