<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Cadence Mixed-Signal Design Blogs</title><link>http://www.cadence.com/Community/blogs/ms/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/cadence/community/blogs/ms" /><feedburner:info uri="cadence/community/blogs/ms" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>cadence/community/blogs/ms</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><title>Managing Inherited Connections with CPF in Virtuoso</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/E6VrOt2C1Us/manage-inherited-connections-with-cpf-in-virtuoso.aspx</link><pubDate>Wed, 23 May 2012 17:10:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1311307</guid><dc:creator>AndreasLenz</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1311307</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/05/23/manage-inherited-connections-with-cpf-in-virtuoso.aspx#comments</comments><description>&lt;p&gt;Let&amp;#39;s assume you are managing a schematic-driven top level design in Virtuoso and you want to import a digital block Verilog netlist into Virtuoso. This is a very common use model in mixed-signal implementation. While the Layout Database is saved in Open Access (OA), the optimized Verilog netlist needs to be imported into Virtuoso. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Why use CPF?&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The Common Power Format (CPF) describes the design power intent for the whole flow, including digital implementation in Encounter, custom/analog implementation in Virtuoso Schematic Editor, and further into simulation. In Virtuoso Schematic XL, CPF creates the inherited connections for you in an automated way. You may want to reuse the same CPF that was used for your digital block implementation in Encounter. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;What might CPF contain?&lt;/b&gt; &lt;ul&gt;&lt;li&gt;Power domains with their shutoff conditions if applicable&lt;/li&gt;&lt;li&gt;Power and ground nets&lt;/li&gt;&lt;li&gt;Technology for low power: isolation cells, level-shifters (need to be registered as special cell in Virtuoso)&lt;/li&gt;&lt;li&gt;Isolation, shifting and retention policy&lt;/li&gt;&lt;li&gt;Power modes and analysis views&lt;/li&gt;&lt;li&gt;Library sets&lt;/li&gt;&lt;li&gt;Global connection&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;What does CPF &lt;i&gt;not&lt;/i&gt; contain? &lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;CPF is not a command file. It doesn&amp;#39;t contain power domain coordinates, power routing details, number of power switches, or implementation details.&lt;b&gt; &lt;/b&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;How can I handle the inherited connections ?&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Within the Virtuoso IC 6.1.5 release it is possible to describe your low power intent through a CPF file. This posting describes the method according to the use model described above. Further information, including supported CPF commands, is available in the Virtuoso Schematic XL User Guide. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;What are the requirements?&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;A consistent power intent for the analog and digital parts of your design is required. You could have explicit power pins and implicit net sets and net expressions defined in parallel. &amp;nbsp;CPF will update or create the net sets and expressions. &lt;/p&gt;&lt;p&gt;All of the power and ground nets (PG nets) in your design should have the signal type Power or Ground. The default signal type is Signal. This might be the case if you take a closer look at your standard cell library. Power and Ground nets are very often defined as type signal. Another requirement is that your standard cell power connection must be described as an inherited connection. Before you start, make sure that the CPF created is verified for correctness using the Cadence Conformal Low Power product. &lt;/p&gt;&lt;p&gt;And as mentioned before, you need Schematics XL to make use of CPF.&lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;u&gt;Step by Step introduction&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Setup Schematics XL&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;After Verilog import Open Check - Rules Setup - Inherited Connections and enable the CPF nets error switch. &lt;/p&gt;&lt;p&gt;To verify the signal types choose Options - Check and enable &amp;quot;set Signal Type from Net and Type Registration.&amp;quot; &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/signal.jpg"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Applying the right signal type&lt;/b&gt;&lt;/p&gt;&lt;p&gt;As mentioned above, we need to make sure to set the right signal type. Descend in the hierarchy by double clicking on a symbol until the standard cells occur. Are your PG nets defined as inherited connections, but the signal type is Signal? If so you need to change it. Because your standard cell library usually is set to read only, we need to change the cells in your design using the register API to provide a complete list of all your PG nets (don&amp;#39;t miss the std cell PG nets): &lt;/p&gt;&lt;p&gt;&lt;b&gt;ciRegisterNet(&amp;quot;power&amp;quot; list(&amp;quot;VDD&amp;quot; &amp;quot;vdd&amp;quot; &amp;quot;VDD!&amp;quot; &amp;quot;VDDA&amp;quot; &amp;quot;VDDD&amp;quot; ....) &lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;ciRegisterNet(&amp;quot;ground&amp;quot; list(&amp;quot;VSS&amp;quot; &amp;quot;vss&amp;quot; &amp;quot;VSS!&amp;quot; &amp;quot;GND&amp;quot; &amp;quot;gnd&amp;quot; ....) &lt;/b&gt;&lt;/p&gt;&lt;p&gt;Now check if the PG Signal type gets applied correctly:&lt;/p&gt;&lt;p&gt;&lt;b&gt;ciGetNetNames(&amp;quot;power&amp;quot;) ciGetNetNames(&amp;quot;ground&amp;quot;)&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Finally we use the Check - Hierarchy command to propagate the changes to the schematic. Don&amp;#39;t enable save schematics since you may don&amp;#39;t have write access to the Library &lt;/p&gt;&lt;p&gt;Shortcut: &lt;b&gt;schHiCheckHier()&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/checkHier.jpg"&gt;&lt;img src="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/checkHier.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Import the CPF file&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Open &amp;quot;File - Import Power Intend&amp;quot; or type &lt;b&gt;schHiAddCPFNetSets()&lt;/b&gt; in the CIW command line to open the CPF import form. Library, Cell and View Name are already filled in. The View Name List may be changed by adopting by editing &amp;quot;Options - Check - Views to check.&lt;/p&gt;&lt;p&gt;Specify your &lt;b&gt;CPF File name&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Use &amp;lsquo;&lt;b&gt;Register Special Low Power cells&lt;/b&gt;&amp;#39; for Isolation cells , Level shifter cells, Power switches, ...Use &amp;lsquo;&lt;b&gt;Remove existing Power Intend&lt;/b&gt;&amp;#39; if you are not sure which power is defined and you want to rebuild the power connection. The alternative is to use &amp;quot;Edit - Power Intend - Remove netSet properties.&amp;quot; The progress is logged in CIW and CDS.log files. &lt;/p&gt;&lt;p&gt;Again, the last step is to propagate the power intent through the hierarchies and we use &amp;quot;&lt;b&gt;Check - Hierarchy.&amp;quot;&lt;/b&gt; &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/cpfImport.jpg"&gt;&lt;img height="389" width="457" src="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/cpfImport.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Verify the power intent&lt;/b&gt; &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;After importing and applying the CPF file you may want to verify the created power intent. To verify the created power domains, rules, mappings ... Enable &amp;quot;&lt;b&gt;Window - Assistant - Power Intend Export&lt;/b&gt;&amp;quot; for a review. &lt;/p&gt;&lt;p&gt;To verify the created inherited connections on a specific instance open &amp;quot;&lt;b&gt;Edit- Net Expressions - Available properties&amp;quot;&lt;/b&gt; and select a block or instance. &lt;/p&gt;&lt;p&gt;If you want to verify the evaluated names from net expressions open &amp;quot;&lt;b&gt;Edit- Net Expressions - Evaluated Names.&amp;quot;&amp;nbsp; &lt;/b&gt;In case you want to review which instances are connected to a PG net, use the Search assistant to search for a net and check the User properties. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/flow.jpg"&gt;&lt;img height="479" width="580" src="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/flow.jpg" border="0" style="width:580px;height:479px;" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Kind Regards,&lt;/p&gt;&lt;p&gt;Andreas Lenz&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1311307" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog/default.aspx">analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CPF/default.aspx">CPF</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/low+power/default.aspx">low power</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/design+implementation/default.aspx">design implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Encounter/default.aspx">Encounter</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/oa/default.aspx">oa</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Mixed+signal+physical+implementation/default.aspx">Mixed signal physical implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Verilog/default.aspx">Verilog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso+environment/default.aspx">Virtuoso environment</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+solution/default.aspx">mixed signal solution</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/EDI/default.aspx">EDI</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+implementation/default.aspx">mixed signal implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Common+Power+Format/default.aspx">Common Power Format</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+physical+implementation+open+access/default.aspx">mixed signal physical implementation open access</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/inherited+connections/default.aspx">inherited connections</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal+design/default.aspx">mixed-signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/OA_3A00_+OpenAccess/default.aspx">OA: OpenAccess</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/05/23/manage-inherited-connections-with-cpf-in-virtuoso.aspx</feedburner:origLink></item><item><title>A Quick Tutorial on Managing ECOs Using Pcells in Mixed Signal Designs</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/cB-7YVoxhus/managing-eco-using-pcell-in-mixed-signal-design.aspx</link><pubDate>Wed, 16 May 2012 15:00:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1311126</guid><dc:creator>paragb</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1311126</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/05/16/managing-eco-using-pcell-in-mixed-signal-design.aspx#comments</comments><description>&lt;p style="text-align:justify;margin:6pt 0in;"&gt;The purpose for creating a Pcell is to automate the creation of data. Pcells should be designed as standalone entities, independent of the environment in which they are created and independent of the variety of environments in which you or someone else might want to use them. An environment can react to a Pcell, but Pcell code should not react to, interact with, or be dependent on an environment. Although it is possible to create Pcells dependent on something in your current or local environment, and/or using unsupported or un-recommended functions, Pcell code is likely to fail when you&amp;nbsp;try to translate it for a different environment.&lt;/p&gt;&lt;p&gt;Functions that are not supported for use within SKILL pcells usually belong to specific applications (tools); they are unknown to other environments, to other tools, and to data translators. For example, if you create a Pcell in the Virtuoso&amp;nbsp;environment and include place-and-route functions, the Pcell will fail in the layout environment. Also, application-specific functions that are not supported for customer use can disappear or change, without notice.&lt;/p&gt;&lt;p&gt;Why you should create a&amp;nbsp;Pcell? Creating Pcells for the ECO sometimes helps when we are not sure what size of cell we will have to use for fixing timing violations. Then,&amp;nbsp; just changing&amp;nbsp;a parameter in the Pcell&amp;nbsp;may do&amp;nbsp;the trick. Generally, you can identify them by their prefixes. However, you can also use all of the basic SKILL language functions.&amp;nbsp;In the following example, we will demonstrate how you can insert the buffer during hold time fix (as part of the ECO) flow using Pcell:&lt;/p&gt;&lt;p&gt;1. &amp;nbsp;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt; &lt;/span&gt;At the Linux prompt set the following environment variables:&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;setenv CDS_ENABLE_EXP_PCELL true&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;setenv CDS_EXP_PCELL_DIR ./.expressPcells&lt;/p&gt;&lt;p&gt;&amp;nbsp;2.&amp;nbsp;&amp;nbsp;&amp;nbsp; Invoke Virtuoso and open the design. Note that&amp;nbsp;for Virtuoso versions before&amp;nbsp;IC6.1.4.500.1, VLS-XL or VLS-GXL is required to save the express PCell cache. In IC6.1.4.500.1 and later versions, all Virtuoso products support this.&lt;/p&gt;&lt;p&gt;&amp;nbsp;3.&amp;nbsp;&amp;nbsp;&amp;nbsp; Select&amp;nbsp;Tools-&amp;gt;Express Pcell Manager. Fill out all the details and&amp;nbsp;Enable Caching of the Pcells&amp;nbsp;check box with Auto Save&amp;nbsp;option. Press&amp;nbsp;Save Copy&amp;nbsp;to save the Pcell Layout Cache. This step is necessary to enable inter-operation of the data between Encounter and Virtuoso.&lt;/p&gt;&lt;p&gt;&amp;nbsp;4.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Open the design using &amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Library Manager -&amp;gt; &amp;lt;Library name&amp;gt; &amp;lt;Cell name&amp;gt; &amp;lt;view name&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;5.&amp;nbsp;&amp;nbsp;&amp;nbsp; Zoom and select the flip-flop (FF1), in front of which the Pcell has to be inserted.&lt;/p&gt;&lt;p&gt;&amp;nbsp;6.&amp;nbsp;&amp;nbsp;&amp;nbsp; To placed the Pcell go to create -&amp;gt; Instance -&amp;gt; Library:pcell cell:pcell view:layout and placed the instance (I1) to a specific location (x1, y1) in between the flip-flop (FF1) and previous Instance (I2).&lt;/p&gt;&lt;p&gt;&amp;nbsp;7.&amp;nbsp;&amp;nbsp;&amp;nbsp; To do the connectivity&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Select I2 instance-&amp;gt;connectivity-&amp;gt;net-&amp;gt;propagate-&amp;gt; A: I2 Y: net1&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Select I1 instance-&amp;gt;connectivity-&amp;gt;net-&amp;gt;propagate-&amp;gt; A: net1 Y: net2&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Select FF1 Instance-&amp;gt;connectivity-&amp;gt;net-&amp;gt;propagate-&amp;gt;D: net2&lt;/p&gt;&lt;p&gt;&amp;nbsp;8.&amp;nbsp;&amp;nbsp;&amp;nbsp; Press Save copy to save the design to OA and exit Virtuoso.&lt;/p&gt;&lt;p&gt;&amp;nbsp;9.&amp;nbsp;&amp;nbsp;&amp;nbsp; To do ECO routing in the Encounter Digital Implementation System (EDIS), make sure the same environment variables of step 1 is set before invoking the tool.&lt;/p&gt;&lt;p&gt;10. &lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;Before restoring the OA design database, update the config file with the Pcell library as below:&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;set rda_Input(ui_timelib,max) ./lib/max/spcbuf_wc.lib&amp;quot;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;set rda_Input(ui_timelib,min) ./lib/min/spcbuf_bc.lib&amp;quot; &lt;/p&gt;&lt;p&gt;&amp;nbsp;11. Within EDI, follow these steps to restore the OA design. &lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;restoreOaDesign &amp;lt;Library name&amp;gt; &amp;lt;cell name&amp;gt; &amp;lt;view name&amp;gt;&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;The design, including the Pcells, should now be read in properly. &amp;nbsp;If the Pcells still do not appear correctly, remove the&amp;nbsp;./.expressPcells&amp;nbsp;directory and repeat steps 1-4 above. This will make sure new Pcell abstracts are created.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Note&lt;/b&gt;: In IC6.1.4 onwards, the cache saved is in a different format than what is saved by IC6.1.3. IC614 can read the Express PCell Cache created by IC6.1.3 and IC6.1.4, but IC6.1.3 cannot read the Express PCell Cache created by IC6.1.4. If you have made a cache using IC6.1.4 then make sure the LD_LIBRARY_PATH environment variable points to &amp;lt;IC6.1.4&amp;gt;/tools/lib while using EDIS. For example:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt; &lt;/span&gt;setenv LD_LIBRARY_PATH &amp;lt;IC6.1.4&amp;gt;/tools/lib&lt;/p&gt;&lt;p&gt;If the cache was made by IC6.1.3 then the LD_LIBRARY_PATH variable can be set to the tools/lib directory under your IC6.1.3 installation.&amp;nbsp;&lt;/p&gt;&lt;p&gt;12. Finally, take the following steps to do the hold time fixing and save the design into OA database:&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;ecoRoute&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;timeDesign -postRoute -hold&lt;/p&gt;&lt;p&gt;&lt;span class="Apple-tab-span" style="white-space:pre;"&gt;&lt;/span&gt;saveOaDesign &amp;lt;Library name&amp;gt; &amp;lt;cell name&amp;gt; &amp;lt;view name1&amp;gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Parag Bhatnagar&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1311126" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/ECOs/default.aspx">ECOs</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/signoff/default.aspx">signoff</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/OpenAccess/default.aspx">OpenAccess</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Encounter/default.aspx">Encounter</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/IC+6.1/default.aspx">IC 6.1</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+design/default.aspx">mixed signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/STA/default.aspx">STA</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/timing+model/default.aspx">timing model</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/static+timing+analysis/default.aspx">static timing analysis</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/oa/default.aspx">oa</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/ECO/default.aspx">ECO</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/open+access/default.aspx">open access</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Mixed+signal+physical+implementation/default.aspx">Mixed signal physical implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal+ECOs/default.aspx">mixed-signal ECOs</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/parasitic/default.aspx">parasitic</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso+environment/default.aspx">Virtuoso environment</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+solution/default.aspx">mixed signal solution</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/EDI/default.aspx">EDI</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/EDIS/default.aspx">EDIS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+implementation/default.aspx">mixed signal implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/ECOs+and+PCells/default.aspx">ECOs and PCells</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/05/16/managing-eco-using-pcell-in-mixed-signal-design.aspx</feedburner:origLink></item><item><title>What is Digitally Assisted Analog Design? </title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/4iQyzXmnstI/what-is-digitally-assisted-analog-design.aspx</link><pubDate>Mon, 30 Apr 2012 23:47:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1310580</guid><dc:creator>QiWang</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1310580</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/04/30/what-is-digitally-assisted-analog-design.aspx#comments</comments><description>&lt;p&gt;Mixed-signal applications are among the fastest growing segments in the electronics and semiconductor industry. Applications in mobile communication, networking, power management, automotive, medical, imaging, safety and security require a very high integration of analog and digital functionality at system, SoC and IP levels. &lt;/p&gt;&lt;p&gt;Unfortunately, compared with the advancement of digital designs over the past decade, the state of art analog design is significantly lagging behind. For example, the throughput of microprocessors doubles every 1.5 years while it takes three times longer to achieve the same advancement for analog designs. Another big roadblock for analog designs is the power consumption. According to &lt;a href="http://graf-cefar.seecs.nust.edu.pk/files/DAAC%20Project/Literature/Digitally%20Assisted%20Analog%20circuits%20by%20Boris%20Murmann.pdf"&gt;Boris Murmann&lt;/a&gt;, professor at Stanford University, the equivalent digital gate count in terms of power consumption for a 10-bit ADC at 0.13 um is about 100K, and this number grows almost exponentially for larger ADC and modern advanced nodes. &lt;/p&gt;&lt;p&gt;A new circuit design technique, digitally assisted analog (DAA), delivers a promising solution to address the performance and power challenges to further expand the scope of analog designs to meet today&amp;#39;s application requirements. Let&amp;#39;s use a simple ADC to explain the concept of DAA:&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/MixedSignal.jpg"&gt;&lt;img src="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/MixedSignal.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Figure 1 shows a conventional ADC and Figure 2 shows a DAA style ADC. In Figure 2 a conventional, high performance, power consuming ADC is replaced by a very simple, low-power ADC, followed by a digital post-processor to apply corrections to the output to achieve the same accuracy as the conventional ADC. Compared to the conventional ADC, the DAA ADC has a significant benefit in terms of power and area.&lt;/p&gt;&lt;p&gt;In addition, DAA style designs are easier to port to advanced nodes since majority of the computation task will be performed by the digital post-processor which typically demonstrates an even larger advantage in power, performance and area (PPA) at advanced nodes. With the increasingly wide usage of embedded processors, such as the &lt;a href="http://www.arm.com/products/processors/cortex-m/index.php"&gt;ARM Cortex-M series&lt;/a&gt;, designers can achieve additional benefits in terms of productivity and flexibility thanks to the great software capability of such processors.&lt;/p&gt;&lt;p&gt;The above example just illustrates one specific approach for DAA circuits. In general, in DAA circuits, the assisting digital logic is used to monitor analog performance through the different stages of the operation and to adjust parameters of the analog circuits (such as bias, resistance, capacitance) through calibration loops to meet overall design objectives. &lt;/p&gt;&lt;p&gt;We have seen significant advancements of DAA designs in recent years from the design community, and its proliferation signifies a new era of mixed-signal design. By replacing more and more analog circuitry with digital counterparts to achieve the ever more aggressive PPA targets, we foresee an explosion of new mixed-signal design starts. As a result, the industry is demanding a true mixed-signal design methodology for design, verification and implementation to meet the requirements of such design styles. In the follow-up blogs, we will talk more about how the Cadence mixed-signal solution is best positioned to meet such new mixed-sign design challenges and how you can learn more by joining us at &lt;a href="http://www.cadence.com/dac2012/Pages/exhibits.aspx"&gt;DAC&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Qi Wang&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1310580" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/low+power/default.aspx">low power</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS/default.aspx">AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+design/default.aspx">mixed signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Mixed+signal+physical+implementation/default.aspx">Mixed signal physical implementation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal+verification/default.aspx">mixed-signal verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/boris+murmann/default.aspx">boris murmann</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/cortex+M/default.aspx">cortex M</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/ARM/default.aspx">ARM</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/dac+2012/default.aspx">dac 2012</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/digitally+assisted+analog/default.aspx">digitally assisted analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/daa/default.aspx">daa</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/dac2012/default.aspx">dac2012</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+solution/default.aspx">mixed signal solution</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/04/30/what-is-digitally-assisted-analog-design.aspx</feedburner:origLink></item><item><title>CDNLive! -- Real Number Model Development and Application in Mixed-Signal SoC Verification</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/cX81HWGzADw/cdnlive-real-number-model-development-and-application-in-mixed-signal-soc-verification.aspx</link><pubDate>Mon, 09 Apr 2012 13:00:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1309657</guid><dc:creator>AElzeftawi</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1309657</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/04/09/cdnlive-real-number-model-development-and-application-in-mixed-signal-soc-verification.aspx#comments</comments><description>&lt;p&gt;With the escalating complexity of analog mixed-signal (AMS) chips, increasing digital content in response to new functionality demands, and steady growth of IP blocks into larger and larger SoCs, traditional AMS verification flows are becoming inefficient in handling full chip verification. High performance digital verification and high accuracy analog verification represented the foundation for traditional AMS verification, characterized by performance and accuracy tradeoffs -- thus making AMS verification the biggest challenge facing verification engineers today. &lt;/p&gt;&lt;p&gt;Lack of consistent handoff between analog and digital design boundaries and the inexistence of mature verification methodologies for mixed signal verification have been common reasons for chip re-spins.&amp;nbsp; As AMS verification matures, so do the methodologies that support AMS verification which now include low-power, behavioral modeling abstraction, assertions, and metric driven verification methodologies.&lt;/p&gt;&lt;p&gt;I had the pleasure of meeting lots of customers during &lt;a href="https://www.cadence.com:443/cdnlive/na/2012/pages/default.aspx"&gt;CDNLive! Silicon Valley 2012&lt;/a&gt; and learned firsthand about their verification challenges and the approaches they&amp;#39;re taking to address such challenges. Ken Luo from LSI Corporation delivered a presentation about real number model (RNM) development and application in mixed-signal SoC verification. Luo iterated that exploding operating modes, functionality demands for digital control, and calibration to mitigate against process variations are typical trends in modern SoC designs. &lt;/p&gt;&lt;p&gt;As such, analog simulation performance and convergence are bottlenecks for full chip verification. Luo discussed the benefits of adopting RNM, which include the continuous value and discrete time nature of real numbers that allow for pure digital solver simulation and high speed performance. Also, Luo highlighted other features like multiple drivers and resolution function support for RNM, discipline association, and ease of connecting real to electrical nets using R2E/E2R connect modules.&lt;/p&gt;&lt;p&gt;Luo also shared some guidelines for RNM modeling regarding signal flow modeling (voltage vs. current), sampling approaches (uniform vs. non-uniform sampling) which are required to balance performance and accuracy, and modeling data processing algebraic equations vs. nonlinear table models. One of the key takeaways of the presentation is to &amp;quot;model what you need and not what you can&amp;quot; to reflect the specified functionality and avoid unnecessary high order effects. Another takeaway is to align the model development plan with the design development plan, maintain consistent interfaces for model/design, and to use version control to keep the model/design in sync. &lt;/p&gt;&lt;p&gt;Also, Luo discussed that models should be classified according to the block characteristics and verification requirements. Communication I/Os that toggle frequently and have low accuracy requirements can be modeled using Verilog, while high accuracy and frequently toggling nodes like clocks, oscillators, and high bandwidth amplifiers or high accuracy, less frequently toggling nodes like reference voltage/current and, low speed high resolution ADC/DAC, should be modeled using Verilog-AMS/Wreal.&lt;/p&gt;&lt;p&gt;Luo introduced&amp;nbsp;an LSI application, which is a hard disk drive (HDD) PreAmplifier that performs small signal amplification (during READ operation) and voltage waveform shaping (during WRITE operation) interfaces to the HDD R/W heads. The PreAmp has been historically an analog ASIC, but today it has became a complex mixed-signal SoC due to &amp;gt; 4.0 Gbps high data rate requirements, multiple operation modes, programmability of bias/threshold control and calibration. The increased feature complexity poses a challenge to AMS verification due to extremely long simulation times, D/A interface coverage and lack of coverage measurement. &lt;/p&gt;&lt;p&gt;The LSI verification team used Cadence verification planning (vPlan) to collect and define model feature requirements and align verification milestones. Also, the team developed analog mixed-signal Universal Verification Components (UVC) and checkers for analog signals for amplitude, frequency, common mode voltage and sampling frequency. The team observed significant improvements (~600x) using the RNM models over&amp;nbsp;SPICE simulations, which suffered convergence issues and didn&amp;#39;t provide adequate coverage. The RNM models achieved 95% accuracy, enabled full coverage, and achieved first silicon success with zero functional bugs. &lt;/p&gt;&lt;p&gt;AMS verification engineers need access to a strong design environment that bridges the productivity gap between analog and digital verification flows. The Virtuoso environment empowered by AMS Designer verification technology&amp;nbsp;is well equipped to resolve the inconsistent handoff between analog and digital design boundaries. RNM makes it possible to apply advanced digital verification methodologies to mixed-signal SoCs and enhance traditional AMS verification. &lt;/p&gt;&lt;p&gt;If you need further information on the presentation, please do not hesitate to contact me at &lt;a href="mailto:ahmedelz@cadence.com"&gt;ahmedelz@cadence.com&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Ahmed Elzeftawi&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1309657" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/wreal/default.aspx">wreal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/behavioral+models/default.aspx">behavioral models</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS+Designer/default.aspx">AMS Designer</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDNLive+SV+2012/default.aspx">CDNLive SV 2012</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDNLive_2100_/default.aspx">CDNLive!</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/RNM/default.aspx">RNM</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/real+number+modeling/default.aspx">real number modeling</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/verification/default.aspx">verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal+verification/default.aspx">mixed-signal verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS+Verification/default.aspx">AMS Verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso+environment/default.aspx">Virtuoso environment</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/LSI/default.aspx">LSI</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDNLive/default.aspx">CDNLive</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Luo/default.aspx">Luo</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDN+Live/default.aspx">CDN Live</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/04/09/cdnlive-real-number-model-development-and-application-in-mixed-signal-soc-verification.aspx</feedburner:origLink></item><item><title>DVCon 2012: Bringing Continuous Domain into SystemVerilog Covergroups</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/7n2QFtpniIM/dvcon-2012-bringing-continuous-domain-into-systemverilog-covergroups.aspx</link><pubDate>Fri, 30 Mar 2012 20:50:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1309490</guid><dc:creator>PrabalB</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1309490</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/03/30/dvcon-2012-bringing-continuous-domain-into-systemverilog-covergroups.aspx#comments</comments><description>On the last day of February 2012, I presented a proposal at the &lt;a href="http://www.dvcon.org"&gt;DVCon 2012 Conference&lt;/a&gt; to extend SystemVerilog&amp;nbsp; to support a real data type in coverpoint objects in order to facilitate mixed-signal verification for functional coverage. The paper, titled &amp;ldquo;&lt;strong&gt;Bringing Continuous Domain into SystemVerilog Covergroups,&lt;/strong&gt;&amp;rdquo; reflected a year-long effort between Cadence R&amp;amp;D and Scott Little of Freescale (Scott moved to Intel just before we submitted our work to DVCon) that culminated in a prototype of SystemVerilog real coverage in action. We wanted to share this development with the digital verification community&amp;nbsp;that usually represents the majority of DVCon crowd. &lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;After providing a brief refresher on functional coverage basics, the paper went on to ask: &amp;ldquo;How do analog effects get captured in functional coverage while performing system level verification?&amp;rdquo; Since analog effects are described in form of floating point numbers, it becomes apparent that to meet the needs of mixed-signal in functional coverage, the language needs to support a floating point (&lt;em&gt;aka&lt;/em&gt; real) data type. Since SystemVerilog&amp;nbsp;is widely used in verification, we developed our proposal around the P1800-2009 standard of SystemVerilog. &lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;The paper then went into the detailed mechanics of real typed SystemVerilog coverpoint objects. It highlighted an important extension to the language,&amp;nbsp;specifically&lt;em&gt; &lt;/em&gt;an instance-specific covergroup option called &lt;em&gt;range_precision&lt;/em&gt;, to divide a range of vector bins into sub-ranges. It also explained how the existing features of SystemVerilog covergroup can be modified or extended with the introduction of real data type. Finally, the paper explored some of the challenges that are still open in the areas of floating point arithmetic and issues related to overflow and underflow. It drew&amp;nbsp;a conclusion stating that our next step would be to complete an analysis of the Functional Coverage Section of the P1800 SystemVerilog Language Reference Manual (P1800-2012) and then work with the SV-EC sub-committee members for standardization of our proposal.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;The audience was primarily filled with users from the digital verification community, and therefore there was a lot of curiosity in hearing a presentation coming from someone more oriented to the analog and mixed-signal world. An engineer from Dialog Semiconductor expressed strong interest in our work and stated that she found immediate use of this approach in her group&amp;rsquo;s verification initiatives. There was a concern raised by one member of the audience&amp;nbsp;who wondered&amp;nbsp;whether we&amp;rsquo;re trying to make the language more complex. We explained that the we were only proposing extensions that fill the gap between the existing integral type support to the desired level of real data type support. &lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;There were some very good suggestions provided as part of audience feedback,&amp;nbsp;such as&amp;nbsp;consideration of logarithmic ranges and also support for the real data type for transition bins.Overall it was a very enriching experience for me and my colleagues to share our work with a community of folks who are certainly showing signs of interest to extend standard verification techniques to the wonderful world of analog. If you need further information on the presentation, please do not hesitate to contact me at &lt;a href="mailto:prabal@cadence.com"&gt;prabal@cadence.com&lt;/a&gt;.&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="MsoNormal" style="margin:0in 0in 0pt;"&gt;Prabal Bhattacharya&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1309490" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog/default.aspx">analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/verification/default.aspx">verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/functional+verification/default.aspx">functional verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal+verification/default.aspx">mixed-signal verification</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/coverage/default.aspx">coverage</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/DVCon/default.aspx">DVCon</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/functional+coverage/default.aspx">functional coverage</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/floating+point/default.aspx">floating point</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/real+number/default.aspx">real number</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/real+number+types/default.aspx">real number types</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/covergroups/default.aspx">covergroups</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/SystemVerilog/default.aspx">SystemVerilog</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/03/30/dvcon-2012-bringing-continuous-domain-into-systemverilog-covergroups.aspx</feedburner:origLink></item><item><title>Learn How to Do Mixed-Signal Design at CDNLive! Silicon Valley </title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/-oz1mrhwPHc/learn-how-to-do-mixed-signal-design-at-cdnlive-silicon-valley.aspx</link><pubDate>Wed, 07 Mar 2012 21:29:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1308753</guid><dc:creator>QiWang</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1308753</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/03/07/learn-how-to-do-mixed-signal-design-at-cdnlive-silicon-valley.aspx#comments</comments><description>&lt;p&gt;With the theme of Connect, Share and Inspire, this year&amp;#39;s CDNLive! Silicon Valley March 13-14, 2012 will be an exciting forum for Cadence customers to share their most recent chip design successes and learn from each other. Among close to 100 presentations during the packed two day agenda, one area stands out is mixed-signal design. There are more than 10 presentations with specific focuses on mixed-signal design challenges, and how Cadence tools and flows were used to solve those challenges. Here is a list of related papers in different categories with a list of keywords to highlight the technical contents:&lt;/p&gt;&lt;p&gt;&lt;b&gt;Mixed-signal verification&lt;/b&gt; &lt;/p&gt;&lt;ul class="unIndentedList"&gt;&lt;li&gt;Real Number Model (RNM) Model Development and Application in Mixed-Signal SOC Verification by LSI on Tuesday &lt;ul&gt;&lt;li&gt;Real number modeling/wReal, mixed-signal SoC simulation, metric driven verification&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;AMS Simulation of full duplex USB interface using strength modeled Connect Modules by Texas Instruments on Tuesday &lt;ul&gt;&lt;li&gt;Mixed-signal SoC simulation, strength modeling, custom connect modules&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;SPEF/DSPF Parasitic Stitching in Post-Layout Analog and Mixed-Signal Simulation by Cadence on Wednesday &lt;ul&gt;&lt;li&gt;AMS simulation, parasitic extraction, Spice/Fast-spice&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;An Efficient Phase-Locked Loop Noise Simulation Using APS &amp;amp; ViVA by Nvidia on Wednesday &lt;ul&gt;&lt;li&gt;PLL simulation, Jitter/noise analysis, Virtuoso&amp;reg; Power System (VPS)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Verilog-AMS Verification of ADC Soft IP cores by Missing Link Electronics on Wednesday &lt;ul&gt;&lt;li&gt;AMS simulation, Verilog-AMS, Spice&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;High Performance, Interoperable Real Number Models for Mixed-Signal Verification by Silicon Labs on Wednesday &lt;ul&gt;&lt;li&gt;Real number modeling/wReal, mixed-signal SoC simulation, metric driven verification, Virtuoso ADE&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;b&gt;Mixed-signal implementation&lt;/b&gt; &lt;/p&gt;&lt;ul class="unIndentedList"&gt;&lt;li&gt;IC 61 and EDI 10.1 Inter-Operability Flow, Features and Benefits by Maxim Integrated Products on Tuesday &lt;ul&gt;&lt;li&gt;Open Access/OA, unified analog/digital database, analog/digital interoperability, Encounter&amp;reg; Power System (EPS)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Case Study of Complex High-Speed Mixed-Signal Chip Integration at 40nm by Intersil on Tuesday &lt;ul&gt;&lt;li&gt;Analog/digital interoperability, digital-on-top methodology&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Substrate Noise Analysis and Wide Metal Extraction for Power MOS embedded LSIs by Renesas on Wednesday &lt;ul&gt;&lt;li&gt;Substrate noise analysis (SNA), wide-metal extraction, QRC&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;b&gt;Ecosystem and technology partners&lt;/b&gt; &lt;/p&gt;&lt;ul class="unIndentedList"&gt;&lt;li&gt;GLOBALFOUNDRIES 28nm Analog &amp;amp; Mixed Signal Production Ready Flow by Global Foundries on Tuesday &lt;ul&gt;&lt;li&gt;AMS reference flow, 28nm, advanced nodes&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;AMS Reference Flows for Advanced TSMC CMOS Processes by TSMC on Wednesday &lt;ul&gt;&lt;li&gt;AMS reference flow, 28nm, advanced nodes, silicon stress, yield&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;From 6 Days to 6 Minutes: Accelerating Mixed-Signal Design Verification by Orora Design Technologies on Wednesday &lt;ul&gt;&lt;li&gt;Advanced node, PVT and process variations, mixed-signal SoC simulation, AMS IP integration&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;b&gt;What&amp;#39;s Hot/What&amp;#39;s Cool&lt;/b&gt;&amp;nbsp; &lt;/p&gt;&lt;ul class="unIndentedList"&gt;&lt;li&gt;A Comprehensive Approach to Verifying Low Power Mixed Signal Design using Conformal LP by Rambus on Tuesday &lt;ul&gt;&lt;li&gt;Power gating, low power mixed-signal designs, CPF, Conformal&amp;reg; Low Power (CLP)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Low-Power Format CPF in Analog and Mixed-Signal Simulation and Macro IP Verification by Cadence on Wednesday &lt;ul&gt;&lt;li&gt;Power aware AMS simulation, CPF, power smart connect modules, CPF generation from Virtuoso Schematic Editor (VSE)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Of course, do not miss the keynote speeches given by executives from ARM, TSMC and Cadence. Go to &lt;a href="http://www.cadence.com/cdnlive/na/2012/Pages/agenda.aspx"&gt;CDNLive! SV 2012&lt;/a&gt; for more information. See you there next week!&lt;/p&gt;&lt;p&gt;Qi Wang&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1308753" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog/default.aspx">analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CPF/default.aspx">CPF</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/low+power/default.aspx">low power</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/IC+6.1/default.aspx">IC 6.1</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/APS/default.aspx">APS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+design/default.aspx">mixed signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog+behavoral/default.aspx">analog behavoral</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS+Designer/default.aspx">AMS Designer</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDNLive+SV+2012/default.aspx">CDNLive SV 2012</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/CDNLive_2100_/default.aspx">CDNLive!</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/parasitic/default.aspx">parasitic</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/RNM/default.aspx">RNM</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/simulation/default.aspx">simulation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/real+number+modeling/default.aspx">real number modeling</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/verification/default.aspx">verification</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/03/07/learn-how-to-do-mixed-signal-design-at-cdnlive-silicon-valley.aspx</feedburner:origLink></item><item><title>Virtuoso AMS Designer Wins the China ACE Best EDA Product Award </title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/zJQeKhbt4LM/virtuoso-174-ams-designer-won-the-china-ace-best-eda-product-award.aspx</link><pubDate>Tue, 28 Feb 2012 14:22:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1308464</guid><dc:creator>QiWang</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1308464</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2012/02/28/virtuoso-174-ams-designer-won-the-china-ace-best-eda-product-award.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://www.prnewswire.com/news-releases/china-ace-awards-2012----texas-instruments-nxp-freescale-analog-devices-linear-technology-and-agilent-technologies-among-winners-140277203.html"&gt;The China Annual Creativity in Electronics (ACE) Awards&lt;/a&gt; was established to recognize individuals, companies and technologies&amp;nbsp;that have made profound impacts&amp;nbsp;in the overall China electronics industry each year. Joining with the industry prestigious names like ARM and&amp;nbsp;TI, Cadence Virtuoso AMS Designer won the 2012 Best EDA product award.&amp;nbsp;Five&lt;a href="https://vovici.com/wsb.dll/s/1064ag4dde9#Question19"&gt; candidates&lt;/a&gt;&amp;nbsp;were nominated&amp;nbsp;for this award including Cadence. The award was presented to Cadence at the 17&lt;sup&gt;th&lt;/sup&gt; IIC China Conference in Shenzhen on Feb. 23, 2012. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/2012/John_Wright/AlexLei.JPG"&gt;&lt;img src="http://www.cadence.com/Community/CSSharedFiles/blogs/ms/2012/John_Wright/AlexLei.JPG" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.cadence.com/products/cic/ams_designer/pages/default.aspx"&gt;AMS Designer&lt;/a&gt; is a mixed-signal simulation tool for the design and verification of analog, RF, memory, and mixed-signal SoCs. It is recognized as the most mature mixed-signal simulation tool by the fast-growing electronic designer community around the world. However, that is not the main reason for winning this award. As stated by the mission of this award, AMS Designer was selected as the winner for its recent&amp;nbsp;innovations in areas like wreal (real number) modeling, simulation support for SoC mixed-signal verification, and power aware simulation for mixed-signal designs with power management features. AMS Designer has demonstrated productivity gains and additional verification capabilities in product design. &lt;/p&gt;&lt;p&gt;Congratulations to the Cadence China Team and the AMS Designer team!&lt;/p&gt;&lt;p&gt;Qi Wang&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1308464" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/China/default.aspx">China</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/wreal/default.aspx">wreal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS-Designer/default.aspx">AMS-Designer</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS/default.aspx">AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso-AMS/default.aspx">Virtuoso-AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+design/default.aspx">mixed signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS+Designer/default.aspx">AMS Designer</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/ACE+award/default.aspx">ACE award</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2012/02/28/virtuoso-174-ams-designer-won-the-china-ace-best-eda-product-award.aspx</feedburner:origLink></item><item><title>Behavioral Model Validation with amsDmv</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/Oh_q6gY1mh4/behavioral-model-validation-with-amsdmv.aspx</link><pubDate>Thu, 01 Dec 2011 02:00:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1305894</guid><dc:creator>xiuya</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1305894</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2011/11/30/behavioral-model-validation-with-amsdmv.aspx#comments</comments><description>&lt;p class="ppara"&gt;&lt;span&gt;a&lt;/span&gt;&lt;span&gt;&lt;span&gt;msDmv (Analog Mixed Signal Design and Model Validation) is an application integrated in the Cadence Virtuoso GUI flow and it can also be invoked from command line with some feature limitations. amsDmv can be used to &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;compare the simulation restults and design interface (pins) from the DUT with those from the reference design. Therefore users can use amsDmv to validate behavioral models with original transistor level models, and to make sure the new model behavior matches the original design. The following problems can be resolved by using amsDmv:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;Behavioral models are created and initially
validated by the designer against the original transistor level design&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;The design and the model continues to evolve and
change&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Designers don&amp;rsquo;t have time to continually
validate models&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;Issues such as pin list mismatches or behavioral
variations can occur&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;Using the original (out of sync) model could
result in errors or worse, incorrect model behavior hiding design flaws&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Continual model validation is mandatory during
the design creation and model validation process, but this can take time and
expertise&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;amsDmv is mainly targeted at&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt; analog/mixed-signal
models. To solve the problems described above, the tool must meet some basic
requirements. Such as:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;1) The validation process must be easy to set up. It should require a minimal threshold for designers to use it, reuse existing testbenches and simulation setups, and be accessible from known working environments such as Virtuoso. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;2) The validation process must be fully automated. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;amsDmv meets the above requirements and therefore is useful to designers in validation process. amsDmv is not a replacement for accurate modeling
or a detailed manual model validation process. It complements the modeling and
model validation process by adding a sanity check in regression&lt;/span&gt; mode.
This sanity check will notify the user if there are potential problems with the
model (or the reference).&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;This integrated model
validation solution supports:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Validation of analog and digital waveform
signals saved from simulations &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Validation of measured values: Gain, power,
delay, noise, etc.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;Validation of pin/module interfaces of the
design and model&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;It supports a GUI based setup and an exported
command line regression run to fulfil these requirements. The run output provides
straightforward pass/fail output, reports, and extended debugging capabilities
(waveform zoom, etc.). &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;Manual waveform comparison/debugging in the
analog domain often leads to complex and incomplete answers. While this
provides useful information for a discussion, it is not useful for a regression
based methodology. Therefore, amsDmv provides a very clear pass or fail answer within
the validation process. If in doubt, it might be useful to use conservative
settings &amp;ndash; resulting in tighter tolerances. This will give the analog designer
the opportunity to double check questionable validation results. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;The amsDmv tool flow looks like the following:&lt;/p&gt;&lt;p class="ppara"&gt; &lt;a href="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv1.jpg"&gt;&lt;img src="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv1.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;It is the user&amp;rsquo;s
responsibility to provide the design, the model, a testbench and a simulation
setup &amp;ndash; such as an ADE state. In most cases this information should already be
available. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;amsDmv will perform the
simulation for the reference and compare setup. This results in two sets of
waveforms and measured results data. All of this data will be processed in the
validation engine using user defined tolerances. The final result is a
pass/fail output and additional data for debugging, such as reports and log files.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;The interface check is not
based on simulation data but works directly on the provided design (DUT) and model
data.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;As you might have noticed,
the validation process for waveforms and measured results is independent of the
simulation and the input data. This enables amsDmv to operate completely
independent of the modeling language being used. You can use Verilog-AMS, VHDL
AMS, SystemC, or any other language in addition to wreal models. It also
provides you the flexibility to not only carry out design versus model (bottom-up)
checking but also model vs. design (top-down), model versus model, design
versus design, simulator version A versus simulator version B checking.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;amsDmv provides an easy to use model validation environment with a
GUI based setup and a command line script export for regression run. The output
is straightforward pass/fail information. In addition a lot of detailed
information is provided in the GUI and in the report files on the command line
to help the user debug potential problems.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;The validations include analog and digital waveform signals,
measured results, and pin/module design/model interface checks.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;amsDmv was released in the IC614 stream, however, it can be used
together with IC 5.1.41 (set up special env variables and pointing to amsDmv installation in IC614) and on the command line (some features may not be available, see our detailed documentation and tutorials). &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;amsDmv can be started from the Virtuoso CIW window, as shown below.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&lt;span&gt;&lt;span&gt;&lt;a href="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv2.jpg"&gt;&lt;img src="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv2.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="ppara"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="ppara"&gt;The following is amsDmv GUI, where users can set up DUT and reference design simulations, measurements, start simulations, compare waveforms,measurement results and pin definitions, also can see final report (pass/fail).&lt;/p&gt;&lt;p class="ppara"&gt;In the shown waveform tab, user can specify relative/absolute tolerance,debug failing areas, using ViVA or SimVision. 

