棋子 · 2021年12月07日

一种数字delayline的设计方案

写在前面

本文之后,我会跟大家分享更多关于delayline的事。

1.  简介

在高速并行接口(例如DDR接口)中,由于工作环境的变化,可能会导致Data bus与时钟信号之间的skew相差比较大,从而使得本来就小的采样窗口变得更加紧张,严重的话会导致采样失败。在这种情况下,一个可以调节skew的玩意是十分有必要的。而由于模拟DLL个头比较大,容易增大面积,从而加大成本。所以领导可能会要求你去用数字逻辑搭一个delayline,用于把输入信号延迟输出,且延迟的时间在总量程范围内可调节。

本文提出一种delay_line的设计方案,希望读者能够带着以下问题去进行阅读:

  1. 如何减小delay_line档位之间的误差?
  2. 如何使得每一档之间的delay呈线性关系?
  3. 如何优化delay_line的动态功耗?
  4. 如何减小delay_line对输出clk的占空比的影响?
  5. 如何减小default值(档位为0时的延时)?

2.  方案描述

2.1.  档位说明

本方案中,delay_line的档位分为两类:fine_dly(高精度档)和coarse_dly(大幅值档)。

2.1.1.  fine_dly档

图片.png

fine_dly的延时决定了delay_line的最小调节步长,需要根据实际所使用的工艺节点来选择dly cell,可以是CLK-BUF、CLK-INV pairs、CLK-MUX以及专门的DLYCELL。记CLK-MUX的delay为T_mux,dly cell的delay为T_dcell,则有:
图片.png

为便于下文书写简化,记 T_fine(sel=0) = T_f(0), T_fine(sel=1) = T_f(1).

在delay_line的fine_dly链部分,需要增加一个CLK-MUX来修正delay_value,如下图中所示标蓝色的CLK-MUX。

图片.png

上图的delay_value与档位的对应关系如下:
图片.png

本方案建议fine_dly仅使用一级CLK-MUX即可,见下图。

图片.png

2.1.2.  coarse_dly档

图片.png

coarse_dly与fine_dly二者延时的关系决定了delay_line各档位间的误差,因此coarse_dly需要用fine_dly级联来实现,以减小该误差。记CLK-MUX的delay为T_mux,则有:

图片.png

为便于下文书写简化,记 T_coarse(sel=0) = T_c(0), T_coarse(sel=1) = T_c(1).

2.2.  动态功耗优化

由于clk在高速翻转,对于delay_line中未被选中的档位,需要把输入固定成高电平或低电平,以减小动态功耗。本方案仅考虑对coarse_dly档做功耗优化,fine_dly档本身要实现小delay_value,std_cell数量较少,暂不做优化处理。

如下图电路中,当 sel = 0 时,只有标红色的两部分有clk输入,其它std_cell的输入都是固定电平,动态功耗(指switch power)可降到最低。

图片.png

2.3.  占空比优化

由于std_cell的上升时间和下降时间存在差别(CMOS器件特性,本文不做解释),因此clk在经过std_cell之后,占空比会被改变,且经过的std_cell越多(延时越大),占空比的改变会越明显。

考虑下图所示电路结构,clk在经过Part_A之后会被取反,再经过Part_B之后会被还原,因为Part_A与Part_B两部分电路完全对称,所以Part_B电路会对Part_A电路的信号传播时间做补偿,理论上可以把上升时间和下降时间对占空比的影响降到很低。

图片.png

2.4.  方案原理图

综合2.1~2.3小节的描述,本文给出一种delay_line原理图如下:

图片.png

记CLK-INV的delay为T_inv,则delay_value(T_dly)的计算公式如下:

T_dly = 2 ( C T_c(1) + F * T_f(1) ) + T_default ;

其中:

T_default = 2 * ( T_c(0) + T_f(0) + T_inv ) ;

  • “C”表示选中coarse_dly的档位数,取值为0,1,2,3….N (N取决于使用者);
  • “F”表示选中coarse_dly的档位数,取值为0,1,2,3;
  • “C”、”F”对应的csel、fsel的转换关系如下表:
    图片.png

以N=3举例,每个档位对应的delay value关系表如下:
图片.png

END

原文链接: IC小迷弟
作者: 七点班车

推荐阅读

更多IC设计技术干货请关注IC设计技术专栏。
推荐阅读
关注数
19598
内容数
1303
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息