m 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
m 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
m what is "cell with Zero maximum clock transition time" ? By community.cadence.com Published On :: Thu, 25 Apr 2024 09:01:00 GMT anyone know what is "cell with Zero maximum clock transition time" ? not zero transition, not maximum transtion, it is zero maximum clock transition time. it means X0 cell? (drive-strength) can you explain? thanks :-) Full Article
m Change rout design metal layer effort By community.cadence.com Published On :: Tue, 30 Apr 2024 19:10:22 GMT Hi, Is there any way to instruct the tool to reduce the low metals effort and route more on top layers? Full Article
m Specifying the placement of submodules in the top module during the pnr using Innovus By community.cadence.com Published On :: Fri, 10 May 2024 13:16:51 GMT Hi everyone, I'm designing a digital chip that will be fabricated. I have a HDL top module that includes several submodules inside it. I want to define the position of some of the submodules during the PnR so that later I can specify there positions in the Micrograph photo after the IC fabrication. When I perform the PnR using Innovus, I always got a layout shape where the submodules seems to be flatted. I wonder if there is a way to specify the placement of each submodule in my top module (maybe in the tcl file) during the PnR so later I can define there positions in the micrograph photo. Thanks in Advance! Full Article
m removing cdn_loop_breaker from the genus synthesis netlist By community.cadence.com Published On :: Wed, 12 Jun 2024 04:54:24 GMT I am trying to remove the cdn_loop_breaker cells from the netlist. When I tried the below 2 things, genus synthesis tool removing the cdn_loop_breaker cells but while connecting the cdn_loop_breaker cell input to its proper connection, its somehow misleading the connectionsThings i tried:1. remove_cdn_loop_breaker -instances *cdn_loop_breaker*then i just ran remove_cdn_loop_breaker comand without the -instances switch2. remove_cdn_loop_breaker both of the above things are not providing the proper connections after removing the loop_breaker_cellscan anyone suggest the best possible workaround for this please? Full Article
m Tempus ECO initial setup summary not matching timing report results By community.cadence.com Published On :: Sat, 29 Jun 2024 01:51:01 GMT We are currently setting up the Tempus flow and have ran into some mismatched data regarding ECO and timing reports. I generated a timing report before running ECO and saw six total setup violations. When running opt_signoff -setup, the initial setup summary that was printed in the shell only showed one violation. I can see that violation from the initial setup summary in my pre-ECO timing report and it is not the worst path. Upon further investigation, I forced the tool to try to fix setup on one of the other five violations from the timing report using the opt_signoff_select_setup_endpoints attribute and the tool said that the endpoint had positive slack and would be ignored. Has anyone experienced something like this before? Full Article
m Off grid violations on M2 layer By community.cadence.com Published On :: Sat, 27 Jul 2024 04:43:31 GMT Hi all, I have off grid violations on M2 layer. I have tried ecoRoute -fix_drc and deleting violations and rerouting. But the tool is still placing these routes off grid. The on grid option in nanoroute is turned on. Since there is a fat metal closer to these routes, the tool is honouring the drc and not placing the metals on track. How do I ignore drc while routing? Also if there is any other way I can fix it, please let me know Full Article
m Tid problem By community.cadence.com Published On :: Sat, 27 Jul 2024 04:46:25 GMT Hi all, while saving design, there is an error saying a net has tid problem. However the design is saved. Does anybody know how to resolve the Tid problem? Full Article
m Innovus post CTS Timing Analysis issue By community.cadence.com Published On :: Mon, 29 Jul 2024 05:57:40 GMT While performing the timing analysis after post-CTS. We are getting warnings on all input ports defined in our design. **WARN: (IMPESI-3095): Net: 'CLK' has no receivers. SI analysis is not performed.**WARN: (IMPESI-3095): Net: 'RESET' has no receivers. SI analysis is not performed.**WARN: (IMPESI-3095): Net: 'UART_BAUD_SWITCHES_2' has no receivers. SI analysis is not performed.**WARN: (IMPESI-3095): Net: 'UART_BAUD_SWITCHES_1' has no receivers. SI analysis is not performed. We've checked our design netlist, and all the required connections are present for the input ports through pads. We are using Innovus version: v21.12 Full Article
m Generate LEF/GDS LayerMap File By community.cadence.com Published On :: Wed, 14 Aug 2024 06:41:05 GMT I have a standard cell library containing LEF, GDS, and spice models but no OA views. I'm unable to import these files into Virtuoso without a LayerMap file. How can I obtain or generate this required LayerMap file? Full Article
m Clock doubler SDC modelling By community.cadence.com Published On :: Tue, 20 Aug 2024 10:55:17 GMT Hi all, I'm trying to model the clock of a clock doubler. The doubler consists of a delay cell and an XOR gate, which generates a pulse on both the rising and falling edge of the input clock. I've created a simple module to evaluate this. In this case, DEL1 and XOR2 are standard library cells. There is a don_touch constraint on both library cells as well as on clk_d. module top (input wire clk,output reg Q); //Doublerwire clk_d;wire clk_2x; DEL1 u_delay (.I(clk),.Z(clk_d));XOR2 u_xor (.A1(clk),.A2(clk_d),.Z(clk_2x)); //FF for connecting the clock to some leaf:always @(posedge clk_2x) Q<=~Q; endmodule My SDC looks like this: create_clock [get_ports {clk}] -name clk_i -period 100set_clock_latency -rise 0.1 [get_pins u_xor/Z]set_clock_latency -fall 0.4 [get_pins u_xor/Z]create_generated_clock -name clk_2x -edges {1 1 2 2 3} -source clk [get_pins u_xor/Z] The generated clock is correctly generated but the pulse width is zero. I would be expecting that the pulse width is the difference between fall and rise latency but is not applied: report_clocks: report_clocks -generated: clk_2x is disconnected from the FF after syn_generic. What can I do to model some minimum pulse width? Will innovus later on model this correctly with the delay of DEL1? Full Article
m digital implementation on android and ios By community.cadence.com Published On :: Tue, 20 Aug 2024 11:38:49 GMT With digital implementation rapidly advancing, how do you think iOS and Android platforms will continue to evolve in industries like healthcare or education? The integration of mobile technology is already revolutionizing these fields, and it would be interesting to discuss where this could lead and what new opportunities might emerge. Full Article
m Tool to create *.lib and *.db files for designs made in Innovus By community.cadence.com Published On :: Thu, 26 Sep 2024 15:58:12 GMT Hi all, I have made a custom cell in Innovus that I will be instantiating into a bigger block, which I will also be using Innovus to do the Place & Route. I understand that I can generate a *.lef file and a *.lib file using Innovus. However, I need to also create a *.db file (these format of files are often used in DC Compiler synthesis tool). Is there a way to create the *.db file from Innovus? Or, is there a tool that I can use to create this *.db file? Thank you for your time. Full Article
m Find layer map file name and path for a library By community.cadence.com Published On :: Sun, 29 Sep 2024 20:45:41 GMT I'm trying to write a generic piece of code that will return the layermap file location, with file name, for a variety of projects (which could potential have different layermap file naming conventions. The below code is what I've used to date, but this assumes the file name is xxxx.layermap. I can obviously do some string matching to find it, assuming the various files all contain some common characters. I thought I'd ask if there is a simpler way to find it, I know that this information is automatically loaded into the Xstream out gui, so maybe I can use the same approach to find it. techLibName=techGetTechFile(cv)~>libName techLibLayerMap=strcat(ddGetObj(techLibName)~>readPath "/" techLibName ".layermap") Full Article
m 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
m 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
m 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
m Performing a net trace in a CDL file By community.cadence.com Published On :: Tue, 15 Oct 2024 10:25:39 GMT Hi, I am looking to perform a net trace in a CDL file. There is a net at a lower level and would like to know the net it is connected to at the top level. Please let me know if there is a way to analyze the CDL file to perform this net trace. Thanks, Mallikarjun. Full Article
m Is there a skill command for "Assign Layout Instance terminals"? By community.cadence.com Published On :: Thu, 17 Oct 2024 18:36:39 GMT Is there a skill command for "Assign Layout Instance terminals", this form appears when i click on define device correspondence and Bind the devices.Also, Problem Statement : i have a schematic with a couple of transistor symbols and and i alos have a corresponding layout view with respective layout transistors but they all are inside a pCell(created by me) i.e layout transistor called inside a custom Pcell. Now i have multiple symbols in schematic view and a single instance(pCell) in layout view. Is there a way how i can bind these schematic symbols with layout symbols inside the pCell(custom)? Even if i have to use cph commands i'm fine with it. need help here. The idea here is to establish XL connectivity between the schematic symbols and corresponding layout transistors(inside the pCell). Thanks, Shankar Full Article
m BER and EVM calculation By community.cadence.com Published On :: Sat, 19 Oct 2024 06:09:09 GMT Hi, I hope you are doing well. I have designed and simulated a PA system in Cadence using high-level blocks, which include both ideal components and some defined with Verilog-A. My goal is to calculate the Bit Error Rate (BER) and Error Vector Magnitude (EVM) in the system. I am using an LTE source from RFLib, and everything functions correctly in the transient simulation. To calculate these parameters, I intended to use envelope simulation. However, when I attempt to run the envelope simulation, I encounter convergence errors, which prevent it from working as expected. Given this issue, I believe I need to work with transient data instead. Could you please advise on how to approach this in Cadence without exporting the data to MATLAB? Thank you for your assistance. Full Article
m instTerms By community.cadence.com Published On :: Wed, 23 Oct 2024 20:30:02 GMT Hi to all, I am trying to write an SKILL code to create a schematic. In my code I use "instTerms" to obtain the terminals of an instantiated cell (Let's imagine it is a simple NMOS which is given as a predesigned cell), and then I will connect a wire to each of the terminals. When I run the whole code by command line, the returned terminals by "instTerms" are empty(nil) but when I try to debug it line by line it works properly. As more information, I call it for the instantiated cell, and I should say the cell is instantiated without any problem. This is just the problem of finding its terminals. Does anybody have any idea? Thank you very much in advance. Amir Full Article
m 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
m Virtuoso Fluid Guard Ring Layout error "do_something=nil" By community.cadence.com Published On :: Thu, 24 Oct 2024 07:22:30 GMT Hello, When I draw a Fluid Guard Ring in Virtuoso, the layout is not visible, and instead, "do_something=nil" appears. When I check the details with Q, it shows the same information as a regular NFGR guard ring, and Ctrl+F also displays the instance name, just like with a regular NFGR. Additionally, the Pcells of Fluid Guard Rings from previous projects appear broken. The version I’m currently using is not different from the one used in the past. Even when I access the same version as the one used during the project, the Pcells still appear broken. These two issues are occurring, and I’m not sure what to check. I would greatly appreciate it if you could assist me in resolving this issue. // Reinstalling the PDK resolved the issue! I’m not exactly sure what the problem was, but I suspect there might have been an internal issue with permissions or the PDK path. Full Article
m adexl remove test By community.cadence.com Published On :: Fri, 25 Oct 2024 07:38:19 GMT Hi,all I want to remove some Tests form adexl automatically,there have any function to achieve that? Full Article
m Refer instances and vias to technology library during importing By community.cadence.com Published On :: Sun, 27 Oct 2024 04:30:15 GMT Hi, My query is regarding importing of layout. After importing, we see that the imported transistor instances and vias are all referring to the library in which they are imported, instead of referring to the technology library. Please let me know how we can refer them to the technology library. Will surely provide more details if my query is unclear. Thanks, Mallikarjun. Full Article
m Error ASSEMBLER-1600 when running script with two different MC simulations By community.cadence.com Published On :: Tue, 29 Oct 2024 08:59:49 GMT Hello Community, I have encountered an issue that is a mystery to me and hope somebody could give me a clue about what is happening in Cadence and maybe even a solution? I am running a test scripted in a SKILL file that sequentially opens two different projects with MC analyses and in between I get an error message box and also multiple logs in CIW with exactly the same text. Both projects run a simulation with a call like this: historyName = maeRunSimulation(?session sessionName ?waitUntilDone t) After this the script closes the current project, opens the next project and executes the same line with maeRunSimulation() for the second project. Then immediately this error message happens, and also is logged repeatedly in the CIW window The message box looks like this: The logs I get in CIW: nilhiCancelProgressBox(_axlNetlistCreateProgressBar)nilhiCancelProgressBox(_axlUILoadForm)nilwhen(dwindow('axlDataViewessWindow1) hiMapWindow(dwindow('axlDataViewessWindow1)))twhen(dwindow('axlRunSummaryessWindow1) hiMapWindow(dwindow('axlRunSummaryessWindow1)))tERROR (ASSEMBLER-1600): Cannot find an active session named fnxSession0.You can only modify an ADE Assembler session that is active.Perhaps the session name was misspelled or has not yet been created. Verify the session name matches an existing ADE Assembler session. 1> ERROR (ASSEMBLER-1600): Cannot find an active session named fnxSession0.You can only modify an ADE Assembler session that is active.Perhaps the session name was misspelled or has not yet been created. Verify the session name matches an existing ADE Assembler session. *WARNING* hiDisplayAppDBox: modal dbox 'adexlMessageDialog' is already displayed!ERROR (ASSEMBLER-1600): Cannot find an active session named fnxSession0.You can only modify an ADE Assembler session that is active.Perhaps the session name was misspelled or has not yet been created. Verify the session name matches an existing ADE Assembler session. *WARNING* hiDisplayAppDBox: modal dbox 'adexlMessageDialog' is already displayed!ERROR (ASSEMBLER-1600): Cannot find an active session named fnxSession0.You can only modify an ADE Assembler session that is active.Perhaps the session name was misspelled or has not yet been created. Verify the session name matches an existing ADE Assembler session. Full Article
m SKILL regex pattern matching By community.cadence.com Published On :: Fri, 01 Nov 2024 08:30:50 GMT Hi, I have a string "[@global_vddi:%:vddi!]" which I need to process to remove "@[]" chars. The desired result is "global_vddi:%:vddi!". I tried the following in CIW netExpr = "[@global_vddi:%:vddi!]"rexCompile("\([a-zA-Z0-9_:!%]+\)")trexExecute(netExpr)trexSubstitute( "\0" )"global_vddi:%:vddi!" and I achieved the desired value. I added the same code to my script but it didn't work. In my script rexExecute returns 't' but rexSubstitute returns 'nil' Here is the snippet from my script netExpr = dbGetTermNetExpr(term) if(netExpr then rexCompile("\([a-zA-Z0-9_:!%]+\)") rexExecute(netExpr) netExpr1 = rexSubstitute( "\0" ) ... . ..) and trace log showing the variable values as the code executes stopped before evaluating dbGetTermNetExpr(term)after evaluating dbGetTermNetExpr(term)==> "[@global_vddi:%:vddi!]"after evaluating (netExpr = dbGetTermNetExpr(term))==> "[@global_vddi:%:vddi!]"stopped before evaluating if(netExpr then rexCompile("\([a-zA-Z0-9_:!%]+\)") rexExecute(netExpr) (netExpr1 = rexSubstitute("\0")) ... )stopped before evaluating rexCompile("\([a-zA-Z0-9_:!%]+\)")after evaluating rexCompile("\([a-zA-Z0-9_:!%]+\)")==> tstopped before evaluating rexExecute(netExpr)after evaluating rexExecute(netExpr)==> tstopped before evaluating (netExpr1 = rexSubstitute("\0"))stopped before evaluating rexSubstitute("\0")after evaluating rexSubstitute("\0")==> nil|[2]netExpr1 set to nil, was nil Any help or suggestions as to why the code executes differently in CIW and when called from a SKILL script file will be much appreciated. I also tried a different approach using rexReplace instead of rexSubstitute but couldn't get the regex pattern correct. The code I tried in CIW using rexReplace is as follows a = "[@global_vddi:%:vddi!]""[@global_vddi:%:vddi!]"rexCompile("\([@\[\]]*\)")trexReplace(a "" 0)"global_vddi:%:vddi!]" Only '@[' get replaced and ']' is still present. The regex pattern contains '\]' to match the closing square bracket yet it is not replaced. Please let me know what I'm missing in these 2 scenarios. Any help is much appreciated!! Regards, Confused SKILL user Full Article
m can't resize window by mouse By community.cadence.com Published On :: Sun, 03 Nov 2024 13:36:50 GMT Hi guys, I see that inside VNC I can’t resize window boxes by mouse. While pressing the arrow at the box edge and dragging it nothing happens: is it a bug, or setup change require? Noted, it only happens when trying to resize window box from left and right side.. Thx Full Article
m Disappearing toolbar or docked menu By community.cadence.com Published On :: Wed, 06 Nov 2024 20:47:05 GMT Disappearing toolbar or docked menu Is there a way for the toolbar or floating menu from disappearing when a cells tab is added to a window? I have created a skill toolbar and it disappeared when I add another cell or tab to a window. The only toolbars that stay are the ones I have defined in the Layout.toolbar file. Do I have to add a trigger to keep the toolbars visible or not disappearing from the window? Cadence version IC23.1-64b.ISR7.27 Paul Full Article
m Destructive form of "cons" - efficiently prepending an item to a procedure's argument which is a list By community.cadence.com Published On :: Tue, 12 Nov 2024 18:20:40 GMT Hello, I was looking to destructively and efficiently modify a list that was passed in as an argument to a procedure, by prepending an item to the list. I noticed that cons lets you do this efficiently, but the operation is non-destructive. Hence this wouldn't work if you are trying to modify a function's list parameter in place. Here is an example of trying to add "0" to the front of a list: procedure( attempt_to_prepend_list(l elem) l = cons(elem l) ) a = list(1 2 3) ==> (1 2 3)attempt_to_prepend_list(a 0)==> (0 1 2 3)a==> (1 2 3) As we can see, the original list is not prepended. Here is a function though which achieves the desired result while being efficient. Namely, the following function does not create any new lists and only uses fast methods like cons, rplacd, and rplaca procedure( prepend_list(l elem) ; cons(car(l) cdr(l)) results in a new list with the car(l) duplicated ; we then replace the cdr of l so that we are now pointing to this new list rplacd(l cons(car(l) cdr(l))) ; we replace the previously duplicated car(l) with the element we want rplaca(l elem) ) a = list(1 2 3) ==> (1 2 3)prepend_list(a 0)==> (0 1 2 3)a==> (0 1 2 3) This works for me, but I find it surprising there is no built-in function to do this. Am I perhaps overlooking something in the documentation? I know that tconc is an efficient and destructive way to append items to the end of a list, but there isn't an equivalent for the front of the list? Full Article
m Cross-probe between layout veiw and schematic view By community.cadence.com Published On :: Tue, 12 Nov 2024 22:52:10 GMT Hi there I am trying to make cross-probe btw layout and schematic view. so when I execute the code in schematic using bindkey, the code will raise the layout view (hiRaiseWindow) and then I want to descend to the same hierarchy as schematic. (geSelectFig, leHiEditInPlace) But looks like current cellview still stays at schematic view. I got this error msg, and when I print current cell view name at where I got this msg, it replys schematic. *Error* geSelectFig: argument #1 should be a database object (type template = "d") - nil is there any way to change the current cellview to layout view? I also added this code, but didn't work. geGetEditCellView(geGetCellViewWindow(cvId)) ;cvId is layout view I don't want to close the schematic view, just want to move the focus or make geSelectFig works. Thanks in advance. Full Article
m μWaveRiders: New Python Library Provides a Higher-Level API in the Cadence AWR Design Environment By community.cadence.com Published On :: Mon, 18 Jul 2022 21:12:00 GMT A new Python library has been written to facilitate an interface between Python and AWR software using a command structure that adheres more closely to Python coding conventions. This library is labeled "pyawr-utils" and it is installed using the standard Python pip command. Comprehensive documentation for installing and using pyawr-utils is available.(read more) Full Article RF Simulation Circuit simulation AWR Design Environment Python API pyawr utilities awr RF design VBA microwave office Visual System Simulator (VSS) scripting
m μWaveRiders: Setting Up a Successful AWR Design Environment Design - UI and Simulation By community.cadence.com Published On :: Thu, 25 Aug 2022 02:26:00 GMT When starting a new design, it's important to take the time to consider design recommendations that prevent problems that can arise later in the design cycle. This two-part compilation of guidelines for starting a new design is the result of years of Cadence AWR Design Environment platform Support experience with designs. Pre-design decisions for user interface, simulation, layout, and library configuration lay the groundwork for a successful and efficient AWR design. This blog covers the user interface (UI) and simulation considerations designers should note prior to starting a design.(read more) Full Article Circuit simulation multi-processor AWR Design Environment test bench EM simulation UI RF design X-model microwave office Visual System Simulator (VSS) EM-based model
m O-M-Gosh, I’ve Been Zeked! (Part 1) By community.cadence.com Published On :: Tue, 13 Sep 2022 16:37:00 GMT by Sherry Hess In this new blog series, Max Maxfield gets to know Zeke, an amazing 11-year-old with a dream to speak with the astronauts on the International Space Station (ISS). His first step on this journey however began with becoming a HAM r...(read more) Full Article awr HAM radio microwave design antennas
m μWaveRiders: Thermal Analysis for RF Power Applications By community.cadence.com Published On :: Thu, 22 Sep 2022 08:27:00 GMT Thermal analysis with the Cadence Celsius Thermal Solver integrated within the AWR Microwave Office circuit simulator gives designers an understanding of device operating temperatures related to power dissipation. That temperature information can be introduced into an electrothermal model to predict the impact on RF performance.(read more) Full Article CFD RF Simulation featured Circuit simulation AWR Design Environment awr Cadence Celsius Thermal Analysis microwave office electrothermal models thermal solver
m New Training Courses for RF/Microwave Designers Featuring Cadence AWR Software By community.cadence.com Published On :: Mon, 03 Oct 2022 03:00:00 GMT Cadence AWR Design Environment Software Featured in Multiple Training Course Options: Live and Virtual Starting in October(read more) Full Article featured AWR Design Environment microwave design
m μWaveRiders: Cadence AWR Design Environment V22.1 Software Release Highlights By community.cadence.com Published On :: Wed, 26 Oct 2022 13:59:00 GMT The Cadence AWR Design Environment V22.1 production release is now available for download at Cadence Downloads with design environment, AWR Microwave Office, AWR VSS, AWR Analyst, and other enhancements.(read more) Full Article RF RF Simulation AWR Analyst Circuit simulation AWR Design Environment awr EDA AWR AXIEM RF design Circuit Design AWR V22.1 release microwave office Visual System Simulator (VSS)
m μWaveRiders: Scoring Goals with the Latest AWR Design Environment Optimizer By community.cadence.com Published On :: Mon, 21 Nov 2022 09:55:00 GMT AWR V22.1 software introduces the Pointer-Hybrid optimization method which uses a combination of optimization methods, switching back and forth between methods to efficiently find the lowest optimization error function cost. The optimization algorithm automatically determines when to switch to a different optimization method, making this a superior method over manual selection of algorithms. This method is particularly robust in regards to finding the global minima without getting stuck in a local minima well.(read more) Full Article featured AWR Design Environment Pointer-Hybrid optimizer RF design microwave office global minima Optimization cost Optimizer goals Optimizer methods
m μWaveRiders: Setting Up a Successful AWR Design Environment Design - Layout and Component Libraries By community.cadence.com Published On :: Fri, 16 Dec 2022 20:15:00 GMT When starting a new design, it's important to take the time to consider design recommendations that prevent problems that can arise later in the design cycle. This two-part compilation of guidelines for starting a new design is the result of years of Cadence AWR Design Environment platform Support experience with designs. Pre-design decisions for user interface, simulation, layout, and library configuration lay the groundwork for a successful and efficient AWR design. This blog, part 2, covers the layout and component library considerations designers should note prior to starting a design.(read more) Full Article RF Simulation Circuit simulation AWR Design Environment awr Component library Layout microwave office Visual System Simulator (VSS)
m Knowledge Booster Training Bytes - The Close Connection Between Schematics and Their Layouts in Microwave Office By community.cadence.com Published On :: Wed, 04 Jan 2023 04:03:00 GMT Microwave Office is Cadence’s tool-of-choice for RF and microwave designers designing everything from III-V 5G chips, to RF systems in board and package technologies. These types of designs require close interaction between the schematic and its layout. A new Training Byte demonstrates how the schematic-layout connections is built into Microwave Office.(read more) Full Article RF RF Simulation RF designer AWR customization RF design microwave office
m Knowledge Booster Training Bytes - Working with Data Sets in Microwave Office By community.cadence.com Published On :: Fri, 06 Jan 2023 19:39:00 GMT Data sets are a powerful and easy-to-use feature in Microwave Office. Data can be effortlessly be swapped in graphs, and circuit schematics.(read more) Full Article RF Simulation AWR Design Environment awr AWR customization AWR Microwave Office microwave office
m Training Webinar: Microwave Office - Comprehensive RF and Microwave Design Creation By community.cadence.com Published On :: Tue, 13 Jun 2023 04:56:00 GMT A training webinar on Microwave Office will be given June 27, 2023. The emphasis will be on EM simulation.(read more) Full Article RF RF Simulation awr EM simulation webinar AWR AXIEM RF design AWR Microwave Office microwave office
m Training Webinar: Microwave Office: An Integrated Environment for RF and Microwave Design By community.cadence.com Published On :: Thu, 07 Sep 2023 06:08:00 GMT A recording of a training webinar on Microwave Office is available. Topics show the design environment, with special emphasis placed on electromagnetic (EM) simulation. Normal 0 false false false EN-US JA X-NONE ...(read more) Full Article
m Designing a 30MHz to 1000MHz 10W GaN HEMT Power Amplifier By community.cadence.com Published On :: Tue, 03 Oct 2023 21:17:00 GMT By David Vye, Senior Product Marketing Manager, AWR, Cadence When designing multi-octave high-power amplifiers, it is a challenge to achieve both broadband gain and power matching using a combination of lumped and distributed techniques. One approach...(read more) Full Article AWR Design Environment Power amplifier RF design microwave office
m Training Insights New Course: Planar EM Simulation in AWR Microwave Office By community.cadence.com Published On :: Mon, 30 Oct 2023 18:44:00 GMT New online training course for AXIEM EM Simulator in AWR Microwave Office is available.(read more) Full Article awr EM simulation AWR AXIEM AWR Microwave Office AXIEM 3D Planar Simulator microwave office
m Unlock Your RF Engineering Potential with a Cadence AWR Free Academic Trial! By community.cadence.com Published On :: Tue, 04 Jun 2024 09:47:00 GMT Are you ready to revolutionize your RF design experience? Look no further! Cadence AWR software is your gateway to mastering the intricacies of Radio Frequency (RF) circuit design, and now, you can explore its power with our exclusive Free Academic T...(read more) Full Article Cadence Academic Network AWR Design Environment awr TRIAL AWR training RF design
m Constraining some nets to route through a specific metal layer, and changing some pin/cell placements and wire directions in Cadence Innovus. By community.cadence.com Published On :: Fri, 03 Feb 2023 22:13:10 GMT Hello All: I am looking for help on the following, as I am new to Cadence tools [I have to use Cadence Innovus for Physical Design after Logic Synthesis using Synopsys Design Compiler, using Nangate 45 nm Open Cell Library]: while using Cadence Innovus, I would need to select a few specific nets to be routed through a specific metal layer. How can I do this on Innovus [are there any command(s)]? Also, would writing and sourcing a .tcl script [containing the command(s)] on the Innovus terminal after the Placement Stage of Physical Design be fine for this? Secondly, is there a way in Innovus to manipulate layout components, such as changing some pin placements, wire directions (say for example, wire direction changed to facing east from west, etc.) or moving specific closely placed cells around (without violating timing constraints of course) using any command(s)/.tcl script? If so, would pin placement changes and constraining some closely placed cells to be moved apart be done after Floorplanning/Powerplanning (that is, prior to Placement) and the wire direction changes be done after Routing? While making the necessary changes, could I use the usual Innovus commands to perform Physical Design of the remaining nets/wires/pins/cells, etc., or would anything need modification for the remaining components as well? I would finally need to dump the entire design containing all of this in a .def file. I tried looking up but could only find matter on Virtuoso and SKILL scripting, but I'd be using Innovus GUI/terminal with Nangate 45 nm Open Cell Library. I know this is a lot, but I would greatly appreciate your help. Thanks in advance. Riya Full Article
m read from text file with two values and represent that as voltage signals on two different port a and b By community.cadence.com Published On :: Fri, 24 Feb 2023 00:33:01 GMT i want to read from text file two values on two ports , i wrote that code, and i have that error that shown in the image below . and also the data in text file is shown as screenshot module read_file (a,b); electrical a,b;integer in_file_0,data_value, valid, count0,int_value; analog begin @(initial_step) begin in_file_0 = $fopen("/home/hh1667/ee610/my_library/read_file/data2.txt","r"); valid = $fscanf (in_file_0, "%b,%b" ,int_value,count0); end V(a) <+ int_value; V(b) <+ count0; end endmodule Full Article
m 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