STA之Concepts (2)

3  Skew between signals

  Skew is the difference in timing between two or more signals, maybe data, clock or both.

  Clock latency is the total time it takes from the clock source to an end point.

  Clock skew is the difference in arrival times at the end points of the clock tree.

  

  Latency of a clock tree can be explicitly specified using the set_clock_latency command.

set_clock_latency 2.2 [get_clocks BZCLK]
# Both rise and fall latency is 2.2ns.
# Use options -rise and -fall if different.

  Clock skew for a clock tree can also be implied by explicitly specifying its value using the set_clock_uncertainty command.

set_clock_uncertainty 0.250 -setup [get_clocks BZCLK]
set_clock_uncertainty 0.100 -hold [get_clocks BZCLK]

  The set_clock_uncertainty specifies a window within which a clock edge can occur. Every real clock source has a finite amount of jitter - a window within which a clock edge can occur.

  Figure 2-16 shows an example of a clock with a setup uncertainty of 250ps. Figure 2-16(b) shows how the uncertainty takes away from the time available for the logic to propagate to the next flip-flop stage.

  

4  Timing Arcs and Unateness

  Every cell has multiple timing arcs.   (uate -- 单边)

  - Combinational logic cell, such as and, or, nand, nor, adder cell, has timing arcs from each input to each output of the cell.

  - Sequential cell (flip-flop) has timing arc from the clock to the output and timing constraints for the data pins with respect to the clock.

5  Min and Max timing paths

  A max path between two end points is the path with the largest delay (also referred to as the longest path). Similarly, a min path is the path with the smallest delay (also referred to as the shortest path).

  

  When a flip-flop to flip-flop path, one of the flip-flops launches the data and the other flip-flop captures the data.

  In this case, UFF1 is referred to as the launch flip-flop, and UFF3 is referred to as the capture flip-flop.

  The launch and capture terminology are always with reference to a flip-flop to flip-flop path. For example, UFF3 would become a launch flip-flop for the path to whatever flip-flop captures the data produced by UFF3.

6  Clock domains

  A clock typically feeds a number of flip-flops. The set of flip-flops being fed by one clock is called its clock domain.

  For example, 200 flip-flops may be clocked by USBCLK and 1000 flip-flops may be fed by clock MEMCLK. Figure 2-20 depicts the flip-flops along with the clocks. In this example, we say that there are two clock domains.

  If indeed there are data paths that cross between clock domains (see Figure2-21), a decision has to be made as to whether the paths are real or not.

  

  An example of a real path is a flip-flop with a 2x speed clock driving into a flip-flop with a 1x speed clock.

  An example of a false path is where the designer has explicitly placed clock synchronizer logic between the two clock domains. Such a path is referred to as a false path, because the clock synchronizer ensures that the data passes correctly from one domain to the next.   

set_false_path -from [get_clocks USBCLK] -to [get_clocks MEMCLK]
时间: 2024-10-27 07:31:48

STA之Concepts (2)的相关文章

STA之Concepts (1)

Static Timing Analysis is one of the many techniques available to verify the timing of a digital design. An alternate approach used to verify the timing is the timing simulation which can verify the functionality as well as the timing of the design.

Java Object Oriented Programming concepts

Introduction This tutorial will help you to understand about Java OOP'S concepts with examples. Let's discuss about what are the features of Object Oriented Programming. Writing object-oriented programs involves creating classes, creating objects fro

Introduction and Basic concepts

1 Network Edge The device such as computers and mobiles connect to the Internet. So they are referred as end systems(who run the application programs) sitting at the edge of the Internet. And we use host and end system interchangeably, that is host=e

jQuery学习--Code Organization Concepts

jQuery官方文档:  http://learn.jquery.com/code-organization/concepts/ Code Organization Concepts(代码组织概念) 当你不再只是用jQuery为你的网站增添一些简单的功能,转向做一些成熟的客户端应用,那你就需要考虑如何组织你的代码.这章,我们将简要地介绍jQuery应用中几种常用的代码组织模式,探究RequireJS依赖管理以及构建系统. When you move beyond adding simple en

[BZOJ1131][POI2008] Sta 树的深度

Description 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 Input 给出一个数字N,代表有N个点.N<=1000000 下面N-1条边. Output 输出你所找到的点,如果具有多个解,请输出编号最小的那个. Sample Input81 45 64 56 76 82 43 4 Sample Output7 题解: 都说是裸树形DP,其实我做的时候就是把它当成搜索去做了,当然是一个意思.假设当前的根为1,先求出每棵子树的大小,以及所有点的深度之和.考虑

1131: [POI2008]Sta

1131: [POI2008]Sta Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 783  Solved: 235[Submit][Status] Description 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 Input 给出一个数字N,代表有N个点.N<=1000000 下面N-1条边. Output 输出你所找到的点,如果具有多个解,请输出编号最小的那个. Sample Input 8 1 4 5 6

CFNetwork概念(CFNetwork Concepts )

CFNetwork是一个低级别高性能的框架,使你能够精细的控制协议栈.它是BSD套接字的扩展,标准套接字抽象API提供对象来简化任务,例如与FTP和HTTP服务器或解析DNS主机.CFNetwork物理上和理论上都基于BSD套接字. 正如CFNetwork依赖与BSD套接字,有大量的Cocoa类依赖CFNetwork(例如,NSURL).此外,Cocoa类的web工具包用来在窗口显示网页内容.这两个类是高层级并实现大部分的网络协议.一次,软件层的结构如图1-1所示. 图1-1 OS X上CFNe

【转载】STA 4273H Winter 2015 - Lectures

STA4273H Home   Lecture Schedule/Notes Assignments/Project Computing   Ruslan Salakhutdinov Homepage http://www.cs.toronto.edu/~rsalakhu/   STA 4273H Winter 2015 - Lectures Video Archive here. Lecture Schedule Lecture 1 -- Machine Learning:Introducti

iOS Drawing Concepts[iOS 绘画概念]

iOS Drawing Concepts https://developer.apple.com/library/ios/documentation/2DDrawing/Conceptual/DrawingPrintingiOS/GraphicsDrawingOverview/GraphicsDrawingOverview.html High-quality graphics are an important part of your app’s user interface. Providin