AD2428W手册解读之系统调试 下
6、总线掉电检测
诊断软件流程图描述了A2B系统总线掉电检测的流程。
软件诊断流程
7、I2S环回
I2S环回发生在收发器内部。驱动到DTX0 pad的数据采样为A2B接收数据,而不是DRX0引脚上的数据。DTX1 pad驱动的数据采样为A2B接收数据,而不是DRX1引脚上的数据。
A2B_I2STEST.BUSLOOPBK位启用从DTX0引脚到串行RX块的环回。A2B_I2STEST.SELRX1,A2B_I2STEST.RX2LOOPBK,A2B_I2STEST.LOOPBK2TX位如果设置了位,则忽略该位。如果设置A2B_I2STEST.PATTRN2TX位,在DTX0和DTX1引脚上驱动固定模式(0xB38F0E32),而不是从A2B总线传输数据。
如果使能了“I2S环回模式”,则对“A2B_I2SCFG.RX0EN位”的值进行编程,以匹配A2B_I2SCFG.TX0EN位的值;对A2B_I2SCFG.RX1EN位的值进行编程,以匹配A2B_I2SCFG.TX1EN的值。
每个节点在A2B总线上接收和传输的数据槽数由若干寄存器控制。
如果A2B_SLOTFMT.UPSIZE和A2B_SLOTFMT.DNSIZE位域值不同,在总线上改变方向的回圈数据要么被截断为更小的位宽,要么被零填充为更大的位宽。
当启用该模式时,程序负责确保从A2B总线接收到的数据和通过串行块回送的数据能够在A2B总线上传输。
串行TX块到串行RX块示意图
8、I2S TDM测试模式(I2S环回)
提供了模式生成和环回测试模式,方便地验证主节点和从节点的I2S TDM连通性。传输模式生成器在所有通道上使用默认的位模式1011_0011_1000_1111__0000_1110_0011_0010,其中1011是最重要的半字节,0010是最不重要的半字节。
请按照以下步骤进行I2S TDM测试:
1、对于Master到Host的链路验证,设置A2B_I2STEST.PATTRN2TX位,并验证具有默
认位模式的TX接口与预期的时间匹配(可能使用范围、逻辑分析仪或其他设备)。
2、用于主机到主链路验证。设置A2B_I2STEST.RX2LOOPBK和主机上的A2B_I2STEST.LOOPBK2TX,等待一个周期,并验证主机接收到的DTX数据与上一帧发送的DRX数据相匹配。
附加信息:当主节点也从总线接收TX数据时,RX到TX环回不能正确工作A2B_DATCTL
寄存器必须是0x00当从RX循环回TX。
3、对于从机到外设的链路验证,如果从机连接到DAC(例如发送到扬声器),在从机上设
置A2B_I2STEST.PATTRN2TX位,并验证预期的DTX定时。
4、用于从外设链路验证。如果从节点有外设通过I2S TDM接口提供输入信号,则需要设
置A2B_I2STEST.RX2LOOPBK和A2B_I2STEST.LOOPBK2TX位。验证DTX接口与DRX接口
是否匹配一帧延迟。或者(不使用A2B_I2STEST寄存器)在先前验证过的主I2S/TDM DTX接口上检查RX数据。
5、使用外部环回验证系统。DTX0/DTX1引脚与从节点的DRX0/DRX1引脚连接,产生数
字环回。当A2B_I2STEST时,可以在主DTX引脚上验证默认位模式。在从节点设置
PATTRN2TX位。
附加信息:当设置A2B_I2STEST.LOOPBK2TX位是如果A2B_I2STEST.A2B_I2STEST
被清除。设置LOOPBK2TX位,然后最后接收的帧在TX引脚上重复。这种行为一直持续到设 置A2B_I2STEST.RX2LOOPBK位或A2B_I2STEST.LOOPBK2TX位被清除。如果
A2B_I2STEST.LOOPBK2TX位在重置后启用,生成默认模式直A2B_I2STEST.RX2LOOPBK
位被设置。
附加信息:帧缓冲区图显示用于环回测试的TX帧缓冲区。
帧缓冲示意图