v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
p\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
v\:textbox {display:none;}



&lt;span style="position:absolute;"&gt;&lt;/span&gt;&lt;span&gt;By default SimVision is used for waveform viewing when any digital waveform &lt;/span&gt;&lt;span&gt;signals are loaded&lt;/span&gt;.

&lt;span style="position:absolute;"&gt;&lt;/span&gt;&lt;span&gt;Wavescan/Viva are the default when only analog waveform signals are found.&lt;/span&gt;

&lt;span style="position:absolute;"&gt;.&lt;/span&gt;&lt;span&gt;The preferred waveform viewer can be selected in the Preferences dialog.&lt;/span&gt;&lt;/p&gt;&lt;div class="O"&gt;

&lt;/div&gt;

&lt;p class="ppara"&gt;&amp;nbsp;&lt;/p&gt;&lt;p class="ppara"&gt;&amp;nbsp;&lt;a href="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv4.jpg"&gt;&lt;img src="https://www.cadence.com:443/Community/CSSharedFiles/blogs/ms/amsDmv4.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="ppara"&gt;There are some advanced features available in recent release, including preload filter for large waveform database, signal alias for defining equivalent signal names, signal selection tab to narrow down the listed/compared signals, A2D/D2A conversion for comparing the equivalent signals from different domains. Those are new features we developed based on customer feedback and these new features further improved the usability of amsDmv. &lt;/p&gt;&lt;p class="ppara"&gt;Xiuya Li &lt;/p&gt;
&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1305894" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS/default.aspx">AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/model+validation/default.aspx">model validation</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog+behavoral/default.aspx">analog behavoral</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/amsDmv/default.aspx">amsDmv</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/behavioral+models/default.aspx">behavioral models</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2011/11/30/behavioral-model-validation-with-amsdmv.aspx</feedburner:origLink></item><item><title>Fred Discovers 1000x-10000x Speedup Using wreal Models</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/P4CwbehMeVw/fred-discovers-1000x-10000x-speedup-using-wreal-models.aspx</link><pubDate>Wed, 02 Nov 2011 01:00:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1304914</guid><dc:creator>Paul Foster</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1304914</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2011/11/01/fred-discovers-1000x-10000x-speedup-using-wreal-models.aspx#comments</comments><description>&lt;p&gt;&lt;i&gt;This is the second installment in an ongoing series of blog posts that includes an email conversation between Fred and Harry, two fictional mixed-signal engineers, about analog behiavoral modeling. You can read the first installment by clicking &lt;a href="http://www.cadence.com/Community/blogs/ms/archive/2011/10/31/how-fred-came-to-mixed-signal-behavioral-modeling.aspx?CMP=home"&gt;here&lt;/a&gt;. (NOTE: This blog post was written by Walter Hartong and uploaded by Paul Foster).&lt;/i&gt;&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;/p&gt;&lt;p&gt;As I said, this was really the fun stuff. We are coming into the region of 1000x, 10000x or more speedup over SPICE -- that is what I was looking for. Before I tell you about the detail, it is for sure that this speedup does not come free (you know that I never trust someone who tells me that stuff comes free). We have to leave behind some of the analog behavior details, but that is fine. &lt;/p&gt;&lt;p&gt;OK, back to the beginning: Wreal is doing the magic. As you know, Verilog-D is not capable of using real valued ports. This is what wreal gives you. Wreal is a &amp;quot;wire real&amp;quot; or &amp;quot;real wire&amp;quot; if you want. The fun part is that even though it is a Verilog-AMS LRM construct it only needs the digital kernel for evaluation. &lt;/p&gt;&lt;p&gt;Thus, we are at the digital performance level and the coding style is pretty digital-like, for example:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;module vco(vin, clk);&lt;br /&gt;input vin; &lt;br /&gt;wreal vin;&lt;br /&gt;output clk;&lt;br /&gt;reg clk;&lt;br /&gt;real freq,clk_delay;&lt;br /&gt;always @(vin) begin&lt;br /&gt;freq = center_freq + vco_gain*vin;&lt;br /&gt;clk_delay = 1.0/(2*freq);&lt;br /&gt;end&lt;br /&gt;always #(clk_delay) clk = ~clk;&lt;br /&gt;endmodule&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;It&amp;#39;s that simple, you just connect the &amp;quot;vin&amp;quot; to your real net and you have a &lt;br /&gt;nice oscillator.&lt;/p&gt;&lt;p&gt;I asked the Cadence guy why this is coming up now and why people haven&amp;#39;t used this before since wreal has been in the Verilog-AMS standard forever. &lt;br /&gt;Interesting answer, he said it is two-fold. One point is that there is more demand for really high speed mixed signal models from the digital teams (they have realized they can&amp;#39;t ignore analog anymore -- like us),&amp;nbsp; and secondly, Cadence has implemented some enhancements over the standard that were essential to write good models.&lt;/p&gt;&lt;p&gt;I will get you the details soon.&lt;/p&gt;&lt;p&gt;Stay tuned, Fred &lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1304914" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog/default.aspx">analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Verilog-AMS/default.aspx">Verilog-AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/SPICE/default.aspx">SPICE</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/wreal/default.aspx">wreal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Fred/default.aspx">Fred</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/real+value/default.aspx">real value</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Verilog/default.aspx">Verilog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog+behavoral/default.aspx">analog behavoral</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2011/11/01/fred-discovers-1000x-10000x-speedup-using-wreal-models.aspx</feedburner:origLink></item><item><title>How Fred Discovered Mixed-Signal Behavioral Modeling</title><link>http://feedproxy.google.com/~r/cadence/community/blogs/ms/~3/hsW4pd4QBFs/how-fred-came-to-mixed-signal-behavioral-modeling.aspx</link><pubDate>Tue, 01 Nov 2011 03:00:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1304900</guid><dc:creator>Paul Foster</dc:creator><slash:comments>1</slash:comments><wfw:commentRss>http://www.cadence.com/Community/blogs/ms/rsscomments.aspx?PostID=1304900</wfw:commentRss><comments>http://www.cadence.com/Community/blogs/ms/archive/2011/10/31/how-fred-came-to-mixed-signal-behavioral-modeling.aspx#comments</comments><description>&lt;p&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/p&gt;&lt;p&gt;&lt;i&gt;This is the first of a series of blogs where we will add pieces to the story&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;over time. This is an email conversation between Fred and Harry, two fictional mixed-signal designers, where Fred is adopting various modeling techniques to realize faster simulations while maintaining acceptable levels of accuracy. (NOTE: This blog post was written by Walter Hartong and uploaded by Paul Foster).&lt;/i&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;How Fred came to mixed signal behavioral modeling&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;Oh man, tape-out is in five days, and the SPICE level simulation is only at 2.34ns. With today&amp;#39;s computers simulator performance is simply too slow, darn Moore&amp;#39;s law. &lt;br /&gt;CU Fred&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;I called&amp;nbsp;Cadence and they suggested &lt;a href="http://www.cadence.com/products/cic/accelerated_parallel/pages/default.aspx"&gt;APS&lt;/a&gt; (Virtuoso Accelerated Parallel Simulator). Wow, that made a difference. I can now burn a whole 16-core machine. It should be okay for this project, but we will need something faster moving forward.&lt;br /&gt;Bye, Fred&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;Cadence said to look into modeling and DMS (Digital Mixed-signal) for the next project and finish this one with APS. It seems like a good idea for now. &lt;br /&gt;Wish me luck that I do not find any serious issues over the next few days.&lt;br /&gt;Cheers, Fred&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;We did it. After some long nights, we finished verification just in time before the tape-out. Fancy a beer tonight?&lt;br /&gt;Let&amp;#39;s hope the&amp;nbsp;chip works. We did our best but who knows if this was good enough.&lt;br /&gt;See you tonight, Fred&lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;We are now on the next project. We need to do things differently this time. We really need to improve the verification coverage and speed up functional verification. There is no way that we can do this the same way as we have done before. &lt;/p&gt;&lt;p&gt;Talked with Cadence again and there will be a seminar tomorrow.&lt;br /&gt;I will keep you posted, Fred &lt;/p&gt;&lt;p&gt;Hi Harry, &lt;br /&gt;Cadence did a presentation on behavioral modeling. Here is my conclusion: &lt;br /&gt;There are various behavioral languages out there and it is critical to pick the right one for our problem. We ruled out all the VHDL flavors, as nobody here knows VHDL. &lt;/p&gt;&lt;p&gt;There is Verilog-A which is a pure analog subset of Verilog-AMS. This is mainly used for detailed analog models for performance type of verification. The language is quite simple but as noted by the Cadence guy, the devil is in the details, and it is not trivial to write a good behavioral model that provides the performance gains I need and also retains the right level of accuracy.&lt;/p&gt;&lt;p&gt;The advantage of the Verilog-A subset is that we can definitely reuse the models in pure analog simulations, like APS, as well as in our mixed signal environment. I will probably go ahead and suggest this language to our analog team, but&amp;nbsp;for me this looks to low level. As said before, I need it really fast!!!&lt;/p&gt;&lt;p&gt;Then there is Verilog-AMS. As the name says, this is a superset of Verilog-A and Verilog-D. This language gives people a huge amount of flexibility. You can create all sorts of interactions between the analog and digital domains, and the simulator figures out in the background which solver to use. Man, this can get quite hairy. There were a few tricky examples in the labs.&lt;/p&gt;&lt;p&gt;One other takeaway point was &amp;quot;model what you need and not what you can.&amp;quot; It took me a while to understand this but then the guy gave a few examples of folks creating highly accurate models that would model very tiny details of the analog behavior, while the purpose was only to verify the connectivity. Thus, all the modeling effort and the simulation performance were completely wasted. &lt;/p&gt;&lt;p&gt;Tomorrow should be interesting; we are talking about wreal modeling and Verilog-AMS. &lt;/p&gt;&lt;p&gt;Have a good day, &lt;/p&gt;&lt;p&gt;Fred.&lt;/p&gt;&lt;img src="http://www.cadence.com/Community/aggbug.aspx?PostID=1304900" width="1" height="1"&gt;</description><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/analog/default.aspx">analog</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed-signal/default.aspx">mixed-signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal/default.aspx">mixed signal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Verilog-AMS/default.aspx">Verilog-AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/wreal/default.aspx">wreal</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Virtuoso/default.aspx">Virtuoso</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS-Designer/default.aspx">AMS-Designer</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/AMS/default.aspx">AMS</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/assertions/default.aspx">assertions</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/mixed+signal+design/default.aspx">mixed signal design</category><category domain="http://www.cadence.com/Community/blogs/ms/archive/tags/Fred/default.aspx">Fred</category><feedburner:origLink>http://www.cadence.com/Community/blogs/ms/archive/2011/10/31/how-fred-came-to-mixed-signal-behavioral-modeling.aspx</feedburner:origLink></item></channel></rss>

