<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Floorplanning Archives - Learn VLSI</title>
	<atom:link href="https://learnvlsi.com/category/pd/floorplanning/feed/" rel="self" type="application/rss+xml" />
	<link>https://learnvlsi.com/category/pd/floorplanning/</link>
	<description></description>
	<lastBuildDate>Thu, 07 Aug 2025 19:27:21 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8</generator>

<image>
	<url>https://i0.wp.com/learnvlsi.com/wp-content/uploads/2025/03/cropped-Untitled-design-8.png?fit=32%2C32&#038;ssl=1</url>
	<title>Floorplanning Archives - Learn VLSI</title>
	<link>https://learnvlsi.com/category/pd/floorplanning/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">236112051</site>	<item>
		<title>CLP Low Power Checks</title>
		<link>https://learnvlsi.com/pd/clp-low-power-checks/701/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=clp-low-power-checks</link>
					<comments>https://learnvlsi.com/pd/clp-low-power-checks/701/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sat, 19 Oct 2024 17:26:52 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=701</guid>

					<description><![CDATA[<p>&#160;Once we start working on low power design, we need to perform low power checks&#160; That includes&#160; &#160; &#160; Reading [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/clp-low-power-checks/701/">CLP Low Power Checks</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>&nbsp;Once we start working on low power design, we need to perform low power checks&nbsp;</p>



<p>That includes&nbsp;</p>



<p>&nbsp; &nbsp; Reading the PG netlist&nbsp;</p>



<p>&nbsp; &nbsp; Reading the UPF</p>



<p>&nbsp;&nbsp; &nbsp;Run low power checks called CLP</p>



<p>Make sure IN ICC your check_mv_design is clean</p>



<p><strong>Chevk_mv_design:</strong></p>



<ul class="wp-block-list">
<li> To verify the power network definition for a multivoltage design, run the check_mv_design command. </li>



<li>This command checks for various types of violations such as inconsistent and conflicting library settings, missing isolation cells, and incorrect voltage shifting across power domains. •</li>



<li>To check the power and ground connections, use the -power_connectivity option.</li>



<li> When you use this option, the tool checks the power and ground connections in addition to the power network definition, and updates the connections if it finds any issues. By default, it does not check the power and ground connections. </li>



<li>To specify the maximum number of messages for each violation type, use the -max_message_count option. By default, it reports a only 20 occurrences of a given violation type</li>
</ul>



<p></p>



<p>Types of low&nbsp; power&nbsp;checks</p>



<p><strong>      Static Checks  </strong></p>



<ul class="wp-block-list">
<li>Static checks detect architectural issues in the design.</li>



<li>As a missing isolation or level shifter cell.</li>



<li>Can be performed without running a simulation</li>



<li>Save time and effort as you do not need to write a testbench. So you can run them on your low-power design as soon as the design is readyThere are two kinds of static checks: static RTL and static gate-level simulation (GLS) checks. The static RTL checks are run on RTL designs and static GLS checks on gate-level design</li>
</ul>



<p>&nbsp;&nbsp; &nbsp;&nbsp; Dynamic checks : Dynamic checks are performed on the design while running simulation. Dynamic checks detect behavioral issues in the design, such as incorrect power sequencing of power domains</p>



<h4 class="wp-block-heading">Isolation cells</h4>



<p>Isolation cells are additional cells inserted by the synthesis tools for isolating the buses/wires crossing from power-gated domain of a circuit to its always-on domain.&nbsp;</p>



<p>They clamp the output node to a known voltage.</p>



<p>In the isolation list we specify the clamping value of the nets as logic 0 or logic 1 and accordingly the synthesis tool will insert isolation cells.</p>



<h3 class="wp-block-heading">Level Shifter Cells</h3>



<p>Level Shifters (LS) are special standard cells used in Multi Voltage designs to covert one voltage level to another.&nbsp;</p>



<p>As Multi Voltage designs have more than one voltage domain, level shifters are used for all the signals crossing from one voltage domain to another voltage domain.&nbsp;</p>



<p>Like isolation cells, level shifters are inserted by the synthesis tool</p>



<p>Low to High Level Shifters</p>



<p>Low to High LS are used for signals crossing from a lower voltage domain to higher voltage domain.</p>



<p>It basically amplifies the source signal so that it can be interpreted properly in the destination domain.&nbsp;</p>



<p>Suppose a 0.7V signal is crossing from 0.7V voltage domain to 1.0V voltage domain.</p>



<p> Now in the lower voltage domain it corresponds to logic-1 but in higher voltage domain it is neither logic-1 nor logic-0, so the signal becomes unknown (or ‘X’) in the absence of Low to High LS.</p>



<p>High to Low Level Shifters</p>



<p>High to Low LS are used for signals crossing from higher voltage domain to lower voltage domain.<br>It basically attenuates the source signal.&nbsp;</p>



<p>Although putting a LS for signals crossing from higher voltage domain to lower voltage domain is optional as signals will be interpreted properly in destination domain, but typically we put a LS to avoid stress on the transistors of lower voltage domain due to high voltage of the source signal.</p>



<p>Bi-directional Level Shifters</p>



<p>When dynamic voltage scaling or dynamic voltage frequency scaling is used the voltage relation between the source and destination might change over time of operation. In that case we need level shifter which is capable of shifting both low to high voltage signals and high to low voltage signals.</p>



<h3 class="wp-block-heading">Retention cells</h3>



<p>These cells are special flops with multiple power supply. They are typically used as a shadow register to retain its value even if the block in which its residing is shut-down.</p>



<p>&nbsp;All the paths leading to this register need to be ‘always_on’ and hence special care must be taken to synthesize/place/route them.&nbsp;</p>



<p>In a nut-shell, “When design blocks are switched off for sleep mode, data in all flip-flops contained within the block will be lost. If the designer desires to retain state, retention flip-flops must be used”.</p>



<p>The retention flop has the same structure as a standard master-slave flop.&nbsp;</p>



<p>However, the retention flop has a balloon latch that is connected to true-Vdd.&nbsp;</p>



<p>With the proper series of control signals before sleep, the data in the flop can be written into the balloon latch.</p>



<p>&nbsp;Similarly, when the block comes out of sleep, the data can be written back into the flip-flop</p>



<h2 class="wp-block-heading">What are all the low power checks?</h2>



<h4 class="wp-block-heading">Back-to-Back Checks</h4>



<ul class="wp-block-list">
<li>Sometimes your design has back-to-back cells, which might be any of the following types:</li>



<li>Isolation and level shifter cell</li>



<li>Level shifter and isolation cell</li>



<li>Isolation and isolation cell</li>



<li>Level shifter and level shifter cell</li>
</ul>



<h4 class="wp-block-heading">Other checks</h4>



<ul class="wp-block-list">
<li>The design cells have missing liberty attributes.</li>



<li>The isolation, level shifter, or retention supply is powered-down during the active isolation, level shifting, or retention period.</li>



<li>The power signal of a power domain gets corrupted.</li>



<li>The input of a power domain toggles when the power domain is powered-down.</li>



<li>The power state table or the supply port reaches an illegal or undefined state.</li>
</ul>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fclp-low-power-checks%2F701%2F&amp;linkname=CLP%20Low%20Power%20Checks" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fclp-low-power-checks%2F701%2F&amp;linkname=CLP%20Low%20Power%20Checks" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fclp-low-power-checks%2F701%2F&amp;linkname=CLP%20Low%20Power%20Checks" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fclp-low-power-checks%2F701%2F&#038;title=CLP%20Low%20Power%20Checks" data-a2a-url="https://learnvlsi.com/pd/clp-low-power-checks/701/" data-a2a-title="CLP Low Power Checks"></a></p><p>The post <a href="https://learnvlsi.com/pd/clp-low-power-checks/701/">CLP Low Power Checks</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/clp-low-power-checks/701/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">701</post-id>	</item>
		<item>
		<title>11 Types of cells in VLSI Physical Design</title>
		<link>https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=11-types-of-cells-in-vlsi-physical-design</link>
					<comments>https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/#comments</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 25 Aug 2024 13:50:45 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=307</guid>

					<description><![CDATA[<p>A Standard Cell is a group of transistor and its interconnect structures that provides a Boolean logic function (e.g., AND, [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/">11 Types of cells in VLSI Physical Design</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h3 class="wp-block-heading"></h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="924" height="608" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-34.png?resize=924%2C608&#038;ssl=1" alt="" class="wp-image-308" style="width:439px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-34.png?w=924&amp;ssl=1 924w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-34.png?resize=300%2C197&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-34.png?resize=768%2C505&amp;ssl=1 768w" sizes="(max-width: 924px) 100vw, 924px" /></figure>



<p>A Standard Cell is a group of transistor and its interconnect structures that provides a Boolean logic function (e.g., AND, OR, XOR, XNOR, Inverters) or a storage function (Flip-flop or Latch)</p>



<h4 class="wp-block-heading">Types of Standard Cells</h4>



<ul class="wp-block-list">
<li>Buffers (Inverting and Non-inverting )</li>



<li>Combinational (AND, OR, NAND, NOR, AOI, OAI, OA, AO, MUX)</li>



<li>Arithmetic (XOR, full-adder, half-adder), Sequential (latches, clockgates, D-type flip/flops with any optional combination of scan input, set and reset)</li>



<li>Miscellaneous (ICG Cells, Well Taps, Tie Cells, End Caps, Decaps, Filler Cells, Spare Cells, Delay Cells, Antenna Diode, ESD diodes)</li>
</ul>



<h4 class="wp-block-heading"><strong>ICG Cells</strong> in CTS</h4>



<p><strong>Integrated Clock Gating Cells (ICG Cells)</strong></p>



<ul class="wp-block-list">
<li>During idle modes, the clocks can be gated-off to save dynamic power dissipation on flip-flops</li>



<li>Proper circuit is essential to achieve a gated clock state to prevent false glitches on clock path</li>



<li>Use a combination of AND and a Latch to avoid any glitches on the clocks. A glitch can propagate a false edge on to the design</li>
</ul>



<p><strong>Insertion of ICG</strong></p>



<ul class="wp-block-list">
<li>Manual insertion of ICG
<ul class="wp-block-list">
<li>The clock gating can be implemented through logic circuits and ICG’s</li>



<li>Most of Clock Gating Cells from vendor libraries have a RTL code</li>
</ul>
</li>



<li>Automated Insertion of ICG –
<ul class="wp-block-list">
<li>Some power aware tools insert the ICG’s through automated software algorithms</li>
</ul>
</li>
</ul>



<p><strong>Types of Clock Gating Cells</strong></p>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" decoding="async" width="1024" height="486" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-36.png?resize=1024%2C486&#038;ssl=1" alt="" class="wp-image-311" style="width:375px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-36.png?resize=1024%2C486&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-36.png?resize=300%2C142&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-36.png?resize=768%2C365&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-36.png?w=1144&amp;ssl=1 1144w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<ul class="wp-block-list">
<li>Latch Based Clock Gating Buffer for Neg-edge
<ul class="wp-block-list">
<li>The circuit employs a latch and OR gate with one input inverted</li>



<li>The output clock is always clock gated low when Enable is low</li>
</ul>
</li>



<li>Latch Based Clock Gating Buffer for Pos-edge
<ul class="wp-block-list">
<li>The circuit employs a latch with inverted clock input and a AND gate</li>



<li>The output clock is always clock gated HIGH when Enable is low</li>
</ul>
</li>
</ul>



<p><a></a><br><strong>ICG module IO’s</strong></p>



<ul class="wp-block-list">
<li>3 input ports – clock, clock enable and test</li>



<li>1 output port – clock for gated clock</li>
</ul>



<h4 class="wp-block-heading"><strong>Well Taps</strong></h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" decoding="async" width="898" height="692" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-37.png?resize=898%2C692&#038;ssl=1" alt="" class="wp-image-312" style="width:388px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-37.png?w=898&amp;ssl=1 898w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-37.png?resize=300%2C231&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-37.png?resize=768%2C592&amp;ssl=1 768w" sizes="(max-width: 898px) 100vw, 898px" /></figure>



<ul class="wp-block-list">
<li>Physical only cell which helps to tie MOS Substrate and N-Wells to VDD and GND levels, and thus avoid latch-up possibilities</li>



<li>Switching circuits dump current into Well/ Substrate and if there is a high resistance between Well/ Substrate and the VDD/ GND grids the Substrate can be at different potential than VDD/ GND which causes latch-up</li>



<li>Well Tap Cells reduce resistance between VDD/ GND to wells of the Substrate</li>



<li>Tap Cells are usually placed on the Power Rails of the Standard Cells</li>



<li>Standard Cells do not have internal tap to N-well (P substrate process) to reduce design complexity of Standard Cells</li>



<li>These library cells do not have any signal connectivity</li>



<li>Hence Tap to Wells is done by external cells called &#8220;Tap cells&#8221; which are sprinkled all over Core Area at regular distance as decided by the foundry</li>



<li>More Taps reduces resistance, but will also increases core area, so we need a trade-off which will be provided by the foundry</li>



<li>Place well taps at regular intervals throughout the design with the specified distances and snaps them to legal positions</li>
</ul>



<h4 class="wp-block-heading"><strong>End Cap</strong> cells in VLSI</h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="474" height="125" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-38.png?resize=474%2C125&#038;ssl=1" alt="" class="wp-image-313" style="width:478px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-38.png?w=474&amp;ssl=1 474w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-38.png?resize=300%2C79&amp;ssl=1 300w" sizes="(max-width: 474px) 100vw, 474px" /></figure>



<ul class="wp-block-list">
<li>End-cap cells are preplaced physical-only cells required to meet certaindesign rules and placed at the ends of the site rows by satisfying well tie-off requirements for the core rows</li>



<li>These library cells do not have any signal connectivity</li>



<li>They connect only to the power and ground rails once power rails are created in the design</li>



<li>They also ensure that gaps do not occur between the well and implant layers i.e. well proximity effect</li>



<li>This prevents DRC violations by satisfying well tie-off requirements for the core rows</li>



<li>Each end of the core row, left and right, can have only one end cap cell specified</li>



<li>However, you can specify a list of different end caps for inserting horizontal end cap lines, which terminate the top and bottom boundaries of objects such as macros</li>



<li>End caps have a fixed attribute and cannot be moved by optimization steps</li>



<li>A core row can be fragmented (contains gaps), since rows do not intersect objects such as power domains. For this, the tool places end cap cells on both ends of the un-fragmented segment</li>
</ul>



<h4 class="wp-block-heading"><strong>Filler Cells</strong></h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="755" height="451" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-39.png?resize=755%2C451&#038;ssl=1" alt="" class="wp-image-314" style="width:422px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-39.png?w=755&amp;ssl=1 755w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-39.png?resize=300%2C179&amp;ssl=1 300w" sizes="(max-width: 755px) 100vw, 755px" /></figure>



<ul class="wp-block-list">
<li>Physical only cells which provide N-Well continuity and avoid N-Well spacing DRC</li>



<li>Filler cells are inserting for density rules, to meet Core Utilization targets and to avoid sagging of layer</li>



<li>Filler cells are inserting at the last stage of Placement and Routing</li>



<li>Some of the small cells also don’t have the Bulk/Substrate connection because of their small size (thin cells)</li>



<li>In those cases, the abutment of cells through inserting Filler Cells can connect those Substrates of small cells to VDD/ GND nets</li>



<li>i.e. those thin cells can use the bulk connection of the other cells</li>



<li>Filler cells are used to make up the Poly density (if that filler cell is having any poly structure inside), but certainly not for metal density</li>



<li>Filler cells are also useful for ECO</li>
</ul>



<h4 class="wp-block-heading"><strong>Decap Cells</strong></h4>



<figure class="wp-block-image size-full"><img data-recalc-dims="1" loading="lazy" decoding="async" width="300" height="169" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-40.png?resize=300%2C169&#038;ssl=1" alt="" class="wp-image-315"/></figure>



<ul class="wp-block-list">
<li>Decaps are on-chip decoupling capacitors (Extrinsic Capacitances) that are attached to the power mesh to decrease noise effects (dynamic I.R. Drop)</li>



<li>Supply voltage variations caused by Instantaneous Voltage Drop (IVD) lead to problems related to spurious transitions and delay variations</li>



<li>Decap cells are typically poly gate transistors where source and drain are connected to the ground rail, and the gate is connected to the power rail</li>



<li>Decap helps to smoothen out the Glitches and Ground bounce</li>



<li>3% to 8% of the core physical area is required for Decaps refered as decap density</li>



<li>It is important to place only the necessary amount of decaps since they normally come with a quite serious down-side as they are leaky devices</li>



<li>Another drawback, which many designers ignore, is the interaction of the decap cells with the package RLC network</li>



<li>Since the die is essentially a capacitor with very small R and L, and the package is a hug RL network, the more decap cells placed the more chance of tuning the circuit into its resonance frequency. That would be trouble, since both VDD and GND will be oscillating</li>



<li>NMOS Decaps are superior to PMOS decaps because of the high frequency operation and large REFF and CEFF for the same area</li>
</ul>



<h4 class="wp-block-heading"><strong>ESD Clamp</strong></h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="850" height="676" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-41.png?resize=850%2C676&#038;ssl=1" alt="" class="wp-image-316" style="width:394px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-41.png?w=850&amp;ssl=1 850w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-41.png?resize=300%2C239&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-41.png?resize=768%2C611&amp;ssl=1 768w" sizes="(max-width: 850px) 100vw, 850px" /></figure>



<ul class="wp-block-list">
<li>ESD Clamp/ ESD Diode is the primary protection device that protects against ESD surges at the I/O pad by clamping the voltage and allowing the high ESD current to be discharged safely to the ground terminal</li>



<li>The main function of ESD Clamp is to protect the Gate oxide</li>



<li>Snap back device (Diode implementation between the grounds) provides Snapback voltage (ESD Voltage) to get grounded thus the ESD current won’t be getting in to Gate</li>



<li>The design of ESD Clamp must ensure that Electrical Overstress (EOS) events do not cause failure</li>



<li>The ESD Clamp is essential for HBM, MM, and CDM</li>
</ul>



<h4 class="wp-block-heading"><strong>Spare Cells</strong></h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="537" height="375" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-42.png?resize=537%2C375&#038;ssl=1" alt="" class="wp-image-317" style="width:383px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-42.png?w=537&amp;ssl=1 537w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-42.png?resize=300%2C209&amp;ssl=1 300w" sizes="(max-width: 537px) 100vw, 537px" /></figure>



<ul class="wp-block-list">
<li>Pre-placed inactive (with inputs tied off) gates in the empty areas of a design (or even in the crowded areas) before tape-out (Mostly NAND Gates)</li>



<li>ECO Cells/ Spare Cells are collection of Gates coming in different sizes for doing small functional ECO and connect them with minimal mask changes called a metal-only ECO</li>



<li>Provides new functions on a design which exhibits post-production problems</li>



<li>No change is made to the diffusion layer, M1 and a contact layer only need to change</li>



<li>Disadvantages:
<ul class="wp-block-list">
<li>They are connected to VSS and VDD and despite having their inputs tied off, they are still drawing Static Current</li>



<li>The designer may not have the right cell in the right place at the time of the ECO</li>
</ul>
</li>
</ul>



<h4 class="wp-block-heading"><strong>Tie Cells</strong></h4>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="474" height="231" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-43.png?resize=474%2C231&#038;ssl=1" alt="" class="wp-image-318" style="width:438px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-43.png?w=474&amp;ssl=1 474w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-43.png?resize=300%2C146&amp;ssl=1 300w" sizes="(max-width: 474px) 100vw, 474px" /></figure>



<ul class="wp-block-list">
<li>Tie-high and Tie-Low cells are used to connect the Gate of the transistor to either Power or Ground</li>



<li>In deep sub micron process, if the Gate is connected to Power/ Ground, the transistor might be turned ON/ OFF due to Power or Ground Bounce</li>



<li>The suggestion from foundry is to use Tie Cells for the purpose</li>



<li>The cells which require VDD, comes and connect to Tie High (so Tie High is a Power Supply Cell), while the cells which wants VSS connects itself to Tie-Low</li>



<li>Without Tie Cells, unused inputs are tied to logic-high or logic-low, and these connections are made by routing the input pin right to the Power/ Ground grid</li>



<li>With Tie Cells, unused inputs in the original netlist are tied to logic-high or logic-low, and somewhere during the physical design process, Tie Cells are inserted</li>



<li>The unused inputs are then connected to a Tie-high or Tie-low Cell</li>
</ul>



<h4 class="wp-block-heading"><strong>Delay Cells</strong></h4>



<ul class="wp-block-list">
<li>Delay Cells
<ul class="wp-block-list">
<li>Are buffer cells with slower transition time</li>



<li>Can drive high currents</li>



<li>Are helpful in reducing Slew Rate (0-1 or 1-0 Transition Time)</li>



<li>Are of wider channel</li>



<li>Have delay starting from 20ps to few Nano seconds</li>



<li>Will have constant delay</li>
</ul>
</li>
</ul>



<h4 class="wp-block-heading"><strong>Metrology Cells</strong></h4>



<ul class="wp-block-list">
<li>To enable the reliable re-productivity of micro-scale devices used in high volume and low cost</li>



<li>To measure and monitor the process parameters during manufacturing</li>



<li>The effect of process variations during fabrication time can be identified and measured</li>
</ul>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2F11-types-of-cells-in-vlsi-physical-design%2F307%2F&amp;linkname=11%20Types%20of%20cells%20in%20VLSI%20Physical%20Design" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2F11-types-of-cells-in-vlsi-physical-design%2F307%2F&amp;linkname=11%20Types%20of%20cells%20in%20VLSI%20Physical%20Design" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2F11-types-of-cells-in-vlsi-physical-design%2F307%2F&amp;linkname=11%20Types%20of%20cells%20in%20VLSI%20Physical%20Design" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2F11-types-of-cells-in-vlsi-physical-design%2F307%2F&#038;title=11%20Types%20of%20cells%20in%20VLSI%20Physical%20Design" data-a2a-url="https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/" data-a2a-title="11 Types of cells in VLSI Physical Design"></a></p><p>The post <a href="https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/">11 Types of cells in VLSI Physical Design</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/11-types-of-cells-in-vlsi-physical-design/307/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">307</post-id>	</item>
		<item>
		<title>Power Planning</title>
		<link>https://learnvlsi.com/pd/power-planning/263/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=power-planning</link>
					<comments>https://learnvlsi.com/pd/power-planning/263/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Mon, 19 Aug 2024 05:16:28 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=263</guid>

					<description><![CDATA[<p>In the Physical design flow, Power planning is done once floorplanning gets completed. The idea here is to supply power [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/power-planning/263/">Power Planning</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In the Physical design flow, Power planning is done once floorplanning gets completed.</p>



<p>The idea here is to supply power througout the design.</p>



<h3 class="wp-block-heading">Types of Power Planning</h3>



<ul class="wp-block-list">
<li>core cell power management</li>



<li>I/O cell power management</li>
</ul>



<p>In core cell power management VDD and VSS power rings<br>are formed around the core and macro. In addition to this straps and trunks are created for macros<br>as per the power requirement.</p>



<p> In I/O cell power management, power rings are formed for I/O<br>cells and trunks are constructed between core power ring and power pads. Top to bottom<br>approach is used for the power analysis</p>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="801" height="597" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-21.png?resize=801%2C597&#038;ssl=1" alt="" class="wp-image-264" style="width:460px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-21.png?w=801&amp;ssl=1 801w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-21.png?resize=300%2C224&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-21.png?resize=768%2C572&amp;ssl=1 768w" sizes="(max-width: 801px) 100vw, 801px" /></figure>



<p><strong>Rings</strong></p>



<p>Carries VDD and VSS around the chip</p>



<p><strong>Stripes</strong></p>



<p>Carries VDD and VSS from Rings across the chip</p>



<p><strong>Rails</strong></p>



<p>Connect VDD and VSS to the standard cell VDD and VSS.</p>



<h3 class="wp-block-heading">2 methods of Power supply</h3>



<p></p>



<h4 class="wp-block-heading">Wirebond power supply</h4>



<p>In wire bounded only the edges can be used.</p>



<p>Disadvantage:</p>



<ul class="wp-block-list">
<li>More IR drop</li>



<li>Less Speed, needs more die area for IO limited design.</li>
</ul>



<h4 class="wp-block-heading">Flip-chip Power supply</h4>



<p>Advantage:</p>



<ul class="wp-block-list">
<li>Small IR drop</li>



<li>Very high speed design possible</li>
</ul>



<p>Disadvantage:</p>



<ul class="wp-block-list">
<li>Heat sink problem</li>



<li>Cost of flip-chip packing is more.</li>



<li>Less reliable than wirebond.</li>
</ul>



<h2 class="wp-block-heading">Flip-Chip Basics</h2>



<p>Flip the die upside down and the whole surface can be connected to package in principle.</p>



<figure class="wp-block-image is-resized"><a href="https://i0.wp.com/blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizw5UvUDXVpkZcxylcBk5YoNm5ipYc8YaUmbGQlgSD6uD5QO2zgfIKSmUhpWMVhH_Avx_34hOXRiz7BL16P7OqQ6nB4p16P4CQC2XBcmTg1iAf3YKh4bNWiFybZlUqTqbX8ydj9dsI_Wk/s1600/flipchip.jpg?ssl=1"><img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizw5UvUDXVpkZcxylcBk5YoNm5ipYc8YaUmbGQlgSD6uD5QO2zgfIKSmUhpWMVhH_Avx_34hOXRiz7BL16P7OqQ6nB4p16P4CQC2XBcmTg1iAf3YKh4bNWiFybZlUqTqbX8ydj9dsI_Wk/s1600/flipchip.jpg?w=1200&#038;ssl=1" alt="" style="width:580px;height:auto"/></a></figure>



<ul class="wp-block-list">
<li>Opportunity to add voltage sources to the core regions- but must have adequate ESD protection</li>



<li>Opportunity to reduce die size (less core supply cells in the IO ring; less IO PG supply cells in the IO ring; IO cells could be abutted)</li>



<li>The bumping process can be expensive</li>



<li>The substrate routing problem is more difficult (binding posts have larger separation than bump pads) A more expensive substrate may be required</li>



<li>The Package can in principle be same size as the die</li>



<li>Potentially faster operation as wire bond inductance is avoided. </li>
</ul>



<p>Two types of flipchips being designed currently.</p>



<p>&nbsp; &nbsp;Peripheral IO flipchip.</p>



<p>&nbsp; &nbsp;Area IO flipchip.</p>



<h3 class="wp-block-heading"><br>Peripheral IO flipchip</h3>



<p>Most IO cells remain in a conventional ring</p>



<p>IO cells can be abutted in Single Rows of IO cells</p>



<p>Dual Rows of IO cells can also be used</p>



<p>IO cells connect to bump pads via the redistribution layer (RDL). From bump pads we connect to bumps and then the package.</p>



<p>Limited benefits in terms of die size reduction</p>



<p>It may be possible to add core PG voltages directly to the core region. This would reduce the number of IO cells in the ring, reduce die size, and improve the voltage drop.</p>



<h3 class="wp-block-heading">Area IO flipchip</h3>



<p>IO cells are placed in the core region as well as the ring.</p>



<p>A big opportunity to reduce the die size</p>



<p>Opportunity to reduce voltage drop</p>



<p>Many unknowns: noise in core; large blockages in core</p>



<p>Probably requires a totally new class of IO cell library to be developed</p>



<p>IO cells connect to the package via RDL routing, but less RDL routing is required.      </p>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fpower-planning%2F263%2F&amp;linkname=Power%20Planning" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fpower-planning%2F263%2F&amp;linkname=Power%20Planning" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fpower-planning%2F263%2F&amp;linkname=Power%20Planning" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fpower-planning%2F263%2F&#038;title=Power%20Planning" data-a2a-url="https://learnvlsi.com/pd/power-planning/263/" data-a2a-title="Power Planning"></a></p><p>The post <a href="https://learnvlsi.com/pd/power-planning/263/">Power Planning</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/power-planning/263/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">263</post-id>	</item>
		<item>
		<title>LIB,LEF and DEF</title>
		<link>https://learnvlsi.com/pd/liblef-and-def/222/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=liblef-and-def</link>
					<comments>https://learnvlsi.com/pd/liblef-and-def/222/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 18 Aug 2024 13:01:22 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<category><![CDATA[Synthesis]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=222</guid>

					<description><![CDATA[<p>These files are the inputs for synthesis, floorplanning and are required for all the Physical Design stages. CONTENTS OF .LIB [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/liblef-and-def/222/">LIB,LEF and DEF</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>These files are the inputs for synthesis, floorplanning and are required for all the Physical Design stages.</p>



<h4 class="wp-block-heading"><strong>CONTENTS OF .LIB</strong></h4>



<ul class="wp-block-list">
<li>The information inside the Lib file can be divided into two main parts.</li>



<li>In the first part, it contains some information which is common for all the standard cells.</li>



<li>The common part of Lib file contains : 1) Library name and technology name 2) Units (of time, power, voltage, current, resistance and capacitance) 3) Value of operating condition ( process, voltage and temperature) – Max, Min and Typical</li>



<li>Cell delay is a function of input transition and output load and is calculated based on lookup tables.</li>



<li>Cell delays are calculated by Nonlinear Delay Model(NLDM) and composite current source (CCS) models.</li>



<li>Based on operating conditions there are three different lib files for Max, Min and Typical corner</li>
</ul>



<ul class="wp-block-list">
<li>In the second part of Lib file, it contains cell-specific information for each cell. The part of Lib file which contains cell-specific information is shown below.</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="892" height="401" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-19.png?resize=892%2C401&#038;ssl=1" alt="" class="wp-image-252" style="width:556px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-19.png?w=892&amp;ssl=1 892w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-19.png?resize=300%2C135&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-19.png?resize=768%2C345&amp;ssl=1 768w" sizes="(max-width: 892px) 100vw, 892px" /></figure>



<p><strong>Cell-specific information in Lib file is mainly:</strong></p>



<p><strong>1) Cell name</strong></p>



<p><strong>2) PG Pin name</strong></p>



<p><strong>3) Area of cell</strong></p>



<p><strong>4) Leakage power in respect of input pins logic state</strong></p>



<p><strong>5) Pins details</strong></p>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="583" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-96.png?resize=1024%2C583&#038;ssl=1" alt="" class="wp-image-549" style="width:611px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-96.png?resize=1024%2C583&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-96.png?resize=300%2C171&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-96.png?resize=768%2C437&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-96.png?w=1118&amp;ssl=1 1118w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h4 class="wp-block-heading"><strong>CONTENTS OF LEF</strong></h4>



<ul class="wp-block-list">
<li>A LEF file is used by the router tool in PnR design to get the location of standard cells pins to route them properly.</li>



<li>So it is basically the abstract form of layout of a standard cell.</li>



<li>A LEF file describing the Library has mainly two parts.</li>
</ul>



<p>1) Technology LEF</p>



<p>2) Cell LEF</p>



<p>.tech.lef (Cadence format)</p>



<p>.tf – technology file ( Synopsys format)</p>



<h4 class="wp-block-heading"><strong>1) TECHNOLOGY FILE</strong></h4>



<ul class="wp-block-list">
<li>Technology LEF part contains the information regarding all the metal&nbsp;interconnects, via information and related design rules&nbsp;whereas cell LEF part contains information related to the geometry of each cell.&nbsp;A sample snapshot is given below to show the information under technology LEF part.</li>
</ul>



<ul class="wp-block-list">
<li>Technology LEF part contains the following information</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="721" height="748" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-3.png?resize=721%2C748&#038;ssl=1" alt="" class="wp-image-224" style="width:366px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-3.png?w=721&amp;ssl=1 721w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-3.png?resize=289%2C300&amp;ssl=1 289w" sizes="(max-width: 721px) 100vw, 721px" /></figure>



<p></p>



<p>1) LEF Version ( like 5.7 or 5.8 )</p>



