基于FPGA的低速光口传输模块设计

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:zichou133
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:通过对低端FPGA的设计,完成数据量不大的光口通信功能;并对传输中的协议进行了说明,实现了数据的有效传输。
  关键词:FPGA;SPARTAN3E;光通信
  中图分类号:TP311 文献标识码:A文章编号:1009-3044(2007)06-11669-02
  
  1 引言
  当今,在电子设计领域,FPGA因为其强大的功能、低功耗、高速并行处理等优势越来越受到广大设计人员的青睐。无论在工业控制、消费类电子、IC设计及验证、通信等领域都可以看到FPGA的身影。不同的厂家也都在花大力气对其各自的FPGA进行优化,例如XILINX公司刚推出的全球第一款65nm工艺的高端FPGA——VIRTEX5系列产品,就集中了现阶段设计者可以想到的所有优点:超高速处理速度、超大内部存储空间、低功耗、快速的内部存储读取、高速的LVDS差分信号管角等等。
  但是在各个公司不遗余力的发展其高端产品的同时,很多设计者更关心的是低端产品的资料。这也是在预料之中的,对于绝大多数公司而言,产品的成本最低化一直是其设计人员追求的目标。例如XILINX公司的SPARTAN3E系列FPGA就是其中的典范,既保持了低端产品的价格,又努力的在其性能方面有了比较大的提升;再例如ALTERA公司的CYCLONE2系列芯片也成为市场上的热点产品。笔者最近就是使用ALTERA公司的CYCLONE家族中的型号为EP1C3的FPGA完成了低速光传输模块的设计,为项目产品降低了比较多成本,增加了产品在同类市场的竞争力。
  
  2 光传输现状
  笔者所设计的光口传输模块主要用于各类监控系统中,例如再各个路口可以看到的摄象器,可以将各个路口的交通情况时实的传输到各交通管理中心。由于在我国,尚且还没有此行业的相关传输统一标准出台,所以现阶段很多公司的产品还处于相对独立不兼容的阶段。笔者在此次设计中,为某光通信公司提出相对可靠的通信协议标准,进行传输链路的双向不对称通信,最终实现影象在中控系统中的恢复。当今在市面中比较多看到的同类系统中数据传输的方式一般有三种实现方式:一是采用专用光传输芯片来实现数据的传输,比较流行的有TI公司的系列芯片,支持比较高的光传播速率,但是价格相对比较高。第二种方式就是通过相对高端的FPGA内部嵌有SERDES模块,可以直接支持和光模块的连接,在其内部的专用核可以直接把光模块的差分数据做并行转换,得到8bit或者16bit的数据格式以供FPGA内部使用。最后一种也是如今使用的比较多的一种,通过百/千兆以太网实现数据传输,这种方法的缺点是,如果进行长距离的传输,数据可靠性往往不能达到要求。
  
  3 本设计方案
  而笔者设计的方法适用于数据的低速率传输,可靠性高,控制方便,具有中低端市场的竞争优势。
  3.1 设计模块图
  下图为本次设计的模块图(图1)。
  图1
  3.2 接收端时钟恢复以及协议说明
  上图中的光口传输模块部分为笔者设计完成,光口模块传输过程中比较关键的部分是接收端的时钟恢复问题。采用的是通过系统内部的PLL锁相环技术完成的,在最近各个公司生产的FPGA中都包含此硬模块,可以将时钟信号通过此模块产生倍频、分频、相位反转等功能。因此在接收端可以通过对固定码的检测来实现发射和接收端的时钟同步问题。笔者在设计的过程中,发送和接收端采用的是握手的方法进行通信,采用的编码形式为比较简单的8B/10B编码,在8B/10B通信原则中,K值为1’b0的时候所传输的为有效8bit数据,而当K值为1’b1的时候应该传输的为相应的K码,K码的码字构成有规定的格式,见图2。
  在通信过程中,首先由发射端发送K码中的K28.7,作为接收端的接收时钟(receive_clk)的恢复信号,在系统启动后,接收端就时刻监测发射端的发送数据,寻找K28.7(即8’b111_11100),同时在接收端发送K码数据K28.6(即8’b110_11100)表示接收端还没有完成提取接收时钟的功能,发射端还不能发送有效数据,尚处于通信握手过程中。同时接收端如果在一定的时间内没有检测到此数据,那么就控制FPGA内部的PLL模块,将接收所用的时钟进行90度的相位转换,重新进行K28.7的搜寻,以此类推,对于FPGA而言,可以进行0度、90度、180度、270度4种相位转换,最终应该可以完成K28.7的检测任务。一旦在接收端连续收到此K码信号后,从接收端就开始发送另外一个K码K28.5,表示接收端接收时钟同步完成。而在发送端也一直在用同样的方法等待K28.5信号的到来,一旦两者之间完成通信握手,则意味着可以进行数据的通信了。此后发射端可以开始发送有效数据,如果通信链路发生断开,或者由于发射接收端始终频差比较大而导致收到其他格式的K码,则需要重新进行此过程,重新完成发送和接收的握手。
  3.3 系统流程图
  整个过程可以用以下几个步骤进行描述:
  3.3.1 接收端时钟同步过程
  3.3.2 接收端时钟同步完成
  3.3.3 发送有效数据
  3.3.4 通信发生障碍
  3.3.5 重新建立连接
  重新建立连接的过程重复1的方法。
  以上就是模块主要设计的实现方法,是一个相对比较通用的发送模块,其他设计者在对本模块进行调用的时候,只要将所需要的数据发送到图1中所示的发送端的FIFO中,就可以在接收端的FIFO中完全恢复出原始信号。其数据收发速率取决于设计者使用的FPGA的型号而不一样。按照FPGA所支持的LVDS传输速率为150M计算,正常通信过程中,每秒所传输的数据量为150Mbit数据,如果按照每点24bit的影像数据、每秒钟60帧图像而言,如果不做影像压缩,每帧可传输的影像大小为:150Mbit/24bit/60=107K,也就是可以支持大小为300*300的图片以每秒60帧的速度进行重现,对于一些黑白监控器而言更是有更大的裕量传输其他各种数据信息。而且在实际应用过程中,设计者还可以通过接收端发送其他的K码数据,对发射端进行各种控制,以满足各种需求。
  
  4 总结
  本次设计使用低端的FPGA,设计出了比较实用的数据传输可靠模式,基本完成了设计初期的预想,达到了比较满意的结果。在次向其他设计人员推荐此种方法,希望可以对其他设计人员有些帮助。
  参考文献:
  [1]夏宇闻.Verilog HDL数字系统设计教程[M].北京航空航天大学出版社,2003.
  [2][美]J.Bhasker著,徐振林译.VerilogHDL硬件描述语言[M].中国出版社,2004.
  [3]刘凌,胡永生.数字信号处理的FPGA实现[M].北京:清华大学出版社,2003,7:302,5:6035.
  本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:对带CAN总线的智能小区多功能对讲系统进行设计。对讲部分以PIC16C55型单片机为核心,配上DTMF发送接收器件MT8880构成;安防报警部分采用带有CAN模块的MC68HC05X16构成CAN总线式系统,具有防盗、防火、防煤气泄漏、紧急情况报警等功能。  关键词:对讲;CAN总线;安防  中图分类号:TP933文献标识码:A文章编号:1009-3044(2007)06-11619-03 
