基于cyclone_的高速异步串行接口的实现.pdf

基于cyclone_的高速异步串行接口的实现.pdf

ID:58314139

大小:720.44 KB

页数:2页

时间:2020-09-06

上传者:简单2019
基于cyclone_的高速异步串行接口的实现.pdf_第1页
基于cyclone_的高速异步串行接口的实现.pdf_第2页
资源描述:

《基于cyclone_的高速异步串行接口的实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

2008年第1期大众科技No.1,2008(总第101期)DAZHONGKEJI(CumulativelyNo.101)基于cycloneⅡ的高速异步串行接口的实现宋开鑫,李斌,王婧,靖文,张嘉春,孙新立(沈阳理工大学,辽宁沈阳100168)【摘要】文章首先介绍了系统的总体结构,然后详细论述了系统各个组成部分的原理和工作过程,主要论证了如何利用锁相环进行5倍采样从而实现位同步和串并转换,然后用FIFO来实现时钟域的转换,外加一些必要的设置,最终实现了利用现场可编程逻辑器件cycloneⅡ对150M数据正确的接收和转发。【关键词】并串串并转换;位同步;锁相环;VerilogHDL【中图分类号】TP303【文献标识码】A【文章编号】1008-1151(2008)01-0065-02求。接收端PLL产生两个时钟信号:主时钟MCLK(150×5/4(一)研究背景=187.5MHZ)和对其移相90°的时钟MCLK90,由于PLL的输一直以来,高速数据的接收始终是一个难题,由于必须出口仅有两个,系统内部还需要加一级反相器,生成另两个采用本地高频时钟来进行位同步,所以用FPGA来接收百兆以时钟信号!MCLK和!MCLK90;发送端PLL生成150MHZ的时钟以上的数据,如何选择高频时钟并运用它正确的进行数据接收正确发送数据。下面介绍一下该结构图的各个组成部分:是一个挑战。如果高速串行数据需要经过两个完全不同的时1.接收端钟域转发,一个理想的方法是同步后加一级FIFO缓存。下面接收端主要由以下几个部分组成:输入端口、接收端PLL、就介绍一种能够正确接收并发送150M高速串行码流的方法,外部反相器、串并转换器、位同步等。其主题思想是利用cycloneⅡ来生成两个模块:发送端和接收2.发送端端。发送端主要是同步模块加一级FIFO缓存,接收端利用PLL发送端主要由以下几个部分组成:输出端口(LVDS标准)、产生150M时钟,正确的将数据从FIFO中读取并发送出去。发送端PLL和并串转换器。3.FIFO缓存器(二)总体架构主要用作数据缓冲器。本系统接收数据后由本地时钟利用fpga提供的锁相环进(三)系统工作过程简介行位同步,经过FIFO缓存,最终完成由原始时钟域到本地时钟域的转换,总体结构框图如图1所示。系统的整体工作过程如下:首先接收端四个相位相差90°的时钟对由LVDS端口发送来的串行数据进行循环采样,采样后对接收数据进行串并转换,然后经FIFO缓存器后由另一个时钟域RXCLK读出,这样就完成了时钟域的转换,转换得到的信号送至发送端;然后发送端接收到信号,经并串转换器生接收端本地时钟接收端PLL成150M的信号由输出端口发送出去。输入接收端FIFO输出发送端(四)模块详细介绍发送端PLL1.采样模块(接收端)采用5倍采样方式,其vhdl描述过程如下:接收端四个发送端本地时钟时钟(MCLK、MCLK90、!MCLK、!MCLK90)分别对串行数据进图1系统的总体结构图行采样,用四个三位的数组(sa[2..0],sb[2..0],sc[2..0]、两个端口的本地时钟可以是完全不同的(也可以相同),sd[2..0])来存放采样的数据。由于MCLK为输入频率的5/4,接收端与发送端之间通过一个FIFO相连接。本系统每个时钟所以每个输入数据被采样了五次。该模块主要用来确定输入周期对外部码流采样五次,外部码频为150M,则所需最高时数据的传输点和位同步。具体程序描述如下:钟频率为750(5×150)MHZ,CycloneⅡ的PLL完全满足要if(posedgeMCLK)then{sa[0]<=data_in;【收稿日期】2007-10-22【作者简介】宋开鑫,男,山东沂南人,沈阳理工大学硕士生,研究方向为fpgacpld硬件研发。-65- sa[2]<=sa[1]<=sa[0];q[11..2]都为低的情况;而由于D[10]始终为高电平,所以在sb[2]<=sb[1]<=sb[0];sc[2]<=sc[1]<=sc[0];D[10]->q[1]之前,不会出现q[11..2]都为低的情况;当D[10]sd[2]<=sd[1];}->q[1]的瞬间,D[11]->q[2],所以此时q[11..2]全为0,if(posedgeMCLK90)then{sb[0]<=data_in;load端使能,下一组并行信号被输入其中。如此,随着时钟sd[1]<=sd[0];}信号的不断变化,寄存器不停的向外发送串行数据。if(negedgeMCLK)then{sc[0]<=data_in;}if(negedgeMCLK90)then{sd[0]<=data_in;}(五)QuartusⅡ配置sample0[7..4]<=sample0[3..0]<={sa[2],sb[2],sc本系统是基于QuartusⅡ编程下载来实现的,要想充分发[2],sd[2]};挥cycloneⅡ的功能,提高本系统的稳定性,必须对该系统加sample0[9..8]<={sa[2],一些必要的约束。sb[2]};sample1[1..0]<={sc[2],sd[2]};1.首先需要手动将sa[2..0],sb[2..0],sc[2..0]、sample1[9..6]<=sample1[5..2]<={sa[2],sb[2],scsd[2..0]四个三位寄存器就近输入端口放置。而且因为这四[2],sd[2]};个寄存器是由四个不同的时钟域产生的,故将其中的两个放begin:在同一个LAB里面,另两个放在令外的一个LAB里面,这两sample_select<=~sample_select;个LAB需要在cycloneⅡ的同一行中。dout[9..0]<=sample_select?sample0:sample1;2.本系统需要设置时钟和IO约束,最高时钟频率应设为end;独立的75MHZ。另外所有的输入输出数据端口都要设置为低压采样后的数据经如上所示的程序(串并转换器)扩展成差分信号传输(LVDS)方式,其他的端口设置为LVTTL方式十位的并行数据,仿真结果如图2所示:即可。(六)总结本文介绍了一种高速异步串行接口的实现方法,其主要思想是利用五倍的采样来实现位同步与串并转换,采用FIFO缓存器来实现两个完全不同时钟域之间的转换,最后采用移位寄存器来实现数据的并串转换。本系统中全局时钟的设置、LogicLock配置、IO口传输方式的选择都是非常关键的。根据cycloneⅡ的最高处理速度、PLL特点和IO支持的传输标图2采样模块仿真波形图准,对FPGA进行正确的约束、设置和配置,再加上健全的程序组,最终才能更加有效的发挥FPGA优势,从而能更加有效2.FIFO模块(接收端)的解决高速数据通信中遇到的难题。FIFO模块是利用QuartusⅡ自带的IP核来定制的,各项参数设置如下:【参考文献】dcfifo_component.lpm_width=8dcfifo_component.lpm_numwords=16[1]吴继华,范丽珍,薛宁,薛小刚.AlteraFPGA/CPLD设计dcfifo_component.lpm_widthu=4(基础篇)[M].人民邮电出版社,2005.7.3.并串转换模块[2]吴继华,王诚.AlteraFPGA/CPLD设计(高级篇)[M].人民并串转换主要是通过altera的免费ip核来实现的,主邮电出版社,2005.7.要模块如图3所示。移位寄存器输入信号为:D[11..0]与[3]王金明,徐志军.VerilogHDL程序设计[M].人民邮电出版社,2004.1.or_8D[9..0]q[11..2]NOTdata[9..0]INPUT14VCC[4]蔡明生.电子设计[M].高等教育出版社,2004.1.inst6inst3shift_16rightshiftresetINPUTsclrVCCloaddata[11..0]D[11..0]shiftoutOUTPUTserial_outq[11..0]q[11..0]clkINPUTclockVCC更正shiftininst1.2007年10月刊,目录中的“覃素来”应为“贾GNDOR2D[11]VCC素来”。D[10]inst22.2007年11月刊第190页,作者姓名应为“刘巧图3并串转换模块的系统组成结构图瑛”,中图分类号应为“DF521;F723”,文献标识码应为“A”。shiftin。其中D[9..0]是并行接收过来的信号组,D[10]接高3.2007年11月刊第38页,第一行的“规范”更正电平,D[11]接移位寄存器的load端,shiftin接地。没有并为“措施”,第四行及第九行“板”字后面应增加“坯”。行数据输入时,load端始终处于高电平,等待数据到来;有并行数据(非全0)输入而reset为0时,该模块正式工作。由4.2007年12月刊第88页,江日青作者应为“女”。于串行输入端锁定为低电平,所以传输过程中一定会出现-66-

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

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

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