<p>2) Units (for database, time,&nbsp; resistance, capacitance)</p>



<p>3) Manufacturing grids&nbsp;</p>



<p>4) Design rules and other details of BEOL (Back End Of Layers)</p>



<ul class="wp-block-list">
<li>Layer name (like poly, contact, via1, metal1 etc)<ul><li>Layer type ( like routing, masterslice, cut etc)</li></ul><ul><li>Preferred direction (like horizontal or vertical)</li></ul><ul><li>Pitch</li></ul><ul><li>Minimum width</li></ul><ul><li>Spacing&nbsp;</li></ul>
<ul class="wp-block-list">
<li>Sheet resistance</li>
</ul>
</li>
</ul>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="531" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-97.png?resize=1024%2C531&#038;ssl=1" alt="" class="wp-image-551" style="width:586px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-97.png?resize=1024%2C531&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-97.png?resize=300%2C155&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-97.png?resize=768%2C398&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-97.png?w=1119&amp;ssl=1 1119w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h4 class="wp-block-heading"><strong>2) CELL LEF</strong></h4>



<ul class="wp-block-list">
<li>Cell LEF part contains the information related to each cell present in the standard cell library in separate sections.</li>
</ul>



<ul class="wp-block-list">
<li>Cell LEF basically contains the following information</li>
</ul>



