Saturday, November 18, 2023

ICG Enable Timing Issue

As we know Integrated Clock Gating cells are used to reduce dynamic power dissipation in the design, which is being Enable by CTRL logic. To get the glitch free output from ICG cell , it should meet the timing requirement (setup/hold) at enable pin of ICG cell.



In the above figure as we seen ICG cell is driving multiple flops which is being enabled by control logic flop. suppose L2 & L3 is the latency from clock port to ICG & flops. So our ICG cell latency(latency from ICG output clock to flops) will be

                                      ICG latency = L3-L2

Ideally one ICG cell can drive infinite flops, as no. of flops going to increase driven by ICG cell,tool is going to add more buffer in the clock path to balance clock tree, which will increase the ICG latency.

As L3 latency going to increase, results in increase in ICG latency, as clock period is fixed so now we are having lesser clock period than before to meet setup timing at EN pin.
So we can conclude that Larger the ICG latency , more critical the ICG enable timing.
It is always advisable to address ICG timing in place/pre-cts stage, as after CTS it can be too late for the design to address ICG timing violation.
we know that Pre-cts timing analysis used ideal clock latency for all clock pins,that means L2=L3, & ICG latency will be 0.

As ICG latency is 0 ,which will make ICG Enable timing analysis too optimistic, because now ICG cell will get full clock to meet setup at Enable pin(before it get only L3 - ICG Latency). So, In Pre-cts actual ICG violations are not seen, therefore not fixed in the design.
To overcome this design problem ICG optimization is a technique recommended for designs having critical ICG enable timing.In the next post we will discuss about ICG optimization technique, how it is executed.




Thursday, November 22, 2012

RTL - GDS flow


The flow chart for the GDS – RTL flow is shown below :





Steps to each run viz. synthesis, PNR, STA :

• Convert the pin details in milkyway format

• Invoke icc_shell
• Set ICC variables
• Set lib, design, reference, tech file, TLU Plus file, map file ( All common setting), netlist, scan def, sdc file
• Open .lib and design.
• Read input netlist, scan def, sdc file
• Do the floorplan
• Read the pin details.
• Create blockages and power straps
• Enter spare cell details
• Define false paths
• Do coarse placement and check for congestion
• Do routing and check for timing
• Close all drc/ lvs errors and ensure timing is met
• Do DFM improvements ( filler cell insertion, double via, spread wire )
• Ensure timing drc /lvs are clean

Tuesday, April 10, 2012

Industrial Physical Design Flow


VLSI Physical Design Flow is an algorithm with several objectives. Some of them include minimum area, wirelength and power optimization. It also involves preparing timing constraints and making sure, that netlist generated after physical design flow meets those constraints.
Following section will help you to understand the very basic and beginning steps for chip design. It is exactly the way it happens in leading VLSI chip design industries. 




Saturday, April 30, 2011

NEED OF MEMORY TESTING

Although most of these embedded memories are single-port static (and in relatively few cases, dynamic) RAMs today, the high demand for bandwidth in digital television, fast signal processing, and high-speed networking applications will also fuel the need for on-chip multiport memories in the foreseeable future. The reliability of a complex VLSI chip will depend largely on the reliability of these embedded memory blocks. With device dimensions moving rapidly toward the ultimate physical limits of device scaling, which is in the regime of feature sizes of 50 nm or so, a host of complex failure modes is expected to occur in memory circuits.

The task of testing a VLSI chip to guarantee its functionality is extremely complex and often very time consuming. In addition to the problem of testing the chips themselves, the incorporation of the chips into systems has caused test generation’s cost to grow exponentially.

a) Memory testing is an extremely important issue owing to a host of reasons. RAMs are the key components for electronic systems. Memories represent about 30% of the semiconductor market. Embedded memories are dominating the chip yield these days. 
b) Memory testing is becoming highly difficult due to growing density, capacity, and speed. 
c) New architectures and technologies are emerging at a fast pace. Embedded memories   require certain factors to be looked after such as diagnostics & repair, heterogeneity, custom design, power & noise, scheduling, compression, etc. 
d) Cost of memory testing drives the need for more efficient test methodologies. Few of the techniques already in use are IFA, fault modeling and simulation, test algorithm development and evaluation, diagnostics, DFT, BIST, BIRA, BISR, etc.
 
Test automation is required. It calls for failure analysis, fault simulation, ATG, and diagnostics and BIST/BIRA/BISR generation.

Friday, April 29, 2011

Memory - RAM

The Memory of a computing system holds its state information and dominates the chip area. A memory unit (RAM) may contain millions for memory addressable cells. Memory cells are organized into arrays wherein each cell is addressable by a row address and a column address. Memories are the most defect sensitive components as they are fabricated with minimal feature widths. It highly raises the total chip DPM (Defects Per Million) level and thus, calls for high quality tests and repair.

6-transistors SRAM cell

 


RAM Organization

Why This Blog ?

Hi all, this is Amit Raj, from India.

This blog is all about Design and Testing of Digital ICs. I don't want to treat this as only a blog, but a forum, where we can discuss anything but about VLSI.

It can be Verilog - RTL Coding, or Basics of IC Design, or Timing, Placement and Routing, LEC, STA, DFT.

Please feel free to leave any comments or send any new comments to the author for putting here..