V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yangryorange
V2EX  ›  问与答

时钟信号会不会产生延迟?

  •  
  •   yangryorange · 2014-09-23 20:59:31 +08:00 via iPad · 3458 次点击
    这是一个创建于 3716 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题。在看计算机组成原理的时候脑洞大开。个人看法是信号传播一定会发生延迟的状况。毕竟距离时钟信号发生器近的部件和远的部件可能接收到的时间不同。但时钟信号对计算机各个部件的协同工作非常重要。如果有,如何避免或者控制这种情况?如果没有,为什么?

    ps:本人没有数电基础,也不知道如何找到相关资料。请各位解答下,或者指明方向我去翻资料。
    12 条回复    2014-09-23 22:38:14 +08:00
    qiuai
        1
    qiuai  
       2014-09-23 21:03:05 +08:00
    应该是因为太短而忽视了吧?还真不知道这个.
    gamexg
        2
    gamexg  
       2014-09-23 21:06:55 +08:00
    也没基础,但是听说布线时要求时钟、数据等线路等距。
    lightening
        3
    lightening  
       2014-09-23 21:23:55 +08:00   ❤️ 2
    会。时钟延迟是高频芯片设计时一个难点。毕竟时钟信号也是以光速传播的,传播一厘米的话,需要:

    (0.01m) / (3E8 m/s) = 1/3 * 10^-6 s
    也就是说,频率最高能上到 3E6 Hz = 3GHz,不然时钟就会偏移一个周期。

    一种设计方法是这样的:


    A 点是时钟源。采用分型的方法,这样每条线的尖端到 A 点的电路距离是一样长的。分型越细,尖端的数量就越多,时钟的同步性就保持的越好。但是电路中还有电感和电容,他们都会 shift 时钟。所以高频数字电路中的时钟还是一个难点。有时候只好用异步电路去排除时钟的影响。

    读博士的话,时钟同步应该是专门的一个研究方向。
    lightening
        4
    lightening  
       2014-09-23 21:34:32 +08:00   ❤️ 2
    哎呀,上面图画错了……

    没有保证所有的尖端到中心距离一致,赶快补一个:

    总之保证每一次分叉出的所有尖端长度都一致。
    clker
        5
    clker  
       2014-09-23 21:36:48 +08:00   ❤️ 1
    时钟延时确实有,但现在的数字电路设计都是依靠EDA工具自动综合,布局,布线完成的。并不要求时钟到每一个寄存器的延时一样,只要该时钟和数据满足相应的建立时间和保持时间即可。
    kmvan
        6
    kmvan  
       2014-09-23 21:38:43 +08:00
    @lightening 为啥不在四边都分别放一个clock呢?
    lightening
        7
    lightening  
       2014-09-23 21:41:20 +08:00
    @kmvan 也可以啊。但是你还得保证那 4 个 clock 是同步的。于是你还要从同一个源,用相同长度的线引出来到 4 个角不是么。
    kmvan
        8
    kmvan  
       2014-09-23 21:46:18 +08:00
    @lightening 对,因为始终要确定一个源。不过我想,这四个clock可以一天与中心源校正一次,这样四周的芯片每次获取时间的速度都要比从中心源获取的快N*4倍吧
    lightening
        9
    lightening  
       2014-09-23 21:53:48 +08:00
    @kmvan 不行的,如果用四个晶振,晶振的频率没有这么准确的。如果是100年误差一秒的精度,芯片运行在 1GHz, 换算后:

    1E9 / ( 100 * 365 * 24 * 60 * 60 ) = 0.3

    也就是得 0.3 秒校正一次…… 更何况这个精度实际上根本达不到。

    获取时间的速度不是个问题。因为时钟信号可以看做无限周期的信号,延迟几十个几百个周期根本无所谓————反正一成不变。
    yangryorange
        10
    yangryorange  
    OP
       2014-09-23 22:03:26 +08:00 via iPad
    @lightening
    @clker
    多谢答疑。还有个问题,是不是现在的电路板实际上是有延迟的,只是通常忽略了延迟。比如我正在看计算机组成原理这里可以忽略?。那在什么地方或者什么领域这些延迟不能被忽略,必须去想方设法去解决?
    lightening
        11
    lightening  
       2014-09-23 22:09:35 +08:00
    @yangryorange 其实稍微有点规模的芯片,计算机、手机等,这个延迟都已经不能忽略了。计算机组成原理的书里不讲这个,是因为这个已经太细节了,不是做芯片设计的话没必要知道。
    实际上在设计芯片的时候,用的设计软件都会做时序仿真,所有的信号延迟要满足一定依赖条件,芯片才能运行的。这个信号依赖条件太复杂,人脑已经不可能去处理了,所以需要计算机辅助。
    yangryorange
        12
    yangryorange  
    OP
       2014-09-23 22:38:14 +08:00 via iPad
    @lightening 多谢多谢。学习了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2427 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 16:01 · PVG 00:01 · LAX 08:01 · JFK 11:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.