【MSC】规范精讲[10]: 发出去再弹回来——回环测试从进入到退出的全流程拆解
做射频和协议栈的工程师都绕不开一个问题:我怎么知道自己的机器是好的?你说芯片能发能收,证据呢?最朴素的想法是找一个对端来对答,但对端要是也有问题呢?于是就有了回环(loopback)——自己发出去的东西,自己收回来,一模一样,就证明这条链路是通的。就像对着山谷喊一嗓子,听回声有没有变调。
目录
一、总开关:一个命令三种模式
二、本地回环:关起门来自己测自己
2.1 进入:先搭一个假的对端
2.2 数据回环:发什么收什么
2.3 命令回环:连控制通路也要测
2.4 退出:对称拆场
三、远端回环:让数据飞一趟空口
3.1 进入:本地开模式,对端建连接
3.2 数据回环:空口一去一回
3.3 退出:对端收尾
四、两种回环放一起看
五、把流程串成完整闭环
六、测验
规范为这件事写了一整章流程图,两套模式、七张图,把从进入、回环、到退出的每一步都画了出来。第一句就定了性质:
The loopback modes are used for testing of a device only.
Only,仅用于测试。回环不是正常工作模式,是设备自证清白的专用姿态。理解了这一点,后面所有细节都会顺理成章。
一、总开关:一个命令三种模式
整套机制的入口只有一个命令:HCI_Write_Loopback_Mode。参数三选一——local 进入本地回环,remote 进入远端回环,no loopback 退出回到正常模式。规范流程图里每张图的第一个动作都是它,括号里的参数就是模式值。这个命令是钥匙,插进去拧到哪个挡位,设备就进入哪种测试姿态。
两种模式的核心区别在于弹回点在哪里:本地回环在 Controller 收到 HCI 包的瞬间原样弹回,数据根本不出门;远端回环在空口收到对端数据后原样弹回,数据走完了整条射频链路