how The Future of Driving: How Advanced DSP is Shaping Car Infotainment Systems By community.cadence.com Published On :: Tue, 08 Oct 2024 15:40:00 GMT As vehicles transition into interconnected ecosystems, artificial intelligence and advanced technologies become increasingly crucial. Infotainment systems have evolved beyond mere music players to become central hubs for connectivity, entertainment, and navigation. With global demand for comfort, convenience, and safety rising, the automotive infotainment market is experiencing significant growth. Valued at USD14.99 billion in 2023, it is projected to grow at a compound annual growth rate (CAGR) of 9.9% from 2024 to 2030. To keep pace with this evolution, infotainment systems must accommodate a range of workloads, including audio, voice, AI, and vision technologies. This requires a flexible, scalable Digital Signal Processor (DSP) solution that acts as an offload engine for the main application processor. Integrating a single DSP for varied functions offers a cost-effective solution for high-performance, low-power processing, which aligns well with the needs of Electric Vehicles (EVs). If you missed the detailed presentation by Casey Ng, Product Marketing Director at Cadence at CadenceLIVE 2024, register at the CadenceLIVE On-Demand site to access it and other insightful presentations. Stay ahead of the curve and explore the future of innovative electronics with us. Cadence Infotainment Solution: Leading the Charge Cadence Tensilica HiFi DSPs play a crucial role in enhancing audio capabilities in vehicle infotainment systems. They support applications like voice recognition, hands-free calling, and deliver immersive audio experiences. This technology is also paramount for features such as active noise control, which reduces road and cabin noise, and acoustic event detection for identifying unusual sounds like broken glass. One notable innovation is the "audio bubble," enabling personalized audio zones within the vehicle, ensuring passengers enjoy distinct audio settings. Cadence HiFi DSP technology enriches the driving experience for electric vehicles by mimicking traditional engine sounds, while its advanced audio processing ensures optimal performance across various digital radio standards. It significantly contributes to noise reduction, hence improving the cabin experience. Integrating a Double Precision Floating Point Unit (FPU) stands out, as it upgrades audio performance and Signal-to-Noise Ratio (SNR) through efficient 64-bit processing, allowing control over numerous speakers without hitches. These advancements distinguish the DSP as an essential tool in evolving infotainment systems, offering unmatched performance and adaptability. Tensilica HiFi processors, crucial to advanced infotainment SoCs, serve as efficient offload processors, augmenting real-time execution and energy efficiency. Cadence’s ecosystem, with over 200 codecs and software partnerships, propels the evolution of innovative infotainment systems. Introducing the HiFi 5s DSP marks a new era in connected car experiences, setting the stage for groundbreaking advancements. Exploring Tomorrow with HiFi 5s DSP Technology The HiFi 5s represents the apex of audio and AI digital signal processing performance. Built on the Xtensa LX8 platform, it introduces capabilities like auto-vectorization, which allows standard C code to be automatically optimized for performance. This synergy of hardware and software co-design marks a significant step forward in DSP technology. By leveraging its extended Single Instruction, Multiple Data (SIMD) capabilities alongside features like a double-precision floating-point unit (DP_FPU), the HiFi 5s delivers unparalleled precision and speed improvements in signal and audio processing tasks. Equally notable are its branch prediction and L2 cache enhancements, which optimize system performance by refining the control code execution and recognizing codec efficiency. The application of such enhancements are particularly beneficial in real-world scenarios. AI-Powered Audio Cadence's focus on AI integration with the HiFi 5s demonstrates significant improvements in audio clarity through AI-powered solutions. AI models learn from real-world data and adapt dynamically, while classic DSP algorithms rely on fixed rules. AI can be fine-tuned for specific scenarios, whereas classic DSP lacks flexibility. AI handles extreme and marginal noise patterns better, generalizes well across different environments, and is robust against varying noise characteristics. Cadence's dedication to artificial intelligence marks a pivotal shift in audio processing. Traditional DSP algorithms, bound by rigid rules, are eclipsed by AI's ability to learn dynamically from real-world data. This adaptability equips AI models to tackle challenging noise patterns and offer unmatched clarity even in noisy environments, making them ideal for automotive and consumer audio applications. Realtime AI-Optimized Speech Enhancements by OmniSpeech and ai|coustics OmniSpeech Our partner, OmniSpeech, has advanced AI-based audio processing that enhances the performance of audio software, specifically for omnidirectional and dipole microphones. Impressively, their technology operates with less than 32MHz and requires only 418kB of memory. Test results show that background noise is significantly reduced when AI employs a single omnidirectional microphone, outperforming non-AI solutions. Additionally, when using a dipole microphone with AI, there is a 3.5X improvement in the weighted Signal-to-Noise Ratio (SNR) and more than a 28% increase in the Global Mean Opinion Score (GMOS) across various background noise. ai|coustics ai|coustics, a Cadence partner specializing in advanced audio technologies, utilizes real-time AI-optimized speech enhancement algorithms. They leverage an extensive speech-quality dataset containing thousands of hours and 100 languages to transform low-quality audio into studio-grade audio. Their process includes: De-reverb, which eliminates room resonances, echoes, and reflections Removing artifacts from downsampling and codec compression Dynamic and adaptive background noise removal Reviving audio materials with analog and digital distortions Providing support for all languages, accents, and a variety of speakers Applications include: Automotive: Enhances clarity of navigation commands and communication for driver safety Consumer audio: Improves voice clarity for better dialogue understanding in TV programs. Optimizes speech intelligibility in communication for both uplink and downlink audio streams Smart IoT: Boosts voice command detection and response quality Performance Enhancements The advancements in branch prediction and L2 cache integration have significantly boosted performance metrics across various systems. With HiFi 5s, branch prediction increases codec efficiency by an average of 5%, reaching up to 16% in optimal conditions. L2 cache improvements have drastically enhanced system-level performance, evidenced by a 2.3X boost in EVS decoder efficiency. Adding MACs and imaging ISA in imaging use cases has led to substantial advancements. When comparing HiFi 5s to HiFi 5, imaging ISA performance improvements range with >60% average performance improvements. The Crescendo of the Future As Cadence continues to blaze trails in DSP technology, the HiFi 5s emerges as the quintessential solution for consumer and automotive audio use cases. With a robust framework for auto-vectorization, an unmatched double-precision FPU, AI-driven audio solutions, and comprehensive system enhancements, Cadence is orchestrating the next era of audio processing, where every note is clearer, every sound richer, and every experience more engaging. It is not just the future of audio—it's the future of how we experience the world around us. Discover how Cadence Automotive Solutions can transform your business today! Full Article Automotive DSP infotainment Tensilica HiFi 5s
how How to create multiple shapes of same port in innovus? By community.cadence.com Published On :: Tue, 23 Apr 2024 13:28:46 GMT LEF allows the same port with multiple shape definitions. Does anybody know if innovus can create multiple duplicate shapes associated with the same port? Assume they are connected outside the block with perfect timing synchronization. Thank you! Full Article
how How to see placement reasons of cells? How to highlight timing start/end points? By community.cadence.com Published On :: Tue, 23 Apr 2024 13:37:57 GMT I am working with innovus on a huge design. I found some cells are placed far away from both timing start points and timing end points. I suspect some other timing paths may be near-critical that results in this sub-optimal cell placement; or innovus has to place the cell far away due to congestion of placement or routing. Is there a way to see why innovus places/moves the cell during place_opt_design or ccopt_design? Also, is there a way to highlight all timing start points or timing end points that go through a cell? There may be thousands of timing paths through this cell. I tried using report_timing and timing debugger but it is very painful to click the highlight box and highlight the timing paths one by one. Thank you for your help! Full Article
how How to quit “[SUSPEND]” in innovus By community.cadence.com Published On :: Thu, 05 Sep 2024 08:33:32 GMT for debug I use suspend in my tcl script to debug,here is the code after that the innovus command screen become how to quit the SUSPEND status? thanks Full Article
how How to import different input combination to the same circuit to get max, min, and average delay, power dissipation and area By community.cadence.com Published On :: Wed, 16 Oct 2024 02:47:12 GMT Hi everyone. I'm very a new cadence user. I'm not good at using it and quite lost in finding a way to get the results. With the topic, I would like to ask you for some suggestions to improve my cadence skills. I have some digital decision logic. Some are combinational logic, some are sequential logic that I would like to import or generate random input combination to the inputs of my decision logic to get the maximum, minimum, and average delay power dissipation and area when feeding the different input combination. My logic has 8-bit, 16-bit, and 32-bit input. The imported data tends to be decimal numbers. I would like to ask you: - which tool(s) are the most appropriate to import and feed the different combination to my decision logic? - which tool is the most appropriate to synthesis with different number of input? - I have used Genus Synthesis Solution so far. However with my skill right now I can only let Genus synthesize my Verilog code one setup at a time. I'm not sure if I there is anyway I can feed a lot of input at a time and get those results (min, max, average of delay, power dissipation and area) - which language or scripts I should pick up to use and achieve these results? -where can I find information to solve my problem? which information shall I look for? Thank you so much for your time!! Best Regards Full Article
how How to define the pin locations for 2-dimensional input? By community.cadence.com Published On :: Wed, 23 Oct 2024 18:19:05 GMT I have a 2-dimensional input in my design - input [2:0] data_in [15:0]. After synthesis with genus, I got a netlist where the inputs are like data[15], data[14],...,data[0]. And furthermore it has definitions like input [2:0] data[15], .... So how can I define the pin locations of each of the bits for this input? Can I define data[15]'s inner bits like data[15][0]? Is it possible to define this with def files? Full Article
how How to allow hand-made waveform plot into Viva from Assembler? By community.cadence.com Published On :: Fri, 11 Oct 2024 10:58:38 GMT Hi! I've made some 1-point waveform "markers" that I want to overlay in my plots to aid visualization (with the added advantage, w.r.t. normal Viva markers, that they update location automatically upon refreshing simulation data). For example, the plot below shows an spectrum along with two of these markers, which I create with the function "singlePointWave", and the Assembler output definitions also as shown below. The problem is: as currently created and defined, Assembler is unable to plot these elements. I can send their expressions to the calculator and plotting works from there, BUT ONLY after first enabling the "Allow Any Units" in the target Viva subwindow. Thus, I suspect Assembler is failing to plot my markers because they "lack" other information like axes units and so on. How could I add whatever is missing, so that these markers can plot automatically from Assembler? Thanks in advance for any help! Jorge. P.S. I also don't know why, but nothing works without those "ymax()" in the output definitions--I suspect they are somehow converting the arguments to the right data type expected by singlePointWave(). Ideas how to fix that are also welcome! ^^ procedure( singlePointWave(xVal yVal) let( (xVect yVect wave) xVect = drCreateVec('double list(xVal)); yVect = drCreateVec('double list(yVal)); wave = drCreateWaveform(xVect yVect); );); Full Article
how How to have sub trees for sub trees By community.cadence.com Published On :: Wed, 16 Oct 2024 04:10:07 GMT I want to create sub tree of sub trees how can i do that? I want to create another tree for the Sub parameter also. ; create a root tree indexTree=hiCreateTree('index11) hiTreeAppendItem(indexTree hiCreateTreeItem('dow11 list("Parameter 1"))) ; create two sub-trees dowTree11=hiCreateTree('dows11) hiItemInsertTree(dow11 dowTree11) nasTree11=hiCreateTree('nass11) hiItemInsertTree(nas11 nasTree11) hiTreeAppendItem(dowTree11 hiCreateTreeItem('ibm list("Sub Parameter 2" ))) ibm11=hiCreateTree('ibsm) hiItemInsertTree(dowTree11 ibm11) hiTreeAppendItem(ibm11 hiCreateTreeItem('cdn111 list("Sub Parameter 1" "tb1_par1" "tb2_par1"))) Full Article
how How to add custom indicators to Dynamic Display measuring HUD By community.cadence.com Published On :: Wed, 23 Oct 2024 20:31:55 GMT I am attempting to use dbGetNeighbor() function inside the dynamic display HUD so that the distance to the next metal on that layer could be viewed. Think of another line in this dynamic table here... My SKILL code is essentially the following: procedure(getNearestNeighborOnMetal(cv) let((direction tmpBoundingBox) direction = internal_function() tmpBoundingBox = dbCreateRect(geGetEditCellView() "tmp" list(hiGetCommandPoint() hiGetCommandPoint())) car(dbGetNeighbor(geGetEditCellView() tmpBoundingBox direction)) )) this returns the distance to the closest metal based on some tests. Next, I try to register this function to work in the Dynamic Display / Info Balloon world by executing odcRegisterCustomFunc() for each and every object type (I know, absurd, but trying to debug) In the dynamic display menu, I toggle the "Custom SKILL Function" check in layoutXL, then hit apply, then OK. After this I find I am unable to view the changes reflected in any info balloons or in the drawing HUD (above) for this wire. I have tried replacing my function with the sample "customFunc" from the odcRegisterCustomFunc() documentation and was still unable to produce any new output. Any help diagnosing the use of this feature would be very much appreciated Full Article
how How to create draw region button like the one used in the Area and Density calculator By community.cadence.com Published On :: Mon, 28 Oct 2024 23:47:16 GMT Hello, I would like to create a button for my form that prompts the user to click on a cellview and draw a rectangle bounding box, exactly like the one used in the Area and Density Calculator. Can someone please help me with this? Thanks! Beto Full Article
how How to restrict the variable's data type of procedure with @key By community.cadence.com Published On :: Fri, 08 Nov 2024 02:37:35 GMT Hi, I want to define a procedure that with @key, and I also want to restrict the variable's datatype, I tried with folloing but I received error in CIW procedure(tt(handler @key str1 str2 "ssS") printf("handler: %L " handler)) tt('test) The error is like: *Error* tt: argument for keyword ?str1 should be a symbol (type template = "ssS") at line 11 of file Thanks, James Full Article
how In Simvision, how do I change the waveform font size of the signal names? By community.cadence.com Published On :: Mon, 27 Mar 2023 09:01:44 GMT Hi Cadence, I use simvision 20.09-s007 but my computer screen resolution is very high. As a result, the texts are too small. In ~/.simvision/Xdefaults I changed that number to 16, from 12. But the signal names in the waveform traces don't reflect the change. Simvision*Font: -adobe-helvetica-medium-r-normal--16-*-*-*-*-*-*-* Other .font changes seem to reflect on the simvision correctly, except the signal names. How do I fix that? I dont mind a single variable to change all the texts fonts to 16. Thank you! PS: I found the answer with another post. I change Preference/Waveform/Display/Signal Height. Full Article
how Conformal LEC can't finish at analyze abort step. How do I proceed? By community.cadence.com Published On :: Mon, 07 Aug 2023 02:19:35 GMT Hi Cadence & forumers, I am running a conformal LEC with a flattened netlist against RTL. The run hang for 5 days at the "analyze abort" step which is automatically launched by the compare. The netlist is flattened at some levels so hierarchical flow which I tried didn't help much. The flattened/highly optimized netlist is from customer and the ultimate goal. How shall I proceed now? On the a side note, a test run with a hierarchical netlist from a simple DC "compile -map_effort medium" command finished after 1 day or so. Thank you! // Command: vpx compare -verbose -ABORT_Print -NONEQ_Print -TIMEstamp// Starting multithreaded comparison ... Comparing 241112 points in parallel. // Multithreading Overhead: 38% Gates: 8501606/6168138// Multithreaded processing completed. ================================================================================Compared points PO DFF DLAT BBOX CUT Total --------------------------------------------------------------------------------Equivalent 1025 241638 30 75 21 242789 --------------------------------------------------------------------------------Abort 0 124 0 0 0 124 ================================================================================Compare results of instance/output/pin equivalences and/or sequential merge ================================================================================Compared points DFF Total --------------------------------------------------------------------------------Equivalent 204 204 ================================================================================// Warning: 512 DFFs/DLATs have 1 disabled clock port: skipped data cone comparison// Resolving aborts by analyze abort... Full Article
how How to generate "Sheet Name" column in a pin report? By community.cadence.com Published On :: Wed, 08 Nov 2023 03:52:26 GMT Hi everyone, Is there any method to generate "Sheet" column for a pin report like table below? The column "Name.Pin" & "Signal" can be generated easily, but I have no idea to generate the column of "Sheet Name". The software using here are Allegro Design Entry HDL, OrCAD Capture and Allegro PCB Editor. Can these 3 software generate "Sheet Name" data? Name.Pin Signal Sheet Name C1_1.1 N301321 SITE1_1 C1_1.2 GND_ANA_1 SITE1_1 C1_2.1 N180243 SITE2_1 C1_2.2 GND_ANA_2 SITE2_1 Thank you. Full Article
how How to identify old Orcad Schematic entry version By community.cadence.com Published On :: Fri, 19 Jan 2024 10:49:20 GMT Good morning,I dug up an old project from 2005 and I should open the schematic to check some things.This is the schematic of a XILINX XC95108-pq160 CPLD which the XILINX ISE 6.1 software then translated and compiled, to generate a JEDEC file to burn CPLD.My problem is that I can't open schematics with the versions of Orcad Schematic Entry that I have.Can anyone help me understand which version of Orcad Schematic Entry I need to install to see these files?I shared the files on:drive.google.com/.../viewThank you very much Full Article
how how to tell conformal to ignore certain combination of input By community.cadence.com Published On :: Thu, 04 Apr 2024 10:35:38 GMT hi How can I tell the LEC tool to ignore a combination of Primary input bus in both Golden and revised. For example in both Golden and revised there is input [3:0] data_in I want LEC not to check the case that data_in[3:0] == 4'b1000 Full Article
how How to reuse device files for existing components By community.cadence.com Published On :: Thu, 07 Dec 2023 11:09:26 GMT Have you ever encountered ERROR(SPMHNI-67) while importing logic? If yes, you might already know that you had to export libraries of the design and make sure that paths (devpath, padpath, and psmpath) include the location of exported files. Starting in SPB23.1, if you go to File > Import > Logic/Netlist and click on the Other tab, you will see an option, Reuse device files for existing components. After selecting this option, ERROR(SPMHNI-67) will no longer be there in the log file, because the tool will automatically extract device files and seamlessly use them for newly imported data. In other words, SPB_23.1 lets you reuse the device / component definitions already in the design without first having to dump libraries manually. An excellent improvement, don’t you think? Full Article
how How to allow DRCs to the surrounding objects using Etch Back option By community.cadence.com Published On :: Thu, 14 Dec 2023 11:58:54 GMT Starting from SPB23.1, a new option, Allow DRCs to surrounding metal, has been added in the Etch-Back form to allow DRCs to the surrounding objects. form to allow DRCs to the surrounding objects. The Allow DRCs to surrounding metal option lets you see and adjust objects instead of the current behavior, which sacrifices the width of the mask for the trace. When this option is turned off, it maintains the EB mask to another object clearance. When this option is enabled, it keeps the EB mask to the EM trace edge clearance and shows a DRC if the EB mask to another object spacing is out of rule. Full Article
how How to add wirebond profile to a die pin? By community.cadence.com Published On :: Thu, 21 Dec 2023 14:15:52 GMT Starting SPB 23.1, a new pin property, WIREBOND_PROFILE_NAME is introduced. This property can be used to define a wirebond profile to a die pin. When adding a wirebond, the pin will use the profile defined in the WIREBOND_PROFILE_NAME property associated to the die pin. Assign the WIREBOND_PROFILE_NAME property to the die pin using Edit > Properties and set the desired wirebond profile name in the Value field. The following image displays the WIREBOND_PROFILE_NAME property assigned to the pin and wire profile of the Wire Bond for that pin. Full Article
how How to access the Transmission Line Calculator in Allegro X APD By community.cadence.com Published On :: Tue, 02 Jan 2024 17:05:21 GMT Have you ever thought of a handy utility to specify all necessary transmission line parameters to decide upon the stackup? Starting SPB 23.1, a handy feature Transmission Line Calculator, is built into Allegro X Advanced Package Designer (Allegro X APD). This feature will require either an SiP Layout license or can be accessed through SiP Layout Bundle. From the Analyze dropdown menu in the 23.1 Allegro X APD toolbar, you can choose Transmission Line Calculator. You can use this calculator to help decide constraints and stackup for laminate-based PCB or Packages. You can calculate the correct stackup material and width/spacing to meet any requirements that may be later entered in a constraint. This is truly a calculated number and not a true field solver. The different types of calculations that the Transmission Line Calculator can provide are Microstrip, Embedded microstrip, Stripline, CPW (Coplanar), FGCPW (frequency-dependent Coplanar), Asymmetric stripline, Coupled microstrip (Differential Pair), Coupled stripline (Differential Pair), and Dual striplines. This feature is important for customers relying on fabricators/spreadsheets to provide this information or need to test a quick spacing/width as per the impedance value. Let us know your comments on this new feature in 23.1 Allegro X APD. Full Article
how How to export and import symbols and component properties through Die Text wizards By community.cadence.com Published On :: Thu, 04 Jan 2024 15:50:39 GMT Starting SPB 23.1, Allegro X APD lets you import/export the symbol and component properties by using Die Text-In/Out wizards. Exporting the symbol You can export the symbol by using File > Export > Die Text-Out Wizard. In the Die Text-Out Wizard window, you can see the newly added options, that is, Component Properties and Symbol Properties. This entire information including the properties will be saved in a text file. Importing the symbol You can import the same text file in Allegro X APD by using Die Text-In Wizard. Choose the text file you want to import. Symbol properties added in the text file will be visible in the Die Text-In Wizard window. Full Article
how How to avoid adding degassing holes to a particular shape By community.cadence.com Published On :: Wed, 10 Apr 2024 11:47:20 GMT In a package design, designers often need to perform degassing. This is typically done at the end of the design process before sending the design to the manufacturer. Degassing is a process where you perforate power planes, voltage planes, and filled shapes in your design. Degassing holes let the gas escape from beneath the metal during manufacturing of the substrate. The perforations or holes for degassing are generally small, having a specified size and shape, and are spaced regularly across the surface of the plane. If the degassing process is not done, it may result in the formation of gas bubbles under the metal, which may cause the surface of the metal to become uneven. After you degas the design, it is recommended to perform electrical verification. Allegro X APD has degassing features that allow users to automate the process and place holes in the entire shape. In today’s topic, we will talk about how to avoid adding degassing holes on a particular shape. Sometimes, a designer may need to avoid adding degassing holes to a particular shape on a layer. All other shapes on the layer can have degassing holes but not this shape. Using the Layer Based Degassing Parameters option, the designer can set the degassing parameters for all shapes on the layer. Now, the designer would like to defer adding degassing holes for this particular shape. You may wonder if there is an easy way to achieve this. We will now see how this can be done with the tool. Once the degassing parameters are set, performing Display > Element on any of the shapes on that layer will show the degassing parameters set. You can apply the Degas_Not_Allowed property to a shape to specify that degassing should not be performed on this shape, even if the degassing requirements are met. Select the shape and add the property as shown below. Switch to Shape Edit application mode (Setup > Application mode > Shape Edit) and window-select all shapes on the layer. Then, right-click and select Deferred Degassing > All Off. Now, all shapes on the layer will have degassing holes except for the shape which has the Degas_Not_Allowed property attached to it. Full Article
how Allegro X APD - Tip of the week: Wondering how to set two adjacent layers as conductor layers! Then this post should help you. By community.cadence.com Published On :: Fri, 10 May 2024 14:01:45 GMT By default, a dielectric must separate each pair of conductor layers in the cross-section of a design. In rare cases, this does not represent the real, manufactured substrate. If your design requires you to have conductor layers that are not separated by a dielectric (such as, for half-etch designs), there is a variable that needs to be set in Allegro X APD. You must set this by enabling the variable icp_allow_adjacent_conductors. This entry, and its location in the User Preferences Editor, are shown in the following image. The Objects on adjacent conductor layers do not electrically connect together, automatically. A via must be used to establish the inter-layer connections. When enabling this option, it is recommended to exercise caution because excluding dielectric layers from your cross-section can lead to inaccurate calculations, including the calculations for signal integrity and via heights. It is important that your cross-section accurately reflect the finished product to ensure the most accurate results possible. Any dielectric layers present in the manufactured part need to be in the cross-section for accurate extraction, 3D viewing, and so on. Let us know your comments on the various designs that would require adjacent conductor layers. Full Article
how How to execute APD+ embedded function in my form? By community.cadence.com Published On :: Thu, 18 Jul 2024 01:34:57 GMT Hello, SKILL experts. I'm studying SKILL language to build some useful function in APD+. Now, I want to execute 'Import Sub-drawing' function in new form. But I cannot find how to do execute APD+ embedded function in a field of new form. Has anyone experienced this or idea to solve this problem? Full Article
how How to transfer etch/conductor delays from Allegro Package Designer (APD) to pin delays in Allegro PCB Editor By community.cadence.com Published On :: Sun, 10 Nov 2024 23:39:10 GMT The packaging group has finished their design in Allegro Package Designer (APD) and I want to use the etch/conductor delay information from the mcm file in the board design in Allegro PCB Designer. Is there a method to do this? This can be done by exporting the etch/conductor data from APD and importing it as PIN_DELAY information into Allegro PCB Editor. If you are generating a length report for use in Allegro Pin Delay, you should consider changing the APD units to Mils and uncheck the Time Delay Report. In Allegro Package Designer: Select File > Export > Board Level Component. Select HDL for the Output format and select OK. 3. Choose a padstack for use when generating the component and select OK. This will create a file, package_pin_delay.rpt, in the component subdirectory of the current working directory. This file will contain the etch/conductor delay information that can be imported into Allegro. In Allegro PCB Editor: Make sure that the device you want to import delays to is placed in your board design and is visible. Select File > Import > Pin delay. Browse to the component directory and select package_pin_delay.rpt. The browser defaults to look for *.csv files so you will need to change the Files of type to *.* to select the file. You may be prompted with an error message stating that the component cannot be found and you should select one. If so, select the appropriate component. Select Import. Once the import is completed, select Close. Note: It is important that all non-trace shapes have a VOLTAGE property so they will not be processed by the the 2D field solver. You should run Reports > Net Delay Report in APD prior to generating the board-level component. This will display the net name of each net as it is processed. If you miss a VOLTAGE property on a net, the net name will show in the report processing window, and you will know which net needs the property. Full Article
how Arduino: how to save the dynamic memory? By community.cadence.com Published On :: Wed, 06 Nov 2019 07:25:31 GMT When the Arduino Mega2560 is added to the first serial port, the dynamic memory is 2000 bytes, and when the second serial serial is added, the dynamic memory is 4000 bytes. Now I need to add the third Serial serial port. The dynamic memory is 6000 bytes. Due to the many variables in the program itself, the dynamic memory is not enough. Please help me how to save the dynamic memory? Full Article
how How do I use TCL to get connections between modules in INNOVUS. By community.cadence.com Published On :: Sun, 20 Sep 2020 04:04:00 GMT Please give me some ideas. Thank you very much. Full Article
how How to remove incorrect nets error in cadence? By community.cadence.com Published On :: Tue, 03 Nov 2020 10:58:16 GMT While doing the lvs it's showing an error in gnd connection, I am not being able to understand exactly what is the error and what do I need to do to remove this error? Full Article
how How to turn vavlog IO width mismatch error to warning? By community.cadence.com Published On :: Wed, 13 Sep 2023 07:15:52 GMT Hi, all. When I use vavlog to compile verilog rtl, it will recognize IO width mismatch problem as a fatal error. How to turn the error into warning? VCS can use -error=noIOPCWM to ingore the error. Is vavlog has similar arguments? Full Article
how How to design enhancement mode eGaN (EPC8002) switch in cadence By community.cadence.com Published On :: Tue, 06 Aug 2024 08:44:04 GMT Hi, I need to design EPC8002 eGaN switch in cadence. Can someone provide me step by step guide on hoe to add EPC8002 into my cadence. I am working on BCD180. Thank you Ihsan Full Article
how How Do You Ensure the Reliability of Your Design in Virtuoso Studio? By community.cadence.com Published On :: Mon, 03 Jun 2024 06:56:00 GMT Designers have long recognized the need to analyze the reliability of ICs. Two commonly used approaches for performing reliability analysis include calculating the change in device degradation and relying on safe operating checks in circuit simulators. With the advent of the ever-increasing use of ICs in mission-critical applications, the need for reliable reliability analysis has become of paramount importance. Over the years, you have been using reliability analysis in Virtuoso ADE Assembler and Virtuoso ADE Explorer to measure and review aging effects, such as device characteristic degradations, model parameter changes, self-heating effects, and so on. Reliability analysis can be performed using two modes: Spectre native and RelXpert. The reliability analysis analyzes the effect of time on circuit performance drift and predicts the reliability of designs in terms of performance. In ADE Assembler, you can run the reliability simulation for fresh test (when time is zero), stress test (to generate degradation data), and aged test (at specific intervals, such as one year, three years, or 10 years). In the stress test, extreme environmental conditions are used to stress devices before aging analysis. The following figure shows the reliability simulation flow. The Reliability Options form has the following four tabs: Basic: Enables you to specify analysis type, aging options, start and stop time of reliability simulation, and options related to device masking, degradation ratio, and lifetime calculation. Modeling: Enables you to choose the modeling type you want to use during reliability simulation. Degradation: Enables you to specify the options to print device and subcircuit degradation information into a .bt0 file. Output: Enables you to specify the degradation reports to be generated and methods to filter degradation results in the reports. While the Basic and the Output tabs are used by design engineers, the Modeling and the Degradation tabs are primarily used by model developers. Reviewing degradation reports in text or XML formats can be a tiresome exercise because degradation data can be large and can contain a large number of instances due to advanced technology nodes and post-layout simulations. For you to work effectively and interactively with these reports, the new reliability report is based on the SQLite database, which adds the benefit of improved performance and capabilities of sorting and filtering reliability data using SQLite operators. As they say, watching this in action might help you more than reading about it, so please take a look at our Training Bytes video channel, which offers many helpful videos on how to run Reliability Analysis in Virtuoso Studio. All the related videos are linked together in a channel so that you can easily access and watch as many as you like. Reliability Analysis in Virtuoso Studio Want to Learn More? For lab instructions and a downloadable design, enroll for the online training courses of your interest on Reliability Analysis in Virtuoso Studio vIC23.1 (Online) Training is also available as "Blended" or "live" class. Digital Badge Available You can become Cadence Certified once you complete the course (s) and share your knowledge and certifications on social media channels. Go straight to the course exam at the Learning and Support Portal. Note: Some of the above links are accessible only to Cadence customers who have a valid login ID for the Cadence Learning and Support Portal. Do You Have Access to the Cadence Support Portal? If not, follow the steps below to create your account. On the Cadence Support portal, select Register Now and provide the requested information on the Registration page. You will need an email address and host ID in order to sign up. If you need help with registration, contact support@cadence.com. To stay up-to-date with the latest news and information about Cadence training and webinars, subscribe to the Cadence Training emails. If you have questions about courses, schedules, online, public, or live onsite training, reach out to us at Cadence Training. Related Resources Training Bytes (Videos) Virtuoso ADE Explorer Graphical User Interface What is the need for Reliability Analysis? (Video) Blogs Come Join Us and Learn from the Cadence Training Offerings It’s the Digital Era; Why Not Showcase Your Brand Through a Digital Badge! Online Course Reliability Analysis in Virtuoso Studio vIC23.1 (Online) About Knowledge Booster Training Bytes Knowledge Booster Training Bytes is an online journal that relays information about Cadence Training videos, online courses, and upcoming webinars that are available in the Learning section of the Cadence Learning and Support portal. This blog category brings you direct links to these videos, courses, and other related material on a regular basis. Niyati Singh On behalf of the Cadence Training team Full Article blended blended training relxpert Reliability Report learning training reliability options Cadence training digital badges training bytes Virtuoso Cadence certified Virtuoso Video Diary reliability analysis Custom IC Design online training Custom IC reliability
how Virtuoso Studio: How Do You Name Simulation Histories in Virtuoso ADE Assembler? By community.cadence.com Published On :: Fri, 07 Jun 2024 12:16:00 GMT This blog describes an efficient way to name the histories saved by the simulation runs in Virtuoso ADE Assembler.(read more) Full Article Virtuoso Analog Design Environment Custom IC Virtuoso ADE Assembler ADE Assembler IC23.1 Virtuoso IC23.1
how How to transfer custom title block from Orcad Capture to PCB Editor By community.cadence.com Published On :: Thu, 09 Dec 2021 21:37:59 GMT Hi, So I was trying to update the title block of a schematic that I have. The title block that was on there was out of date . I clicked on place --> title block and was able to find the title block that I need. I also have a .OLB file that contains that title block. Then I created a Netlist with the old BRD file as the input file (To keep it as is but modify changes) but when I do that I still do not see / cannot place the title block that I need. Under Place --> format symbols in Allegro , I do see a title block that is coming from the database (But it's the old one). I don't know what to do at this point and would appreciate any tips. I did make sure that the path to where the library is , is defined in the user preferences. I also tried copying the title block under the library folder in capture before creating my Netlist and that did not work either. Thank you all. Full Article
how How to magnify a board on a film view By community.cadence.com Published On :: Thu, 16 Dec 2021 17:36:00 GMT I have a small board that is not readable even though the document is 11' x 17'. Is there a way I could expand/magnify the board along with the components on them to make them legible? I have created a new film and is displaying the bottom and top side of the board but the board is too small and the components are not legible. Perhaps there is a way to upscale it or expand it?Please note I have other stuff in the document that I am not showing , notes and other things, and I am trying to make just the boards look bigger in some way.I do have a PDF image of the same file where the board appears to be MUCH bigger and is fully legible and I am trying to match that. Thank you all. Full Article
how How can I place stacked vias with the size exact same cut width without metals around? By community.cadence.com Published On :: Wed, 30 Oct 2024 12:40:16 GMT How can I place stacked vias with the size exact same cut width without metals around?As the red part only in the image below? Full Article
how How to use PSpice library in Virtuoso/Spectre? By community.cadence.com Published On :: Thu, 31 Oct 2024 14:02:01 GMT I want to use PSpice model (download from TI) in Virtuoso , but it can not work. Please help me to check the error message, Thanks ADE-> Setup-> simulation files->Pspice Files /TPS628502-Q1_TRANS.LIB Parse error before token ']' in expression '[[STEADY_STATE]*0.6]'. If '[[STEADY_STATE]*0.6]' is a spice expression, quotes are required for the expression. ERROR(SFE-46): An instance of 'TPS628502-Q1_TRANS' can have at most 8 terminals (but has 9). *****************************************************************************.SUBCKT TPS628502-Q1_TRANS COMP_FSET EN FB GND PG SW SYNC_MODE VIN + PARAMS: STEADY_STATE=0 V_U9_V45 U9_N16725824 0 5E_U9_ABM22 U9_N16725392 0 VALUE { V(FREQ)*1e-12 }X_U9_U161 U9_N16849713 U9_N16846056 one_shot PARAMS: T=20 Full Article
how How to get maximum value of s11 Trace By community.cadence.com Published On :: Mon, 04 Nov 2024 14:04:46 GMT Hello i did a sp-Analysis and now i want to extract the maximum value of the s11 trace and the corresponding frequency. I already tried ymax() in the calculator but i am suspecting it only works on transient Signals. Full Article
how How to Set Up a Config View to Easily Switch Between Schematic and Calibre of DUT for Multiple Testbenches? By community.cadence.com Published On :: Tue, 12 Nov 2024 16:22:53 GMT Hello everyone, I hope you're all doing well. I’ve set up two testbenches (TB1 and TB2) for my Design Under Test (DUT) using Cadence IC6.1.8-64b.500.21 tools, as shown in the attached figure. The DUT has multiple views available: schematic, Calibre, Maestro, and Symbol, and each testbench uses the same DUT in different scenarios. Currently, I have to manually switch between these views, but I would like to streamline this process. My goal is to use a single config view that allows me to switch between the schematic and the extracted (Calibre) views. Ideally, I would like to have a configuration file where making changes once would update both testbenches (TB1 and TB2) automatically. In other words, when I modify one config, both testbenches should reflect this update for a single simulation run. I would really appreciate it if you could guide me on the following: How to create a config view for my DUT that can be used to easily switch between the schematic and extracted views, impacting both TB1 and TB2. Where to specify view priorities or other settings to control which view is used during simulation. Best practices for using a config file in this scenario, so that it ensures consistency across multiple testbenches. Please refer to the attached figure to get a better understanding of the setup I’m using, where both TB1 and TB2 include the same DUT with multiple available views. Thank you so much for your time and assistance! Full Article
how UVM debugging: How to save and load signals during an interactive session in Simvision By community.cadence.com Published On :: Thu, 07 Mar 2024 23:18:50 GMT Hello, I am aware of command script .svcf file that saves signals and loads them in while opening Simvision. I am wondering, if there is a way for saving signals while we are in an interactive session and loading them next time when we open Simvision interactively. Any ideas on how to do this? Thank you in advance. Swetha. C Full Article
how How do I create a basic connectivity csv? By community.cadence.com Published On :: Sat, 27 Apr 2024 00:58:07 GMT First time user of JasperGold. Chip level verif. I want to prove that an arbiter and a buffer are connected. I want to use the connectivity app to do that. I see from the user guide, that I should provide a connectivity map, but i have no idea how to construct one.The training videos said use this command: check_conn -generate_template jasper_template.xlsm -xlsmBut that did nothing, or at least it did not produce a file that i could find [<embedded>] % check_conn -generate_template jasper_template.xlsm -xlsmERROR (ESW104): Invalid command formation. Problem occurs with "-generate_template -xlsm". And even if it did, I don't even know what's in the file, and whether it contains the two ips I'm trying to check.I'm hoping someone can give me a bit of a boost here with some knowledge. Full Article
how "How to disable toggle coverage of unused logic" By community.cadence.com Published On :: Tue, 28 May 2024 11:46:30 GMT I'm currently work in coverage analysis. In my design certain register bits remain unused, which could potentially lower toggle coverage. Specifically, I'd like to know how to disable coverage for specific unused register bits within a 32-bit register. For instance, I want to deactivate coverage for bit 17 and bit 20 in a 32-bit register to optimize toggle coverage. Could you please provide guidance on how to accomplish this? Full Article
how How to transfer trained an artificial neural network to Verilog-A By community.cadence.com Published On :: Mon, 17 Oct 2022 11:58:59 GMT Hi all, I've trained a device model with the approach of an artificial neural network, and it shows well fit. May I know how to transfer the trained model to Verilog-A, so that, we can use this model to do circuit simulation? And I've searched for some lectures that provide the Verilog-A code in the appendix, but I'm freshman in the field of Verilog-A, could anyone tell me each statement? such as real hlayer-w[0:(NI*NNHL)-1 Full Article
how How to set thru via hole to thru via hole spacing constraint? By community.cadence.com Published On :: Fri, 25 Oct 2024 14:42:45 GMT Is there a way to set a thru via hole to thru via hole spacing constraint? I need the hole to hole spacing, nit pad to pad spacing. I can calculate the spacing using the via pad diameter, but this won't work for multiple via pad sizes. Full Article
how Test Your Know How : Allegro in Design Analysis By community.cadence.com Published On :: Thu, 31 Oct 2024 16:05:38 GMT Which Analysis is Being Performed by Allegro in this Image? A. Impedance B. Coupling C. Crosstalk D. Return Path E. Reflection Simply answer by letter or include any reason to support your answer... Full Article
how AllegroX. ConstraintManager: how to define an exemption inside a SPACING RULE ? By community.cadence.com Published On :: Mon, 04 Nov 2024 13:02:18 GMT Hi I have fixed a SPACING RULE (SP1) for a CLASS_DIFF_PAIR whereas for via associated to the net (DP_VIA), the DISTANCE > 60mils respect to ANY other vias (PTH, BB, TEST vias) Now my problem is that this rules should NOT be applied for GND VIAS (STICHING VIA) which must be placed at a distance < 40mils respect to DP_VIA How to create an exemption to the SPACING RULE (SP1)? Full Article
how how can load the Dll files and use it in Allegro 16.6 By community.cadence.com Published On :: Thu, 07 Nov 2024 05:52:05 GMT Hello everyone! Have you ever used the axlDllOpen function for Allegro 16.6? It doesn't work for me. Please give me your solution.Thank you. HoangKhoi Full Article
how How to perform the reflection and crosstalk using the OrCAD X Professional By community.cadence.com Published On :: Sun, 10 Nov 2024 14:39:08 GMT Dear Community, I have created a PCB layout with multiple high-speed nets, I want to check the SI like how signals are reflected and taken to each other. I have the OrCAD X Professional, how to check the reflection and crosstalk using the OrCAD X Professional software version 24.1. I want to create a topology flow to the PCB layout and perform the reflection and crosstalk. Regards, Rohit Rohan Full Article
how How to perform the EMI / EMC analysis on the PCB layout By community.cadence.com Published On :: Sun, 10 Nov 2024 14:44:43 GMT Hai Community, I have a PCB board which has multiple high speed nets and I want to perform the EMI and EMC checking. Which Cadence tool should I use for checking the EMI and EMC coupling? Regards, Rohit Rohan Full Article
how How to store the workspace designs and projects in local directory By community.cadence.com Published On :: Sun, 10 Nov 2024 14:54:48 GMT Dear Community, In OrCAD X Profession, the workspace feature enables the users to store the libraries (Schematic Symbol, Footprint and PSpice Models) and Designs (Schematic and PCB layout) in the cloud workspace. But storing these libraries and design are stored in servers in the USA, Europe, Asia and Japan Servers. I don't want to store my designs in any of these servers instead I want to create the workspace in my local PC and store all my libraries and designs in the local workspace. Is this possible, if possible then can anyone provide the steps/procedure or videos of how to do it? Regards, Rohit Rohan Full Article
how How to resolve the impedance issue using the OrCAD X Professional By community.cadence.com Published On :: Sun, 10 Nov 2024 14:59:59 GMT Dear Community, I have created a PCB board and let's say I have found some parts of the PCB board where there are impedance issues, then how to resolve that impedance issue using the OrCAD X Professional. Regards, Rohit Rohan Full Article