原创 特权和你一起学NIOS2 第五章 实战演练之时序收敛 part5

2010-11-9 16:10 3611 5 7 分类: FPGA/CPLD

IO接口约束之理论推导


        这一步要对SDRAM与FPGA连接的IO口进行约束,这些IO口包括了控制信号、地址信号、数据信号。除了数据信号是双向总线,其它均为输出信号。无论如何,我们要做的约束主要就是两个类型,即输入约束和输出约束。


         在进行这一步之前,我们要再做一些理论储备,再明确一下我们要约束的取值范围到底是针对整个源寄存器到目的寄存器路径上的哪一段。


         先看output管脚的setup(Equation 7-3)和hold(Equation 7-6)时序余量计算公式,Output Maximum Delay of Pin和Output Minimum Delay of Pin是我们需要添加的output约束值。关于这几个公式的详细推导和说明可以参考特权同学的《深入浅出玩转FPGA》一书。


33ac02cc-ebe7-4960-a402-e7f8c79d6736.JPG




         从Output Maximum Delay of Pin和Output Minimum Delay of Pin在公式中的关系,再对照如图5.20所示的寄存器模型,我们不难推断output delay指定的时间范围是针对于这些红色(带箭头)路径而言的。它的值也是这三部分路径之和(图示的两条时钟路径算为一部分,需要注意路径取值的正负)。



9f7b1f59-a160-46db-b8c5-804ee2f61c60.JPG


图5.20


         上述的三部分路径之和,有如下公式用于计算output delay的最大和最小取值。


c6f76474-7a3c-4803-99e3-644184192d42.JPG


4478f9a4-8375-47c9-ba5d-a77e53e5e493.JPG


    最后,关于PCB clock skew,它是指在源寄存器和目的寄存器在PCB板上的时钟传播的延时差值。拿理想的状况来理解这个概念,当源寄存器和目的寄存器时钟都是PCB板上的一个晶振输出来的,那么它们到达两个寄存器各自的输入端口时势必要有延时,因为他们到达芯片内部的延时已经被计算过了(前面的几个公式和说明里都提到了),所以现在唯一不确定的是他们在PCB上走线的延时。因此,我们定义<PCB clock skew> = <晶振输出到达FPGA端口的时间> – <晶振输出到达外部芯片的时间>。那么这一部分路径的延时就被计算在内了。有人可能要问为什么?特权同学常常会遇到一些莫名其妙的为什么?其实会问是好的,但是有些概念需要先消化,因为基本的概念是定义出来的,没有太多的逻辑可推导,要问为什么其实没有太多意义。这时候就需要先接受,然后回头再系统的理解这些知识点。其实有时候我们发现自己总喜欢在问一些很傻瓜的问题,这些问题傻到就好像在问为什么1是1、2是2,为什么1不是2、2不是1。呵呵!有时候,就像小孩吃饭一样,不要花时间去搞懂为什么要吃饭,饭里都有什么成分?应该简单的先去吃,吃饱喝足了才有精力去研究去搞懂它。


         再来看input管脚的setup(Equation 7-2)和hold(Equation 7-5)时序余量计算公式,Input Maximum Delay of Pin和Input Minimum Delay of Pin是我们需要添加的input约束值。


9ae9b5d7-c7f7-4671-bb7b-8e75f9be335a.JPG




         同样地,我们通过前述两个公式再结合图5.21,就应该能推断出input delay所针对的传输路径就是红色箭头的两条路径(按照output delay的分法同样是三部分)延时之和。



667958a2-10c7-4533-8219-1045633e42e9.JPG


图5.21


         有关input delay的运算公式如下。


ba541768-550d-4c5f-9935-a99f06f7801a.JPG


         公式中的参数与output delay类似,数据经过PCB的最大和最小延时是可以通过目标板的布局布线进行计算的。数据经过外部器件的最大或最小延时时间也都是可以通过查看相关接口芯片的datasheet可以确定的。此外,PCB clock delay值同样是指时钟在PCB板上由晶振源传输到源寄存器与传输到目的寄存器的时间差。

文章评论2条评论)

登录后参与讨论

ilove314_323192455 2010-11-9 22:15

也许年底吧,也许年初吧,我只能尽力先奉上教程了

用户591598 2010-11-9 20:26

特权同学,SF-NIOS2 学习板什么时候问世啊?期待中。。。
相关推荐阅读
特权ilove314 2016-06-30 21:16
例说FPGA连载6:FPGA开发所需的技能
例说FPGA连载6:FPGA开发所需的技能 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   前面的文字已经做了很多铺垫,相信读...
特权ilove314 2016-06-28 21:09
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
特权ilove314 2016-06-28 21:05
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
特权ilove314 2016-06-26 22:11
例说FPGA连载4:FPGA语言与厂商介绍
例说FPGA连载4:FPGA语言与厂商介绍 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   Verilog与VHDL 说到FP...
特权ilove314 2016-06-23 21:26
例说FPGA连载3:FPGA与其它主流芯片的比较
例说FPGA连载3:FPGA与其它主流芯片的比较 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   FPGA、ASIC和ASSP...
特权ilove314 2016-06-21 20:32
例说FPGA连载2:FPGA是什么
例说FPGA连载2:FPGA是什么 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   2015年伊始,Intel欲出资百亿美金收...
我要评论
2
5
关闭 站长推荐上一条 /2 下一条