APP下载

基于F P G A的异步串行通信的实现

2013-04-13陈启发

科技视界 2013年3期
关键词:信号检测

陈启发 罗 京

(中国南车股份有限公司 株洲电力机车有限公司,湖南 株洲 412001)

0 引言

异步串行通信要求的传输线少、可靠性高、传输距离远,被广泛应用于计算机和外设的数据交换。异步串行通信是以帧为单位,每帧按照通信协议进行传输,并且数据的发送端和接收端都使用各自的时钟控制数据的发送和接收过程[1];接收端先数据解调,然后将有效数据传输给终端设备。

对于接收端的数据解调,首先要从数据流中提取同步信号位信息,然后提取数据位信号。同步信号位信息提取性能的好坏直接影响到整个数据的解调质量,甚至影响整个通信系统的性能[2]。传统的帧设计很难做到位同步,随着FPGA的飞速发展及Verilog语言的出现,用FPGA来实现同步信号位的提取,不仅简化了电路、缩小了体积、提高了可靠性,而且设计时的灵活性更大、保密性更好。

1 通信协议及接收思路

FPGA的输入是485收发器传输过来的信号rxd,并不是标准的485通信协议,其帧结构如图1所示,其特点如下:

图1 输入信号rxd波形

(1)每一帧长度固定为25位;

(2)波特率为 1Mbit/s;

(3)每一帧由同步信号位和数据位组成,前13位为1111111111110的二进制同步序列,后12位为数据位;

(4)当矩形脉冲信号占空比为75%时,表示数据“1”;当矩形脉冲信号占空比为25%时,表示数据“0”。

FPGA接收信号的步骤如下:

(1)先检测输入信号每一位数据的上升沿,当检测到输入信号的上升沿,把输入采样信号tb_zhen置1,并开始计数,当计数计到输入信号每一位的中间位置时,把tb_zhen置0,保证每次采样都是在每一位数据的中点处,可以得到一组与输入同步的30%占空比的方波信号tb_zhen;……

登录APP查看全文

猜你喜欢

信号检测
信号
完形填空二则
孩子停止长个的信号
小波变换在PCB缺陷检测中的应用
基于LabVIEW的力加载信号采集与PID控制
一种基于极大似然估计的信号盲抽取算法
高处信号强