高速误码测试系统中的C8051F005运用
随着通信技术的不断发展,通信系统信号处理越来越快。在这种情况下,对于高速通信系统性能的检验,就需要高速误码测试仪。目前市而上已有多种误码测试仪。国内产品的信号处理速度较低,而国外产品的功能虽然比较完善,处理速度很高,但其价格也相对较高。本文根据Vitesse公司的VSC8228芯片特点,利用C8051F005单片机设计出一种价廉的高速误码测试仪。下面将对其软硬件设计,特别是C8051F005与上位机的串口通信以及与VSC8228的SPI通信进行详细探讨。
1误码测试系统概述
Cygnal公司的单片机C8051F005具有高速8051微控制器内核,速度可达25MIPS,指令为流水线指令结构,70%的指令的执行时间为1个或2个系统时钟周期;可片内JTAG调试和边界扫描,这样可提供全速、非侵人式的在系统调试(不需仿真器);片内有多达60KB的FlashROM和2KB RAM,用户无需再外扩存储器;可同时使用的硬件SMBus(I2C兼容)、SPI及UART串口,4个通用16位计数器/定时器。
VSC8228可提供的一个双通道重发器或重定时器,能应用于光纤信道、千比特以太网、SONET/SDH以及无限带宽等多种领域。设备支持速率从125Mbps~4.25Gbps。该芯片可以将输入的串行数据在重定时器模式下与本地的参考时钟同步,内置的码型产生器与检测器可以产生与探测27、223、231的伪随机码,40或64位用户定义码型以及光纤信号CRPAT、CJTPAT、CSPAT码型。它含128个寄存器,可通过SPI或者I2C串行总线设置相关寄存器,可以实现误码检测功能。
误码测试系统可分为两个部分:误码测试部分和人机界面。测试部分由VSC8228芯片来实现。它完成伪随机码型的产生、同步及对比检测,计算出误码个数。人机界面子系统在整个测试系统中作为系统控制核心单元,通过人机界面完成系统作业。以C8051F005单片机作为人机界面硬件的控制部分,对VSC8228芯片的控制、误码率的计算以及测试子系统的各状态的显示都通过PC机的界面来实现。PC界面采用Delphi语言编写。
误码测试仪的工作流程如下:PC界面通过RS232串口实现与C8051F005的通信,将对VSC8228各寄存器的没置发送给C8051F005单片机,每个控制命令为16位;单片机通过SPI口将上位机发送过来的控制命令转发给VSC8228,完成VSC8228各寄存器的设置。为了实时地显示误码测试仪的工作状态,单片机每秒扫描一次各寄存器,将其值通过RS232串口上传到PC界面。
由此可见,C8051F005单片机起着VSC8228与上位机通信的桥梁作用,它与上位机的串口通信以及与VSC8228的SPI通信在误码测试仪的实现过程中起着十分重要的作用。下面通过软硬件设计详细分析这两种通信。
2 误码测试系统的实现
2.1 硬件设计
利用C8051F005单片机的串行接口,通过RS232异步通信接口与上位机进行通信。C8051F005通过串行口直接接收PC上位传送来的串行数据,然后把接收的数据存入数据存储器;同样,C8051F005通过串行口直接把数据传送给PC机。系统结构框图如图1所示。
C8051F005有一个特别的交叉开关,可将数字I/O资源分配到物理I/O端口引脚。C8051F005通过设置交叉开关来同时使用SMBus(I2C兼容)、SPI及UART串口等。VSC8228也可通过SPI或者I2C串行总线设置相关寄存器,但由于SPI通信的速率比I2C通信快,因此为了实现误码的高速测试,这里选择SPI作为C8051F005与VSC8228的通信协议。
SPI接口协议要求接口设备按主从方式进行配置,且同一时间内总线上只能有一个主器件。一般情况下,实现SPI接口需要3或4根线。其中:主出从入(MOSI)信号是主器件的输出和从器件的输入,数据传输时最高位在先;主人从出(MISO)信号是从器件的输出和主器件的输入,数据传输时也是最高位在先。当SPI从器件未被选中时,它将MISO引脚置于高阻状态。串行时钟(SCK)信号是用于同步主器件和从器件之间在MOSI和MISO线上的串行数据传输。从选择(NSS)信号是一个输入信号,主器件用它来选择处于从方式的SPI模块,在主方式时用于禁止SPI模块。当处于从方式时,它被拉为低电平以启动一次数据传输,并在传输期间保持低电平。
误码测试系统中,以C8051F005作为主器件,VSC8228为从器件,由于NSS为从器件选择使用,将单片机的NSS引脚(P0.5)置高,用P2.4引脚与VSC8228的NSS引脚(PIO3)相连。根据MOSI及MISO上的数据在SCK的哪种极性和相位上有效,单片机上的SPI通信有四种工作模式;但是VSC8228的SPl只有一种工作模式,故在对单片机的SPI控制器进行设置时必须考虑这点。图2是VSC8228的SPI通信时序。在SPI通信时,先传输7位地址,后传输读写控制位OP(OP为0时表示读,OP为1时表示写),
VSC8228 高速误码测试仪 C8051F005 单片机 相关文章:
- 基于C8051F005单片机的小电阻测试仪设计(05-13)
- 使用C8051F005单片机的小电阻测试仪设计(05-05)
- 自学单片机心得体会(06-17)
- 基于霍尔传感器的直流电机转速测量系统设计(11-14)
- 基于8051F单片机的数字音频信号源的幅度控制(12-01)
- 动态参数检测与虚拟仪器综合系统设计(11-26)