<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.cadence.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" 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/"><channel><title>Cadence Technology Forums</title><link>https://community.cadence.com/cadence_technology_forums/</link><description>Network with other Cadence users and Cadence technologists...</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><item><title>Forum Post: RE: How can a concatenated string be transformed into a variable name?</title><link>https://community.cadence.com/cadence_technology_forums/f/custom-ic-skill/66275/how-can-a-concatenated-string-be-transformed-into-a-variable-name/1409212</link><pubDate>Fri, 21 Aug 2026 05:10:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:aa36279a-a35f-44b3-b992-91f3c3e61c9a</guid><dc:creator>SZ20260803361</dc:creator><description>Source code is shown below load_form.il: (let (load_en reload_en) procedure(load_form() cond( (dock_W load_en = nil reload_en = t ) (t load_en = t reload_en = nil ) ) layoutForm_pte~&amp;gt;loadpte_button~&amp;gt;enabled = load_en layoutForm_pte~&amp;gt;reloadpte_button~&amp;gt;enabled = reload_en hiDisplayForm(&amp;#39;layoutForm_pte) ) ) load_procedure.il: (let (a b ns) procedure(loadpte(a) load(&amp;quot;test_layout_demand.il&amp;quot;) hiFormClose(a) layoutForm_pte~&amp;gt;loadpte_button~&amp;gt;enabled = nil layoutForm_pte~&amp;gt;reloadpte_button~&amp;gt;enabled = t ) procedure(reloadpte(a) b=hiDockWindow( ?window dock_W ) if(b==t then hiFormClose(a) else dock_W=hiCreateDockWindow( ?appType &amp;quot;layout&amp;quot; ?widgetType &amp;quot;form&amp;quot; ?form appForm ) ns=hiGetWindowList(&amp;#39;session) foreach( n ns hiDockWindow( ?window dock_W ?session n ) ) ) ) ) gui_contain.il: (let (load_en reload_en loadpte_button reloadpte_button loadpte reloadpte boxLayout_ver ) dock_W = nil load_en = t reload_en = nil loadpte_button = hiCreateButton( ?name &amp;#39;loadpte_button ?buttonText &amp;quot;Press this button for initial loading:&amp;quot; ?callback &amp;quot;loadpte(layoutForm_pte)&amp;quot; ?enabled load_en ) reloadpte_button = hiCreateButton( ?name &amp;#39;reloadpte_button ?buttonText &amp;quot;Click to Reload: &amp;quot; ?callback &amp;quot;reloadpte(layoutForm_pte)&amp;quot; ?enabled reload_en ) boxLayout_ver = hiCreateVerticalBoxLayout( &amp;#39;boxLayout_ver ?items list(loadpte_button reloadpte_button) ) layoutForm_pte = hiCreateLayoutForm( &amp;#39;layoutForm_pte &amp;quot;LOAD PTE&amp;quot; boxLayout_ver ) ) test_layout_demand.il: (let (addMosW_string addMosW_button gridLayout boxLayout loadpte_button reloadpte_button boxLayout_ver ns) addMosW_string = hiCreateStringField( ?name &amp;#39;addMosW_string ?prompt &amp;quot;M1_width: &amp;quot; ?defValue &amp;quot;1.5&amp;quot; ) addMosW_button = hiCreateButton( ?name &amp;#39;addMosW_button ?buttonText &amp;quot;apply&amp;quot; ?callback &amp;quot;(AddMosM1)&amp;quot; ) gridLayout = hiCreateGridLayout( &amp;#39;gridLayout ?items (list list( addMosW_string &amp;#39;row 0 &amp;#39;col 0 ) list( addMosW_button &amp;#39;row 0 &amp;#39;col 1 ) list( &amp;#39;col_stretch 0 1) list( &amp;#39;col_stretch 1 0) ) ) boxLayout = hiCreateHorizontalBoxLayout( &amp;#39;boxLayout ?items list(gridLayout) ) appForm = hiCreateLayoutForm( &amp;#39;appForm &amp;quot;LAYOUT_PTE&amp;quot; boxLayout ) procedure(AddMosM1() let((cv objs metal1 temp temp1 shapes x y ux uy xy row column transform M1_width) M1_width = evalstring(appForm~&amp;gt;addMosW_string~&amp;gt;value) cv = geGetEditCellView() objs = geGetSelSet() foreach(obj objs transform = nil if(obj~&amp;gt;objType == &amp;quot;inst&amp;quot; then transform = list(obj~&amp;gt;transform));end if if(obj~&amp;gt;objType == &amp;quot;mosaic&amp;quot; then x = xCoord(obj~&amp;gt;xy) y = yCoord(obj~&amp;gt;xy) ux = obj~&amp;gt;uX uy = obj~&amp;gt;uY row = obj~&amp;gt;rows column = obj~&amp;gt;columns for(a 0 row-1 for(b 0 column-1 case(car(obj~&amp;gt;tileArray) (&amp;quot;R0&amp;quot; || &amp;quot;MXR90&amp;quot; xy = list(x+a*ux : y+b*uy)) (&amp;quot;R90&amp;quot; || &amp;quot;MY&amp;quot; xy = list(x-a*ux : y+b*uy)) (&amp;quot;R0&amp;quot; || &amp;quot;MXR90&amp;quot; xy = list(x+a*ux : y-b*uy)) (&amp;quot;R0&amp;quot; || &amp;quot;MXR90&amp;quot; xy = list(x-a*ux : y-b*uy)) );end case transform = append1(transform list(car(xy) car(obj~&amp;gt;tileArray) 1.0)) );end for );enf for );end if shapes = obj~&amp;gt;master~&amp;gt;shapes foreach(shape shapes if(car(shape~&amp;gt;lpp) == &amp;quot;M1&amp;quot; &amp;amp;&amp;amp; cadr(shape~&amp;gt;lpp) == &amp;quot;drawing&amp;quot; then foreach(trans transform metal1 = dbCopyFig(shape cv trans) temp = leConvertPolygonToPath(metal1) temp~&amp;gt;width = M1_width );foreach );if );foreach );foreach );let );proc dock_W=hiCreateDockWindow( ?appType &amp;quot;layout&amp;quot; ?widgetType &amp;quot;form&amp;quot; ?form appForm ) ns=hiGetWindowList(&amp;#39;session) foreach( n ns hiDockWindow( ?window dock_W ?session n ) ) )</description></item><item><title>Forum Post: RE: How can a concatenated string be transformed into a variable name?</title><link>https://community.cadence.com/cadence_technology_forums/f/custom-ic-skill/66275/how-can-a-concatenated-string-be-transformed-into-a-variable-name/1409211</link><pubDate>Fri, 21 Aug 2026 04:20:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:e54710bb-d8df-4cd7-ba5b-b9e3bb184c64</guid><dc:creator>SZ20260803361</dc:creator><description>This project is developed to meet requirements from the layout team. They need a persistently‑pinned UI panel that can be activated by clicks at any time. For this purpose, I planned to use dockWindow so that the panel can be docked inside the PTE frame. However, I have run into multiple issues during development, as listed below: With my current implementation, the dock window is only created for a single session window. My expectation is to make this dock window available for multiple session windows simultaneously. How can I completely delete an appForm from memory? I create an appForm via hiCreateLayoutForm, then construct the dock window with: dock_W = hiCreateDockWindow( ?appType &amp;quot;layout&amp;quot; ?widgetType &amp;quot;form&amp;quot; ?form appForm ) Afterwards I render the dock window with: foreach( n ns hiDockWindow( ?window dock_W ?session n ) ) My intention is to automatically unset the global variable appForm after the dock window is generated. When creating the dock window for another session window, I would recreate the global appForm variable. If fully destroying appForm is not feasible, I considered generating time‑dependent unique variable names. Each time a new session window opens, a brand‑new global variable such as appForm_currentTime would be generated to avoid naming conflicts caused by re‑using the same variable appForm. This is the motivation behind my post. There are three global variables in my codebase: appForm, layoutForm_pte and dock_W.</description></item><item><title>Forum Post: : How to create a schematic symbol for an existing custom footprint (padstacks already built) in Allegro X 25</title><link>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-system-capture/66277/how-to-create-a-schematic-symbol-for-an-existing-custom-footprint-padstacks-already-built-in-allegro-x-25</link><pubDate>Fri, 21 Aug 2026 02:38:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:5563b314-aab1-43a3-b35f-0be4f7658a14</guid><dc:creator>AT202608047036</dc:creator><description>Hey, I&amp;#39;ve already built the padstacks and copper layout for a custom part (an inverted-F antenna element) as a footprint in the PCB library. Now I need to create the matching schematic symbol so I can place it on my schematic page and have it map to that existing footprint. What I&amp;#39;ve checked so far: File &amp;gt; New only offers Project, Block, Footprint, and Template based footprint — there&amp;#39;s no &amp;quot;Symbol&amp;quot; option. Place menu has Component, Wire, Bus, Special Symbols, Schematic Block, Abstract Component, etc. — nothing for creating a brand-new symbol from scratch. Tools menu has Generate BOM, Launch PCB Editor, Cadence Unified Library Generator, and Part Manager. I tried a few menus but none worked for me. Any help is appreciated.</description></item><item><title>Forum Post: RE: How can a concatenated string be transformed into a variable name?</title><link>https://community.cadence.com/cadence_technology_forums/f/custom-ic-skill/66275/how-can-a-concatenated-string-be-transformed-into-a-variable-name/1409210</link><pubDate>Fri, 21 Aug 2026 02:32:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:710d6211-9b69-4563-9f9e-6d87266beb06</guid><dc:creator>SZ20260803361</dc:creator><description>Dear Mr. Beckett, Thank you very much for your prompt, professional and informative replies. I have tried both of your proposed methods, and both work as I expected. I will test the hash‑table approach you suggested later. I will elaborate on why I require dynamic variable names based on a small ongoing project I am developing, and seek your advice on the issues I have encountered during development. Best regards, Steve</description></item><item><title>Forum Post: RE: What is Preventing Designers from Improving Decoupling?</title><link>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-pcb-editor/66254/what-is-preventing-designers-from-improving-decoupling/1409209</link><pubDate>Thu, 20 Aug 2026 22:05:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:e5346683-0d0a-4004-b441-93dafe4a2377</guid><dc:creator>John T</dc:creator><description>Hi Avant, yes this rings a bell with me too having previously designed for high volume production also. Does anyone ever pre-plan placement to account for smd side1 versus smd side2 assembly? One neat trick we came up with was placing vias in pad for components placed on the smd 2 side. Side 1 being already pasted and soldered; any paste that might come through due to the side 2 soldering will then not cause any interference with production of the opposite side, such as no stencil lifting. Would be interested to hear any other thoughts or tricks!</description></item><item><title>Forum Post: RE: DRC exceptions not honored</title><link>https://community.cadence.com/cadence_technology_forums/orcadx/f/orcad-x-presto-pcb/66276/drc-exceptions-not-honored/1409208</link><pubDate>Thu, 20 Aug 2026 17:41:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:9b672940-b5ea-4bd5-8c6c-fff1590780d5</guid><dc:creator>rg13</dc:creator><description>A Capture design cannot have parts that have visible pins with duplicate pin names. Only invisible power pins can have the same name, and they all connect to the same signal. If you have Cadence ASK portal access, then you can refer following: Article (20451812) Title: Getting ERROR (ORCAP-36041) for duplicate pin name while creating netlist for Allegro PCB Editor URL: https://ask.cadence.com/ASK/article-viewer?id=a1Od00000066QHbEAM&amp;amp;pageName=article-viewer</description></item><item><title>Forum Post: DRC exceptions not honored</title><link>https://community.cadence.com/cadence_technology_forums/orcadx/f/orcad-x-presto-pcb/66276/drc-exceptions-not-honored</link><pubDate>Thu, 20 Aug 2026 17:25:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:be29dbd6-ea8e-4cfa-b080-785737221013</guid><dc:creator>passedpawn</dc:creator><description>I want to allow duplicate pin names. I get the error ORCAP-36041 when I do this, so I don&amp;#39;t want errors for this. Adding this error to the DRC&amp;gt;Exception Setup list does nothing - the error still occurs and I cannot generate a netlist. What am I doing wrong?</description></item><item><title>Forum Post: RE: What is Preventing Designers from Improving Decoupling?</title><link>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-pcb-editor/66254/what-is-preventing-designers-from-improving-decoupling/1409206</link><pubDate>Thu, 20 Aug 2026 14:50:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:b375ed43-38ad-42cf-8412-269b489402a2</guid><dc:creator>avant</dc:creator><description>We don&amp;#39;t use via-in-pad. We produce 1M+ units a year. Expense and manufacturing issues outweigh benefit for us. We typically use #2 with vias tied to planes, and wide traces. We use a lot of 0201 decoupling caps.</description></item><item><title>Forum Post: RE: How can a concatenated string be transformed into a variable name?</title><link>https://community.cadence.com/cadence_technology_forums/f/custom-ic-skill/66275/how-can-a-concatenated-string-be-transformed-into-a-variable-name/1409204</link><pubDate>Thu, 20 Aug 2026 12:03:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:3e7cb5b6-6d33-4ca4-a1ef-b5ffc3d5c598</guid><dc:creator>Andrew Beckett</dc:creator><description>This is almost certainly not what you want to do, because creating different variable names on the fly usually means you should be creating a different data structure - e.g. a hash table indexed by the date rather than a unique variable name. However, if you really want to do this (the wrong way in my opinion), then taking your code: item=&amp;quot;&amp;quot; lists=setof(i parseString(getCurrentTime() &amp;quot;&amp;quot;) i!=&amp;quot; &amp;quot; &amp;amp;&amp;amp; i!=&amp;quot;:&amp;quot;) foreach(elem lists item=strcat(item elem) ) (I assume you used some kind of optical character recognition because it had some spurious parentheses) then you could do: set(concat(&amp;quot;a_&amp;quot; item) 5) you can retrieve it with: symeval(concat(&amp;quot;a_&amp;quot; item)) A cleaner (more efficient in terms of creating garbage that needs collecting) way of building the variable name would be to do: cleanup=pcreCompile(&amp;quot;[ :]&amp;quot;) varName=concat(&amp;quot;a_&amp;quot; pcreReplace(cleanup getCurrentTime() &amp;quot;&amp;quot; 0)) However, if you creating a number of these, I&amp;#39;d use a hash table (using makeTable) as I mentioned before. Regards, Andrew</description></item><item><title>Forum Post: RE: How to install Allegro Free Physical Viewer 16.6？</title><link>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-pcb-editor/64632/how-to-install-allegro-free-physical-viewer-16-6/1409203</link><pubDate>Thu, 20 Aug 2026 10:53:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:6e8b03b0-e705-49c0-a421-fc142155ab8b</guid><dc:creator>TT202608201024</dc:creator><description>Hi, I also need Allegro Free Physical Viewer 16.6 or 17.4 to open a legacy BRD file saved in version 16.6. The current Allegro X Free Viewer shows error SPMHDB-181 and cannot open the file. Could you please share the installer or download link with me by email? Thank you.</description></item><item><title>Forum Post: How can a concatenated string be transformed into a variable name?</title><link>https://community.cadence.com/cadence_technology_forums/f/custom-ic-skill/66275/how-can-a-concatenated-string-be-transformed-into-a-variable-name</link><pubDate>Thu, 20 Aug 2026 09:07:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:4b349ab0-addb-4d80-b813-fb0ace26d583</guid><dc:creator>SZ20260803361</dc:creator><description>I want to set a variable name that can change over time. For example: item=&amp;quot;&amp;quot; lists=setof(i parseString(getCurrentTime() &amp;quot;&amp;quot;) i!) =&amp;quot; &amp;quot;&amp;amp;&amp;amp;i! =&amp;quot;:&amp;quot;) foreach(elem lists item=strcat(item elem) ) I received the item with the code &amp;quot;Aug201706212026&amp;quot;. I want to replace the &amp;quot;item&amp;quot; in the variable name &amp;quot;a_item&amp;quot; with &amp;quot;Aug201706212026&amp;quot;, so that the final variable name becomes &amp;quot;a_Aug201706212026&amp;quot;. How can I do this? I tried using `setq(stringToSymbol(strcat(&amp;quot;a_&amp;quot; item)) 5)`, but this caused an error. How should I proceed?</description><category domain="https://community.cadence.com/cadence_technology_forums/tags/Cadence%2bSKILL">Cadence SKILL</category><category domain="https://community.cadence.com/cadence_technology_forums/tags/Skill%2bprogramming">Skill programming</category><category domain="https://community.cadence.com/cadence_technology_forums/tags/Virtuoso">Virtuoso</category><category domain="https://community.cadence.com/cadence_technology_forums/tags/SKILL">SKILL</category></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409202</link><pubDate>Wed, 19 Aug 2026 15:11:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:b65d951c-cf16-4b48-aad1-bcc7f34375b7</guid><dc:creator>AK20250609765</dc:creator><description>Thank you everyone for the great questions and engagement today. We will follow up on pending items shortly and appreciate your participation.</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409201</link><pubDate>Wed, 19 Aug 2026 15:09:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:0e9c3eb9-7a7c-46f9-869c-49c34baecb0c</guid><dc:creator>AK20250609765</dc:creator><description>Thank you for the question. When a channel fails compliance testing, engineers typically investigate insertion loss, return loss, crosstalk, ISI, eye margin, and SNR . The goal is to determine whether the failure is caused by excessive channel attenuation, reflections from impedance discontinuities, coupling from aggressor nets, or degraded receiver margin. In practice, S21 (insertion loss), S11 (return loss), crosstalk, eye opening, and SNR are among the most important indicators used to isolate the root cause of a compliance failure.</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409200</link><pubDate>Wed, 19 Aug 2026 15:04:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:ee33efa8-428c-4fae-9f25-2d1af16a5106</guid><dc:creator>AK20250609765</dc:creator><description>The handoff typically breaks down when the logical connectivity used during topology creation no longer matches the physical implementation. Pin-name mismatches, component-definition differences, or connectivity mapping issues can prevent correct constraint transfer, forcing manual re-assignment of routing constraints in the layout flow. Maintaining consistent schematic-to-layout mapping is key.</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409199</link><pubDate>Wed, 19 Aug 2026 14:57:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:d0ddd603-c619-4211-aab8-ecf7b4afffcd</guid><dc:creator>CF202606104231</dc:creator><description>When a channel fails compliance testing , what SI metrics is typically investigated?</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409198</link><pubDate>Wed, 19 Aug 2026 14:54:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:0c947733-3416-433c-8979-a4361943e9d2</guid><dc:creator>EDAHut</dc:creator><description>During pre layout engineer creates a tuned LPDDR4 memory topology with specific termination resistors using generic schematic nodes … when transferring this to physical layout , mismatching pin names between the schematic symbols and the actual layout footprints break the net connectivity mapping in Aurora .. this completely resets the constraint manager rules, forcing the layout team to manually reassign routing constraints from scratch</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409197</link><pubDate>Wed, 19 Aug 2026 14:54:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:6295edff-319d-4be9-ba90-a3c95a56af03</guid><dc:creator>AK20250609765</dc:creator><description>Thank you for the question. AI servers and high-performance computing (HPC) systems introduce several unique challenges for signal integrity (SI) engineers: Heterogeneous Architectures: The integration of various processing units, such as CPUs, GPUs, and AI processors, requires careful management of signal integrity across different components, which can complicate design and validation processes. High-Speed Signaling: The demand for high-speed data transfer increases the risk of signal integrity issues, including crosstalk, attenuation, and reflections. Engineers must implement advanced techniques to mitigate these effects. Memory Bandwidth Limitations: The &amp;quot;memory wall&amp;quot; phenomenon, where memory bandwidth does not scale with the number of cores, poses challenges in ensuring that data can be efficiently accessed and processed without bottlenecks. Thermal Management: Increased power consumption from high-performance components generates heat, which can affect signal integrity. Engineers must design effective cooling solutions to maintain optimal operating conditions. Electromagnetic Interference (EMI): The complexity of modern AI workloads can lead to increased EMI, necessitating careful design to minimize interference and ensure compliance with regulatory standards. Complex Routing Constraints: The intricate layouts required for high-speed signals on PCBs can lead to routing challenges, requiring innovative design strategies to maintain signal integrity. Modular Designs: The shift towards disaggregated architectures and modular designs, facilitated by standards like UCIe, requires SI engineers to adapt to new connectivity standards and ensure compatibility across diverse components. Addressing these challenges is crucial for the successful deployment of AI servers and HPC systems, ensuring reliable performance and efficiency in demanding environments.</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409196</link><pubDate>Wed, 19 Aug 2026 14:50:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:892361ba-5118-4e08-aaa2-d4fc91ffd8ec</guid><dc:creator>AK20250609765</dc:creator><description>Thank you for the question. Before running detailed SI simulations, I would recommend using the PowerSI ERC - Trace Imp/Cpl/Ref Check workflow. While impedance may be within specification, SI issues can still arise from excessive coupling, missing or discontinuous reference planes, and localized routing violations . The ERC workflow automatically checks these conditions and reports violations through detailed tables and layout overlays, making it easy to identify the exact trace segments responsible for potential SI degradation. This allows layout issues to be corrected early, reducing simulation iterations and improving overall design quality.</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409195</link><pubDate>Wed, 19 Aug 2026 14:45:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:71b09034-6a20-44ab-a1ee-7f62d2e8b257</guid><dc:creator>cistheta07</dc:creator><description>In a high-speed DDR or SerDes design, impedance may be within specification, yet signal integrity issues can still occur. What layout-related factors should be investigated to identify the root cause before running detailed simulations?</description></item><item><title>Forum Post: RE: SI Engineers, This One's for You! - Live Experts Session on Aug 19th 2026</title><link>https://community.cadence.com/cadence_technology_forums/system-analysis/f/sigrity/66233/si-engineers-this-one-s-for-you---live-experts-session-on-aug-19th-2026/1409194</link><pubDate>Wed, 19 Aug 2026 14:44:00 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:f58cc4e8-2371-41c9-8209-de9b1e514402</guid><dc:creator>EDAHut</dc:creator><description>Where does the handoff from schematic driven topologies to physical layout in Cadence Sigrity Aurora break down the most ?</description></item></channel></rss>