xilinx的原语的使用

xilinx的原语的使用

在学习FPGA实现千兆网时需要GMII转RGMII,这就涉及了原语的使用,特此记录!

一、原语

复制代码
与RGMII接口相关的原语:
BUFG:全局时钟网络
BUFIO:只能采集IO的数据,采集IO数据的时候延时是最低的
IDDR:双沿数据的采样,输出多位的数据
ODDR:输出,将输入的两bit数据在时钟的双沿进行输出,输出1位的双沿数据。
IDELAYE2和IDELAYCTRL:对数据进行延迟

注:在ug472手册有详细的介绍

二、GMMI和GMII接口的转化

rgmii_rxc要连接到开发板上SRCC/MRCC类型的引脚上,否则编译错误,这些类型是专用的时钟网络

单端信号和差分信号:单端就是只用1跟线完成数据的传输,比如点亮led灯。差分信号就是需要两跟线来完成传输,优点:传输距离远,抗干扰强,更文稳定。

单端信号支持的电平标准:LVCMOS、LVTTL、HSTL、PCI、SSTL。

差分信号支持的电平标准:LVDS 、Mini_LVDS,RSDS,PPDS,BLVDS,differential HSTL and SSTL。

IDDR有三种模式:

  • OPPOSITE EDGE mode
  • SAME EDGE mode
  • SAME EDGE PIPELINED mode(使用比较多)

三种方式都是在时钟的上升沿和下降采集数据,不同的地方是对数据的输出方式不同。

1)OPPOSITE EDGE mode,双沿采样时序图:在时钟的上升沿和下降沿对一位的数据D进行采样,通过Q1和Q2进行输出。输出的数据Q1和Q2有相位差。

2)SAME EDGE mode模式:

3)SAME EDGE PIPELINED mode

IDDR的示意图:

IDDR引脚的含义:

IDDR置位和复位的引脚:高电平有效

IDDR参数设置:

IDDR原语:

四、ODDR的两种模式:

复制代码
1、OPPOSITE EDGE mode
2、SAME EDGE mode

1)模式1:OPPOSITE EDGE mode。输入的两bit数据D1,D2转成1bit数据OQ的输出。输入的两位数据有相位的偏差

2)模式2:SAME EDGE mode。输入的两位数据无相位的偏差

(常用这种模式)

ODDR原语的框图和端口介绍

ODDR参数设置:

复制代码
		--晓凡  2023年10月2日于武汉书
相关推荐
Js_cold42 分钟前
(* MARK_DEBUG=“true“ *)
开发语言·fpga开发·debug·verilog·vivado
Js_cold2 小时前
(* clock_buffer_type=“NONE“ *)
开发语言·fpga开发·verilog·vivado·buffer·clock
深圳光特通信豆子8 小时前
TTL光模块:短距离传输场景的优选方案
fpga开发
Js_cold8 小时前
Verilog运算符
开发语言·fpga开发·verilog
Js_cold2 天前
Verilog函数function
开发语言·fpga开发·verilog
Js_cold2 天前
Verilog任务task
开发语言·fpga开发·verilog
brave and determined2 天前
可编程逻辑器件学习(day3):FPGA设计方法、开发流程与基于FPGA的SOC设计详解
嵌入式硬件·fpga开发·soc·仿真·电路·时序·可编程逻辑器件
Lee_yayayayaya2 天前
锁相环技术及FPGA实现
fpga开发
Js_cold2 天前
Verilog局部参数localparam
开发语言·fpga开发·verilog
promising-w2 天前
【FPGA】使用移位实现LED流水灯
fpga开发