我如何在VHDL和Verilog中为VerTEX II器件编写双向LVDS(BLVDS)缓冲器?
描述
关键词:LVDS、BLVDS25、BLVDS、XST、VHDL、Verilog、Virtex II紧迫性:标准
一般描述:
如何在VHDL和Verilog中为VerTEX II器件编写双向LVDS缓冲区?
解决方案
一
VLTEX II架构中的双向LVDS解决方案与ViTEX-E解决方案相同。由于LVDS用于点到点应用,所以BLVDS(总线LVDS)不是IEEE/EIA/TIA标准实现,需要仔细地适应I/O和PCB布局设计规则。VHDL、Verilog和UCF示例如下:
VHDL:
库IEEE;
使用IEEE.STDYLogiCy1164.ALL;
实体LVDSYIOBUFDS是
端口(CKKYP,CKKYN,DATAYP,DATAYN,TiNIN,TiNIN:在STDYLogic中;
IODATAYP,IODATAYN:IOUT STDYLogic;
QQP,QYN:OUT STDYLogic;
结束LVDSIIOBUFDS;
LVDSIOIUBFDDS的建筑行为
组件是
端口(I):在STDYLogic中;
IB:在STDYLogic中;
o:输出STDYLogic);
端部元件;
OBUFDS组件
端口(I):在STDYLogic中;
O:输出STDYLogic;
OB:输出STDYLogic);
端部元件;
组件IOBUFDS是
端口(I):在STDYLogic中;
在STDYLogic中;
O:输出STDYLogic;
IO:IDEUT STDYLogic;
IOB:IOUT STDYLogic);
端部元件;
组件IGBFGDS是
端口(I):在STDYLogic中;
IB:在STDYLogic中;
o:输出STDYLogic);
端部元件;
组件BUFG
端口(I):在STDYLogic中;
o:输出STDYLogic);
端部元件;
信号数据2:STDYLogic;
信号ODATAXOUT:STDYLogic;
信号DATAIN:STDYLogic;
信号QuiTn: STDYLogic;
信号CKLIN:STDYLogic;
信号CKLI总线:STDYLogic;
信号TIN IN:STDYLogic;
属性iString:字符串;
UI1的属性标准:标签为“BLVDS25”;
UI3的属性标准:标签为“BLVDS25”;
UO1的属性标准:标签为“BLVDS25”;
UIO2属性标准:标签为“BLVDS25”;
UBIFFG的属性标准:标签为“BLVDS25”;
开始
UI1: IFDFS端口映射(DATAYP,DATAYN,DATAAIN);
UI3:IUFDS端口映射(TIN、P、TIN、TIN);
UO1: OBUFDS端口映射(QuiTin,QQP,QYN);
IUO2: IOBUFDS端口映射(ODATAXOUT,TIN IN,DATAIN 2,IODATAYP,IODATAYN);
UBIFFG:IGBFGDS端口映射(CKKYP,CKKYN,CKLY-BIFFUGOUT);
UBFFG:BUFG端口映射(CKKY-BIFFGUT,CKLY-IN);
MyoddReg:进程(CKLIN,DATAIN)
开始
如果(CkkItIn事件和CkkIn=‘1’)
QuiTn& lt;= DATAIN;
如果结束;
结束过程;
ODATAXOUT & lt;= DATAAIN和DATAIN 2;
结束行为;
二
Verilog:模块LVDSYIOBUFDS(CKKYP,CKKYN,DATAYP,DATAYN,TIN,P,TiNIN,IODATAYP,IODATAYN,QYP,QYN);
输入CKLYP、CKKYN、DATAYP、DATAYN、TIN、P、TIN;
IOUDATAYP,IODATAYN;
输出QYP,QYN;
导线数据2;
线材ODATAZIN;
导线ODATA输出;
有线数据表;
雷格;
线材;
导线断路器;
线锡;
IFDFDSBLVDS2525 UI1(.I(DATAYP),IB(DATAYN),O(DATAY-It));
IFDFDSBLVDS2525 UI2(I(TIN)P,IB(TIN N),O(TIN IN));
OBUFDS1/BLVDS2525 UO1(i(qyIt),o(qYp),OB(qyn));
IOUFFDSDSBLVDS2525 UO2(.I(ODATAOXOUT),O(DATAI2),.T(TIN IN),IO(IODATAYP),IOB(IODATAYN);
iBFGDSDSBLVDS2525 UBIFFG(I(CKKYP),IB(CLKYN),O(CKLY-BIFFGOUT));
BUFG UBUFG(I(CKKY-BiFFGOUT),O(CLKIN It));
总是@(PASEDGE CKLIN)
开始
QuiTn& lt;= DATAIN 2;
结束
指定ODATAYOUT=DATAIN;
终端模块
三
UCF:如果您希望使用UCF方法,则从VHDL或Verilog代码中的特定实例化中删除属性语句,并将下列语句添加到UCF:
UI1碘标准=BLVDS25;
UI2碘标准= BLVDSY25;
IUO 1标准=BLVDS25;
IUO IO=BLVDS25;
IUBFFG碘标准= BLVDSY25;
添加评论