期刊
摘要:分析并讨论了过采样Σ-ΔADC中过采样技术和噪声整形技术的工作原理,Σ-Δ调制器的级数对整形效果的影响及调制器的结构选择,并用MATLAB语言的simulink工具箱进行了系统级的仿真。  关键词:过采样;Σ-Δ调制器;噪声整形  中图分类号:TN761文献标识码:A文章编号:1009-3044(2007)06-11631-01    1 引言  传统A/D转换器,如逐次积分型、折叠型和流水
期刊
摘要:基于图像的建模语言GXML不同于以往的图像编码,它能够将图像的内容和样式分离,这使得图像能在网络上进行高速传输,并能适应不同的客户端浏览器。利用该特点对学科知识体系结构进行描述,可以得到一个图像的灵活布局。  关键词:GXML;样式;知识体系结构;灵活布局   中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)06-11624-03    1 引言  随着功能更为强
期刊
摘要:关于窗体的卸载往往被程序设计者尤其是一些初学者所忽视。本文从事件Queryunload和Unload参数的作用及事件的使用两方面对事件Queryunload和Unload进行了详细的探讨。并且给出了两个比较重要的观点。  关键词:Queryunload;Unload;参数  中图分类号:TP311文献标识码:A 文章编号:1009-3044(2007)06-11665-01    1 引言 
期刊
摘要:文章主要介绍一种简易通用的UART IP核的设计。UART作为一种短距离、低成本通信的串行传输接口,随着嵌入式系统的迅速发展,已成为SoC(System on Chip)芯片中的一个重要部件,在数字通信中得到了广泛的应用。本设计在对UART的串行通信协议进行详细分析的基础上,采用Verilog HDL语言对ALTERA的Cyclone系列FPGA进行设计,用一片FPGA实现了UART的发送、
期刊
摘要:通过对气象信息综合分析处理系统(MICAPS)中第十三类数据格式和Windows系统的BMP位图格式的结构进行分析研究,将只能在MICAPS中显示的卫星云图转换为位图图像,从而扩展了卫星运图的查看方式,方便了工作。  关键词:MICAPS;位图;数据格式;转换  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)06-11603-01    1 引言  MICAPS
期刊
摘要:首先介绍了组件技术和框架技术的思想和设计原则,并在此基础上提出了设计Agent结构应该遵循的原则;依照文中所述的各项原则,提出了一种基于组件的Agent框架,并对框架中的组件及工作原理进行了详细地描述。  关键词:框架;组件;Agent结构模型  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)06-11637-03    1 引言  多Agent系统(MAS)能
期刊
摘要:μC/OS-II是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性,μC/OS-II作为一个操作系统内核,它没有设备驱动程序管理部分。文章着重阐述了如何为μC/OS-II添加设备驱动程序管理模块,并给出了在NEC PD78F0376 平台下串口驱动程序的范例。  关键词: μC/OS-II;驱动设备管理;串口驱动  中图分类号:TP316文献标识码:A文章编号:1009-
期刊
摘要:当前基于P2P模式的开发与应用引起人们的广泛关注,JXTA是SUN公司推出的,提供了一个构建跨平台、跨操作系统和跨编程语言的P2P网络应用程序的通用平台。文章介绍了JXTA的功能,详细分析JXTA平台的环境配置,及其基础上的HelloWorld程序的运行。  关键词:JXTA;P2P;JXTA configurator tool  中图分类号:TP393 文献标识码:A文章编号:1009-3
期刊
摘要:J2EE是目前流行且成熟的分布式应用开发模型,结合J2EE在开发分布式应用方面的优势,设计了一种基于J2EE平台的电子邮件系统,并利用JavaMail强大的邮件处理功能,对系统进行了实现。  关键词:电子邮件;J2EE;JavaMail  中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)06-11647-02    1 引言  电子邮件是Internet上应用最广
期刊