<p>1) Cell name (like AND2X2, CLKBUF1 etc)</p>



<p>2) Class ( like CORE or PAD)</p>



<p>3) Origin 0 0</p>



<p>4) Size (width x height)</p>



<p>5) Symmetry ( like XY, X, Y etc)</p>



<p>6) Pin Information</p>



<ul class="wp-block-list">
<li>Pin name (like A, B, Y etc)<ul><li>Direction (like input, output, inout etc )</li></ul><ul><li>Use (like Signal, clock, power etc)</li></ul><ul><li>Shape&nbsp; (Abutment in case of power pin)</li></ul>
<ul class="wp-block-list">
<li>Layer (like Metal1, Metal2 etc )</li>
</ul>
</li>
</ul>



<p>The rectangular coordinate of pin (llx lly urx ury).</p>



<p><strong>Technology specific inputs</strong></p>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="472" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-20.png?resize=1024%2C472&#038;ssl=1" alt="" class="wp-image-254" style="width:611px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-20.png?resize=1024%2C472&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-20.png?resize=300%2C138&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-20.png?resize=768%2C354&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-20.png?w=1109&amp;ssl=1 1109w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h4 class="wp-block-heading"><strong>CONTENTS OF DEF</strong></h4>



<ul class="wp-block-list">
<li>DEF file is used to represent the Physical layout of an Integrated Circuit (IC) in ASCII format.</li>
</ul>



