逆向工程阿波罗时代神秘的Up-Data Link Test Set
摘要
对罕见的阿波罗时代Up-Data Link Confidence Test Set进行逆向工程,揭示其未公开的模块和布线,以重建阿波罗通信系统。
<p>2021年,我们一位收藏家朋友正在寻找阿波罗时代的通信设备,他走访了一个布满灰尘的仓库。一个带有NASA风格指示灯的箱子引起了他的注意——'AGC Confirm'灯暗示它与阿波罗制导计算机有关。令人失望的是,这个箱子只是一个空机箱,所有电路板都不见了。他继续在仓库里翻找,出乎意料的是,他在仓库的另一边发现了一个袋子,里面正好装着丢失的电路板!箱子与其丢失的电路卡重聚后,他把它带给了我们:我们能让这个毫无文档说明的设备工作吗?</p>
<p><a href="https://static.righto.com/images/updata/powered-up2.jpg"><img alt="Up-Data Link Confidence Test Set 通电运行状态。" class="hilite" height="409" src="https://static.righto.com/images/updata/powered-up2-w600.jpg" title="Up-Data Link Confidence Test Set 通电运行状态。" width="600" /></a><div class="cite">Up-Data Link Confidence Test Set 通电运行状态。</div></p>
<p>背面的标签显示,这是一台由摩托罗拉制造的'Up-Data Link Confidence Test Set'。顾名思义,该设备用于测试阿波罗的Up-Data Link(UDL),这是一个允许向航天器发送数字命令的系统。正如下文详细说明的,这些命令使地面站能够切换航天器电路的开/关、与阿波罗制导计算机交互或设置航天器的时钟。Up-Data Link需要在地面进行测试,以确保其功能正常运行。生成Up-Data Link的测试信号并验证其输出,是Up-Data Link Confidence Test Set(简称测试设备)的职责。</p>
<p>该测试设备展示了在集成电路出现之前,如何用拇指大小的封装模块构建复杂设备。由于我找不到这些模块的任何文档,不得不对其进行逆向工程,发现不同的模块实现了从触发器、逻辑门到光隔离器和模拟电路的各种功能。借助Lumafield三维X射线扫描仪,我们查看了模块内部,并检查了其中安装的分立晶体管、电阻、二极管和其他元件。</p>
<p><a href="https://static.righto.com/images/updata/modules.jpg"><img alt="四个13针摩托罗拉模块。这些模块实现逻辑门(2/2G和2/1G)、灯驱动器(LD)、更多逻辑门(2P/3G)以及一个触发器(LP FF)。模块有13个交错排列的引脚,确保不会插反。" class="hilite" height="369" src="https://static.righto.com/images/updata/modules-w400.jpg" title="四个13针摩托罗拉模块。这些模块实现逻辑门(2/2G和2/1G)、灯驱动器(LD)、更多逻辑门(2P/3G)以及一个触发器(LP FF)。模块有13个交错排列的引脚,确保不会插反。" width="400" /></a><div class="cite">四个13针摩托罗拉模块。这些模块实现逻辑门(2/2G和2/1G)、灯驱动器(LD)、更多逻辑门(2P/3G)以及一个触发器(LP FF)。模块有13个交错排列的引脚,确保不会插反。</div></p>
<p>对这个系统进行逆向工程——从无文档的模块到混乱的布线——是一个挑战。Mike找到了一份提及该测试设备的NASA文档,但这份文档非常不详细。<span id="fnref:useless-diagram"><a class="ref" href="#fn:useless-diagram">1</a></span> 此外,箱子的关键部件已经丢失,可能多年前被拆去回收了。在本文中,我将描述我们如何了解该系统的功能,揭示封装模块的秘密,构建自动追踪布线的系统,并将UDL测试设备用于阿波罗通信系统的大规模重建。</p>
<h2>阿波罗Up-Data Link</h2>
<p>在描述Up-Data Link Test Set之前,我先解释一下Up-Data Link (UDL)本身。Up-Data Link为阿波罗航天器提供了一种从地面站接收数字命令的机制。这些命令使地面站能够控制阿波罗制导计算机、打开或关闭设备、或更新航天器的时钟。物理上,Up-Data Link是一个浅蓝色的L形金属盒,重约20磅。</p>
<p><a href="https://static.righto.com/images/updata/updata-link.jpg"><img alt="Up-Data Link盒子。" class="hilite" height="300" src="https://static.righto.com/images/updata/updata-link-w500.jpg" title="Up-Data Link盒子。" width="500" /></a><div class="cite">Up-Data Link盒子。</div></p>
<p>阿波罗指令舱内塞满了各种电子设备箱,从通信、导航到电源和时序控制。Up-Data Link安装在交流电源逆变器上方、阿波罗制导计算机下方、废物管理系统和尿袋的左侧。</p>
<p><a href="https://static.righto.com/images/updata/updata-equipment-bay.jpg"><img alt="阿波罗指令舱下设备舱。Up-Data Link以黄色高亮显示。点击此图像(或任何其他图像)查看大图。来自指令/服务模块系统手册第212页。" class="hilite" height="541" src="https://static.righto.com/images/updata/updata-equipment-bay-w700.jpg" title="阿波罗指令舱下设备舱。Up-Data Link以黄色高亮显示。点击此图像(或任何其他图像)查看大图。来自指令/服务模块系统手册第212页。" width="700" /></a><div class="cite">阿波罗指令舱下设备舱。Up-Data Link以黄色高亮显示。点击此图像(或任何其他图像)查看大图。来自<a href="https://www.ibiblio.org/apollo/Documents/HSI-481260.pdf#page=212">指令/服务模块系统手册</a>第212页。</div></p>
<h3>Up-Data Link 消息</h3>
<p>Up-Data Link 支持四种消息类型:</p>
<ul>
<li>
<p>任务控制中心通过UDL直接访问阿波罗制导计算机(AGC),逐键控制计算机。即每条消息使UDL在显示/键盘(DSKY)上模拟一次按键操作,DSKY是宇航员与计算机的接口。</p>
</li>
<li>
<p>航天器有一个时钟,称为中央计时设备(CTE),用于跟踪任务的经过时间,从天到秒。CTE消息可以设置时钟到指定时间。</p>
</li>
<li>
<p>一个名为实时控制(RTC)的系统允许UDL打开或关闭继电器,从而使一些航天器系统能够从地面控制。<span id="fnref:relays"><a class="ref" href="#fn:relays">2</a></span> 这32个继电器安装在Up-Data Link盒子内部,可以完成从点亮中止指示灯(表示任务控制中心发出中止指令)到控制数据磁带记录仪或S波段无线电等一切功能。</p>
</li>
<li>
<p>最后,UDL支持两条测试消息,用于“演练UDL中的所有处理、传输和程序控制逻辑”。</p>
</li>
</ul>
<p>下图显示了发送给Up-Data Link的消息格式。每条消息由12到30位组成,具体取决于消息类型。前三位是飞行器地址,用于选择接收消息的航天器。(这允许消息定向发送给土星五号火箭、指令舱或登月舱。<span id="fnref:command-system"><a class="ref" href="#fn:command-system">3</a></span>)接下来,三位系统地址位指定接收消息的航天器系统,对应上述四种消息类型。剩余位提供消息文本。</p>
<p><a href="https://static.righto.com/images/updata/message-format.jpg"><img alt="发送给Up-Data Link的消息格式。来自电信系统学习指南。注意车辆访问码使用与消息其余部分不同的子位模式。此图显示了早期的子位" /></p>
查看缓存全文
缓存时间: 2026/05/16 03:34
# 逆向工程阿波罗计划中神秘的 Up-Data Link 测试装置
来源: http://www.righto.com/2025/07/reverse-engineering-mysterious-up-data.html
早在2021年,我们的一位收藏家朋友在寻找阿波罗时代的通信设备时,拜访了一个布满灰尘的仓库。一个带有 NASA 风格指示灯(“AGC Confirm”灯)的盒子引起了他的注意——这暗示它与 Apollo 制导计算机有关。令人失望的是,这个盒子只是一个空机箱,所有电路板都不见了。他继续在仓库里翻找,令人惊讶的是,他在仓库另一侧发现了一个袋子,里面正好装着丢失的电路板!将机箱与迷路的电路卡重新组合后,他把它带给了我们:我们能让这个没有文档说明的装置工作吗?
Up-Data Link 自检测试装置,已通电。
背面的标签表明这是一个由摩托罗拉制造的“Up-Data Link 自检测试装置”。顾名思义,这个盒子设计用于测试阿波罗的 Up-Data Link(UDL)系统,该系统允许向航天器发送数字指令。下面我将详细解释,这些指令使地面站能够开关航天器电路、与阿波罗制导计算机交互,或设置航天器的时钟。Up-Data Link 需要在地面进行测试,以确保其功能正常运行。为 Up-Data Link 生成测试信号并验证其输出的任务,由 Up-Data Link 自检测试装置负责(我将其简称为测试装置)。
测试装置展示了在集成电路出现之前,如何用拇指大小的封装模块构建复杂的设备。由于我找不到任何关于这些模块的文档,我不得不对它们进行逆向工程,发现不同的模块实现了从触发器、逻辑门到光隔离器和模拟电路的各种功能。借助 Lumafield 三维 X 射线扫描仪,我们查看了模块内部,检查了里面安装的分立晶体管、电阻、二极管以及其他元件。
四个 13 引脚的摩托罗拉模块。这些实现了逻辑门(2/2G & 2/1G)、灯驱动器(LD)、更多逻辑门(2P/3G)和一个触发器(LP FF)。模块具有 13 个错位排列的引脚,确保无法反向插入。
逆向工程这个系统——从无文档的模块到杂乱的接线——是一个挑战。Mike 找到了一份提到测试装置的 NASA 文档,但该文档信息量少得惊人。此外,盒子的关键部件缺失,可能很多年前就被拆走另作他用了。在本文中,我将描述我们如何了解系统的功能、揭开封装模块的秘密、构建一个系统来自动追踪布线,以及如何在大型阿波罗通信系统复现中使用 UDL 测试装置。
在描述 Up-Data Link 测试装置之前,我将先解释 Up-Data Link(UDL)本身。Up-Data Link 提供了一种机制,使阿波罗航天器能够从地面站接收数字指令。这些指令允许地面站控制阿波罗制导计算机、打开或关闭设备、或更新航天器的时钟。物理上,Up-Data Link 是一个浅蓝色的金属盒子,形状不规则,呈 L 形,重约 20 磅。
Up-Data Link 盒子。
阿波罗指令舱里塞满了各种电器箱,从通信、导航到电源和排序系统。Up-Data Link 安装在交流逆变器上方、阿波罗制导计算机下方、废物管理系统和尿液袋的左侧。
阿波罗指令舱的下部设备舱。Up-Data Link 用黄色高亮标出。点击此图像(或任何其他图像)可查看大图。来自《指令/服务舱系统手册》第 212 页。
### Up-Data Link 消息
Up-Data Link 支持四种消息类型:
- 任务控制通过 UDL 直接访问阿波罗制导计算机(AGC),逐键控制计算机。也就是说,每条消息使 UDL 模拟 Display/Keyboard(DSKY,宇航员与计算机的接口)上的一次按键。
- 航天器有一个时钟,称为中央计时设备(CTE),记录任务的经过时间,从天到秒。CTE 消息可以将时钟设置为指定的时间。
- 一个称为实时控制(RTC)的系统允许 UDL 打开或关闭继电器,从而使一些航天器系统可以从地面控制。这 32 个继电器安装在 Up-Data Link 盒子内部,可以执行从点亮“中止”灯(表示任务控制说中止)到控制数据磁带录像机或 S 波段无线电等一切操作。
- 最后,UDL 支持两条测试消息,用于“锻炼 UDL 中的所有过程、传输和程序控制逻辑”。
下图显示了发往 Up-Data Link 的消息格式。每条消息由 12 到 30 位组成,具体取决于消息类型。前三位是飞行器地址,选择接收消息的航天器(这允许将消息定向到土星 V 火箭、指令舱或登月舱)。接下来,三位系统地址位指定接收消息的航天器系统,对应上述四种消息类型。剩余位提供消息正文。
发往 Up-Data Link 的消息格式。来自《电信系统学习指南》。注意,飞行器访问代码使用与消息其余部分不同的子位模式。此图显示的是较早期的子位编码,而不是测试装置使用的编码。
消息正文的内容取决于消息类型。实时控制(RTC)消息有一个六位值,指定继电器编号以及是关闭还是打开。阿波罗制导计算机(AGC)消息有一个五位值,指定 Display/Keyboard(DSKY)上的一个按键。为了可靠性,消息被编码为 16 位:消息、消息的反码、再次是消息,以及一个填充位;任何不匹配的位都会触发错误。CTE 消息使用四个六位值设置时钟,分别表示秒、分、时和天。UDL 处理消息时,先重置时钟,然后通过向 CTE 发出指定数量的脉冲来推进秒、分、时和天(这类似于逐个递增数字来设置数字闹钟)。最后,两条自测消息由 24 位模式组成,用于锻炼 UDL 的内部电路。测试结果通过阿波罗的遥测系统传回地球。
为了提高可靠性,发送到 UDL 的每一位都被替换为五个“子位”:每个“1”位被替换为子位序列“01011”,每个“0”位被替换为其补码“10100”。子位的目的是,任何损坏的数据都会导致无效的子位代码,从而可以拒绝损坏的消息。Up-Data Link 通过将输入数据流与“01011”或“10100”进行匹配来执行此验证(消息开头的飞行器地址使用不同的子位代码,确保正确识别消息的开头)。按照现代标准,子位是一种低效的冗余提供方式,因为消息会变大五倍。因此,有效传输速率很低:200 位/秒。
除了需要大功率发射机之外,Up-Data Link 消息没有任何安全性。在阿波罗的系统中,只有火箭自毁系统(委婉地称为推进剂分散系统)是密码学安全的。
由于阿波罗无线电系统是模拟的,数字子位不能直接从地面传输到太空。相反,一种称为相位键控(PSK)的技术将数据转换为音频信号。该音频信号由正弦波组成,通过反转来指示 0 位与 1 位;换句话说,0 位时相位移动 180 度。Up-Data Link 盒子将此音频信号作为输入并进行解调,以提取数字消息数据。(将音频信号从地面传输到 Up-Data Link 需要更多与测试装置无关的步骤,因此我将在脚注中描述。)
## Up-Data Link 测试装置
既然我已经解释了 Up-Data Link,我可以更详细地描述测试装置了。UDL 测试装置的用途是测试 Up-Data Link 系统。它向 Up-Data Link 盒子发送一条消息(作为音频信号),实现上述消息格式、子位编码和相位键控。然后验证 UDL 的输出,以确保 UDL 执行了正确的操作。
测试装置最显著的特征可能是前面板上的纸带阅读器:测试装置通过它获取要传输的消息。消息被穿孔到纸带上,编码为一系列八进制数字。从纸带读取消息后,会显示在 13 位显示器上。前三位是任意消息编号,其余十位八进制数字表示要发送到 UDL 的 30 位消息。根据消息类型(由系统地址数字指定),测试装置验证 UDL 的响应,并在面板指示灯上指示成功或错误。
下面我创建了框图来解释测试装置的架构和构造(点击查看大图)。系统有 25 块电路板,标记为 A1 到 A25;在大多数情况下,它们对应于框图中的功能块。
Up-Data Link 测试装置的框图。(点击查看大图。)
测试装置的前面板以其 13 个大数字的显示屏为主。事实证明,这些数字的存储是测试装置的核心。该存储(A3-A9)在从纸带读取时组装数字,循环传输位,并向其他电路提供数字以选择消息类型并验证结果。为此,13 个数字电路被配置为一个 39 位移位寄存器。当从纸带读取消息时,其位被移入数字存储,从右到左,消息显示在显示屏上。为了发送消息,移位寄存器被重新配置,使 10 个数字形成一个循环,排除消息编号。当位在循环中循环时,最左边的位被编码并传输。传输结束时,数字已循环回原始位置,因此如果需要,可以再次传输消息。因此,移位寄存器机制在读取消息时进行串并转换,在传输消息时进行并串转换。
测试装置使用三块电路板(A15、A2 和 A1)用子位扩展消息并将消息编码为音频。第一块板将每个位转换为五个子位。第二块板应用相位键控(PSK)调制,第三块板具有滤波器,用于从数字信号产生干净的正弦波。
在输入端,测试装置通过圆形军用连接器从 Up-Data Link(UDL)盒子接收信号。这些输入信号由电路板 A25、A22、A23、A10 和 A24 缓冲。板 15 通过将输入子位与传输的子位进行比较来验证它们。对于 AGC 消息,计算机信号由板 A14 验证。定时(CTE)信号由板 A20 和 A21 验证。UDL 状态(有效性)信号由板 A12 处理。板 A11 实现开关电源,为接口板供电。
从框图中可以看出,测试装置很复杂,实现了多个功能。另一方面,框图也显示,需要大量的 1960 年代电路才能实现任何功能。例如,一块电路板只能处理两位数字,因此仅数字显示就需要七块电路板。另一个例子是输入,需要一整块电路板来处理两三位输入位。
## 封装模块
这个盒子是由类似集成电路但包含分立元件的模块构建的。这类模块在 1960 年代早期,集成电路普及之前使用。每个模块实现一个简单的功能,如触发器或缓冲器。它们比分立元件更方便,因为模块提供了现成的功能。它们也很紧凑,因为元件被紧密地封装在模块内部。
物理上,每个模块有 13 个引脚:一侧排成一排的 7 个,另一侧偏移排成一排的 6 个。这种排列确保模块无法反向插入。
一个摩托罗拉“LP FF”模块。这个模块实现一个 J-K 触发器。“LP”可能表示低性能、低功率或低传播;系统中还使用“HP FF”模块,可能表示高性能。
对这些模块进行逆向工程很困难,因为它们被封装在塑料中,元件无法接触。每个模块上印制的文字暗示了其功能。例如,上面的 J-K 触发器模块标有“LP FF”。“2/2G & 2/1G”模块被证明包含两个与非门和两个反相器(2G 和 1G 门)。一个“2P/3G”模块包含两个上拉电阻和两个三输入与非门。其他模块
相似文章
Qwen-3.6-27B + llamacpp 投机解码效果惊艳
Reddit 用户展示了 llamacpp 的投机解码功能将 Qwen-3.6-27B 的生成速度从 13.6 提升至 136.75 t/s,并分享了完整的命令参数和硬件配置。
一款连接“Mother of All Demos”键盘的USB接口
构建一个USB接口,将Douglas Engelbart 1968年“Mother of All Demos”中的原始键盘连接到现代计算机,并附带历史背景。
深入解析阿波罗"8-Ball"FDAI(飞行指挥/姿态指示器)
深入解析阿波罗FDAI(飞行指挥官/姿态指示器),又称“8号球”的内部构造,阐释其机制及在登月任务中的作用。
GPT-4o 系统卡外部测试人员致谢
OpenAI 发布了对为 GPT-4o 安全测试和系统卡开发做出贡献的外部红队测试人员和评估人员的致谢。该文档表彰了众多个人研究人员和组织,包括 METR 和 Apollo Research。
如何逆向工程模拟芯片:TDA7000 FM收音机接收器
通过芯片显微照片逆向工程飞利浦TDA7000 FM收音机接收器芯片的详细指南,解释了逆向工程过程和模拟电路组件。