用FPGA实现非标码速向标准码速的调整

时间:2007-04-29
摘要:本文主要讨论了如何利用FPGA可编程芯片实现计算机输出的异步非标码速(如9.6k、19.2k、57.6k、115.2k、460.8k等)到其邻近的标准码速(如64k、128k、256k、512k)的调整,实现该数据与通用传输系统的适配,以便能进行远程监控。
关键词:码速调整 FPGA
一、概述
现在,利用计算机进行异地数据采集正应用到越来越多的场合,如何高效而低成本地回传数据成为一个值得讨论的问题。由于计算机输出的数据一般都是异步数据,而且码率与通信的标准码率也不一致,如果要利用现有的电信网络进行传输,就会涉及到码速调整和异同步转换的接口问题,由于码速调整的内型比较多,本文将只讨论如何将较低的异步非标码速调整到比它高的标准码速上。
二、方案设计
在传统的数字电路中,对异步数据的变换处理一般采用通用异步收发器单片机联合工作的方式。这种方式的优点就是电路结构成熟,软件编程简单,只要掌握一定的单片机语言即可进行开发。但它的缺点也是显而易见的,集成度不高,硬件电路结构复杂,当同时处理多路数据时,软件设计的难度也将加大。现在随着科技的进步,可编程器件的价格已经可以接受,一块一万逻辑门的FPGA芯片百元左右就可以买到,而这样一块芯片足可以集成3~4路独立的码速调整电路,所以采用FPGA芯片编程实现异步数据的处理将会使外围电路变得非常简洁,同时由于数据绝大部分时间都是在芯片内部运行,也有利于其传输稳定性的提高。另外,FPGA芯片大部分都可以重复擦写,只要改动程序设计即可实现不同功能的转换,从而加速同类型产品的开发速度,节约投资。用于开发可编程器件的软件可以到各器件厂家的网站直接。
码速调整方案的具体框图见图一,在其数据接收端内置了一个类似异步收发器的结构,采用16倍速高速采样检测异步信号起始电平的到来。为了便于描述,这里我们假设要处理的异步数据为7bit,加上一位起始位和一位停止位,总共为9bit。
三、工作流程描述
我们设计的思路是仿照通用异步收发器的执行过程,但在接收数据时并不去掉起始位和停止位,而是将数据按原来的码速全部接收下来后再以标准的码速发送出去,接收方的电路结构与发送方基本相同,只是少了一个空闲时插入“1”码的电路。
根据异步信号的通信规则,没有信号时数据线应表现为高电平,这时使用一个16倍于数据流的高速时钟对数据线进行采样,当检测到信号下降沿后,表示数据的起始电平有可能已经到来,这时采样器会输出一个reset信号使一个16分频的计数器复位,如果在8个高速脉冲内输入信号又恢复到高电平,则说明刚才是干扰信号,系统又回到起始状态;反之如果信号仍维持低电平,则表示数据起始电平已经到来, 16分频的计数器开始工作,



  
上一篇:容错系统中的自校验技术及实现方法
下一篇:面向未来的IC设计方法

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料