<ul class="wp-block-list">
<li>A DEF file contains the design-specific information of the circuit and it is a representation of the design at any point during the physical design. DEF conveys logical design data and physical design data.&nbsp;Logical design data includes internal connectivity (represented by netlist), group information and physical constraints. Physical data includes placement location and orientation of components and routing geometry.</li>
</ul>



<ul class="wp-block-list">
<li>A standard DEF file contains mainly following sections and order of statement is also important.</li>
</ul>



<ul class="wp-block-list">
<li><strong>[ VERSION statement&nbsp;]</strong></li>



<li><strong>[ DIVIDERCHAR statement ]</strong></li>



<li><strong>[ BUSBITCHARS statement ]</strong></li>



<li><strong>[ DESIGN statement ]</strong></li>



<li><strong>[ TECHNOLOGY statement ]</strong></li>



<li><strong>[ UNITS statements ]</strong></li>



<li><strong>[ DIAAREA statement ]</strong></li>
</ul>



<ul class="wp-block-list">
<li><strong>[ ROW statement ]</strong></li>



<li><strong>[ TRACKS statement ]</strong></li>



<li><strong>[ CELLGRID statement ]</strong></li>



<li><strong>[ VIAS statements ]</strong></li>
</ul>



<ul class="wp-block-list">
<li><strong>[ NONDEFAULTRULES statement ]</strong></li>



<li><strong>[ COMPONENTS statement ]</strong></li>



<li><strong>[ PINS section ]</strong></li>



<li><strong>[ BLOCKAGE section ]</strong></li>
</ul>



<ul class="wp-block-list">
<li><strong>[ FILLS section ]</strong></li>



<li><strong>[ SPECIALNETS section ]</strong></li>



<li><strong>[ NETS section ]</strong></li>



<li><strong>[ SCANCHAINS section ]</strong></li>



<li><strong>[ GROUPS section ]</strong></li>



<li><strong>[ BEGINEXT section ]</strong></li>



<li><strong>END DESIGN statement</strong></li>
</ul>



<p>Header statement:</p>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="344" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-5.png?resize=625%2C344&#038;ssl=1" alt="" class="wp-image-226" style="width:397px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-5.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-5.png?resize=300%2C165&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>



<h3 class="wp-block-heading">ROW statement:</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="755" height="233" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-6.png?resize=755%2C233&#038;ssl=1" alt="" class="wp-image-227" style="width:388px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-6.png?w=755&amp;ssl=1 755w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-6.png?resize=300%2C93&amp;ssl=1 300w" sizes="(max-width: 755px) 100vw, 755px" /></figure>



<h3 class="wp-block-heading">Track statement:</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="205" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-12.png?resize=625%2C205&#038;ssl=1" alt="" class="wp-image-233" style="width:414px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-12.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-12.png?resize=300%2C98&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>



<h3 class="wp-block-heading">GCell Grid statement:</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="119" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-13.png?resize=625%2C119&#038;ssl=1" alt="" class="wp-image-234" style="width:434px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-13.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-13.png?resize=300%2C57&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>



<h3 class="wp-block-heading">Via statement:</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="165" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-8.png?resize=625%2C165&#038;ssl=1" alt="" class="wp-image-229" style="width:432px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-8.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-8.png?resize=300%2C79&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>



<p>All vias consist of shapes on three Layers</p>



