STA Part 2 by signoff-scribe

本文详细介绍了在集成电路设计中遇到的设置和保持违规问题,以及相应的修复方法。设置违规通常是由于数据路径延迟过高或负时钟偏斜引起,可以通过门控大小调整、缓冲、克隆、逻辑重构、阈值电压交换和时钟偏移等手段来解决。保持违规则涉及到数据提前到达或正时钟偏斜,解决方法包括增加数据路径中的缓冲器或延迟单元、阈值电压交换和时钟偏移。这些方法有助于优化电路性能,确保满足时序约束。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ways to fix setup violations:

Setup violation occurs because of high delay in the data path or due to negative skew.

Below are the ways to fix setup violation:

  1. Gate sizing
  2. Buffering
  3. Cloning
  4. Logic restructuring
  5. Vt swapping
  6. Skewing

  • Gate Sizing:

This refers to upsizing the cell to a higher drive strength cell.

If a low driving strength cell is driving a higher load, it results in higher cell delay. To fix this, one can upsize the cell which will reduce cell delay and helps to meet the setup time.

  • Buffering:

This generally helps if a cell is driving an exceptionally long net.

Considering that the driver cell already has good driving strength, buffering helps to split the net which in turn reduces the total capacitance.

Hence the data path delay will be reduced, and arrival time reduces.

  • Cloning:

Cloning refers to creating the same driver cell with the same functionality and giving it the same inputs as the original cell.

If gate sizing and buffering are not possible, then cloning can be helpful as this will split the load between the original cell and the newly cloned cell. Refer to the below diagram

Cloning helps in load splitting and hence the driver cell will be having less load capacitance which helps to reduce the cell delay resulting in improvement in data arrival time.

  • Logic Restructuring:

This is the method of re-arranging the logic such that critical paths take the shortest path.

Refer to the figure below;

In the example shown above, the path through Pin A is critical and needs to be optimized.

As delay from A-Y is 10ps and that from B-Y is 6ps, tool directs the critical path to take the less delay path which results in gaining positive slack.

  • Vt Swapping:

This method of fixing setup is also known as threshold voltage swapping. There are three different flavors of a cell – HVT, SVT, and LVT. HVT cells have high threshold voltage whereas LVT cells have low threshold voltage.

The HVT cells in the data path can be swapped to LVT cells which have lesser delays for improving the arrival time.

LVT cells require less voltage to turn ON, resulting in lesser cell delay.

  • Skewing:

Positive skew is good for setup and negative skew is good for hold. There are 2 ways to fix setup by skewing. This will be easy to understand with the help of the figure below;

Consider setup is getting violated in PATH 1. To fix this using skewing, we can delay the clock at FF2 by adding clock buffers provided that PATH2 has enough setup margin and PATH1 should have enough hold margin.

Consider PATH2 has setup violation. To fix this, we can early the clock at FF2 by optimizing the clock transition or by removing unwanted clock buffers/inverters until unless PATH1 has enough setup margin and PATH2 has enough hold margin.

Ways to fix hold violations:

Hold violations occur if data comes early or due to positive skew.

Below are the steps to fix hold violations;

  1. Adding buffers/delay cells in the data path
  2. Vt swapping
  3. Skewing

  • Adding buffers/delay cells in the data path:

Adding buffers or delay cells in the data path increases the data path delay.

But there are certain guidelines for adding buffers or delay cells. Adding buffers/delay cells on the endpoint may give rise to setup violation if the same endpoint is setup critical.

Consider figure below;

Path 1 is hold critical, whereas path 2 is setup critical.

If we add buffer/delay cell at the D pin of capture flop, it may cause setup violation in path 2 as both the paths have the same endpoint.

It’s always a better practice to add buffer/delay cells nearer to startpoint. In this case, you can add it anywhere from the buffer to AND gate in path 1.

  • Vt Swapping:

This way is exact opposite of what we do during setup fixing. We can swap lower VT cells to higher VT cells. LVT → SVT → HVT. LVT can be swapped to SVT/HVT and SVT can be swapped to HVT to increased the delay in data path.

  • Skewing:

There are 2 ways to fix hold by skewing.

Either we can late skew i.e. increase the clock network delay of launch flop making data to launch late or we can early skew i.e. reduce the clock network delay of capture flop so that data will be reaching faster at the endpoint.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值