🎯 圆心 · 目标(每环都从这里出发)
造一台 Salt OS 手机:基于 DeepSeek 的 AI 操作系统,iPhone 4S 外形(含底部圆形 Home 键),开机只有一个 AI(无桌面、无图标),软硬协同设计(OS + 芯片 + 主板一起做),为别人搭台、让别人在平台上赚钱。

🧭 完整框架(同心圆)

①文字闭环 · ②技术深入 · ③挂SRAM · ④权重INT4 · ⑤激活INT4 · ⑥NPU.STORE · ⑦KV Cache · ⑧注意力QK^T · ⑨Softmax · ⑩加权V · ⑪前馈FFN · ⑫残差·LayerNorm · ⑬多层堆叠 · ⑭QKV投影 · ⑮K/V分离 · ⑯自回归解码 · ⑰连续生成 · ⑱采样 · ⑲KV环形缓冲 · ⑳滑窗注意力 · ㉑多头注意力 · ㉒输出投影 W_o · ㉓多头块入残差流 · ㉔多头块进解码循环 · ㉕整层一块 · ㉖整网一块 · ㉗ISA契约 · ㉘权重内存化 · ㉙权重预取双缓冲 · ㉚权重分块 · ㉛矩阵行块 · ㉜行块自增 · ㉝起始块号可编程 · ㉞段表连扫 · ㉟段表流式取 · ㊱行块矩阵扫 ISA 化 · ㊲描述符链 · ㊳链槽直喂 · ㊴主路走链 · ㊵链预投下层 · ㊶跨趟预投 · ㊷权重池三 bank · ㊸权重池 ISA 化 · ㊹一步生成 ISA 化 · ㊺整段生成 ISA 化 · ㊻对话回路 · ㊼对话 ISA 化 · ㊽会话记忆归档 · ㊾多会话槽位 · ㊿会话槽位 ISA 化 · 51 开机续聊 · 52 会话清单 · 53 开机用上清单 · 54 问候接话 · 55 删掉一场 · 56 会话改名 · 57 名字进问候 → 58…

本环:从「你有三场没聊完」到「查资料,接着聊吧。」

① 目标(这一环要解决什么)

第 56 环让每一场会话有了名字(名字格 0x200 + 槽号×6,24 字节 UTF-8),可开机第一句仍只是一个数字:「你有三场没聊完。」用户心里那场「查资料」在问候里没有名字——AI 记得有几场,却叫不出你在等哪一场。

这一环把名字接进问候:问候合成器自己去读被恢复那一场的名字格,把名字排进第一句。核不搬名字、不拼字,名字从内存直接进问候。

② 实现(做了什么)

boot_greet 扩名。第 53 环的问候合成器只认「场数」,这一环给它加三样东西:

  • 槽号输入:slot / slot_valid 由开关场引擎直连(恢复的是哪一场,不经核);
  • 名字读口:合成器自己发 6 拍读名字格(同步 SRAM「发地址 → 空一拍 → 收数据」三态读法),按 UTF-8 字节拼名字、遇 0 截止;
  • 固定后缀:名字后面接「,接着聊吧。」(18 字节),再用空格补到 48 字节 = 12 个字,整行落 0x1E0~0x1EB,OS 直接读上屏;
  • 退回老路:名字格全 0(没起名 / 首次开机)→ 仍说按场数那句,24 字节 6 个字,第 53 环的词表一个字没改;
  • 名字跟着会话走:删除一场时,删除引擎顺手把该槽名字格 6 字清零——槽空出来可以再分给新会话,但名字不能被继承。
开机 → 恢复 0xA3(槽 2)
       读 0x20C~0x211 → 名字「查资料」
       排:查资料,接着聊吧。   48 字节 / 12 字
       写 0x1E0~0x1EB
没有名字 → 你有三场没聊完。  24 字节 / 6 字
删掉 0xA3 → 槽 2 名字格清零
新会话 0xA4 分到槽 2 → 问候不叫旧名字

软硬接口。问候页仍在 0xE00,新增只读探针:BG_NAMED(这一句有没有名字)、BG_W6..W11(后六个字)、BG_SLOT(名字从哪个槽读来);SCREEN33 接在 0xE5C。会话记忆区读口多一个主(问候引擎),写主优先级仍是 rn > fs > gp > bg > ss > arc。

③ 验证(怎么证明它真的跑通)

协同仿真 tb_min_soc57:接着第 56 圈的三场会话(0xA1 / 0xA2「工作那场」/ 0xA3「查资料」)往下跑:

  • 一条 npu.boot:恢复最后一场 0xA3(槽 2)→ SX_CUR=0xA3;问候 BG_NAMED=1 / BG_BYTES=48 / BG_SID=0xA3 / BG_SLOT=2;0x1E0~0x1EB 十二个字与「查资料,接着聊吧。」参考行逐位相同;
  • 一条 npu.forget 3:删掉 0xA3 → FS_OK=1,槽 2 名字格 0x20C~0x211 六字全 0——名字没有被留在格子里;
  • 新开 0xA4(enter + leave,没起名,分到刚空出的槽 2)→ 再一条 npu.boot:SX_CUR=0xA4,BG_NAMED=0 / BG_BYTES=24 / BG_CNT=3 / BG_SID=0xA4,0x1E0 起 6 字 == 「你有三场没聊完。」——新会话没有继承旧名字,问候诚实退回按场数;
  • 全程核没有搬名字:名字从名字格进问候,只走硬件通路。
SCREEN33 = 0x0130A357
有名字 1 句 | 48 字节 | 恢复的会话号 0xA3 | 57

主通路 SCREEN=0xF905FD04、SCREEN2~32 与第 25~56 环逐位一致——这一环只加了「读名字格进问候」一条通路,计算面一个字没动。第 56 圈协同仿真与第 53/55 圈单元仿真复跑通过(递增不推翻)。

④ 回到目标(这一环让手机多了什么)

Salt OS 开机没有桌面、没有图标,只有 AI 一个对话窗口——所以开机第一句就是整个产品的第一印象。到这一环,这句话终于能叫出人:「查资料,接着聊吧。」

对用户来说,这不是「问候语模板多了一个变量」,而是 AI 真的记得你在等哪一场;删掉一场之后,新的一场也不会顶着别人的名字出现。名字跟着会话走——这是「关系」而不是「功能」。