se netlist extraction from assembler in cadence virtuoso By feedproxy.google.com Published On :: Thu, 27 Feb 2020 10:23:03 GMT Hello , i am trying to extract netlist from a circuit in assembler I have found the manual shown bellow , however there is no such option in tools in assembler. how do i view the NETLIST of this circuit? Thanks. ASSEMBLER VIEW menu Full Article
se searching for transistor inside hyrarchy in cadence virtuoso By feedproxy.google.com Published On :: Sat, 29 Feb 2020 14:00:41 GMT Hello, I have a problem with a certain type of transistor,my hyrarchy has a lot components an sub components and visually inspecting them is very hard. is there a way like in other cadence layout viewer tools , to enter the name of the component or a NET somewhere and it will focus on it visualy or give the hyrarchy path to it? Thanks. Full Article
se Noise figure optimization of LNA By feedproxy.google.com Published On :: Wed, 18 Mar 2020 17:02:57 GMT Hello, I looking for reaching minimal NOISE FIRUGE by peaking a combination of the RLC on the output load as shown bellow.I tried to do it with PNOISE but it gives me an error on the |f(in)| i am not sure regarding the sidebands in my case(its not a mixer) How can i show Noise Figure and optimize it using my output RLC? Thanks Full Article
se LNA output noise floor at receiver front end. By feedproxy.google.com Published On :: Thu, 02 Apr 2020 07:30:37 GMT Hi, i am designing a broadband (100 MHz -6 GHz BW) receiver chain for radar/rcs measurement tester. i will put Low noise amplifier after antenna input followed by mixed(10 MHz IF BW and digitizer. I am facing problem regarding LAN. bandwidth of LAN is approx 6 GHz(100 MHz-6GHz), gain 25-35 dB, with NF less than 2. I am uncertain about noise floor at the output of LNA. I dont know exact SNR at the input of LNA but it shall be good.System operation will be on stepped CW waveform so receiver input signal will sweep over the BW and some step size. so LNA output r noise floor will be? i assume, we can neglect thr role of input noise because it will be lesser than internal noise of LNA. will it be LNA internal noise (Thermal noise due to BW) only ? will it be LNA internal noise (Thermal noise due to BW) + LAN Gain ? -78+25 =-53 dB? internal noise shall be lesser because NF is less than 3 . i have practically observed that that output noise floor is much lesser then even thermal noise( over LNA BW). i have gone through some tutorial where formula says( internal noise+input noise)+gain. in my case input noise shall be much less than theoretical internal noise. Thanks Full Article
se pnoise pmjitter simulation By feedproxy.google.com Published On :: Fri, 24 Apr 2020 07:20:31 GMT Hi, when I applied a voltage divider implemented by two 100-ohm resistors to a 2Vpp 5GHz vsin source, the phase noise simulation using pnoise/fullspectrum with different types, jitter and source have different results. The simulated output noise results are 165.76aV2/Hz for pmjitter case, and 828.79zV2/Hz for source case. The source case result equals to the output noise calculation. For my application, the output will be applied to driven circuits and thus pm jitter is concerned. As the pmjitter is based on the noise sampling at the threshold crossings, I was wondering how spectre gets the pmjitter resullts since sampling white noise with infinite bandwidth is impossible to my knowledge? Interestingly, the Jee result by integration from 10kHz to 2.5GHz is ~41fs and is closed to Jee,rms from the transient noise simulation. I am also not sure how these results come and match each other. If applying the voltage divider output to drive next stages, I was wondering to what extent I can trust the input jitter from these simulations? Thank you. Full Article
se E- (SPMHDB-187): SHAPE boundary may not cross itself. By feedproxy.google.com Published On :: Mon, 24 Feb 2020 07:26:13 GMT Hi experts, I have a problem with my design as below ERROR: in SHAPE (-2.3622 2.3622) class = ETCH subclass = TOP Part of Symbol Def SHAPE_4725X4725. Which is part of a padstack as a SHAPE symbol. ERROR(SPMHDB-187): SHAPE boundary may not cross itself. Error cannot be fixed. Object has first point location at (-2.3622 2.3622).Can you tell me how to solve my problem?Thanks a lot. Full Article
se Compare the database footprint with library footprint -Skill By feedproxy.google.com Published On :: Wed, 26 Feb 2020 05:34:49 GMT I would like to generate the comparison report of database footprint with library footprint if any mismatch available. Is there a way to take if it possible means can anyone please guide me or share me the skill code please. Thanks, Pradeep Full Article
se is there a way to use axlDBCreateShape to create a Dynamic shape attached to a symbol? By feedproxy.google.com Published On :: Mon, 09 Mar 2020 21:12:47 GMT Currently I tried this: axlDBCreateShape(recPolyPlanes t "BOUNDARY/L02" netName sym1) I get a atom error on car(sym1) I can do this "static" using ETCH/L02 with out an issue, but I am trying to avoid doing an axlShapeChangeDynamicType(). Thanks, Jerry Full Article
se SKILL script for Subclasses and Artworks By feedproxy.google.com Published On :: Tue, 31 Mar 2020 17:25:18 GMT I have made a customized menu in PCB Editor which I now would like to fill with content. First of all I would like to have commands to add (or delete) layers in the board. I have parameter files (.prm) that describes both the stackup and the artwork for 2, 4, 6 and 8 layers. I guess I could record a script (macro) where I use the "Import Parameter file" dialogue but this will get windows flickering by etc. Can I do this with SKILL instead? I realize that it is possible (somehow) to do a SKILL-script that completely builds up the stackup and artworks for boards with different number of layers but I then have to edit the SKILL everytime I need to change anything. My thinking is that it perhaps is easier just to call the prm-file, which is easy to modify from within Allegro without knowing anything about SKILL. I'm also looking for a solution to remove some Subclasses, containing certain keywords with a SKILL script but since I'm completely new to SKILL I don't really know where to begin. Any assistance would be much appreciated. Full Article
se How to get the location of Assembly Line By feedproxy.google.com Published On :: Tue, 21 Apr 2020 11:41:14 GMT Hi I'm trying to find the location of the assembly line in the design automatically without using "Show Element". And also I want to find the end points of that line. The line exists in "Package Geometry/Assembly_Top" Layer. So is there any code snippet to find the location of assembly line? Full Article
se Breaking a clineseg into multiple segments with SKILL code By feedproxy.google.com Published On :: Fri, 24 Apr 2020 08:44:49 GMT Hello All, May I know if there is a way to breakup a selected clinesegment into a few clinesegments by just using SKILL code Thanks All Full Article
se Trump and Modi are playing a Lose-Lose game By feedproxy.google.com Published On :: 2019-06-23T03:26:43+00:00 This is the 22nd installment of The Rationalist, my column for the Times of India. Trade wars are on the rise, and it’s enough to get any nationalist all het up and excited. Earlier this week, Narendra Modi’s government announced that it would start imposing tariffs on 28 US products starting today. This is a response to similar treatment towards us from the US. There is one thing I would invite you to consider: Trump and Modi are not engaged in a war with each other. Instead, they are waging war on their own people. Let’s unpack that a bit. Part of the reason Trump came to power is that he provided simple and wrong answers for people’s problems. He responded to the growing jobs crisis in middle America with two explanations: one, foreigners are coming and taking your jobs; two, your jobs are being shipped overseas. Both explanations are wrong but intuitive, and they worked for Trump. (He is stupid enough that he probably did not create these narratives for votes but actually believes them.) The first of those leads to the demonising of immigrants. The second leads to a demonising of trade. Trump has acted on his rhetoric after becoming president, and a modern US version of our old ‘Indira is India’ slogan might well be, “Trump is Tariff. Tariff is Trump.” Contrary to the fulminations of the economically illiterate, all tariffs are bad, without exception. Let me illustrate this with an example. Say there is a fictional product called Brump. A local Brump costs Rs 100. Foreign manufacturers appear and offer better Brumps at a cheaper price, say Rs 90. Consumers shift to foreign Brumps. Manufacturers of local Brumps get angry, and form an interest group. They lobby the government – or bribe it with campaign contributions – to impose a tariff on import of Brumps. The government puts a 20-rupee tariff. The foreign Brumps now cost Rs 110, and people start buying local Brumps again. This is a good thing, right? Local businesses have been helped, and local jobs have been saved. But this is only the seen effect. The unseen effect of this tariff is that millions of Brump buyers would have saved Rs 10-per-Brump if there were no tariffs. This money would have gone out into the economy, been part of new demand, generated more jobs. Everyone would have been better off, and the overall standard of living would have been higher. That brings to me to an essential truth about tariffs. Every tariff is a tax on your own people. And every intervention in markets amounts to a distribution of wealth from the people at large to specific interest groups. (In other words, from the poor to the rich.) The costs of this are dispersed and invisible – what is Rs 10 to any of us? – and the benefits are large and worth fighting for: Local manufacturers of Brumps can make crores extra. Much modern politics amounts to manufacturers of Brumps buying politicians to redistribute money from us to them. There are second-order effects of protectionism as well. When the US imposes tariffs on other countries, those countries may respond by imposing tariffs back. Raw materials for many goods made locally are imported, and as these become expensive, so do those goods. That quintessential American product, the iPhone, uses parts from 43 countries. As local products rise in price because of expensive foreign parts, prices rise, demand goes down, jobs are lost, and everyone is worse off. Trump keeps talking about how he wants to ‘win’ at trade, but trade is not a zero-sum game. The most misunderstood term in our times is probably ‘trade-deficit’. A country has a trade deficit when it imports more than what it exports, and Trump thinks of that as a bad thing. It is not. I run a trade deficit with my domestic help and my local grocery store. I buy more from them than they do from me. That is fine, because we all benefit. It is a win-win game. Similarly, trade between countries is really trade between the people of both countries – and people trade with each other because they are both better off. To interfere in that process is to reduce the value created in their lives. It is immoral. To modify a slogan often identified with libertarians like me, ‘Tariffs are Theft.’ These trade wars, thus, carry a touch of the absurd. Any leader who imposes tariffs is imposing a tax on his own people. Just see the chain of events: Trump taxes the American people. In retaliation, Modi taxes the Indian people. Trump raises taxes. Modi raises taxes. Nationalists in both countries cheer. Interests groups in both countries laugh their way to the bank. What kind of idiocy is this? How long will this lose-lose game continue? The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
se VManager wrongly imports failed test as passed By feedproxy.google.com Published On :: Fri, 18 Oct 2019 12:48:38 GMT Hello,I'm exploring VManager tool capabilities. I launched a simulation with xrun, which terminates with a fatal error (`uvm_fatal actually). Then I imported the flow session, through VManager -> Regression -> Collect Runs, linking the directory with ucm and ucd of just failed run. VManager imports the test with following attributes: Total Runs =1 #Passed =1 #Failed =0 What I'm missing here? It should be imported as failed test. If I right click on flow name and choose Analyze All Runs, VManager brings me to Analysis tab and I can see only a PASSED tag in Runs subwindow. Thank you for any help Full Article
se How do we use the concept of Save and Restore during real developing(debugging)???/ By feedproxy.google.com Published On :: Thu, 26 Dec 2019 11:41:39 GMT Hi All, I'm trying to understand checkpoint concept. When I found save and restart concept in cdnshelp, There is just describing about "$save" and "xrun -r "~~~". and I found also the below link about save restart and it saves your time. But I can't find any benefits from my experiment from save&restart article( I fully agree..the article) Ok, So I'v got some experiment Here. 1. I declared $save and got the below result as I expected within the simple UVM code. In UVM code... $display("TEST1");$display("TEST2");$save("SAVE_TEST");$display("TEST3");$display("TEST4"); And I restart at "SAVE_TEST" point by xrun -r "SAVE_TEST", I've got the below log xcelium> runTEST3TEST4 Ok, It's Good what I expected.(The concept of Save and Restore is simple: instead of re-initializing your simulation every time you want to run a test, only initialize it once. Then you can save the simulation as a “snapshot” and re-run it from that point to avoid hours of initialization times. It used to be inconvenient. I agree..) 2. But The Problem is that I can't restart with modified code. Let's see the below example. I just modified TEST5 instead of "TEST3" $display("TEST1");$display("TEST2");$save("SAVE_TEST");$display("TEST5"); //$display("TEST3");$display("TEST4"); and I rerun with xrun -r "SAVE_TEST", then I've got the same log xcelium> runTEST3TEST4 There is no "TEST5". Actually I expected "TEST5" in the log.From here We know $save can't support partially modified code after $save. Actually, through this, we can approach to our goal about saving developing time. So I want to know Is there any possible way that instead of re-initializing our simulation every time we want to run a test, only initialize it once and keep developing(debugging) our code ? If we do, Could you let me know the simple example? Full Article
se Info regarding released version Cadence IES simulator By feedproxy.google.com Published On :: Thu, 06 Feb 2020 07:42:31 GMT Hello folks, Greetings. One of my customer claims that he is using Cadence IES version 18.09.011 with Vivado 2019.2. The version of IES that we officially support with Vivado 2019.2 is 15.20.073. Though the tool is forward compatible, I am not sure what are the versions of IES that are released after 15.20.073. Could you please give me a list of the versions of Cadence IES released after 15.20.073 and which is the latest version as of now ? Best regards, Chinmay Full Article
se Incisive Metrics Center User Guide By feedproxy.google.com Published On :: Tue, 11 Feb 2020 02:26:56 GMT Hi Team, I would like to download "Incisive Metrics Center User Guide", I could not find in the cadence/support/manuals. Can you please provide me the link or path to download the same ? I am doing functional coverage with IMC. Thank You, Mahesh Full Article
se How to remove sessions from vManager without deleting them By feedproxy.google.com Published On :: Mon, 02 Mar 2020 23:35:09 GMT I am importing sessions which are run by other people to analyse and I would like to remove them from my vManager Regressions tab as they become obsolete. As I am not the original person who run the sims, I cannot "delete" sessions. What are my options? Thanks. Full Article
se Is it possible to get a diff between two coverage databases in IMC? By feedproxy.google.com Published On :: Tue, 10 Mar 2020 11:33:50 GMT I'm in the process of weeding a regression test list. I have a coverage database from the full regression list and would like to diff it with the coverage database from the new reduced regression test list. If possible I would than like to trace back any buckets covered with the full list, but not with the partial list, into the original tests that covered them. Is that possible using IMC? if not, is it possible to do from Specman itself? (Note that we're not using vManager) Thanks, Avidan Full Article
se search for glob/regexp in specman loaded modules? By feedproxy.google.com Published On :: Wed, 25 Mar 2020 04:24:22 GMT Specman *search* command allows searching in all loaded modules, but only for a string. Is there a way to search for a regexp or glob? Alternatively, is there a way to simply get a list of all loaded files somehow? Then I could use either the "shell" command, or real shell together with grep. Thanks Full Article
se How to get product to license feature mapping information? By feedproxy.google.com Published On :: Wed, 06 May 2020 03:45:06 GMT When I run simulation with irun, it may use may license features. How can I know which feature(s) a product use? I get below message in cdnshelp: ------------------------------------------------------------- Which Products Are in the License File? One Cadence product can require more than one license (FEATURE). The product to feature mapping in the license file lists the licenses each product needs. For example, if the license file lists these features for the NC-VHDL Simulator: Product Name: Cadence(R) NC-VHDL Simulator# Type: Floating Exp Date: 31-jul-2006 Qty: 1# Feature: NC_VHDL_Simulator [Version: 9999.999]# Feature: Affirma_sim_analysis_env [Version: 9999.999] ------------------------------------------------------------------- But, in my license file, I can't find such info. There is only "FEATURE" lines in my license file. How can I get product to feature mapping info? Thanks! Full Article
se Why the Autorouter use Via to connect GND and VCC pins to Shape Plane By feedproxy.google.com Published On :: Mon, 27 Apr 2020 17:33:29 GMT Here are two screen capture of Before and After Autorouting my board. Padstacks have all been revised and corrected. The Capture Schematic is correct. All Footprints have been verified after Padstack revision. a new NETLIST generation have been done after some corrections made in Capture. I have imported the new Logic. I revised my Layout Cross Section as such: TOP, GND, VCC, BOTTOM. Both VCC and GND shapes have been assigned to their respective logical GND and VCC Nets (verified). Yet, I still have the Autorouter to systematically use extra vias to make GND and VCC connections to the VCC and GND planes. Where a simple utilisation of the part padstack inner layer would have been indicated. What Im I missing ? Full Article
se Easy way to add "charging pads" to PCB/Case Assembly By feedproxy.google.com Published On :: Wed, 29 Apr 2020 23:22:57 GMT Hi everyone! I'm working on a small battery powered PCB which will fit inside a small plastic "hockey puck" container. A number of these "pucks" will be sold together with a "charging doc" which will store and charge the pucks when not in use. I'm trying to work out the best way to charge the battery. I'm thinking of having metal "pads" on the rr.com puck that pass through the puck's plastic shell and then make contact with the PCB on the inside, and having a similar system on the charging dock. I'm thinking of having SMD "contact sprints" mounted to the underside of the PCB and have these mate against metal pins that protrude through the puck, but it's the later of which I'm struggling to find. For a visual, think about "restaurant pagers" and how they charge. Full Article
se Welcome! Please use this forum to upload your code By feedproxy.google.com Published On :: Tue, 05 Aug 2008 21:01:43 GMT Please include a brief summary of how to use it. Full Article
se Register Classes for SystemVerilog OVM By feedproxy.google.com Published On :: Tue, 09 Sep 2008 23:20:24 GMT Hi, I am uploading a register class, which can be used for modeling hardware registers. I am uploading the source code and examples on how to run it. I also have a user guide which has all the APIs listed and explained. The user guide is ARV.pdf in the attached tar file. I have named the class ARV, which stands for Architect's Register View. It has got very good randomization and coverage features. Users have told me that its better than RAL. You can download it from http://verisilica.info/ARV.php. There is a limit of 750KB in this cadence website. The ARV file is 4MB. That is why, I am uploading it at this site. I have a big pdf documentation and a doxygen documentation there. That is the reason for the bigger file size. The password to open the ZIP file is ovm_arv. I hope, everyone will use these classes. Please contact me for any help. Regards ANil Full Article
se Sudoku solver using Incisive Enterprise Verifier (IEV) and Assertion-Driven Simulation (ADS) By feedproxy.google.com Published On :: Tue, 13 Dec 2011 17:29:21 GMT Just in time for the holidays, inside the posted tar ball is some code to solve 9x9 Sudoku puzzles with the Assertion-Driven Simulation (ADS) capability of Incisive Enterprise Verifier (IEV). Enjoy! Joerg Mueller Solutions Engineer for Team Verify Full Article
se Creating cover items for sparse values/queue or define in specman By feedproxy.google.com Published On :: Fri, 12 Jul 2019 17:51:31 GMT Hello, I have a question I want to create a cover that consists a sparse values, pre-computed (a list or define) for example l = {1; 4; 7; 9; 2048; 700} I'd like to cover that data a (uint(bits:16)) had those values, Any suggestion on how to achieve this, I'd prefer to stay away from macros, and avoid to write a lot of code struct inst { data :uint(bits:16); opcode :uint(bits:16); !valid_data : list of uint(bits:16) = {0; 12; 10; 700; 890; 293;}; event data_e; event opcode_e; cover data_e is { item data using radix = HEX, ranges = { //I dont want to write all of this range([0], "My range1"); range([10], "My range2"); //... many values in between range([700], "My rangen"); }; item opcode; cross data, opcode; }; post_generate() is also { emit data_e; };}; Full Article
se how to add section info to extsim_model_include? By feedproxy.google.com Published On :: Wed, 22 Apr 2020 22:12:45 GMT i had encountered error message like this before. but in liberate, i did not find the entry to input section info. Full Article
se Regarding Save/Restore Settings for Transient Simulation By feedproxy.google.com Published On :: Tue, 28 Apr 2020 16:20:14 GMT Hello, I am running a transient simulation on my circuit and usually my simulation time took me more than a day (The circuit is quite big). I am usually saving specific nodes to decrease the simulation time. My problem is, since it usually took me one day to finish I need to save my trans simulation just in case something bad happens. I am aware that the transient simulation have the options for save/restore. But, when I tried to use it I have some problem. Whenever I restore the save file, it starts where it ends before (expected function) but my data is incomplete. It doesn't save the previous data. Its kind of my data is incomplete. What I did is set the saveperiod and savefile. I hope someone can help me. Thank you! Regards, Kiel Full Article
se Design variable in assember -> copy from cell view issue By feedproxy.google.com Published On :: Fri, 01 May 2020 05:32:41 GMT Hello, I find a strange issue when using design variable -> right-click -> copy from cellview in assembler. Cadence version is IC618-64b. 500.9 In fact, I set the value of variable (e.g., AAA = 100), then after I right-click -> copy from cellview, AAA's is updated to other value. In my opinion "copy from cellview" should only update the missing variable to the list, but not change any variable value. Is there any mechanism could change variable value when using "copy from cellview"? Thanks Full Article
se Wrong Constraint Values in Sequential Cell Characterization By feedproxy.google.com Published On :: Fri, 01 May 2020 12:33:48 GMT Hi, I am trying to characterize a D flip-flop for low voltage operation (0.6V) using Cadence Liberate (V16). This is a positive edge triggered D flip flop based on true-single-phase clocking scheme. After the characterization, the measurements reported for hold constraint arcs seem to deviate significantly from its (spectre) spice simulation. The constraint and the power settings to the liberate are as follows : # -------------------------------------------- Timing Constraints --------------------------------------------------------------------------------### Input waveform ###set_var predriver_waveform 2;# 2=use pre-driver waveform### Capacitance ###set_var min_capacitance_for_outputs 1;# write min_capacitance attribute for output pins### Timing ###set_var force_condition 4### Constraint ###set_var constraint_info 2#set_var constraint_search_time_abstol 1e-12 ;# 1ps resolution for bisection searchset_var nochange_mode 1 ;# enable nochange_* constraint characterization### min_pulse_width ###set_var conditional_mpw 0 set_var constraint_combinational 2 #---------------------------------------------- CCS Settings ----------------------------------------------------------------------------------------set_var ccsn_include_passgate_attr 1set_var ccsn_model_related_node_attr 1set_var write_library_is_unbuffered 1 set_var ccsp_min_pts 15 ;# CCSP accuracyset_var ccsp_rel_tol 0.01 ;# CCSP accuracyset_var ccsp_table_reduction 0 ;# CCSP accuracyset_var ccsp_tail_tol 0.02 ;# CCSP accuracyset_var ccsp_related_pin_mode 2 ;# use 3 for multiple input switching scnarios and Voltus only libraries #----------------------------------------------- Power ---------------------------------------------------------------------------------------------------### Leakage ###set_var max_leakage_vector [expr 2**10]set_var leakage_float_internal_supply 0 ;# get worst case leakage for power switch cells when offset_var reset_negative_leakage_power 1 ;# convert negative leakage current to 0 ### Power ###set_var voltage_map 1 ;# create pg_pin groups, related_power_pin / related_ground_pinset_var pin_based_power 0 ;# 0=based on VDD only; 1=power based on VDD and VSS (default); set_var power_combinational_include_output 0 ;# do not include output pins in when conditions for combinational cells set_var force_default_group 1set_default_group -criteria {power avg} ;# use average for default power group #set_var power_subtract_leakage 4 ;# use 4 for cells with exhaustive leakage states.set_var subtract_hidden_power 2 ;# 1=subtract hidden power for all cellsset_var subtract_hidden_power_use_default 3 ;# 3=subtract hidden power from matched when condition then default groupset_var power_multi_output_binning_mode 1 ;# binning for multi-output cell considered for both timing and power arcsset_var power_minimize_switching 1set_var max_hidden_vector [expr 2**10]#-------------------------------------------------------------------------------------------------------------------------------------------------------------- I specifically used set_var constraint_combinational 2 in the settings, in case the Bisection pass/fail mode fails to capture the constraints. In my spice simulation, the hold_rise (D=1, CLK=R, Q=R) arc at-least requires ~250 ps for minimum CLK/D slew combination (for the by default smallest capacitive load as per Liberate) while Liberate reports only ~30 ps. The define_cell template to this flip flop is pretty generic, which does not have any user specified arcs. So which settings most likely affecting the constraint measurements in Liberate and how can I debug this issue ? Thanks Anuradha Full Article
se Library Characterization Tidbits: Over the Clouds and Beyond with Arm-Based Graviton and Cadence Liberate Trio By feedproxy.google.com Published On :: Fri, 21 Feb 2020 18:00:00 GMT Cadence Liberate Trio Characterization Suite, ARM-based Graviton Processors, and Amazon Web Services (AWS) Cloud have joined forces to cater to the High-Performance Computing, Machine Learning/Artificial Intelligence, and Big Data Analytics sectors. (read more) Full Article Liberate Trio Characterization Unified Flow Variation Modeling artificial intelligence ARM-based Graviton Processors liberate blog Amazon Web Services Multi-PVT Liberate LV Liberate Variety machine learning aws PVT corners Liberate Liberate Characterization Portfolio TSMC OPI Ecosystem Forum 2019
se Mixing It Up in Hardware (an Advantest Case Study in Faster Full-Chip Simulations) By feedproxy.google.com Published On :: Wed, 19 Nov 2014 18:27:00 GMT Key Findings: Advantest, in mixed-signal SoC design, sees 50X speedup, 25 day test reduced to 12 hours, dramatic test coverage increase. Trolling through the CDNLive archives, I discovered another gem. At the May 2013 CDNLive in Munich, Thomas Henkel and Henriette Ossoinig of Advantest presented a paper titled “Timing-accurate emulation of a mixed-signal SoC using Palladium XP”. Advantest makes advanced electronics test equipment. Among the semiconductor designs they create for these products is a test processor chip with over 100 million logic transistors, but also with lots of analog functions.They set out to find a way to speed up their full-chip simulations to a point where they could run the system software. To do that, they needed about a 50X speed-up. Well, they did it! Figure 1: Advantest SoC Test Products To skip the commentary, read Advantest's paper here. Problem Statement Software is becoming a bigger part of just about every hardware product in every market today, and that includes the semiconductor test market. To achieve high product quality in the shortest amount of time, the hardware and software components need to be verified together as early in the design cycle as possible. However, the throughput of a typical software RTL simulation is not sufficient to run significant amounts of software on a design with hundreds of millions of transistors. Executing software on RTL models of the hardware means long runs (“deep cycles”) that are a great fit for an emulator, but the mixed-signal content posed a new type of challenge for the Advantest team. Emulators are designed to run digital logic. Analog is really outside of the expected use model. The Advantest team examined the pros and cons of various co-simulation and acceleration flows intended for mixed signal and did not feel that they could possibly get the performance they needed to have practical runtimes with software testbenches. They became determined to find a way to apply their Palladium XP platform to the problem. Armed with the knowledge of the essential relationship between the analog operations and the logic and software operations, the team was able to craft models of the analog blocks using reduction techniques that accurately depicted the essence of the analog function required for hardware-software verification without the expense of a continuous time simulation engine. The requirements boiled down to the following: • Generation of digital signals with highly accurate and flexible timing • Complete chip needs to run on Palladium XP platform • Create high-resolution timing (100fs) with reasonable emulation performance, i.e. at least 50X faster than simulation on the fastest workstations Solution Idea The solution approach chosen was to simplify the functional model of the analog elements of the design down to generation of digital signal edges with high timing accuracy. The solution employed a fixed-frequency central clock that was used as a reference.Timing-critical analog signals used to produce accurately placed digital outputs were encoded into multi-bit representations that modeled the transition and timing behavior. A cell library was created that took the encoded signals and converted them to desired “regular signals”. Automation was added to the process by changing the netlisting to widen the analog signals according to user-specified schematic annotations. All of this was done in a fashion that is compatible with debugging in Cadence’s Simvision tool. Details on all of these facets to follow. The Timing Description Unit (TDU) Format The innovative thinking that enabled the use of Palladium XP was the idea of combining a reference clock and quantized signal encoding to create offsets from the reference. The implementation of these ideas was done in a general manner so that different bit widths could easily be used to control the quantization accuracy. Figure 2: Quantization method using signal encoding Timed Cell Modeling You might be thinking – timing and emulation, together..!? Yes, and here’s a method to do it…. The engineering work in realizing the TDU idea involved the creation of a library of cells that could be used to compose the functions that convert the encoded signal into the “real signals” (timing-accurate digital output signals). Beyond some basic logic cells (e.g., INV, AND, OR, MUX, DFF, TFF, LATCH), some special cells such as window-latch, phase-detect, vernier-delay-line, and clock-generator were created. The converter functions were all composed from these basic cells. This approach ensured an easy path from design into emulation. The solution was made parameterizable to handle varying needs for accuracy. Single bit inputs need to be translated into transitions at offset zero or a high or low coding depending on the previous state. Single bit outputs deliver the final state of the high-resolution output either at time zero, the next falling, or the next rising edge of the grid clock, selectable by parameter. Output transitions can optionally be filtered to conform to a configurable minimum pulse width. Timed Cell Structure There are four critical elements to the design of the conversion function blocks (time cells): Input conditioning – convert to zero-offset, optional glitch preservation, and multi-cycle path Transition sorting – sort transitions according to timing offset and specified precedence Function – for each input transition, create appropriate output transition Output filtering – Capability to optionally remove multiple transitions, zero-width, pulses, etc. Timed Cell Caveat All of the cells are combinational and deliver a result in the same cycle of an input transition. This holds for storage elements as well. For example a DFF will have a feedback to hold its state. Because feedback creates combinational loops, the loops need a designation to be broken (using a brk input conditioning function in this case – more on this later). This creates an additional requirement for flip-flop clock signals to be restricted to two edges per reference clock cycle. Note that without minimum width filtering, the number of output transitions of logic gates is the sum of all input transitions (potentially lots of switching activity). Also note that the delay cell has the effect of doubling the number of output transitions per input transition. Figure 3: Edge doubling will increase switching during execution SimVision Debug Support The debug process was set up to revolve around VCD file processing and directed and viewed within the SimVision debug tool. In order to understand what is going on from a functional standpoint, the raw simulation output processes the encoded signals so that they appear as high-precision timing signals in the waveform viewer. The flow is shown in the figure below. Figure 4: Waveform post-processing flow The result is the flow is a functional debug view that includes association across representations of the design and testbench, including those high-precision timing signals. Figure 5: Simvision debug window setup Overview of the Design Under Verification (DUV) Verification has to prove that analog design works correctly together with the digital part. The critical elements to verify include: • Programmable delay lines move data edges with sub-ps resolution • PLL generates clocks with wide range of programmable frequency • High-speed data stream at output of analog is correct These goals can be achieved only if parts of the analog design are represented with fine resolution timing. Figure 6: Mixed-signal design partitioning for verification How to Get to a Verilog Model of the Analog Design There was an existing Verilog cell library with basic building blocks that included: - Gates, flip-flops, muxes, latches - Behavioral models of programmable delay elements, PLL, loop filter, phase detector With a traditional simulation approach, a cell-based netlist of the analog schematic is created. This netlist is integrated with the Verilog description of the digital design and can be simulated with a normal workstation. To use Palladium simulation, the (non-synthesizable) portions of the analog design that require fine resolution timing have to be replaced by digital timing representation. This modeling task is completed by using a combination of the existing Verilog cell library and the newly developed timed cells. Loop Breaking One of the chief characteristics of the timed cells is that they contain only combinational cells that propagate logic from inputs to outputs. Any feedback from a cell’s transitive fanout back to an input creates a combinational loop that must be broken to reach a steady state. Although the Palladium XP loop breaking algorithm works correctly, the timed cells provided a unique challenge that led to unpredictable results. Thus, a process was developed to ensure predictable loop breaking behavior. The user input to the process was to provide a property at the loop origin that the netlister recognized and translated to the appropriate loop breaking directives. Augmented Netlisting Ease of use and flow automation were two primary considerations in creating a solution that could be deployed more broadly. That made creating a one-step netlisting process a high-value item. The signal point annotation and automatic hierarchy expansion of the “digital timing” parameter helped achieve that goal. The netlister was enriched to identify the key schematic annotations at any point in the hierarchy, including bit and bus signals. Consistency checking and annotation reporting created a log useful in debugging and evolving the solution. Wrapper Cell Modeling and Verification The netlister generates a list of schematic instances at the designated “netlister stop level” for each instance the requires a Verilog model with fine resolution timing. For the design in this paper there were 160 such instances. The library of timed cells was created; these cells were actually “wrapper” cells comprised of the primitives for timed cell modeling described above. A new verification flow was created that used the behavior of the primitive cells as a reference for the expected behavior of the composed cells. The testing of the composed cells included had the timing width parameter set to 1 to enable direct comparison to the primitive cells. The Cadence Incisive Enterprise Simullator tool was successfully employed to perform assertion-based verification of the composed cells versus the existing primitive cells. Mapping and Long Paths Initial experiments showed that inclusion of the fine resolution timed cells into the digital emulation environment would about double the required capacity per run. As previously pointed out, the timed cells having only combinational forward paths creates a loop issue. This fact also had the result of creating some such paths that were more than 5,000 steps of logic. A timed cell optimization process helped to solve this problem. The basic idea was to break the path up by adding flip-flops in strategic locations to reduce combinational path length. The reason that this is important is that the maximum achievable emulation speed is related to combinational path length. Results Once the flow was in place, and some realistic test cases were run through it, some further performance tuning opportunities were discovered to additionally reduce runtimes (e.g., Palladium XP tbrun mode was used to gain speed). The reference used for overall speed gains on this solution was versus a purely software-based solution on the highest performance workstation available. The findings of the performance comparison were startlingly good: • On Palladium XP, the simulation speed is 50X faster than on Advantest’s fastest workstation • Software simulation running 25 days can now be run in 12 hours -> realistic runtime enables long-running tests that were not feasible before • Now have 500 tests that execute once in more than 48 hours • They can be run much more frequently using randomization and this will increase test coverage dramatically Steve Carlson Full Article Advantest Palladium Mixed Signal Verification Emulation mixed signal
se News18 Urdu: Latest News Senapati By urdu.news18.com Published On :: visit News18 Urdu for latest news, breaking news, news headlines and updates from Senapati on politics, sports, entertainment, cricket, crime and more. Full Article
se News18 Urdu: Latest News Serchhip By urdu.news18.com Published On :: visit News18 Urdu for latest news, breaking news, news headlines and updates from Serchhip on politics, sports, entertainment, cricket, crime and more. Full Article
se News18 Urdu: Latest News Sekhpura By urdu.news18.com Published On :: visit News18 Urdu for latest news, breaking news, news headlines and updates from Sekhpura on politics, sports, entertainment, cricket, crime and more. Full Article
se News18 Urdu: Latest News Seohar By urdu.news18.com Published On :: visit News18 Urdu for latest news, breaking news, news headlines and updates from Seohar on politics, sports, entertainment, cricket, crime and more. Full Article
se CBSE Exam پر سب سے بڑی خبر ، یکم سے 15جولائی کے درمیان ہوں گے 10ویں اور 12ویں جماعت کے امتحانات By urdu.news18.com Published On :: Friday, May 08, 2020 06:27 PM دسویں جماعت کے صرف شمال مشرقی دہلی کے طلبہ کے امتحانات ہوں گے جو کہ دہلی میں خراب حالات کی وجہ سے شامل نہیں ہوسکے تھے ۔ Full Article
se #SelfIsolation: মাথায় হাত তারকা ক্রিকেটারের, রাস্তায় রাখা গাড়ি থেকে চুরি গেল পয়সার ব্যাগ! By bengali.news18.com Published On :: Full Article
se Bois Locker Room Case : પોલીસે યુવકની કરી ધરપકડ, 22 અન્યની પણ થઇ ઓળખ By gujarati.news18.com Published On :: Tuesday, May 05, 2020 02:54 PM Full Article
se Aarogya Setu પર સવાલ ઊભા થતા સરકારે આપ્યો જવાબ, 'App સુરક્ષિત છે' By gujarati.news18.com Published On :: Wednesday, May 06, 2020 12:48 PM કોંગ્રેસ નેતા રાહુલ ગાંધીએ આરોગ્ય સેતુ એપ પર સવાલ ઊભા કરતા આરોપ લગાવ્યો છે Full Article
se CBSE Exam : 1 થી 15 જુલાઈ વચ્ચે યોજાશે 10માં અને 12માં ધોરણની પરીક્ષા By gujarati.news18.com Published On :: Friday, May 08, 2020 06:18 PM આમ તો હજુ 80 પેપર્સની પરીક્ષાઓ હજુ બાકી છે પણ વર્તમાન સ્થિતિ જોતા સીબીએસઈએ ફક્ત 29 વિષયોની પરીક્ષા કરાવવાનો નિર્ણય કર્યો છે Full Article
se Navratri Second Day: નવરાત્રીનો બીજો દિવસ, માં બ્રહ્મચારિણીનું માહત્મ્ય અને ચમત્કારી મંત્ર By gujarati.news18.com Published On :: Thursday, March 26, 2020 06:01 PM માં બ્રહ્મચારિણીએ શ્વેત વસ્ત્ર પહેર્યા છે. એમના એક હાથમાં અષ્ટદળની જપમાળા અને બીજા હાથમાં કમંડલ સુશોભિત છે. Full Article
se આ કાપડની દુકાનનું નામ છે Corona, લોકો દૂરથી જ ક્લિક કરી રહ્યા છે Selfie By gujarati.news18.com Published On :: Tuesday, March 17, 2020 03:48 PM દુકાનનું નામ Corona વાંચી લોકો દૂર ઊભા રહીને જ સેલ્ફી ક્લિક કરી રહ્યા છે! Full Article
se Sensexમાં 2800થી વધુ પોઇન્ટનું ગાબડું, ભારે ઘટાડા સાથે ખુલ્યુ શેરબજાર By gujarati.news18.com Published On :: Monday, March 23, 2020 12:46 PM Sensexમાં 2800થી વધુ પોઇન્ટનું ગાબડું, ભારે ઘટાડા સાથે ખુલ્યુ શેરબજાર Full Article
se પ્રીટ્રેડીંગ સેશન: Sensexમાં 1300 પોઇન્ટનો તો Niftyમાં 380 પોઇન્ટનો ઉછાળો By gujarati.news18.com Published On :: Tuesday, March 24, 2020 10:33 AM પ્રીટ્રેડીંગ સેશન: Sensexમાં 1300 પોઇન્ટનો તો Niftyમાં 380 પોઇન્ટનો ઉછાળો Full Article
se કોરોના સામે જંગ : Aarogya Setu એપને ડાઉનલોડ કરવી ફરજિયાત કરી શકે છે સરકાર By gujarati.news18.com Published On :: Wednesday, April 08, 2020 04:37 PM આરોગ્ય સેતુ એપમાં કોરોના વાયરસ સાથે જોડાયેલી બધી જાણકારી ઉપલબ્ધ છે Full Article
se BSE, NSEની ચેતવણી! આ 480 શૅરોમાં રોકાણ કરશો તો ફસાઈ જશે તમારા રૂપિયા By gujarati.news18.com Published On :: Thursday, April 09, 2020 03:23 PM BSEના 440 અને NSEના 38 શૅરોમાં ટ્રેડિંગ કરતાં પહેલા હજાર વાર વિચારજો, લાગી શકે છે ચૂનો Full Article
se એક્સાઇઝ ડ્યૂટીમાં વધારો છતાંય Petrol-Dieselના ભાવમાં ન થયો વધારો, જાણો કારણ By gujarati.news18.com Published On :: Wednesday, May 06, 2020 09:20 AM સરકારે પેટ્રોલ પર 10 રૂપિયા અને ડીઝલ પર 13 રૂપિયા પ્રતિ લીટર એક્સાઇઝ ડ્યૂટી વધારી છે Full Article
se দেশ বিপর্যয়ের মুখে, এই সময় Reliance Foundation'-এর 'Mission Anna Seva' এক মহৎ উদ্যোগ: নীতা আম্বানি By bengali.news18.com Published On :: Full Article
se News18 Urdu: Latest News Sehore By urdu.news18.com Published On :: visit News18 Urdu for latest news, breaking news, news headlines and updates from Sehore on politics, sports, entertainment, cricket, crime and more. Full Article