1121的便携式屏幕,男人这东西的精典内容怎么样

21ic官方微信-->
后使用快捷导航没有帐号?
查看: 5130|回复: 11
控制差分线的单端阻抗有意义吗?
&&已结帖(10)
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
主题帖子积分
专家等级:结帖率:87%
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
例如有个差分对 要求差分阻抗为100Ω 同时单端阻抗为50Ω ,能不能在叠层确定的情况下 通过控制线宽和线距 同时满足差分和单端的阻抗要求呢 ?差分对控制单端阻抗有意义吗?烦请各位大神释疑,谢谢!!!
满意回复+10
当然有意义,目前IC的输出都是互补信号,单端的阻抗决定了你单根线上看到的电压。
不过你的单端阻抗50和差分100应该不太可能同时做到,如果要求在单端50的情况 ...
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
主题帖子积分
专家等级:结帖率:87%
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
当然有意义,目前IC的输出都是互补信号,单端的阻抗决定了你单根线上看到的电压。
不过你的单端阻抗50和差分100应该不太可能同时做到,如果要求在单端50的情况下并且差分为100,那么这根线的耦合为0,也就失去了差分的意义。
如果要求差分是100,单端阻抗应该是大于50的。
阻抗控制自己先定义好理论上的线宽,然后再告诉PCB fab在实际制作中进行调整。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
主题帖子积分
专家等级:结帖率:87%
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
当然有意义,目前IC的输出都是互补信号,单端的阻抗决定了你单根线上看到的电压。
不过你的单端阻抗50和差分100应该不太可能同时做到,如果要求在单端50的情况下并且差分为100,那么这根线的耦合为0,也就失去了差 ...
小李志 发表于
09:52 谢谢您的答复,您说的这个由于单端和差分线是同一种线时,无法同时满足单端50差分100我现在理解了,还想再请教您下差分信号是要优先满足单端阻抗还是差分阻抗呢?(PS:我现在准备布差分信号线,差分阻抗为100Ω(网线的差分信号);这对线要接到两个特性阻抗为50Ω的SMA接头上,如附件所示,那是优先满足50还是100呢?)我自己的理解是要优先满足50,因为这样的话不至于产生阻抗不连续,引起较大的发射,这样理解有不对的地方吗?
本帖子中包含更多资源
才可以下载或查看,没有帐号?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
1再请教您下差分信号是要优先满足单端阻抗还是差分阻抗呢
优先满足差分阻抗,但是耦合程度是你自己决定的。你使用常规的差分对设计时,单端的阻抗和50相差不大。
2这对线要接到两个特性阻抗为50Ω的SMA接头上
任何的线连接到SMA,都会产生反射,主要是由过孔和SMA的PIN引起的,但对于Gagabit的网线来说,问题不大,可以忽略。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
主题帖子积分
专家等级:结帖率:87%
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
1再请教您下差分信号是要优先满足单端阻抗还是差分阻抗呢
优先满足差分阻抗,但是耦合程度是你自己决定的。你使用常规的差分对设计时,单端的阻抗和50相差不大。
2这对线要接到两个特性阻抗为50Ω的SMA接头上
任何的 ...
小李志 发表于
10:46 好的,谢谢。您说的常规的差分对设计是不是指耦合度比较小的差分对呢?顺便再请教您下,图片中是我前面做的一块四层板(当时是做的100M以太网的一个测试夹具)时pcb产家给我的阻抗控制参数,现在要做一块10M以太网的测试夹具,由于想省成本,想改成两层板的,不过两层板做阻抗控制会比较难,您对这方面有了解吗?能否给点建议?谢谢!
本帖子中包含更多资源
才可以下载或查看,没有帐号?
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
我说的常规差分对是指在线宽线距合理的情况下。
两层板的阻抗控制没做过,
我所知道的两层板阻抗控制的可能需要的线比较宽,因为H1比四层高很多,不过阻抗不在100对于你10M测试影响不大。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
提示: 该帖被管理员或版主屏蔽
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
提示: 该帖被管理员或版主屏蔽
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
提示: 该帖被管理员或版主屏蔽
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
主题帖子积分
专家等级:结帖率:100%
主题帖子积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
初级工程师, 积分 2287, 距离下一级还需 713 积分
提示: 该帖被管理员或版主屏蔽
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
主题帖子积分
专家等级:结帖率:87%
主题帖子积分
资深技术员, 积分 351, 距离下一级还需 149 积分
资深技术员, 积分 351, 距离下一级还需 149 积分
好的,谢谢。
21ic公开课,21ic网友共同的学习圈子!学单片机、嵌入式、模拟、电源……就看这里
移步更多21ic独家微课:
时间类勋章
技术奇才奖章
人才类勋章
涓涓之细流
发帖类勋章
精华达人奖章
等级类勋章
技术高手奖章
人才类勋章
湍急之河流
发帖类勋章
时间类勋章
热门推荐 /2lattice FPGA调试之路— 硬件设计1
单片机&嵌入式
单片机应用
嵌入式操作系统
学习工具&教程
学习和开发单片机的必备工具
(有问必答)
(带你轻松入门)
电子元件&电路模块
当前位置: >>
>> 浏览文章
lattice FPGA调试之路— 硬件设计1
&这篇主要介绍lattice FPGA的硬件设计,选用的器件是ECP3-35EA-8FN484,可以兼容ECP3-70EA-8FN484芯片。
&1、器件内部资源介绍:逻辑资源查找表LUTs:33K;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&内嵌存储块数SysMemBlock(18kbits):72;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&内嵌RAM容量EBR(kbits):1327;&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&分布式RAM容量Distributed RAM Bits(kbits):68;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&等效乘法器数量18*18 multiplers:64;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&3.2G高速收发器serdes(Quad):1;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&锁相环PLLS+DLLS:4+2;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& & 封装及可用IO:484-ball fbGBA(23mm*23mm),4\295;
2、Bank分布:共有,9个bank,bank0至bank8,其中serdes quad占用bank4与bank5,bank8主要用来作为芯片的配置管脚或一些专用引脚,只有少部分作为可用io;因此用户可用IO主要是bank0、bank1、bank2、bank3、bank6、bank7。下图为ECP3-35EA的bank分布示意图:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&3、引脚命名方式参考LatticeECP3 Family Handbook文档编号为HB至126页,文档可在lattice的官网上下载:&&&&&&&&/en/Products/FPGAandCPLD/LatticeECP3.aspx;
&4、专用引脚、特殊引脚、电源引脚、DDR引脚分布及介绍:
&&&&& & (1)、PLL/DLL时钟专用输入引脚:&XXXX_GPLLT_FB_A,XXXX_GPLLT_FB_B,XXXX_GPLLT_IN_A,XXXX_GPLLT_IN_B为一组PLL的输入,XXXX_GPLLT_IN_A与XXXX_GPLLT_IN_B 为时钟输入,是一对差分对,XXXX_GPLLT_FB_A与XXXX_GPLLT_FB_B是时钟反馈输入,也是差分对,一般不使用。这4个引脚只能当输入引脚,当单端使用时,只有XXXX_GPLLT_IN_A是专用布线,直接连接到PLL,从另外3个输入,只能当普通输入脚,内部走的是普通的布线。PCLK同样的已差分对出现,当单端输入时,只有正端是布线到内部专用时钟网络,负端只能当普通I/O。
&&&&& &(2)、&SYS I/O的标准支持:支持单端和差分标准;
& & & & & & & & & & & & 1、单端标准(1.2/1.5/1.8/2.5/3.3V)的内部比例电平标准包括:LVCOMS、LVTTL、PCI等, & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&外部参考电平标准:HSTL、SSTL等;
&&&&&&&&&&&&&&&&&&&&&&&&2、差分标准:LVDS、RSDS、BLVDS、LVPECL、差分SSTL及差分HSTL等;
&&&&&&&&&&&&&& & 主要说明下差分IO规则:所有bank都支持LVDS输入缓冲器,但是只有左侧和右侧的bank(bank2、3、6、7)可支持真差分输出缓冲器,上侧和下侧的bank可支持LVDS输入缓冲器,但不支持真LVDS输出,可在这些bank使用仿真LVDS输出缓冲器。所有bank都支持使用外部电阻组合和互补LVCOMS驱动器支持仿真差分缓冲器。差分对是在原理图上标有*的引脚。
&&&&& &(3)、电源引脚:&1、VCCIO(1.2/1.5/1.8/2.5/3.3V):共有6组VCCIO电源,每个bank都有一个独立的VCCIO;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &2、VCCAUX(3.3v):辅助电源,一般接3.3v;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &3、VCCJ(1.2/1.5/1.8/2.5/3.3V)&:独立于bank的VCCIO电源,用于JTAG引脚的电气特性;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &4、VCC(1.2V):内核电源,接1.2V;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &5、VCCA(1.2V):缓冲电源,接1.2V,主要用于serdes的TX及RX,PLL和参考时钟ref_clk等;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &6、VCCPLL(3.3V):锁相环电源,接3.3V;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &7、Vref:参考电源,主要用于DDR接口;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &8、VTT:终端匹配电压,一般不接,直接悬空,(主要是用于DDR);
& & & & (4)、其他引脚:1、SPIFASTN引脚: 不要悬空,接固定电平即可&;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &2、注意Serdes的参考时钟,ECP3是差分电平是CML1.2,建议串0.1uf电容做AC耦合;
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &3、复位引脚:可以选用任意普通IO作为&复位引脚,都可以用作全局复位;
&&&&&&&&&&&&&&&&这篇文章先讲到这里,有不足之处恳请各位高手指正,谢谢!
&&&&&&&&&&&&&&&&下篇会独立讲解DDR接口的应用,到时会把相关原理图贴出来,仅供参考。&
【】【】【】【】
上一篇:下一篇:
CopyRight @
单片机教程网
, All Rights Reserved15236人阅读
FPGA(36)
低压差分传送技术是基于低压差分信号(Low Volt-agc Differential signaling)的传送技术,从一个电路板系统内的高速信号传送到不同电路系统之间的快速数据传送都可以应用低压差分传送技术来实现,其应用正变得越来越重要。低压差分信号相对于单端的传送具有较高的噪声抑制功能,其较低的电压摆幅允许差分对线具有较高的数据传输速率,消耗较小的功率以及产生更低的电磁辐射。
LVDS:Low Voltage Differential Signaling,低电压差分信号。
LVDS传输支持速率一般在155Mbps(大约为77MHZ)以上。
LVDS是一种低摆幅的差分信号技术,它使得信号能在差分PCB线对或平衡电缆上以几百Mbps的速率传输,其低压幅和低电流驱动输出实现了低噪声和低功耗。
差分信号抗噪特性
从差分信号传输线路上可以看出,若是理想状况,线路没有干扰时,
在发送侧,可以形象理解为:
IN= IN+ — IN-
在接收侧,可以理解为:
IN+ — IN- =OUT
在实际线路传输中,线路存在干扰,并且同时出现在差分线对上,
在发送侧,仍然是:
IN = IN+ — IN-
线路传输干扰同时存在于差分对上,假设干扰为q,则接收则:
(IN+ + q) — (IN- + q) = IN+
— IN- = OUT
噪声被抑止掉。上述可以形象理解差分方式抑止噪声的能力。
欲了解更多LVDS,可以参考《LVDS原理与应用简介》
From: 美国国家半导体的《LVDS用户手册》P9
FPGA中的差分管脚
&&&& 为了适用于高速通讯的场合,现在的FPGA都提供了数目众多的LVDS接口。如Spartan-3E系列FPGA提供了下列差分标准:
? Bus LVDS
? mini-LVDS
? Differential HSTL (1.8V, Types I and III)
? Differential SSTL (2.5V and 1.8V, Type I)
? 2.5V LVPECL inputs
所拥有的差分I/O管脚数目如下
From:Spartan-3E FPGA Family:Complete Data Sheet& &p5
I/O管脚的命名方式:
From:Spartan-3E FPGA Family:Complete Data Sheet&&& p164
From:Spartan-3E FPGA Family:Complete Data Sheet&&& p18
Spartan-3E系列FPGA器件差分I/O接口输入工作的特性参数:
From:Spartan-3E FPGA Family:Complete Data Sheet&&& p126
Spartan-3E系列FPGA器件差分I/O接口输出工作的特性参数:
From:Spartan-3E FPGA Family:Complete Data Sheet&&& p127
Xilinx公司差分原语的使用
(原语,其英文名字为Primitive,是Xilinx针对其器件特征开发的一系列常用模块的名字,用户可以将其看成Xilinx公司为用户提供的库函数,类似于C++中的“cout”等关键字,是芯片中的基本元件,代表FPGA中实际拥有的硬件逻辑单元,如LUT,D触发器,RAM等,相当于软件中的机器语言。在实现过程中的翻译步骤时,要将所有的设计单元都转译为目标器件中的基本元件,否则就是不可实现的。原语在设计中可以直接例化使用,是最直接的代码输入方式,其和HDL语言的关系,类似于汇编语言和C语言的关系。)
关于Xilinx原语的详细介绍,可以参考下面文章
1)FPGA开发实用教程& 第4节 Xilinx公司原语的使用方法
2)ISE的Help—sofeware Manuals
差分I/O端口组件
1)&&&&&&&&&& IBUFDS&
IBUFDS原语用于将差分输入信号转化成标准单端信号,且可加入可选延迟。在IBUFDS原语中,输入信号为I、IB,一个为主,一个为从,二者相位相反。
IBUFDS的逻辑真值表所列,其中“-*”表示输出维持上一次的输出值,保持不变。
表IBUFDS原语的输入、输出真值表
IBUFDS原语的例化代码模板如下所示:
// IBUFDS: 差分输入缓冲器(Differential Input Buffer)
// 适用芯片:Virtex-II/II-Pro/4, Spartan-3/3E
// Xilinx HDL库向导版本,ISE 9.1
.DIFF_TERM(&FALSE&),
// 差分终端,只有Virtex-4系列芯片才有,可设置为True/Flase
.IOSTANDARD(&DEFAULT&)
// 指定输入端口的电平标准,如果不确定,可设为DEFAULT
) IBUFDS_inst (
.O(O), // 时钟缓冲输出
.I(I), // 差分时钟的正端输入,需要和顶层模块的端口直接连接
.IB(IB) // 差分时钟的负端输入,需要和顶层模块的端口直接连接
// 结束IBUFDS模块的例化过程
Verilog Instantiation Template
IBUFDS instance_name (.O (user_O),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&.I (user_I),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
.IB (user_IB));
在综合结果分析时,IBUFDS的RTL结构如图所示。
图IBUFDS原语的RTL结构图
&2)&&&&&&&
OBUFDS将标准单端信号转换成差分信号,输出端口需要直接对应到顶层模块的输出信号,和IBUFDS为一对互逆操作。OBUFDS原语的真值表如表所列。
表OBUFDS原语的真值表
OBUFDS原语的例化代码模板如下所示:
// OBUFDS: 差分输出缓冲器(Differential Output Buffer)
// 适用芯片:Virtex-II/II-Pro/4, Spartan-3/3E
// Xilinx HDL库向导版本,ISE 9.1
.IOSTANDARD(&DEFAULT&)
// 指名输出端口的电平标准
) OBUFDS_inst (
.O(O), // 差分正端输出,直接连接到顶层模块端口
.OB(OB), // 差分负端输出,直接连接到顶层模块端口
.I(I) // 缓冲器输入
// 结束OBUFDS模块的例化过程
Verilog Instantiation Template
OBUFDS instance_name (.O (user_O),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&.OB (user_OB),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
& &.I (user_I));
&在综合结果分析时,OBUFDS原语的RTL结构如图所示。
图OBUFDS的RTL结构图
3) IOBUFDS
IOBUFDS原语真值表
IOBUFDS的RTL结构图
Verilog Instantiation Template
// IOBUFDS: Differential Bi-directional Buffer
// Virtex-II/II-Pro/4/5, Spartan-3/3E/3A
// Xilinx HDL Libraries Guide, version 9.1i
IOBUFDS #(
.IBUF_DELAY_VALUE(&0&),
// Specify the amount of added input delay for the buffer, &0&-&16& (Spartan-
.IFD_DELAY_VALUE(&AUTO&),
// Specify the amount of added delay for input register, &AUTO&, &0&-&8&
(Spartan-3E only)
.IOSTANDARD(&DEFAULT&)// Specify the I/O standard
) IOBUFDS_inst (
.O(O), // Buffer output
.IO(IO), // Diff_p inout (connect directly to top-level port)
.IOB(IOB),// Diff_n inout (connect directly to top-level port)
.I(I),// Buffer input
.T(T) // 3-state enable input
// End of IOBUFDS_inst instantiation
差分时钟组件
1)IBUFGDS
与全局时钟资源相关的原语常用的与全局时钟资源相关的Xilinx器件原语包括:IBUFG、IBUFGDS、BUFG、BUFGP、BUFGCE、
BUFGMUX、BUFGDLL和DCM等,如图1所示。
IBUFGDS是IBUFG的差分形式,当信号从一对差分全局时钟管脚输入时,必须使用IBUFGDS作为全局时钟输入缓冲。IBUFG支持BLVDS、LDT、LVDSEXT、LVDS、LVPECL和ULVDS等多种格式的IO标准。
&& IBUFGDS原语真值表
IBUFGDS的RTL结构图
Verilog Instantiation Template
IBUFGDS instance_name (.O (user_O),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&.I (user_I),
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&& .IB (user_IB));
LVDS差分的在FPGA中的应用
&&&& 在高速传输的过程中,经常会受到干扰而误码,因此有时候时钟输入采用差分输入的办法来提高抗干扰的能力。下面已一个二分频为例子:
二分频Verilog代码如下:
`timescale 1ns / 1ps
module div2(clk, div2_clk, rst_n);
&&& input rst_n;
&&&&&& &output div2_
&&&&&& &reg div2_
&&& always@(posedge clk or negedge rst_n)
&&&&&& begin&
&&&&&&&&&&&&&&&&&&&& if(!rst_n)
&&&&&&&&&&&&&&&&&&&& &&&& div2_clk&=0;
&&&&&&&&&&&&&&&&&&&& else div2_clk&=~div2_
&&&&&&&&&&&&& &end
&&&&&&&&&&&&& &
布线布局的仿真(Post-Route Simulation)波形如下:
&&&&&&& 现在对时钟clk信号进行差分处理,对div2 module进行例化(Create Schematic Symbol)
&&&&&& &新建一个div2_diff.sch。添加div2的module在sch上。通过搜索,把时钟缓冲差分组件IBUFGDS也放在div2_diff.sch上。
& &&设置好clk的差分管脚,(按照Verilog命名规范)正的命名为clk_p,负的命名为clk_n。
&&&&&& 在添加波形测试文件时要注意,Clock Information选择Multiple Clocks(因为时钟变为两个clk_p、clk_n)
下一步,把clk_p和clk_n都选上:
可以看到仿真的clk_p和clk_n都变为差分输入的了。
还要对div2_diff.sch进行管脚约束。div2_diff.ucf约束文件如下:
&clk_p&& LOC =
&C9& | IOSTANDARD =
&clk_n&& LOC =
&D9& | IOSTANDARD =
&div2_clk&& LOC = &A10& |
IOSTANDARD = LVCMOS33 ;
&rst_n& &LOC =
&H13& | IOSTANDARD = LVCMOS33 ;
clk_n和clk_p都要设置在差分管脚对上,
clk_n——C9——IO_L14P
clk_p——D9——IO_L14N
并且逻辑电平标准设置为LVDS_25。Spartan-3E支持下面的差分逻辑电平标准。
? Bus LVDS
? mini-LVDS
? Differential HSTL (1.8V, Types I and III)
? Differential SSTL (2.5V and 1.8V, Type I)
? 2.5V LVPECL inputs
&&&& 综合、翻译、映射和布线布局后,运行布线布局仿真,可以看到时钟clk已经变为差分时钟了。
本文工程文件下载 /Upload//a4512f43-eb90-4ef6-b038-a058b0869625.rar
&&& 看div2_diff.sch的HDL文件(View HDL Functional Model)。可以看到其实sch调用了IBUFGDS原语。
在差分设计中,经常会因为配置错误而使得综合出错,最常见的错误分析如下:
ERROR:Place:332 - This design contains an LVDS IO pair. The pair of IOs must be placed in a specific relative structure.
&& The two IOs can not be placed in this specific structure.
&& The reason for this issue:
&& All of the logic associated with this structure is locked and the relative placement of the logic violates the
&& structure. The problem was found between the relative placement of IBUF clk_p at site PAD27 and IBUF clk_n at site
&& IPAD28.& The following components are part of this structure:
&&&&& IBUF&& clk_p
&&&&& IBUF&& clk_n
&&&&&&& 这个错误出错是因为差分管脚clk_p和clk_n没有约束到芯片的差分对管脚上。需要修改.ucf文件。至于芯片哪个管脚是差分对,可以参考相应芯片的Datasheet。XC3S500E-FG320(Spartan-3E fpga)有92个I/O差分管脚和12个输入差分管脚。
ERROR:Pack:946 - The I/O component &clk_p& has an illegal IOSTANDARD value.
&& Components of type DIFFMI do not support IOSTANDARD LVCMOS33.& Please correct
&& the IOSTANDARD property value.
这个错误出错是因为差分管脚设置的逻辑电平标准不对,设置成LVCMOS33,应该设置为芯片支持的LVDS逻辑电平标准。
参考资料:
1)基于LVDS技术与FPGA的高速通讯应用研究,韩党群,唐征兵,张庆玲
2)LVDS原理与应用简介
3) 美国国家半导体的《LVDS用户手册》
Xilinx FPGA 如何使用LVDS
无论使用HDL flow还是schematic flow,只需要例化IBUFDS,OBUFDS之类的差分缓冲器,就可以使用LVDS了。
&&& 例化之后,要定位Pin位置,使用PACE,在IO
&&& Standard中选择LVDS33或者LVDS25,还能选择有DCI的版本。定端口时,注意看Datasheet中Pin名字分P/N,这P也要对应buffer中的P,N也要对应N。而且注意同一个bank只能有一个电压标准。
&&& 如果用FPGA Editor观察布局布线后的情况,就会发现,FPGA
&&& Editor中没有IBUFDS这个Component,这个Buffer是藏在IOB里的,点击到Pin的图块中,可以看到里面有一个Buffer,就起到了IBUFDS这个作用。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:919309次
积分:12125
积分:12125
排名:第1103名
原创:230篇
转载:650篇
评论:66条

我要回帖

更多关于 男人这东西的精典内容 的文章

 

随机推荐