1.测试控制器:验证平台的核心。这是一个用来收集、处理数据,并在系统中其它模块之间转发数据的MCU。它应该具有一个USB接口,从而与主计算机进行通信。
2.发送与接收FIFO:需要发送的数据帧存储在发送FIFO中,从DUT接收到的数据帧则存储在接收FIFO中。MCU从主机收集发送数据包,将其转换为数据帧,并载入到发送FIFO中。接收FIFO负责转发从DUT收集的帧,将其转到测试控制器进行数据包转换,并转发至主机。数据包缓存是提高系统速度的有效方案。
FIFO通常在MCU的SRAM中实现。这种实现方案仅支持16帧的发送或接收会话。可根据特定要求提高这一数字,但要受限于所用的SRAM。
3.移位寄存器(并行到串行和串行到并行转换器):UART可采用移位寄存器来实现。在发送比特位时,它可作为并行到串行转换器,在接收时另一个移位寄存器变成串行到并行转换器。两个寄存器都以双倍或多倍波特率频率计时。
待发送的数据包已被转换为帧比特并送入FIFO。帧数据被加载到发送移位寄存器中,并以正确的波特率发送到DUT。采用类似的方案从DUT接收数据包。对接收到的帧以双倍波特率(或更多)进行采样,一旦整个数据包进入接收移位寄存器中,帧比特位就会被转移到接收FIFO中。
4.PLL和波特率生成器:PLL模块使用外部11.0592MHz晶体振荡器生成供所有其它模块使用的时钟频率。PLL使输入模块乘以系数5,以生成55.296MHz的主时钟频率。由于所有模块都采用相同的时钟源工作,因此不必使用额外的逻辑来同步模块。
选择外部振荡器生成通用UART应用所需的精确波特率。可对11.0592MHz时钟源进行分频,从而为移位寄存器提供标准的波特率时钟。波特率生成器作用就在于此。这里采用数字PWM时钟生成波特率时钟。通过改变PWM的周期和比较参数可生成占空比为50%的波特时钟。占空比可变是使用PWM模块的另一个优势,相比之下时钟分频器只能生成固定占空比的时钟输出。可变的占空比可用来验证UART接口的时钟容差和输出保真度。
5.控制寄存器:所有参数和设置都保存在8位寄存器中。测试控制器的SRAM可用来实现该目的。主计算机通过用来访问FIFO的相同接口读取和写入寄存器。为该平台提供如下寄存器
