arXiv:2604.20891 · 域格代数 × 忆阻器

电流的大小,
就是答案的真值

传统芯片把数据存在内存里, 计算放在 CPU 里。这块芯片把逻辑断言直接编码进忆阻器的电阻——读一次电流, 欧姆定律自己把推理算完了。没有 CPU 介入, 没有解码器, 物理定律就是推理引擎。

1,247
实体 · ICD-11 呼吸系统
~136k
1T1R 结点 · 每个一条断言
3 态
+1 成立 · 0 未决 · −1 否定
~10ns
每周期 · 物理定律的速度
向下看真实的电路是怎么"推理"的
01 · 核心反差

"位置就是语义"是什么意思?

这不是文学修辞——它有一个非常具体的物理意义: 一个忆阻器结点的物理地址 (它在第几行第几列, 在哪个域阵列里) 直接对应一条逻辑断言。改变它的位置就改变了它的语义, 因为位置本身编码了"概念-关系-概念-域"四元组中的每一个分量。

传统数据库 / 知识图谱

位置无关

关系三元组存在表里, 行号是任意的索引
把第 1 行和第 100 行交换, 语义不变
查询 = 引擎扫表 → 解析 → 匹配 → 返回
数据是被动的, 引擎是主动的
域格代数 × 忆阻器

位置即语义

第 47 行 = "Pneumonia", 第 12 列 = "Respiratory_Disease" — 编译时就焊死
把两个交叉点的电阻互换, 推理结果就变了
查询 = 在该位置施加电压, 看电流
结构是主动的, 物理定律就是引擎
02 · 单元解剖

先认识一个 cell: 1T1R 是什么?

整片芯片由 ~136,000 个完全一样的 cell 组成。每个 cell 就两个元件: 一个晶体管 (T) + 一个忆阻器 (R)。先看清单元, 再看阵列怎么构成。

WORD LINE (字线) selector T 晶体管 gate memristor R 忆阻器 3 states BIT LINE (位线) → sense amp

1T1R Cell · 1 个晶体管 + 1 个忆阻器

晶体管 (T) 是开关。当字线上有电压, 晶体管打开, 这个 cell 被选中; 否则关闭, 此 cell 与电路隔离。这就是 1T1R 比传统无源交叉杆好的关键——没有"潜行电流"

忆阻器 (R) 是可编程电阻。它的电阻值在断电后保持不变, 可被写入为三种稳定状态:

R_low ~10 kΩ +1 · 关系成立
R_mid ~100 kΩ 0 · 未定义
R_high ~1 MΩ −1 · 显式否定

三个状态相隔 10×。这个间距足够大, 即使忆阻器有 15% 的制造误差, 也不会混淆 — 这就是论文 §5.4 仿真验证的设计余量。

03 · 一次查询 · 电流切面

读一次, 推理就完成了

下面把 ~136K cell 的阵列简化成 3×3, 让你看到一次查询里电流是怎么走的, 以及为什么"读电流"等于"完成推理"。拖动时间轴, 看 0–10 ns 之间发生了什么。

TIME 0.0 ns
T = 0 ns · 待机
阵列处于静态。准备查询: "在 @Anatomical 域中, 'CA40.00 (链球菌肺炎)' 的 is_a 父类有哪些?"。点击播放观察电流流动, 或拖动时间轴。

看清楚了: 推理 = 欧姆定律

注意中间那一行 (CA40.00) 在不同列上的电流大小:

I = V / R

当 V_read = 0.2V 固定时, 电流大小完全取决于忆阻器电阻: R_low (10kΩ) → I=20μA (大); R_mid (100kΩ) → I=2μA (中); R_high (1MΩ) → I=0.2μA (小)。 这 100× 的电流差异不是 CPU 算出来的, 是物理定律自己产生的。把这三个电流分别送进双阈值比较器, 输出就是 +1/0/−1——这就是答案。没有指令、没有解码、没有任何"额外计算"步骤。

04 · 多步推理 · 级联

传递分类: 一次电流读出还不够时

"CA40.00 → 肺炎 → 下呼吸道感染 → 呼吸系统疾病"是一个 4 步的传递链。论文 §4.3 的 cascade 机制让这 4 步在同一个阵列内完成: 这一周期的列电流, 直接驱动下一周期的行电压。点击逐步观察。

CYCLE
Cycle 1: 在 CA40.00 行施加电压 V_read。读出: Pneumonia 列 +1。锁存器记下 Pneumonia 作为下一周期的"前沿"。
为什么是离散的, 不是连续模拟传播? 如果让电流连续流过多级忆阻器, 噪声会累积, 4 步后三态就分不清了。每个 cycle 的"读 → 阈值比较 → 锁存"过程把信号再生到干净的 +1/0/−1, 像数字逻辑一样防止误差累积。这就是 cascade 错误率随步数线性增长 (而非指数) 的原因。
05 · 增删改查 · 矩阵交互

每个 CRUD 操作 = 一次电压施加

现在你已经看到电流怎么走了, 来看完整的矩阵交互。这次行列含义对齐论文: 每个 (域, 关系) 对应一个独立的子阵列, 行列同集都是该域的概念。切换关系或域 = 切到不同的子阵列。

DOMAIN @D
RELATION r
CURRENT SUB-ARRAY
@Anatomical × is_a
空阵列: 当前显示 @Anatomical 域中 is_a 关系的子阵列。行列同集——每行/每列都是该域的一个概念。所有交叉点为高阻 (·), 表示"未写入"(三态值 0)。这是一个真实的 4×4 square crossbar, 只是从 ~61×61 简化而来
R_low · +1 (成立)
R_high · −1 (否定)
R_mid · 0 (未决)
当前操作位置
06 · 常见困惑

读者最常问的几个问题

这些问题都来自真实的读者反馈。点击展开看回答。