<p>1.A cut layer</p>



<p>2.Two routing (or masterslice) layers that connect through that cut layer</p>



<h3 class="wp-block-heading">Component section</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="864" height="288" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-9.png?resize=864%2C288&#038;ssl=1" alt="" class="wp-image-230" style="width:490px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-9.png?w=864&amp;ssl=1 864w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-9.png?resize=300%2C100&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-9.png?resize=768%2C256&amp;ssl=1 768w" sizes="(max-width: 864px) 100vw, 864px" /></figure>



<p><strong>Pin section:</strong></p>



<p>•It defines external pins</p>



<p>•Each pin definition assigns a pin name for the external pin and associates the pin name with a corresponding internal net name</p>



<p>•The pin name and the net name can be the same.</p>



<p><strong>Blockage section:</strong></p>



<p>•Defines placement and routing blockages in the design</p>



<p>•PUSHDOWN : Specifies that the blockage was pushed down into the block from the top level of the design</p>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="451" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-10.png?resize=625%2C451&#038;ssl=1" alt="" class="wp-image-231" style="width:398px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-10.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-10.png?resize=300%2C216&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>



<h3 class="wp-block-heading">Net section:</h3>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="625" height="377" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-11.png?resize=625%2C377&#038;ssl=1" alt="" class="wp-image-232" style="width:399px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-11.png?w=625&amp;ssl=1 625w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-11.png?resize=300%2C181&amp;ssl=1 300w" sizes="(max-width: 625px) 100vw, 625px" /></figure>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fliblef-and-def%2F222%2F&amp;linkname=LIB%2CLEF%20and%20DEF" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fliblef-and-def%2F222%2F&amp;linkname=LIB%2CLEF%20and%20DEF" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fliblef-and-def%2F222%2F&amp;linkname=LIB%2CLEF%20and%20DEF" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fliblef-and-def%2F222%2F&#038;title=LIB%2CLEF%20and%20DEF" data-a2a-url="https://learnvlsi.com/pd/liblef-and-def/222/" data-a2a-title="LIB,LEF and DEF"></a></p><p>The post <a href="https://learnvlsi.com/pd/liblef-and-def/222/">LIB,LEF and DEF</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/liblef-and-def/222/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">222</post-id>	</item>
		<item>
		<title>Macro Placement Guidelines</title>
		<link>https://learnvlsi.com/pd/macro-placement-guidelines/218/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=macro-placement-guidelines</link>
					<comments>https://learnvlsi.com/pd/macro-placement-guidelines/218/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 18 Aug 2024 11:32:29 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=218</guid>

					<description><![CDATA[<p>There are some guidelines that need to be followed while placing macros to avoid congestion and other design problems from [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/macro-placement-guidelines/218/">Macro Placement Guidelines</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>There are some guidelines that need to be followed while placing macros to avoid congestion and other design problems from occurring at the later stages of the design.</p>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="497" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/before-macroplace.png?resize=1024%2C497&#038;ssl=1" alt="" class="wp-image-219" style="width:482px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/before-macroplace.png?resize=1024%2C497&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/before-macroplace.png?resize=300%2C146&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/before-macroplace.png?resize=768%2C373&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/before-macroplace.png?w=1096&amp;ssl=1 1096w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Macros and all other logics will be sitting outside the die area, once the core and die gets created.</p>



<h4 class="wp-block-heading">What are macros?</h4>



<p id="73cb">Macros are larger functional blocks like the IC&#8217;s memories&nbsp;<em>(SRAM, ROM),&nbsp;</em>analog devices&nbsp;<em>(DAC, ADC),&nbsp;</em>clock macros (PLLs), or interface macros. These macros are typically provided by third-party IP&nbsp;<em>(Intellectual Property)</em>&nbsp;vendors or developed in-house by the design team. Some of the qualities of a macro are:</p>



<ol class="wp-block-list">
<li>They consume a larger area.</li>



<li>They are power-hungry devices i.e. they consume huge power.</li>



<li>They are placed at the boundary of the core area.</li>
</ol>



<p>After executing <strong>shape_blocks </strong>command, tool will do a rough placement of macros.</p>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="744" height="602" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/floorplan-1.png?resize=744%2C602&#038;ssl=1" alt="" class="wp-image-220" style="width:366px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/floorplan-1.png?w=744&amp;ssl=1 744w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/floorplan-1.png?resize=300%2C243&amp;ssl=1 300w" sizes="(max-width: 744px) 100vw, 744px" /></figure>



<h4 class="wp-block-heading">Macro Placement guidelines:</h4>



<h4 class="wp-block-heading"><em>What guidelines should I follow when placing hard macros in the floorplan?</em></h4>



<p><em>This solution provides designers performing physical design (Place &amp; Route) with tips and guidelines to create an initial floorplan. These guidelines will help you maximize the space available for standard cell placement, avoid routing congestion problems, and achieve the power supply routing requirements</em>.</p>



<p><em>This solution focuses on two main areas to help you achieve high-density&nbsp;designs:</em></p>



<ul class="wp-block-list">
<li><em>Macro Placement</em></li>



<li><em>Row Generation</em></li>
</ul>



<p>These tips range from simple guidelines to more advanced ones that&nbsp;may or may not apply to your design. For your design, you also have to take into account specific conditions and constraints such as:</p>



<ul class="wp-block-list">
<li><em>Timing</em></li>



<li><em>Clock</em></li>



<li><em>Power</em></li>



<li><em>IP specific restriction</em></li>



<li><em>DFT test</em></li>
</ul>



<ol class="wp-block-list">
<li><strong><em>Place macros around chip periphery</em></strong></li>
</ol>



<p><em>If you do not have a rationale to place the macro inside the core area, place macros around the chip periphery. Placing a macro inside the core can invite serious consequences during routing due to a lot of detour routing. </em></p>



<p><em>This is because macros are equal to a large obstacle for routing. Also, placing the hard macros around the core-periphery makes it easier to supply power to these macros, and reduces the chance of IR drop problems for macros consuming high amounts of power.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/v2/C4E12AQFocfqokGmTcA/article-inline_image-shrink_400_744/article-inline_image-shrink_400_744/0/1619731107664?e=1729123200&amp;v=beta&amp;t=M3-ycX07I86ztQsDGJPv8m_qXr0ETM2XOLWSYU9yCSY" alt="No alt text provided for this image" style="width:562px;height:auto"/></figure>



<p><strong><em>2. Consider connections to fixed&nbsp;cells when placing macros</em></strong></p>



<p><em>When you decide the macro position, you have to pay attention to connections to fixed elements such as I/O and pre-placed macros.&nbsp;Place macros near the corresponding associate fixed&nbsp;elements. Check connections by displaying flight lines in the GUI.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/C4E12AQH6nesrtXfDXg/article-inline_image-shrink_400_744/0/1619731048228?e=1729123200&amp;v=beta&amp;t=CWu8b6iHH-cdgb1TQ2_ah_4kmP_KdFYFcGRDqDoLo-M" alt="No alt text provided for this image" style="width:542px;height:auto"/></figure>



<p>&nbsp;<strong><em>3. Orient macros to minimize the distance between pins</em></strong></p>



<p><em>When you decide the orientation of macros, you also have to take into account the positions of the pins and the respective connections.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/C4E12AQH_2roP3Qcv5g/article-inline_image-shrink_400_744/0/1619731076758?e=1729123200&amp;v=beta&amp;t=s428VEGhiJ2nFlHWp7SPreiLMq9PLi0RI-hh3VxyZfs" alt="No alt text provided for this image" style="width:506px;height:auto"/></figure>



<h2 class="wp-block-heading"><strong><em>4. Reserve enough room around macros</em></strong></h2>



<p><em>For regular net routing and power grid, you have to reserve enough routing space around macros. In this case, estimating routing resources with precision is very important. </em></p>



<p><em>Use the congestion map from trialRoute to identify hotspots between macros and adjust the placement as needed.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/v2/C4E12AQE9CViaamVl3w/article-inline_image-shrink_400_744/article-inline_image-shrink_400_744/0/1619731144431?e=1729123200&amp;v=beta&amp;t=nIusHmSPDKyGO1tMNhCPz-xH6T341MPS9OTScPXAHko" alt="No alt text provided for this image" style="width:529px;height:auto"/></figure>



<h2 class="wp-block-heading"><strong><em>5. Reduce open fields as much as possible</em></strong></h2>



<p><em>Except for reserved routing resources, remove dead space to increase the area for random logic. </em></p>



<p><em>Choosing a different aspect ratio (if that option is available) can eliminate open fields.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/v2/C4E12AQF-OmdYe1CzpA/article-inline_image-shrink_400_744/article-inline_image-shrink_400_744/0/1619731164633?e=1729123200&amp;v=beta&amp;t=-9JkOAckAzwVUnrG5ZMmV1CXbCB9VTODSCkJLDHztRk" alt="No alt text provided for this image" style="width:525px;height:auto"/></figure>



<h2 class="wp-block-heading"><strong><em>6. Reserve space for power grid</em></strong></h2>



<p><em>The number of required power routes can change based on the power consumption. </em></p>



<p><em>You have to estimate the power consumption and reserve enough room for the power grid. If you underestimate the space required for power routing, you can encounter routing problems.</em></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://media.licdn.com/dms/image/v2/C4E12AQEhBWNxVK6FAA/article-inline_image-shrink_400_744/article-inline_image-shrink_400_744/0/1619731197033?e=1729123200&amp;v=beta&amp;t=lnQynKX8LNvTaIuRIQ7w71N059g15m-21g6WEHTvYfg" alt="No alt text provided for this image" style="width:475px;height:auto"/></figure>



<p><strong>Note: </strong>At least one pair of metal layer tracks must be between two macros. This pair of tracks will be used as Vss and Vdd in the power planning stage. If the standard cell is present between the macros and if the metal layers between the macros are not, then this will lead to an IR drop.</p>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fmacro-placement-guidelines%2F218%2F&amp;linkname=Macro%20Placement%20Guidelines" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fmacro-placement-guidelines%2F218%2F&amp;linkname=Macro%20Placement%20Guidelines" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fmacro-placement-guidelines%2F218%2F&amp;linkname=Macro%20Placement%20Guidelines" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fmacro-placement-guidelines%2F218%2F&#038;title=Macro%20Placement%20Guidelines" data-a2a-url="https://learnvlsi.com/pd/macro-placement-guidelines/218/" data-a2a-title="Macro Placement Guidelines"></a></p><p>The post <a href="https://learnvlsi.com/pd/macro-placement-guidelines/218/">Macro Placement Guidelines</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/macro-placement-guidelines/218/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">218</post-id>	</item>
		<item>
		<title>Basic terminologies in Floorplan</title>
		<link>https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=basic-terminologies-in-floorplan</link>
					<comments>https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 18 Aug 2024 06:37:50 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=207</guid>

					<description><![CDATA[<p>Before jumping into floorplan implementation using tools like Innovus or ICC2, it’s essential to understand a few critical parameters. These [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/">Basic terminologies in Floorplan</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p data-start="344" data-end="642">Before jumping into <strong data-start="364" data-end="392">floorplan implementation</strong> using tools like Innovus or ICC2, it’s essential to understand a few critical parameters. These parameters will guide your decisions and help you create a <strong data-start="548" data-end="589">clean, optimized, and routable layout</strong>. Let’s break them down from basics to more advanced.</p>
<hr data-start="644" data-end="647" />
<h2 data-start="649" data-end="671"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f9f1.png" alt="🧱" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="655" data-end="671">1. Core Area</strong></h2>
<p data-start="673" data-end="799">The <strong data-start="677" data-end="690">core area</strong> is the central region of the die (the complete chip) where <strong data-start="750" data-end="772">all types of cells</strong> are placed. This includes:</p>
<ul data-start="801" data-end="876">
<li data-start="801" data-end="821">
<p data-start="803" data-end="821"><strong data-start="803" data-end="821">Standard cells</strong></p>
</li>
<li data-start="822" data-end="834">
<p data-start="824" data-end="834"><strong data-start="824" data-end="834">Macros</strong></p>
</li>
<li data-start="835" data-end="850">
<p data-start="837" data-end="850"><strong data-start="837" data-end="850">Blockages</strong></p>
</li>
<li data-start="851" data-end="876">
<p data-start="853" data-end="876"><strong data-start="853" data-end="876">Physical-only cells</strong></p>
</li>
</ul>
<p data-start="878" data-end="999"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="881" data-end="895">Important:</strong> No cells can be placed outside the core area. The placement engine works strictly within this boundary.</p>
<h3 data-start="1001" data-end="1039"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f522.png" alt="🔢" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Formula to calculate core size:</h3>
<p data-start="1041" data-end="1135"><strong data-start="1041" data-end="1135">Core size = (Standard cell area + Macro area + Blockages area) / Standard cell utilization</strong></p>
<p data-start="1137" data-end="1236">This ensures you allocate <strong data-start="1163" data-end="1179">enough space</strong> for cells while considering your <strong data-start="1213" data-end="1235">target utilization</strong>.</p>
<hr data-start="1238" data-end="1241" />
<h2 data-start="1243" data-end="1268"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f9ed.png" alt="🧭" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="1249" data-end="1268">2. Aspect Ratio</strong></h2>
<p data-start="1270" data-end="1368">The <strong data-start="1274" data-end="1290">aspect ratio</strong> determines the <strong data-start="1306" data-end="1315">shape</strong> of the core area. It&#8217;s the ratio of height to width.</p>
<h3 data-start="1370" data-end="1385"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4cc.png" alt="📌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Formula:</h3>
<p data-start="1387" data-end="1446"><strong data-start="1387" data-end="1446">Aspect ratio = Height of core area / Width of core area</strong></p>
<ul data-start="1448" data-end="1634">
<li data-start="1448" data-end="1507">
<p data-start="1450" data-end="1507">If the aspect ratio is <strong data-start="1473" data-end="1480">1.0</strong>, the core is a <strong data-start="1496" data-end="1506">square</strong>.</p>
</li>
<li data-start="1508" data-end="1570">
<p data-start="1510" data-end="1570">If it&#8217;s <strong data-start="1518" data-end="1525">0.5</strong>, the core is <strong data-start="1539" data-end="1548">wider</strong> (width = 2 × height).</p>
</li>
<li data-start="1571" data-end="1634">
<p data-start="1573" data-end="1634">If it&#8217;s <strong data-start="1581" data-end="1588">2.0</strong>, the core is <strong data-start="1602" data-end="1612">taller</strong> (height = 2 × width).</p>
</li>
</ul>
<p data-start="1636" data-end="1816">This impacts how well the routing engine can handle congestion. Some routing patterns work better in <strong data-start="1737" data-end="1747">square</strong> or <strong data-start="1751" data-end="1775">slightly rectangular</strong> regions depending on design constraints.</p>
<h3 data-start="1818" data-end="1861"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Alternative formula (tool-specific):</h3>
<p data-start="1863" data-end="1933"><strong data-start="1863" data-end="1933">Aspect ratio = Horizontal routing tracks / Vertical routing tracks</strong></p>
<p data-start="1935" data-end="2047">The number of routing tracks in horizontal/vertical directions influences the actual shape and routing capacity.</p>
<hr data-start="2049" data-end="2052" />
<h2 data-start="2054" data-end="2081"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f9f1.png" alt="🧱" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="2060" data-end="2081">3. Routing Tracks</strong></h2>
<p data-start="2083" data-end="2246">A <strong data-start="2085" data-end="2102">routing track</strong> is a <strong data-start="2108" data-end="2124">virtual line</strong> on a metal layer used to guide routes. These don’t physically exist but act as <strong data-start="2204" data-end="2223">reference paths</strong> for router algorithms.</p>
<ul data-start="2248" data-end="2451">
<li data-start="2248" data-end="2304">
<p data-start="2250" data-end="2304">Routing tracks run <strong data-start="2269" data-end="2285">horizontally</strong> or <strong data-start="2289" data-end="2303">vertically</strong>.</p>
</li>
<li data-start="2305" data-end="2363">
<p data-start="2307" data-end="2363">The <strong data-start="2311" data-end="2342">distance between two tracks</strong> is called <strong data-start="2353" data-end="2362">pitch</strong>.</p>
</li>
<li data-start="2364" data-end="2451">
<p data-start="2366" data-end="2451">Routers snap nets to these tracks for <strong data-start="2404" data-end="2427">efficient alignment</strong> and <strong data-start="2432" data-end="2450">DRC compliance</strong>.</p>
</li>
</ul>
<p data-start="2453" data-end="2535">These tracks are tightly packed and follow the <strong data-start="2500" data-end="2516">design rules</strong> of the technology.</p>
<hr data-start="2537" data-end="2540" />
<h2 data-start="2542" data-end="2566"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4ca.png" alt="📊" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="2548" data-end="2566">4. Utilization</strong></h2>
<p data-start="2568" data-end="2639"><strong data-start="2568" data-end="2583">Utilization</strong> defines how much of the core area is occupied by cells.</p>
<h3 data-start="2641" data-end="2656"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4cc.png" alt="📌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Formula:</h3>
<p data-start="2658" data-end="2728"><strong data-start="2658" data-end="2728">Utilization = (Standard cell area + Macro area) / Core area × 100%</strong></p>
<ul data-start="2730" data-end="2965">
<li data-start="2730" data-end="2822">
<p data-start="2732" data-end="2822">Typically, <strong data-start="2743" data-end="2769">standard cells use 70%</strong> of the area, and <strong data-start="2787" data-end="2798">routing</strong> uses the remaining 30%.</p>
</li>
<li data-start="2823" data-end="2965">
<p data-start="2825" data-end="2965">However, if your design has <strong data-start="2853" data-end="2869">large macros</strong>, you may need to <strong data-start="2887" data-end="2923">reduce standard cell utilization</strong> to ensure there’s still room for routing.</p>
</li>
</ul>
<p data-start="2967" data-end="3094"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="2970" data-end="2978">Tip:</strong> Over-utilizing space will lead to <strong data-start="3013" data-end="3035">routing congestion</strong> and <strong data-start="3040" data-end="3061">timing violations</strong>. Under-utilizing wastes silicon.</p>
<hr data-start="3096" data-end="3099" />
<h2 data-start="3101" data-end="3132"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f3ed.png" alt="🏭" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="3107" data-end="3132">5. Manufacturing Grid</strong></h2>
<p data-start="3134" data-end="3327">The <strong data-start="3138" data-end="3160">manufacturing grid</strong> defines the <strong data-start="3173" data-end="3195">minimum resolution</strong> the <strong data-start="3200" data-end="3225">foundry can fabricate</strong> on silicon. It represents the <strong data-start="3256" data-end="3278">smallest step size</strong> or point on a grid where a feature can be drawn.</p>
<ul data-start="3329" data-end="3469">
<li data-start="3329" data-end="3363">
<p data-start="3331" data-end="3363">Found in your <strong data-start="3345" data-end="3362">tech LEF file</strong>.</p>
</li>
<li data-start="3364" data-end="3469">
<p data-start="3366" data-end="3469">Example: A manufacturing grid of <strong data-start="3399" data-end="3411">0.005 µm</strong> means you can’t define geometries smaller than this step.</p>
</li>
</ul>
<p data-start="3471" data-end="3540">This grid ensures <strong data-start="3489" data-end="3509">layout precision</strong> and <strong data-start="3514" data-end="3539">foundry compatibility</strong>.</p>
<hr data-start="3542" data-end="3545" />
<h2 data-start="3547" data-end="3578"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4d0.png" alt="📐" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="3553" data-end="3578">6. Standard Cell Site</strong></h2>
<p data-start="3580" data-end="3673">A <strong data-start="3582" data-end="3604">standard cell site</strong> is the <strong data-start="3612" data-end="3631">basic unit size</strong> in a floorplan where cells can be placed.</p>
<ul data-start="3675" data-end="3844">
<li data-start="3675" data-end="3778">
<p data-start="3677" data-end="3778">It has <strong data-start="3684" data-end="3712">minimum width and height</strong>, and all standard cells are placed in <strong data-start="3751" data-end="3764">multiples</strong> of this size.</p>
</li>
<li data-start="3779" data-end="3844">
<p data-start="3781" data-end="3844">Even filler cells (used to fill gaps) occupy one or more sites.</p>
</li>
</ul>
<p data-start="3846" data-end="3940"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Knowing site size helps you visualize and optimize <strong data-start="3900" data-end="3917">row placement</strong> and <strong data-start="3922" data-end="3939">macro fitting</strong>.</p>
<hr data-start="3942" data-end="3945" />
<h2 data-start="3947" data-end="3978"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f3e2.png" alt="🏢" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="3953" data-end="3978">7. Standard Cell Rows</strong></h2>
<p data-start="3980" data-end="4079">The <strong data-start="3984" data-end="3997">core area</strong> is divided into <strong data-start="4014" data-end="4022">rows</strong>, and these rows are where <strong data-start="4049" data-end="4067">standard cells</strong> are placed.</p>
<ul data-start="4081" data-end="4270">
<li data-start="4081" data-end="4162">
<p data-start="4083" data-end="4162">All rows have <strong data-start="4097" data-end="4113">fixed height</strong>, and standard cells align <strong data-start="4140" data-end="4161">within these rows</strong>.</p>
</li>
<li data-start="4163" data-end="4270">
<p data-start="4165" data-end="4270">The <strong data-start="4169" data-end="4178">width</strong> of the standard cells may vary, but the <strong data-start="4219" data-end="4229">height</strong> is always a multiple of the site height.</p>
</li>
</ul>
<p data-start="4272" data-end="4295">This alignment ensures:</p>
<ul data-start="4296" data-end="4375">
<li data-start="4296" data-end="4329">
<p data-start="4298" data-end="4329"><strong data-start="4298" data-end="4323">Power rails (VDD/VSS)</strong> match</p>
</li>
<li data-start="4330" data-end="4351">
<p data-start="4332" data-end="4351"><strong data-start="4332" data-end="4351">Clean placement</strong></p>
</li>
<li data-start="4352" data-end="4375">
<p data-start="4354" data-end="4375"><strong data-start="4354" data-end="4375">No DRC violations</strong></p>
</li>
</ul>
<hr data-start="4377" data-end="4380" />
<h2 data-start="4382" data-end="4408"><img src="https://s.w.org/images/core/emoji/15.1.0/72x72/1f504.png" alt="🔄" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong data-start="4388" data-end="4408">8. Inverted Rows</strong></h2>
<p data-start="4410" data-end="4480">To <strong data-start="4413" data-end="4434">share power rails</strong> efficiently, alternate rows are <strong data-start="4467" data-end="4479">inverted</strong>.</p>
<h3 data-start="4482" data-end="4494">Example:</h3>
<ul data-start="4496" data-end="4573">
<li data-start="4496" data-end="4534">
<p data-start="4498" data-end="4534"><strong data-start="4498" data-end="4508">Row 1:</strong> VDD on top, VSS on bottom</p>
</li>
<li data-start="4535" data-end="4573">
<p data-start="4537" data-end="4573"><strong data-start="4537" data-end="4547">Row 2:</strong> VSS on top, VDD on bottom</p>
</li>
</ul>
<p data-start="4575" data-end="4579">Why?</p>
<ul data-start="4581" data-end="4697">
<li data-start="4581" data-end="4643">
<p data-start="4583" data-end="4643">Cells in adjacent rows can <strong data-start="4610" data-end="4642">share the same VSS/VDD rails</strong>.</p>
</li>
<li data-start="4644" data-end="4697">
<p data-start="4646" data-end="4697">This saves <strong data-start="4657" data-end="4678">routing resources</strong> and <strong data-start="4683" data-end="4696">core area</strong>.</p>
</li>
</ul>
<p data-start="4699" data-end="4820">If you don’t follow this <strong data-start="4724" data-end="4750">inverted row structure</strong>, you’d need to leave extra space between rows, wasting valuable area.</p>
<h2 data-start="4827" data-end="4847"> </h2>
<p data-start="4849" data-end="4963">A good floorplan is the <strong data-start="4873" data-end="4887">foundation</strong> of a successful physical design flow. Understanding and correctly applying:</p>
<ul data-start="4965" data-end="5089">
<li data-start="4965" data-end="4980">
<p data-start="4967" data-end="4980"><strong data-start="4967" data-end="4980">Core size</strong></p>
</li>
<li data-start="4981" data-end="4999">
<p data-start="4983" data-end="4999"><strong data-start="4983" data-end="4999">Aspect ratio</strong></p>
</li>
<li data-start="5000" data-end="5020">
<p data-start="5002" data-end="5020"><strong data-start="5002" data-end="5020">Routing tracks</strong></p>
</li>
<li data-start="5021" data-end="5038">
<p data-start="5023" data-end="5038"><strong data-start="5023" data-end="5038">Utilization</strong></p>
</li>
<li data-start="5039" data-end="5063">
<p data-start="5041" data-end="5063"><strong data-start="5041" data-end="5063">Manufacturing grid</strong></p>
</li>
<li data-start="5064" data-end="5089">
<p data-start="5066" data-end="5089"><strong data-start="5066" data-end="5089">Cell sites and rows</strong></p>
</li>
</ul>
<p data-start="5091" data-end="5186">…ensures your layout is not only functional but also <strong data-start="5144" data-end="5157">optimized</strong> for timing, area, and power.</p>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fbasic-terminologies-in-floorplan%2F207%2F&amp;linkname=Basic%20terminologies%20in%20Floorplan" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fbasic-terminologies-in-floorplan%2F207%2F&amp;linkname=Basic%20terminologies%20in%20Floorplan" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fbasic-terminologies-in-floorplan%2F207%2F&amp;linkname=Basic%20terminologies%20in%20Floorplan" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fbasic-terminologies-in-floorplan%2F207%2F&#038;title=Basic%20terminologies%20in%20Floorplan" data-a2a-url="https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/" data-a2a-title="Basic terminologies in Floorplan"></a></p><p>The post <a href="https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/">Basic terminologies in Floorplan</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/basic-terminologies-in-floorplan/207/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">207</post-id>	</item>
		<item>
		<title>Why Floorplanning is important?</title>
		<link>https://learnvlsi.com/pd/why-floorplanning-is-important/200/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=why-floorplanning-is-important</link>
					<comments>https://learnvlsi.com/pd/why-floorplanning-is-important/200/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 18 Aug 2024 05:38:25 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=200</guid>

					<description><![CDATA[<p>Floorplan in VLSI Physical Design Every subsequent stage like placement, routing and timing closure is dependent on how good your [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/why-floorplanning-is-important/200/">Why Floorplanning is important?</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4 class="wp-block-heading">Floorplan in VLSI Physical Design</h4>



<p>Every subsequent stage like placement, routing and timing closure is dependent on how good your foorplan is. In a real time design, you go through many iterations before you arrive at an optimum floorplan.</p>



<p><br>Floorplanning takes in some of the geometrical constraints in a design. Examples of this are:</p>



<ul class="wp-block-list">
<li>Bonding pads for off-chip connections (often using wire bonding) are normally located at the circumference of the chip.</li>



<li>Line drivers often have to be located as close to bonding pads as possible.</li>



<li>Chip area is therefore in some cases given a minimum area in order to fit in the required number of pads.</li>



<li>Areas are clustered in order to limit data paths thus frequently featuring defined structures such as cache RAM, multiplier, barrel shifter, line driver and arithmetic logic unit.</li>



<li>Purchased intellectual property blocks (IP-blocks), such as a processor core, come in predefined area blocks.</li>



<li>Some IP-blocks come with legal limitations such as permitting no routing of signals directly above the block.</li>
</ul>



<h4 class="wp-block-heading">Need of Floorplanning</h4>



<p>The first step in the Physical Design flow is&nbsp;Floor Planning. Floorplanning is the process of identifying structures that should be placed close together, and allocating space for them in such a manner as to meet the sometimes conflicting goals of available space (cost of the chip), required performance, and the desire to have everything close to everything else.</p>



<p>    Based on the area of the design and the hierarchy, a suitable floorplan is decided upon. Floor Planning takes into account the macro&#8217;s used in the design, memory, other IP cores and their placement needs, the routing possibilities and also the area of the entire design. </p>



<p>Floor planning also decides the IO structure, aspect ratio of the design. </p>



<p><strong>A bad floor-plan will lead to waste-age of die area and routing congestion.</strong></p>



<p>    In many design methodologies, Area and Speed are considered to be things that should be traded off against each other. </p>



<p>The reason this is so is probably because there are limited routing resources, and the more routing resources that are used, the slower the design will operate. </p>



<p>Optimizing for minimum area allows the design to use fewer resources, but also allows the sections of the design to be closer together. </p>



<p>This leads to shorter interconnect distances, less routing resources to be used, faster end-to-end signal paths, and even faster and more consistent place and route times. </p>



<p>Done correctly , there are no negatives to Floor-planning.</p>



<p><br>As a general rule, data-path sections benefit most from Floorplanning, and random logic, state machines, and other non-structured logic can safely be left to the placer section of the place and route software.</p>



<p>&nbsp;&nbsp;&nbsp; Data paths are typically the areas of your design where multiple bits are processed in parallel with each bit being modified the same way with maybe some influence from adjacent bits. Example structures that make up data paths are Adders, Subtractors, Counters, Registers, and Muxes.</p>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fwhy-floorplanning-is-important%2F200%2F&amp;linkname=Why%20Floorplanning%20is%20important%3F" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fwhy-floorplanning-is-important%2F200%2F&amp;linkname=Why%20Floorplanning%20is%20important%3F" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fwhy-floorplanning-is-important%2F200%2F&amp;linkname=Why%20Floorplanning%20is%20important%3F" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Fwhy-floorplanning-is-important%2F200%2F&#038;title=Why%20Floorplanning%20is%20important%3F" data-a2a-url="https://learnvlsi.com/pd/why-floorplanning-is-important/200/" data-a2a-title="Why Floorplanning is important?"></a></p><p>The post <a href="https://learnvlsi.com/pd/why-floorplanning-is-important/200/">Why Floorplanning is important?</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/why-floorplanning-is-important/200/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">200</post-id>	</item>
		<item>
		<title>Floorplanning in VLSI</title>
		<link>https://learnvlsi.com/pd/floorplanning-in-vlsi/194/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=floorplanning-in-vlsi</link>
					<comments>https://learnvlsi.com/pd/floorplanning-in-vlsi/194/#respond</comments>
		
		<dc:creator><![CDATA[learnvlsiadmin]]></dc:creator>
		<pubDate>Sun, 18 Aug 2024 05:13:43 +0000</pubDate>
				<category><![CDATA[Floorplanning]]></category>
		<category><![CDATA[PD]]></category>
		<guid isPermaLink="false">https://learnvlsi.com/?p=194</guid>

					<description><![CDATA[<p>What is Floorplanning? A floorplanning is the process of placing&#160;blocks/macros in the chip/core area,thereby&#160;determining the routing areas between them. Floorplan [&#8230;]</p>
<p>The post <a href="https://learnvlsi.com/pd/floorplanning-in-vlsi/194/">Floorplanning in VLSI</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h4 class="wp-block-heading">What is Floorplanning?</h4>



<p>A floorplanning is the process of placing&nbsp;blocks/macros in the chip/core area,thereby&nbsp;determining the routing areas between them.</p>



<p>Floorplan determines the size of die and creates&nbsp;wire tracks for placement of standard cells. It&nbsp;creates power ground(PG) connections. </p>



<p>It also&nbsp;determines the I/O pin/pad placement information.</p>



<p><strong>Before starting with the floorplan we will perform&nbsp;<strong>import design, sanity checks&nbsp;</strong>and<strong>&nbsp;partitioning.</strong></strong></p>



<h4 class="wp-block-heading">Sanity checks in Floorplanning</h4>



<p>Sanity Checks mainly checks the quality of netlist in terms of timing.<br>— It also consists of checking the issues related to Library files, Timing Constraints, IOs and Optimization Directives</p>



<p>1. Library checks<br>&nbsp;&nbsp;&nbsp; • Missing cell information<br>&nbsp;&nbsp;&nbsp; • Missing pin information<br>&nbsp;&nbsp;&nbsp; • Duplicate cells</p>



<p>2. Design checks<br>&nbsp;&nbsp;&nbsp; • Inputs with floating pins<br>&nbsp;&nbsp;&nbsp; • Nets with tri-state drivers<br>&nbsp;&nbsp;&nbsp; • Nets with multiple drivers<br>&nbsp;&nbsp;&nbsp; • Combinational loops<br>&nbsp;&nbsp;&nbsp; • Empty modules<br>&nbsp;&nbsp;&nbsp; • Assign statements</p>



<p>3. Constraint checks<br>&nbsp;&nbsp;&nbsp; • All flops are clocked or not<br>&nbsp;&nbsp;&nbsp; • There should not be unconstraint paths<br>&nbsp;&nbsp;&nbsp; • Input and output delays</p>



<p><strong>Goals of Floorplanning:</strong></p>



<p><br>A good floorplanning should meet the following constrains.</p>



<p>•Minimize the total chip area</p>



<p>•Make routing phase easy (routable)</p>



<p>•Improve the performance by reducing signal delays.</p>



<h4 class="wp-block-heading">Inputs for floorplan:</h4>



<ul class="wp-block-list">
<li>Netlist (.v/ .vhd/ .edif)</li>



<li>Physical Libraries (.lef)</li>



<li>Timing Libraries (.lib)</li>



<li>Technology Files</li>



<li>Constraints (.sdc)</li>
</ul>



<p>Core area is approximately calculated by the tool from the Netlist</p>



<figure class="wp-block-image size-large is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="1024" height="513" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?resize=1024%2C513&#038;ssl=1" alt="" class="wp-image-345" style="width:671px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?resize=1024%2C513&amp;ssl=1 1024w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?resize=300%2C150&amp;ssl=1 300w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?resize=768%2C385&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?resize=1536%2C770&amp;ssl=1 1536w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/image-45.png?w=1730&amp;ssl=1 1730w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Note: </strong>LEF and Lib files need to be loaded before importing the design</p>



<h4 class="wp-block-heading">Output of floorplan:</h4>



<ul class="wp-block-list">
<li>Die/Block area</li>



<li>I/O pad/placed</li>



<li>Macro placed</li>



<li>Power grid design</li>



<li>Power pre-routing</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="703" height="776" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/fp.png?resize=703%2C776&#038;ssl=1" alt="" class="wp-image-202" style="width:310px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/fp.png?w=703&amp;ssl=1 703w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/fp.png?resize=272%2C300&amp;ssl=1 272w" sizes="(max-width: 703px) 100vw, 703px" /></figure>



<h4 class="wp-block-heading"><strong>Steps in Floorplan</strong></h4>



<ul class="wp-block-list">
<li>Initialize with Chip &amp; Core Aspect Ratio (AR)</li>



<li>Initialize with Core Utilization</li>



<li>Initialize Row Configuration &amp; Cell Orientation</li>



<li>Provide the Core to Pad/ IO spacing (Core to IO clearance)</li>



<li>Pins/ Pads Placement</li>



<li>Macro Placement by Fly-line Analysis</li>



<li>Macro Placement requirements are also need to consider</li>



<li>Blockage Management (Placement/ Routing)</li>
</ul>



<h3 class="wp-block-heading"><strong>IO Placement</strong></h3>



<ul class="wp-block-list">
<li>Chip Level its IO Pads and Block Level its IO Pins</li>



<li>Pin is a logical entity and is a property of a Port</li>



<li>Port is a physical entity and a Port have only 1 Pin associated with it</li>



<li>Netlist will have Pins and Layout will have Ports</li>



<li>Unplaced Port is not represented in the Layout</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="768" height="576" src="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/IO.png?resize=768%2C576&#038;ssl=1" alt="" class="wp-image-198" style="width:347px;height:auto" srcset="https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/IO.png?w=768&amp;ssl=1 768w, https://i0.wp.com/learnvlsi.com/wp-content/uploads/2024/08/IO.png?resize=300%2C225&amp;ssl=1 300w" sizes="(max-width: 768px) 100vw, 768px" /></figure>



<h3 class="wp-block-heading"><strong>Floorplan Qualification:</strong></h3>



<ul class="wp-block-list">
<li>No I/O ports short</li>



<li>All I/O ports should be placed in routing grid</li>



<li>All macros in placement grid</li>



<li>No macros overlapping</li>



<li>Check PG connections (For macros &amp; pre-placed cells only)</li>



<li>All the macros should be placed at the boundary</li>



<li>There should not be any notches. If unavoidable, proper blockages has to be added</li>



<li>Remove all unnecessary placement blockages &amp; routing blockages (which might be put during floor-plan &amp; pre-placing)</li>
</ul>
<p><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Ffloorplanning-in-vlsi%2F194%2F&amp;linkname=Floorplanning%20in%20VLSI" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Ffloorplanning-in-vlsi%2F194%2F&amp;linkname=Floorplanning%20in%20VLSI" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_microsoft_teams" href="https://www.addtoany.com/add_to/microsoft_teams?linkurl=https%3A%2F%2Flearnvlsi.com%2Fpd%2Ffloorplanning-in-vlsi%2F194%2F&amp;linkname=Floorplanning%20in%20VLSI" title="Teams" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Flearnvlsi.com%2Fpd%2Ffloorplanning-in-vlsi%2F194%2F&#038;title=Floorplanning%20in%20VLSI" data-a2a-url="https://learnvlsi.com/pd/floorplanning-in-vlsi/194/" data-a2a-title="Floorplanning in VLSI"></a></p><p>The post <a href="https://learnvlsi.com/pd/floorplanning-in-vlsi/194/">Floorplanning in VLSI</a> appeared first on <a href="https://learnvlsi.com">Learn VLSI</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://learnvlsi.com/pd/floorplanning-in-vlsi/194/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">194</post-id>	</item>
	</channel>
</rss>
