基于fpga的数据高速串行通信实现

基于fpga的数据高速串行通信实现

ID:23468422

大小:237.00 KB

页数:6页

时间:2018-11-08

基于fpga的数据高速串行通信实现_第1页
基于fpga的数据高速串行通信实现_第2页
基于fpga的数据高速串行通信实现_第3页
基于fpga的数据高速串行通信实现_第4页
基于fpga的数据高速串行通信实现_第5页
资源描述:

《基于fpga的数据高速串行通信实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于FPGA的数据高速串行通信实现1引言  在许多实际运用的场合中,数字信号传输具有数据量大,传输速度高,采用串行传输等特点。这就要求数据收发双方采用合理的编解码方式及高速器件。数字信号传输一般分并行传输、串行传输两种。并行传输具有数据源和数据目的地物理连接方便,误码率低,传输速率高。但是并行传输方式要求各条线路同步,因此需要传输定时和控制信号,而其各路信号在经过转发与放大处理后,将引起不同的延迟与畸变,难以实现并行同步。若采用更复杂的技术、设备与线路,其成本会显著上升。而高速远程数据传输一般采用串行同步传输。传统建立准确的时钟信号的方法是采用锁相环技术。但锁相环有

2、若干个明显缺陷,一是其同步建立时间及调整精度即使采用变阶的方法也很难兼顾;二是锁相环需要一个高精度高频率的本地时钟。本文所讨论的两种串行同步传输方法,无需高频率时钟信号,就可完全数字化。采用Altera公司的ACEXlK系列器件完成电路设计,且外围电路简单,成本低,效果好。2主要器件介绍  编码和解码采用ACEXlK系列器件EPlK100QC208-2。ACEXlK器件是Altera公司针对通信、音频处理及类似场合应用而设计的。该系列器件具有如下特性:  高性能。采用查找表(LUT)和嵌入式阵列块(EAB)相结合的结构,适用于实现复杂逻辑功能和存储器功能,例如通信中

3、应用的DSP、多通道数据处理、数据传递和微控制等;  高密度。典型门数为1万到10万门,有多达49152位的RAM(每个EAB有4096位RAM)。  系统性能。器件内核采用2.5V电压,功耗低,其多电压引脚驱动2.5V、3.3V、5.0V的器件,也可被这些电压所驱动,双向I/O引脚执行速度可达250MHz;  灵活的内部互联。具有快速连续式延时可预测的快速通道互连。3实现方法  本文所述方法应用于数字音频数据实时传输。原始数字音频每一帧视频数据为并行8位,速率达2Mb/s,串行传输速度为16Mb/s。3.1新的曼彻斯编码方法这种方法是在接收端利用状态转移图的方法得

4、到同步时钟信号。具体方法如下:(1)帧同步信号的产生  发送方系统提供64MHz时钟,将其4分频得到16MHz时钟作为系统时钟,64MHz时钟仅用于最后的消除信号毛刺。帧同步共16位,其中前12位为"0",后3位为"1",最后1位为"0"。仿真时序如图1所示。(2)编码方法  数据发送采用曼彻斯特编码,编码规则为:0→01(零相位的一个周期的方波);1→10(π相位的一个周期的方波)。  从以上规则可知输出信号将在每一位码元中间产生跳变,因此可采用具有游程短,位定时信息丰富的曼彻斯特编码电路。编码时,当输入信号为"0"时,输出为时钟的"非";当输入信号为"1"时,输

5、出与时钟一致。因此,可采用数据选择时钟,其电路如图2所示。   仿真的编码时序如图3所示,当输人数据(data)为"1",输出(out)与时钟(clk)同相(稍有延时);反之,当输入数据为"0",输出与时钟反相(稍有延时)。(3)状态转移图生成同步信号  接收方系统提供80MHz时钟,接收方和发送方的时钟并非来自同一个时钟源。将发送方的信号通过序列码检测器,发送方的帧同步信号有一个维持187.5ns的脉冲(3个16MHz时钟),当接收方检测到"11111111111111"时(14个80MHz时钟,共175ns),则认为是有效信号,然后向后级发出一个复位信号,接收方

6、的后继模块开始重新工作。由于发送方采用曼彻斯特编码,数据不会出现连续的"1"或连续的"0",游程短,这种检测帧同步信号的方法是有效的,不存在把所要传输的数据当成帧同步的情况。当该复位信号产生后,状态机开始工作,用状态机的状态转移产生同步信号。状态转移图如图4所示。  根据曼彻斯特编码规则,每一位两个码元中间电平产生跳变,因此不会出现超过62.5ns的"1"或者"0",反映在状态转移图上表现为最多出现6个连续的"1"或者"0"。当出现"111111"时,根据状态转移图,它将返回到状态t1,但是下次必然转移到状态f6,因此对同步时钟的输出没有影响。该方法仿真的波形图如图

7、5所示,其中dataout为发送方的输出信号,即接收方的输人信号;clk80m_in为接收方的系统时钟;current_state为状态机的状态,状态0~10分别对应状态转移图4的状态S0,t1~t5,f6~f10;clkout为恢复出来的同步时钟。当出现一个31ns宽度的电平时将产生一个同步时钟;当出现持续62ns宽度的脉冲时产生两个同步时钟。采用clkout的上升沿即可准确恢复原信号。   由于不会连续出现超过6个"1"或"0",累积误差小,采用该方法,对接收方时钟精度要求不高,仿真时将时钟分别调为80.6MHz和79.4MHz,在这两种情况下都能准确得到同

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。