浅析OSERDESE3

在高速接口的应用场景下,我们会经常听说SerDes(Serializer-Deserializer)这个词,也就是串行器和解串器,更为通俗的讲就是进行串并转换的。在Xilinx的FPGA中提供了ISERDES(提供串行数据到并行数据的转换)和OSERDES(提供并行数据到串行数据的转换)。在7系列的FPGA里面提供了ISERDESE2和OSERDESE2这两个原语供我们使用。而在UltraScale架构中提供了ISERDESE3和OSERDESE3这两个原语。OSERDESE3的结构如下图所示,支持SDR模式和DDR模式。

其可供配置的参数如下图所示:

从上表可以看出与OSERDESE2使用有差异的DATA_WIDTH,在OSERDESE3中只支持8bit和4bit两种模式,相对于OSERDESE2来说变少了。另外还有一点,对于熟悉OSERDESE2的人来说可以看出这里并没有配置是SDR模式还是DDR模式的参数,在OSERDESE2中可以通过DATA_RATE_OQ参数进行配置SDR或DDR。这个具体配置还请接着往下看。那么先看一下DDR模式下的时序图:

可以看出当DATA_WIDTH是8时,CLK和CLK_DIV是4倍关系,当DATA_WIDTH是4时,CLK和CLK_DIV是2倍关系。再看一下SDR模式下的端口连线和时序图:

相信看到这里应该就能看出来SDR和DDR模式的不同了,在SDR模式下需要将相邻的两个输入端口接同一个数据,这样实现的SDR功能。下面就看一下SDR和DDR模式的所有连接情况吧

最后呢来看一下OSERDESE3具体要怎么使用吧。

OSERDESE3 #(
      .DATA_WIDTH(8),            // Parallel Data Width (4-8)
      .INIT(1'b0),               // Initialization value of the OSERDES flip-flops
      .IS_CLKDIV_INVERTED(1'b0), // Optional inversion for CLKDIV
      .IS_CLK_INVERTED(1'b0),    // Optional inversion for CLK
      .IS_RST_INVERTED(1'b0),    // Optional inversion for RST
      .SIM_DEVICE("ULTRASCALE")  // Set the device version for simulation functionality (ULTRASCALE)
   )
   OSERDESE3_inst (
      .OQ(OQ),         // 1-bit output: Serial Output Data
      .T_OUT(T_OUT),   // 1-bit output: 3-state control output to IOB
      .CLK(CLK),       // 1-bit input: High-speed clock
      .CLKDIV(CLKDIV), // 1-bit input: Divided Clock
      .D(D),           // 8-bit input: Parallel Data Input
      .RST(RST),       // 1-bit input: Asynchronous Reset
      .T(T)            // 1-bit input: Tristate input from fabric
   );

一个小Tip,CLKDIV端口的时钟可以走BUFGCE_DIV哦,这样会有更小的Clock Skew,当TPWS违例的时候可以考虑这个方法进行解决。

FPGA开源工坊 文章被收录于专栏

分享FPGA开发相关的知识

全部评论

相关推荐

整个行业从业者资历呈现倒金字塔结构,30-40岁年龄段众多,应届生一个office 2-3个,我知道的几家原厂都出现年龄断层,还是因为缺芯几年生意好,开始招应届生,可想而知,对新人并不友好,优质客户基本被“占坑”,拓新并没有那么容易,所以初期分配的客户资源基本盘很重要 #恩智浦#  #华为海思工作体验# 第二,IC销售一旦入行难以跨行,好奇心重,喜欢跳槽,追风口的人不适合,这行知名公司对销售技术知识要求高,产品线众多也有较高的学习成本,但这些在其他行业复用性几乎为,比如卖IT服务器的去卖云服务大模型,但从看到的大几百份履历来看,IC非常少人能跨出去,从业3年再跨基本不可能,除非向下兼容,可能存在从卖被动件传感器跳到主动件的小跨,从代理商跳到原厂的情况。更多的是换公司,但一直在服务特定行业的客户,推特定的产品,比如你在北京ADI卖医疗模拟IC比较多,继续跳去TI卖模拟。半导体即使在同一个行业,细分领域众多,隔行如隔山,社招跳槽的可选择性进一步收窄。知名公司销售稳定性好,基本不会有HC。不过凡事都有好坏,这行职业寿命长,越老越吃香,今年有家汽车做的好的原厂裁员先裁应届生资历浅的,和赚短平快钱的互联网逻辑不一样。社招也是5-10年经验起步。当你在这个行业人才pool以后,跳槽和你竞争的也是这个pool,其他难以跨行进来。一般销售市场占公司总人数5%左右,越知名的公司越不需要销售,比例越低。估算一下,TI,NXP,Infineon,ST,Renseas,Microchip,MPS,Marvell全国销售各小一百人,稍小众些的AMD,Intel FPGA品牌,做消费类或者客户集中的Broadcom,Qorvo,Skyworks,Macom,Sitime,Credo,Astera labs,Maxlinear,Cirrus logic,Wolfspeed,Allergo 人更少 #销售#  #德州仪器#
投递ADI亚德诺等公司6个岗位 华为海思工作体验
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务