d 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
d 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
d Skill code to Calculating PCB Real-estate usage using placement boundaries and package keep ins By feedproxy.google.com Published On :: Wed, 04 Mar 2020 18:37:43 GMT Other tools allow a sanity check of placement density vs available board space. There is an older post "Skill code to evaluate all components area (Accumulative Place bound area)" (9 years ago) that has a couple of examples that no longer work or expired. This would be useful to provide feedback to schismatic and project managers regarding the component density on the PCB and how it will affect the routing abilities. Thermal considerations can be evaluated as well Has anyone attempted this or still being done externally in spread sheets? Full Article
d Find pin attached to a cline By feedproxy.google.com Published On :: Mon, 09 Mar 2020 02:17:47 GMT Hello All, After selecting a cline (using axlSingleSelectBox), may I know how to obtain the dbid of the 'pin' connected to the end of the cline? Thanks All Full Article
d Skill : Draw Line 17.2 works , 17.4 doesn't By feedproxy.google.com Published On :: Mon, 09 Mar 2020 08:21:00 GMT Hi , I am sharing with you some simple skill script that draw line in user layer : axlCmdRegister("DrawLine" 'DrawLine)procedure(DrawLine() layer_name = "substrate geometry/userlayer" mypopup = axlUIPopupDefine(nil '( ("Done" "axlDBTransactionCommit(mark), axlFinishEnterFun()") ("Oops" "axlDBTransactionOops(mark), when(zerop(--oopsNum)") ("Cancel" "axlDBTransactionRollback(mark), axlCancelEnterFun()") ("MENU_SEPARATOR", nil))) axlUIPopupSet( mypopup) ; Clear the dynamic buffer axlClearDynamics() if(axlLayerGet(layer_name) != nil then if(axlIsVisibleLayer(layer_name) == nil then axlVisibleLayer(layer_name,t) axlVisibleUpdate(t) );End if else if(axlLayerGet("substrate geometry") == nil then layer_name = "board geometry/userlayer" axlLayerCreateNonConductor(layer_name) axlVisibleLayer(layer_name,t) axlVisibleUpdate(t) else axlLayerCreateNonConductor(layer_name) axlVisibleLayer(layer_name,t) axlVisibleUpdate(t) );End if );End if ; Clear mypath to nil, then loop gathering user picks: mypath = nil mark = axlDBTransactionStart() flag = t allP = list(nil) seg1 = nil seg2 = nil while( (mypath = axlEnterPath(?lastPath mypath)) if(flag == t then p = axlDBCreatePath(mypath, layer_name) seg1 = car(car(car(p))->segments) seg2 = car(cdr(car(car(p))->segments)) path = axlPathStart( list(car(seg1->startEnd)) , 0) axlPathLine( path , 0 , car(cdr(seg1->startEnd))) if(seg2 then axlPathLine( path , 0 , car(cdr(seg2->startEnd))) );end if flag = nil else p = axlDBCreatePath(mypath, layer_name) seg1 = car(car(car(p))->segments) seg2 = car(cdr(car(car(p))->segments)) axlPathLine( path , 0 , car(cdr(seg1->startEnd))) if(seg2 then axlPathLine( path , 0 , car(cdr(seg2->startEnd))) );end if );end if allP = cons(car(car(p)) allP) );Loop axlDBCreatePath(path, layer_name) forall( x allP axlDeleteObject(x)));End procedure Is anyone can help to understand why this script can work with 16.5/16.6/17.2 and doesn't work with 17.4 ? To be more informative in 17.4 this script behaves differently , when i am trying to draw line i can't zoom in/out ,i can't use my shortcuts to snap it on segment/middle/edge , it's like it's waiting only for next X/Y user click , all other functions just disabled . Thanks . Full Article
d 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
d axlShapeAutoVoid not voiding Backdrill shapes By feedproxy.google.com Published On :: Fri, 13 Mar 2020 22:49:44 GMT Hi all, I am creating shapes on plane layers for a coupon and want to void them using axlShapeAutoVoid() The shapes are attached to a symbol. I've tried using axlShapeAutoVoid, but this only voids the pins, not the route keepouts created by nc_backdrill. I also tried selecting the shape, individually, then running axlShapeAutoVoid. That was unsuccessful, also. planeShapes is a list of shapes I created. The code for voiding: ;run backdrill to get route keepouts axlShell("setwindow pcb;backdrill setup ;setwindow form.nc_backdrill;FORM nc_backdrill apply ;FORM nc_backdrill close") foreach(sHape planeShapes axlShapeAutoVoid(car(sHape)) ) Full Article
d Looking for ADVFC32 SPICE Model By feedproxy.google.com Published On :: Mon, 16 Mar 2020 13:56:51 GMT I'm working on a circuit that requires the input voltage to be converted to a frequency, transmitted over an optical cable, and then converted back to a voltage. I am attempting to simulate this circuit using Eagle ngSpice simulations. The voltage to frequency converters that I am using are ADVFC32 and made by Analog Devices. However, I can't seem to find a SPICE model for this component. Analog Devices does not provide it on their website. Can anyone find a SPICE Model for this part? I'm new to working with electronics so any help/advice you can provide would be appreciated. Full Article
d Calculating timing delay from routed channel length By feedproxy.google.com Published On :: Tue, 17 Mar 2020 04:33:10 GMT Hello, i am a student who is studying Allegro tool with SKILL. I have a question about SKILL axlSegDelayAndZ0. The reference says this function "returns the delay and impedance of a cline segment." I want to know how many components does this tool consider when calculating timing delay from the length. How steep is input signal's rise transition? Is rise transition shape isosceles trapezoid or differential increasing shape? Also, if it is a multi fan-out, the rise transition time will be different net by net. How can this tool can calculate in this case? I want to hear answers about these questions. Thank you for reading this long boring questions, and i will be waiting for answers. Full Article
d DRC Element Report By feedproxy.google.com Published On :: Thu, 19 Mar 2020 04:12:20 GMT Hi, I have to Take DRC report by cadence skill code I don't know the command to get Element 1 and Element 2 Report any one please help me out. Full Article
d 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
d How to reload a SKILL-script in Allegro By feedproxy.google.com Published On :: Thu, 02 Apr 2020 06:26:49 GMT I am working on some SKILL scripts which are loaded by allegro.ilinit at startup. If I edit my .il-files how do I get them updated in Allegro? Right now I restart the program but there must be a simpler way. A newbie question, I know... Full Article
d PCB Editor SKILL program for finding pin location By feedproxy.google.com Published On :: Mon, 20 Apr 2020 06:27:34 GMT Hi, I wanted to find the location of a pin in the design using skill program. pin_dbids = axlDBGetDesign()->pins, this gives me all the dbids of the pins that are present in my design. But when im entering that dbid, pad = axlDBGetPad("000001EA8FD8B9F8" "package geometry/assembly_top" "regular") it is throwing an error stating "This dbid is not user defined. Please enter the user defined". So please provide me a snippet so that I can get the exact pin location in the design using skill script. Full Article
d Inconsistent behaviour of warn() between Virtuoso and Allegro By feedproxy.google.com Published On :: Thu, 23 Apr 2020 09:27:22 GMT For a project, we depend on capturing warnings. This works fine in Virtuoso but behaves differently in Allegro. In our observations Virtuoso: >>> warn("Hello") *WARNING* Hello Allegro: >>> warn("Hello") *WARNING* Hello But when we capture the warning: Virtuoso: >>> warn("Hello") getWarn() "Hello" Allegro: >>> warn("Hello") getWarn() "*WARNING* Hello" This is a Problem for because we put an empty String in the warn and depend on the fact that no Warning results in an empty String but on Allegro the output always begins with *WARNING* Is there a way to make the behavior consistent in both versions? Full Article
d 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
d Here Is Why the Indian Voter Is Saddled With Bad Economics By feedproxy.google.com Published On :: 2019-02-03T03:54:17+00:00 This is the 15th installment of The Rationalist, my column for the Times of India. It’s election season, and promises are raining down on voters like rose petals on naïve newlyweds. Earlier this week, the Congress party announced a minimum income guarantee for the poor. This Friday, the Modi government released a budget full of sops. As the days go by, the promises will get bolder, and you might feel important that so much attention is being given to you. Well, the joke is on you. Every election, HL Mencken once said, is “an advance auction sale of stolen goods.” A bunch of competing mafias fight to rule over you for the next five years. You decide who wins, on the basis of who can bribe you better with your own money. This is an absurd situation, which I tried to express in a limerick I wrote for this page a couple of years ago: POLITICS: A neta who loves currency notes/ Told me what his line of work denotes./ ‘It is kind of funny./ We steal people’s money/And use some of it to buy their votes.’ We’re the dupes here, and we pay far more to keep this circus going than this circus costs. It would be okay if the parties, once they came to power, provided good governance. But voters have given up on that, and now only want patronage and handouts. That leads to one of the biggest problems in Indian politics: We are stuck in an equilibrium where all good politics is bad economics, and vice versa. For example, the minimum guarantee for the poor is good politics, because the optics are great. It’s basically Garibi Hatao: that slogan made Indira Gandhi a political juggernaut in the 1970s, at the same time that she unleashed a series of economic policies that kept millions of people in garibi for decades longer than they should have been. This time, the Congress has released no details, and keeping it vague makes sense because I find it hard to see how it can make economic sense. Depending on how they define ‘poor’, how much income they offer and what the cost is, the plan will either be ineffective or unworkable. The Modi government’s interim budget announced a handout for poor farmers that seemed rather pointless. Given our agricultural distress, offering a poor farmer 500 bucks a month seems almost like mockery. Such condescending handouts solve nothing. The poor want jobs and opportunities. Those come with growth, which requires structural reforms. Structural reforms don’t sound sexy as election promises. Handouts do. A classic example is farm loan waivers. We have reached a stage in our politics where every party has to promise them to assuage farmers, who are a strong vote bank everywhere. You can’t blame farmers for wanting them – they are a necessary anaesthetic. But no government has yet made a serious attempt at tackling the root causes of our agricultural crisis. Why is it that Good Politics in India is always Bad Economics? Let me put forth some possible reasons. One, voters tend to think in zero-sum ways, as if the pie is fixed, and the only way to bring people out of poverty is to redistribute. The truth is that trade is a positive-sum game, and nations can only be lifted out of poverty when the whole pie grows. But this is unintuitive. Two, Indian politics revolves around identity and patronage. The spoils of power are limited – that is indeed a zero-sum game – so you’re likely to vote for whoever can look after the interests of your in-group rather than care about the economy as a whole. Three, voters tend to stay uninformed for good reasons, because of what Public Choice economists call Rational Ignorance. A single vote is unlikely to make a difference in an election, so why put in the effort to understand the nuances of economics and governance? Just ask, what is in it for me, and go with whatever seems to be the best answer. Four, Politicians have a short-term horizon, geared towards winning the next election. A good policy that may take years to play out is unattractive. A policy that will win them votes in the short term is preferable. Sadly, no Indian party has shown a willingness to aim for the long term. The Congress has produced new Gandhis, but not new ideas. And while the BJP did make some solid promises in 2014, they did not walk that talk, and have proved to be, as Arun Shourie once called them, UPA + Cow. Even the Congress is adopting the cow, in fact, so maybe the BJP will add Temple to that mix? Benjamin Franklin once said, “Democracy is two wolves and a lamb voting on what to have for lunch.” This election season, my friends, the people of India are on the menu. You have been deveined and deboned, marinated with rhetoric, seasoned with narrative – now enter the oven and vote. The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d India’s Problem is Poverty, Not Inequality By feedproxy.google.com Published On :: 2019-02-17T04:23:30+00:00 This is the 16th installment of The Rationalist, my column for the Times of India. Steven Pinker, in his book Enlightenment Now, relates an old Russian joke about two peasants named Boris and Igor. They are both poor. Boris has a goat. Igor does not. One day, Igor is granted a wish by a visiting fairy. What will he wish for? “I wish,” he says, “that Boris’s goat should die.” The joke ends there, revealing as much about human nature as about economics. Consider the three things that happen if the fairy grants the wish. One, Boris becomes poorer. Two, Igor stays poor. Three, inequality reduces. Is any of them a good outcome? I feel exasperated when I hear intellectuals and columnists talking about economic inequality. It is my contention that India’s problem is poverty – and that poverty and inequality are two very different things that often do not coincide. To illustrate this, I sometimes ask this question: In which of the following countries would you rather be poor: USA or Bangladesh? The obvious answer is USA, where the poor are much better off than the poor of Bangladesh. And yet, while Bangladesh has greater poverty, the USA has higher inequality. Indeed, take a look at the countries of the world measured by the Gini Index, which is that standard metric used to measure inequality, and you will find that USA, Hong Kong, Singapore and the United Kingdom all have greater inequality than Bangladesh, Liberia, Pakistan and Sierra Leone, which are much poorer. And yet, while the poor of Bangladesh would love to migrate to unequal USA, I don’t hear of too many people wishing to go in the opposite direction. Indeed, people vote with their feet when it comes to choosing between poverty and inequality. All of human history is a story of migration from rural areas to cities – which have greater inequality. If poverty and inequality are so different, why do people conflate the two? A key reason is that we tend to think of the world in zero-sum ways. For someone to win, someone else must lose. If the rich get richer, the poor must be getting poorer, and the presence of poverty must be proof of inequality. But that’s not how the world works. The pie is not fixed. Economic growth is a positive-sum game and leads to an expansion of the pie, and everybody benefits. In absolute terms, the rich get richer, and so do the poor, often enough to come out of poverty. And so, in any growing economy, as poverty reduces, inequality tends to increase. (This is counter-intuitive, I know, so used are we to zero-sum thinking.) This is exactly what has happened in India since we liberalised parts of our economy in 1991. Most people who complain about inequality in India are using the wrong word, and are really worried about poverty. Put a millionaire in a room with a billionaire, and no one will complain about the inequality in that room. But put a starving beggar in there, and the situation is morally objectionable. It is the poverty that makes it a problem, not the inequality. You might think that this is just semantics, but words matter. Poverty and inequality are different phenomena with opposite solutions. You can solve for inequality by making everyone equally poor. Or you could solve for it by redistributing from the rich to the poor, as if the pie was fixed. The problem with this, as any economist will tell you, is that there is a trade-off between redistribution and growth. All redistribution comes at the cost of growing the pie – and only growth can solve the problem of poverty in a country like ours. It has been estimated that in India, for every one percent rise in GDP, two million people come out of poverty. That is a stunning statistic. When millions of Indians don’t have enough money to eat properly or sleep with a roof over their heads, it is our moral imperative to help them rise out of poverty. The policies that will make this possible – allowing free markets, incentivising investment and job creation, removing state oppression – are likely to lead to greater inequality. So what? It is more urgent to make sure that every Indian has enough to fulfil his basic needs – what the philosopher Harry Frankfurt, in his fine book On Inequality, called the Doctrine of Sufficiency. The elite in their airconditioned drawing rooms, and those who live in rich countries, can follow the fashions of the West and talk compassionately about inequality. India does not have that luxury. The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d To Escalate or Not? This Is Modi’s Zugzwang Moment By feedproxy.google.com Published On :: 2019-03-03T03:19:05+00:00 This is the 17th installment of The Rationalist, my column for the Times of India. One of my favourite English words comes from chess. If it is your turn to move, but any move you make makes your position worse, you are in ‘Zugzwang’. Narendra Modi was in zugzwang after the Pulwama attacks a few days ago—as any Indian prime minister in his place would have been. An Indian PM, after an attack for which Pakistan is held responsible, has only unsavoury choices in front of him. He is pulled in two opposite directions. One, strategy dictates that he must not escalate. Two, politics dictates that he must. Let’s unpack that. First, consider the strategic imperatives. Ever since both India and Pakistan became nuclear powers, a conventional war has become next to impossible because of the threat of a nuclear war. If India escalates beyond a point, Pakistan might bring their nuclear weapons into play. Even a limited nuclear war could cause millions of casualties and devastate our economy. Thus, no matter what the provocation, India needs to calibrate its response so that the Pakistan doesn’t take it all the way. It’s impossible to predict what actions Pakistan might view as sufficient provocation, so India has tended to play it safe. Don’t capture territory, don’t attack military assets, don’t kill civilians. In other words, surgical strikes on alleged terrorist camps is the most we can do. Given that Pakistan knows that it is irrational for India to react, and our leaders tend to be rational, they can ‘bleed us with a thousand cuts’, as their doctrine states, with impunity. Both in 2001, when our parliament was attacked and the BJP’s Atal Bihari Vajpayee was PM, and in 2008, when Mumbai was attacked and the Congress’s Manmohan Singh was PM, our leaders considered all the options on the table—but were forced to do nothing. But is doing nothing an option in an election year? Leave strategy aside and turn to politics. India has been attacked. Forty soldiers have been killed, and the nation is traumatised and baying for blood. It is now politically impossible to not retaliate—especially for a PM who has criticized his predecessor for being weak, and portrayed himself as a 56-inch-chested man of action. I have no doubt that Modi is a rational man, and knows the possible consequences of escalation. But he also knows the possible consequences of not escalating—he could dilute his brand and lose the elections. Thus, he is forced to act. And after he acts, his Pakistan counterpart will face the same domestic pressure to retaliate, and will have to attack back. And so on till my home in Versova is swallowed up by a nuclear crater, right? Well, not exactly. There is a way to resolve this paradox. India and Pakistan can both escalate, not via military actions, but via optics. Modi and Imran Khan, who you’d expect to feel like the loneliest men on earth right now, can find sweet company in each other. Their incentives are aligned. Neither man wants this to turn into a full-fledged war. Both men want to appear macho in front of their domestic constituencies. Both men are masters at building narratives, and have a pliant media that will help them. Thus, India can carry out a surgical strike and claim it destroyed a camp, killed terrorists, and forced Pakistan to return a braveheart prisoner of war. Pakistan can say India merely destroyed two trees plus a rock, and claim the high moral ground by returning the prisoner after giving him good masala tea. A benign military equilibrium is maintained, and both men come out looking like strong leaders: a win-win game for the PMs that avoids a lose-lose game for their nations. They can give themselves a high-five in private when they meet next, and Imran can whisper to Modi, “You’re a good spinner, bro.” There is one problem here, though: what if the optics don’t work? If Modi feels that his public is too sceptical and he needs to do more, he might feel forced to resort to actual military escalation. The fog of politics might obscure the possible consequences. If the resultant Indian military action causes serious damage, Pakistan will have to respond in kind. In the chain of events that then begins, with body bags piling up, neither man may be able to back down. They could end up as prisoners of circumstance—and so could we. *** Also check out: Why Modi Must Learn to Play the Game of Chicken With Pakistan—Amit Varma The Two Pakistans—Episode 79 of The Seen and the Unseen India in the Nuclear Age—Episode 80 of The Seen and the Unseen The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d Lessons from an Ankhon Dekhi Prime Minister By feedproxy.google.com Published On :: 2019-05-05T03:17:51+00:00 This is the 19th installment of The Rationalist, my column for the Times of India. A friend of mine was very impressed by the interview Narendra Modi granted last week to Akshay Kumar. ‘Such a charming man, such great work ethic,’ he gushed. ‘He is the kind of uncle I would want my kids to have.’ And then, in the same breath, he asked, ‘How can such a good man be such a bad prime minister?” I don’t want to be uncharitable and suggest that Modi’s image is entirely manufactured, so let’s take the interview at face value. Let’s also grant Modi his claims about the purity of his neeyat (intentions), and reframe the question this way: when it comes to public policy, why do good intentions often lead to bad outcomes? To attempt an answer, I’ll refer to a story a friend of mine, who knows Modi well, once told me about him. Modi was chilling with his friends at home more than a decade ago, and told them an incident from his childhood. His mother was ill once, and the young Narendra was tending to her. The heat was enervating, so the boy went to the switchboard to switch on the fan. But there was no electricity. My friend said that as he told this story, Modi’s eyes filled with tears. Even after all these years, he was moved by the memory. My friend used this story to make the point that Modi’s vision of the world is experiential. If he experiences something, he understands it. When he became chief minister of Gujarat, he made it his stated mission to get reliable electricity to every part of Gujarat. No doubt this was shaped by the time he flicked a switch as a young boy and the fan did not budge. Similarly, he has given importance to things like roads and cleanliness, since he would have experienced the impact of those as a young man. My term for him, inspired by Rajat Kapoor’s 2014 film, is ‘the ankhon dekhi prime minister’. At one level, this is a good thing. He sees a problem and works for the rest of his life to solve it. But what of things he cannot experience? The economy is a complex beast, as is society itself, and beyond a certain level, you need to grasp abstract concepts to understand how the world works. You cannot experience them. For example, spontaneous order, or the idea that society and markets, like language, cannot be centrally directed or planned. Or the positive-sum nature of things, which is the engine of our prosperity: the idea that every transaction is a win-win game, and that for one person to win, another does not have to lose. Or, indeed, respect for individual rights and free speech. One understands abstract concepts by reading about them, understanding them, applying them to the real world. Modi is not known to be a reader, and this is not his fault. Given his background, it is a near-miracle that he has made it this far. He wasn’t born into a home with a reading culture, and did not have either the resources or the time when he was young to devote to reading. The only way he could learn about the world, thus, was by experiencing it. There are two lessons here, one for Modi himself and others in his position, and another for everyone. The lesson in this for Modi is a lesson for anyone who rises to such an important position, even if he is the smartest person in the world. That lesson is to have humility about the bounds of your knowledge, and to surround yourself with experts who can advise you well. Be driven by values and not confidence in your own knowledge. Gather intellectual giants around you, and stand on their shoulders. Modi did not do this in the case of demonetisation, which he carried out against the advice of every expert he consulted. We all know the damage it caused to the economy. The other learning from this is for all of us. How do we make sense of the world? By connecting dots. An ankhon-dekhi approach will get us very few dots, and our view of the world will be blurred and incomplete. The best way to gather more dots is reading. The more we read, the better we understand the world, and the better the decisions we take. When we can experience a thousand lives through books, why restrict ourselves to one? A good man with noble intentions can make bad decisions with horrible consequences. The only way to hedge against this is by staying humble and reading more. So when you finish reading this piece, think of an unread book that you’d like to read today – and read it! The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d Can Amit Shah do for India what he did for the BJP? By feedproxy.google.com Published On :: 2019-06-02T02:07:40+00:00 This is the 20th installment of The Rationalist, my column for the Times of India. Amit Shah’s induction into the union cabinet is such an interesting moment. Even partisans who oppose the BJP, as I do, would admit that Shah is a political genius. Under his leadership, the BJP has become an electoral behemoth in the most complicated political landscape in the world. The big question that now arises is this: can Shah do for India what he did for the BJP? This raises a perplexing question: in the last five years, as the BJP has flourished, India has languished. And yet, the leadership of both the party and the nation are more or less the same. Then why hasn’t the ability to manage the party translated to governing the country? I would argue that there are two reasons for this. One, the skills required in those two tasks are different. Two, so are the incentives in play. Let’s look at the skills first. Managing a party like the BJP is, in some ways, like managing a large multinational company. Shah is a master at top-down planning and micro-management. How he went about winning the 2014 elections, described in detail in Prashant Jha’s book How the BJP Wins, should be a Harvard Business School case study. The book describes how he fixed the BJP’s ground game in Uttar Pradesh, picking teams for 147,000 booths in Uttar Pradesh, monitoring them, and keeping them accountable. Shah looked at the market segmentation in UP, and hit upon his now famous “60% formula”. He realised he could not deliver the votes of Muslims, Yadavs and Jatavs, who were 40% of the population. So he focussed on wooing the other 60%, including non-Yadav OBCs and non-Jatav Dalits. He carried out versions of these caste reconfigurations across states, and according to Jha, covered “over 5 lakh kilometres” between 2014 and 2017, consolidating market share in every state in this country. He nurtured “a pool of a thousand new OBC and Dalit leaders”, going well beyond the posturing of other parties. That so many Dalits and OBCs voted for the BJP in 2019 is astonishing. Shah went past Mandal politics, managing to subsume previously antagonistic castes and sub-castes into a broad Hindutva identity. And as the BJP increased its depth, it expanded its breadth as well. What it has done in West Bengal, wiping out the Left and weakening Mamata Banerjee, is jaw-dropping. With hindsight, it may one day seem inevitable, but only a madman could have conceived it, and only a genius could have executed it. Good man to be Home Minister then, eh? Not quite. A country is not like a large company or even a political party. It is much too complex to be managed from the top down, and a control freak is bound to flounder. The approach needed is very different. Some tasks of governance, it is true, are tailor-made for efficient managers. Building infrastructure, taking care of roads and power, building toilets (even without an underlying drainage system) and PR campaigns can all be executed by good managers. But the deeper tasks of making an economy flourish require a different approach. They need a light touch, not a heavy hand. The 20th century is full of cautionary tales that show that economies cannot be centrally planned from the top down. Examples of that ‘fatal conceit’, to use my hero Friedrich Hayek’s term, include the Soviet Union, Mao’s China, and even the lady Modi most reminds me of, Indira Gandhi. The task of the state, when it comes to the economy, is to administer a strong rule of law, and to make sure it is applied equally. No special favours to cronies or special interest groups. Just unleash the natural creativity of the people, and don’t try to micro-manage. Sadly, the BJP’s impulse, like that of most governments of the past, is a statist one. India should have a small state that does a few things well. Instead, we have a large state that does many things badly, and acts as a parasite on its people. As it happens, the few things that we should do well are all right up Shah’s managerial alley. For example, the rule of law is effectively absent in India today, especially for the poor. As Home Minister, Shah could fix this if he applied the same zeal to governing India as he did to growing the BJP. But will he? And here we come to the question of incentives. What drives Amit Shah: maximising power, or serving the nation? What is good for the country will often coincide with what is good for the party – but not always. When they diverge, which path will Shah choose? So much rests on that. The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d 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
d Farmers, Technology and Freedom of Choice: A Tale of Two Satyagrahas By feedproxy.google.com Published On :: 2019-06-30T03:29:02+00:00 This is the 23rd installment of The Rationalist, my column for the Times of India. I had a strange dream last night. I dreamt that the government had passed a law that made using laptops illegal. I would have to write this column by hand. I would also have to leave my home in Mumbai to deliver it in person to my editor in Delhi. I woke up trembling and angry – and realised how Indian farmers feel every single day of their lives. My column today is a tale of two satyagrahas. Both involve farmers, technology and the freedom of choice. One of them began this month – but first, let us go back to the turn of the millennium. As the 1990s came to an end, cotton farmers across India were in distress. Pests known as bollworms were ravaging crops across the country. Farmers had to use increasing amounts of pesticide to keep them at bay. The costs of the pesticide and the amount of labour involved made it unviable – and often, the crops would fail anyway. Then, technology came to the rescue. The farmers heard of Bt Cotton, a genetically modified type of cotton that kept these pests away, and was being used around the world. But they were illegal in India, even though no bad effects had ever been recorded. Well, who cares about ‘illegal’ when it is a matter of life and death? Farmers in Gujarat got hold of Bt Cotton seeds from the black market and planted them. You’ll never guess what happened next. As 2002 began, all cotton crops in Gujarat failed – except the 10,000 hectares that had Bt Cotton. The government did not care about the failed crops. They cared about the ‘illegal’ ones. They ordered all the Bt Cotton crops to be destroyed. It was time for a satyagraha – and not just in Gujarat. The late Sharad Joshi, leader of the Shetkari Sanghatana in Maharashtra, took around 10,000 farmers to Gujarat to stand with their fellows there. They sat in the fields of Bt Cotton and basically said, ‘Over our dead bodies.’ ¬Joshi’s point was simple: all other citizens of India have access to the latest technology from all over. They are all empowered with choice. Why should farmers be held back? The satyagraha was successful. The ban on Bt Cotton was lifted. There are three things I would like to point out here. One, the lifting of the ban transformed cotton farming in India. Over 90% of Indian farmers now use Bt Cotton. India has become the world’s largest producer of cotton, moving ahead of China. According to agriculture expert Ashok Gulati, India has gained US$ 67 billion in the years since from higher exports and import savings because of Bt Cotton. Most importantly, cotton farmers’ incomes have doubled. Two, GMO crops have become standard across the world. Around 190 million hectares of GMO crops have been planted worldwide, and GMO foods are accepted in 67 countries. The humanitarian benefits have been massive: Golden Rice, a variety of rice packed with minerals and vitamins, has prevented blindness in countless new-born kids since it was introduced in the Philippines. Three, despite the fear-mongering of some NGOs, whose existence depends on alarmism, the science behind GMO is settled. No harmful side effects have been noted in all these years, and millions of lives impacted positively. A couple of years ago, over 100 Nobel Laureates signed a petition asserting that GMO foods were safe, and blasting anti-science NGOs that stood in the way of progress. There is scientific consensus on this. The science may be settled, but the politics is not. The government still bans some types of GMO seeds, such as Bt Brinjal, which was developed by an Indian company called Mahyco, and used successfully in Bangladesh. More crucially, a variety called HT Bt Cotton, which fights weeds, is also banned. Weeding takes up to 15% of a farmer’s time, and often makes farming unviable. Farmers across the world use this variant – 60% of global cotton crops are HT Bt. Indian farmers are so desperate for it that they choose to break the law and buy expensive seeds from the black market – but the government is cracking down. A farmer in Haryana had his crop destroyed by the government in May. On June 10 this year, a farmer named Lalit Bahale in the Akola District of Maharashtra kicked off a satyagraha by planting banned seeds of HT Bt Cotton and Bt Brinjal. He was soon joined by thousands of farmers. Far from our urban eyes, a heroic fight has begun. Our farmers, already victimised and oppressed by a predatory government in countless ways, are fighting for their right to take charge of their lives. As this brave struggle unfolds, I am left with a troubling question: All those satyagrahas of the past by our great freedom fighters, what were they for, if all they got us was independence and not freedom? The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d For this Brave New World of cricket, we have IPL and England to thank By feedproxy.google.com Published On :: 2019-07-13T23:50:53+00:00 This is the 24th installment of The Rationalist, my column for the Times of India. Back in the last decade, I was a cricket journalist for a few years. Then, around 12 years ago, I quit. I was jaded as hell. Every game seemed like déjà vu, nothing new, just another round on the treadmill. Although I would remember her fondly, I thought me and cricket were done. And then I fell in love again. Cricket has changed in the last few years in glorious ways. There have been new ways of thinking about the game. There have been new ways of playing the game. Every season, new kinds of drama form, new nuances spring up into sight. This is true even of what had once seemed the dullest form of the game, one-day cricket. We are entering into a brave new world, and the team leading us there is England. No matter what happens in the World Cup final today – a single game involves a huge amount of luck – this England side are extraordinary. They are the bridge between eras, leading us into a Golden Age of Cricket. I know that sounds hyperbolic, so let me stun you further by saying that I give the IPL credit for this. And now, having woken up you up with such a jolt on this lovely Sunday morning, let me explain. Twenty20 cricket changed the game in two fundamental ways. Both ended up changing one-day cricket. The first was strategy. When the first T20 games took place, teams applied an ODI template to innings-building: pinch-hit, build, slog. But this was not an optimal approach. In ODIs, teams have 11 players over 50 overs. In T20s, they have 11 players over 20 overs. The equation between resources and constraints is different. This means that the cost of a wicket goes down, and the cost of a dot ball goes up. Critically, it means that the value of aggression rises. A team need not follow the ODI template. In some instances, attacking for all 20 overs – or as I call it, ‘frontloading’ – may be optimal. West Indies won the T20 World Cup in 2016 by doing just this, and England played similarly. And some sides began to realise was that they had been underestimating the value of aggression in one-day cricket as well. The second fundamental way in which T20 cricket changed cricket was in terms of skills. The IPL and other leagues brought big money into the game. This changed incentives for budding cricketers. Relatively few people break into Test or ODI cricket, and play for their countries. A much wider pool can aspire to play T20 cricket – which also provides much more money. So it makes sense to spend the hundreds of hours you are in the nets honing T20 skills rather than Test match skills. Go to any nets practice, and you will find many more kids practising innovative aggressive strokes than playing the forward defensive. As a result, batsmen today have a wider array of attacking strokes than earlier generations. Because every run counts more in T20 cricket, the standard of fielding has also shot up. And bowlers have also reacted to this by expanding their arsenal of tricks. Everyone has had to lift their game. In one-day cricket, thus, two things have happened. One, there is better strategic understanding about the value of aggression. Two, batsmen are better equipped to act on the aggressive imperative. The game has continued to evolve. Bowlers have reacted to this with greater aggression on their part, and this ongoing dialogue has been fascinating. The cricket writer Gideon Haigh once told me on my podcast that the 2015 World Cup featured a battle between T20 batting and Test match bowling. This England team is the high watermark so far. Their aggression does not come from slogging. They bat with a combination of intent and skills that allows them to coast at 6-an-over, without needing to take too many risks. In normal conditions, thus, they can coast to 300 – any hitting they do beyond that is the bonus that takes them to 350 or 400. It’s a whole new level, illustrated by the fact that at one point a few days ago, they had seven consecutive scores of 300 to their name. Look at their scores over the last few years, in fact, and it is clear that this is the greatest batting side in the history of one-day cricket – by a margin. There have been stumbles in this World Cup, but in the bigger picture, those are outliers. If England have a bad day in the final and New Zealand play their A-game, England might even lose today. But if Captain Morgan’s men play their A-game, they will coast to victory. New Zealand does not have those gears. No other team in the world does – for now. But one day, they will all have to learn to play like this. The India Uncut Blog © 2010 Amit Varma. All rights reserved. Follow me on Twitter. Full Article
d 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
d Design library not defined while reading module with ncsim By feedproxy.google.com Published On :: Fri, 25 Oct 2019 08:27:37 GMT Hi supporters, I got the following error while I run simulation with gate netlist using Cadence Incisive (v15.20): ---- ncsim(64): 15.20-s076: (c) Copyright 1995-2019 Cadence Design Systems, Inc.ncsim: *E,DLOALB: Design library 'tcbnxxx' not defined while reading module tcbnxxx.MAOxxx:bv (VST).ncsim: *F,NOSIMU: Errors initializing simulation 'alu_tb' ---- xxx: standard library name. My netlist design uses a cell "MAOxxx". I already included the library behavior model to compile using ncverilog, there is no error while compiling. But when I run with ncsim to execute the test, I got above error. I tried to run with other vendors such as VCS or MTI, they worked. Please help to understand the error. Thanks. Full Article
d IMC : fsm coding style not auto extracted/Identified by IMC By feedproxy.google.com Published On :: Mon, 09 Dec 2019 20:27:44 GMT Hi, I've vhdl block containing fsm . IMC not able to auto extract the state machine coded like this: There is a intermediate state state_mux between next_state & state. Pls. help in guiding IMC how to recognize this FSM coding style? Snipped of the fsm code: ---------------------------------------------------------------------------------------------------------------------------------------------- type state_type is (ST_IDLE, ST_ADDRESS, ST_ACK_ADDRESS, ST_READ, ST_ACK_READ, ST_WRITE, ST_ACK_WRITE, ST_IDLE_BYTE); signal state : state_type; signal state_mux : state_type; signal next_state : state_type; process(state_mux, start) begin next_state <= state_mux; next_count <= (others => '0'); case (state_mux) is when ST_IDLE => if(start = '1') then next_state <= ST_ADDRESS; end if; when ST_ADDRESS => ……………. when others => null; end case; end process; process(scl_clk_n, active_rstn) begin if(active_rstn = '0') then state <= ST_IDLE after delay_f; elsif(scl_clk_n'event and scl_clk_n = '1') then state <= next_state after delay_f; end if; end process; process(state, start) begin state_mux <= state; if(start = '1') then state_mux <= ST_IDLE; end if; end process; Thanks Raghu Full Article
d 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
d Can't collect AXI4 burst_started coverage By feedproxy.google.com Published On :: Mon, 30 Dec 2019 12:01:53 GMT I have a problem connected with my AXI4 coverage. I enable coverage collection in AXI4 set_config_int("axi4_active_slave_agent_0.monitor.coverModel", "burst_started_enable", 1); set_config_int("axi4_active_slave_agent_0.monitor.coverModel", "coverageEnable", 1); but i don't have a result. I think the problem in Callback, but i try to connect all callback and i don't have positive result. Can you help me? Full Article
d How to run a regressive test and merge the ncsim.trn file of all test into a single file to view the waveform in simvision ? By feedproxy.google.com Published On :: Mon, 13 Jan 2020 12:04:01 GMT Hi all, I want to know how to run a regressive test in cadence and merge all ncsim .trn file of each test case into a single file to view all waveform in simvision. I am using Makefile to invoke the test case. eg:- test0: irun -uvm -sv -access +rwc $(RTL) $(INTER) $(PKG) $(TOP) $(probe) +UVM_VERBOSITY=UVM_MEDIUM +UVM_TESTNAME=test0 test1: irun -uvm -sv -access +rwc $(RTL) $(INTER) $(PKG) $(TOP) $(probe) +UVM_VERBOSITY=UVM_MEDIUM +UVM_TESTNAME=test1 I just to call test0 followed by test1 or parallel both test and view the waveform for both tests case. I new to this tool and help me with it Full Article
d Developing a solid DV flow : xrun wrapper tool By feedproxy.google.com Published On :: Sat, 18 Jan 2020 20:10:05 GMT Hi all, I need to develop a digital design/verification solution to compile,elaborate and simulate SV designs (basically a complex xrun wrapper). I am an experienced user of xrun and I have done a number of these wrappers over the years but this one is to be more of a tool, intented to be used Company-wise, so it needs to be very well thought and engineered. It needs to be robust, simple and extensible. It needs to support multi-snapshot elaboration, run regressions on machine farms, collect coverage, create reports, etc. I've been browsing the vast amount of documentation on XCELIUM and, although very good, I can't find any document which puts together all the pieces of what I am trying to achieve. I suppose I am more clear on the elaboration, compilation and simulation part but I am really lacking on the other areas like : LSF, regressions coverage, where does vManager fits in all this, etc. I'd appreciate if someone can comment on whether there is a document which depicts how such a DV flow can be put together from scratch, or whether there is a kind of RAK with some example xrun wrapper. Thanks Full Article
d Design of DC motor model By feedproxy.google.com Published On :: Tue, 21 Jan 2020 07:32:56 GMT Hi I want develope basic circuit of DC motor which consist of resistor, inductor and back emf in capture and check its simulation in pspice, for reference I have attached image and link. https://www.precisionmicrodrives.com/content/ab-025-using-spice-to-model-dc-motors/ . Full Article
d 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
d Running xrun command in vsif file By feedproxy.google.com Published On :: Fri, 07 Feb 2020 10:11:37 GMT Hi, I found a basic Specman E/Verilog program at http://www.asic-world.com/examples/specman/memory.html and I would like to run it through a vsif file, with vManager. I'm able to run it, without problems, with this command : xrun -Q -unbuffered '-timescale' '1ns/1ns' '-access' '+rw' memory_tb.v mem_tb_top.e test_write_read_all.e. I wrote a first vsif which look like this: ---- vm_basic.vsif ----- session vm_basic { top_dir : /home/cadence/xrunTest/; output_mode: terminal;};group basic { test test { run_script: xrun -Q -unbuffered '-timescale' '1ns/1ns' '-access' '+rw' memory_tb.v mem_tb_top.e test_write_read_all.e };}; ---------------------------- This solution didn't work due to the prompt change with xrun, and I have no clue how to manage this issue. Have you any idea? Best regards, Yohan Full Article
d 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
d How to refer the library compiled by INCISIVE 13.20 in Xcelium 19.30 By feedproxy.google.com Published On :: Wed, 19 Feb 2020 08:56:22 GMT Hi, I am facing this elaboration error when using Xcelium: Command> xmverilog -v200x +access+r +xm64bit -f vlist -reflib plib -timescale 1ns/1ps Log> xmelab: *E,CUVMUR (<name>.v,538|18): instance 'LUTP0.C GLAT3' of design unit 'tlatntscad12' is unresolved in 'worklib.LUTP0:v'. I guess the plib was not referred to as the simulation configuration because the tlatntscad12 is included in plib. The plib is compiled by INCISIVE 13.20 and I am using the Xcelium 19.30. Please tell me the correct command on how to refer to the library directory compiled by different versions. Thank you, Full Article
d 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
d 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
d 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
d XmVlog - *F,DIRDEC error By feedproxy.google.com Published On :: Fri, 27 Mar 2020 23:45:55 GMT I'm trying to compile a simple verilog file using xmvlog. I run the following command,"xmvlog myfile.v"Then I get the following error, "xmvlog: *F,DIRDEC: Can't save decompressed versions of compressed files." I used to use xmvlog with no issues, this error started to come up now. The message is not helpful either. How can I solve this? I appreciate any help, thanks in advance. Full Article
d Post synthesis simulation with XCELIUM - SDF By feedproxy.google.com Published On :: Sat, 11 Apr 2020 12:27:22 GMT hi,due to technical problem i am running simulation through terminal. Therefore, I have a Verilog file, a test bench and i have also exported from Genus synthesized netlist and sdf file. Now, how can i annotate sdf in my post-synthesis simulation using XCELIUM while using command line?thank you Full Article
d 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
d Failed to inject fault at (ncsim) By feedproxy.google.com Published On :: Thu, 07 May 2020 17:38:56 GMT Hi, I'm doing fault injection with ncsim and got stuck at the following (and not so useful) message: "ncsim: *E,FLTIGF: [FLT] Failed to inject fault at circuit_tb.U0.n2174." I already tried with other NETs, with SET, SA0, SA1, always the same error occurs. My scripts so far, considering I already compiled the Verilog testbench and also the gates from the technology library (gate-level simulation): #this runs ok ncelab -work worklib -cdslib circuit/trunk/backend/synthesis/work/cds.lib -logfile ncelab.log -errormax 15 -access +wc -status -timescale 1ps/1ps worklib.circuit_tb -fault_file circuit/trunk/backend/synthesis/scripts/fi.list #this runs okncsim -fault_good_run -fault_tw 1ns:4ns -fault_work fault_db -fault_overwrite worklib.circuit_tb:module -input ../scripts/fs_strobe.tcl -exit #this runs NOT OKncsim -fault_sim_run -fault_work fault_db worklib.circuit_tb:module -input ../scripts/injection.tcl -exit After the above command I get: "ncsim: *E,FLTIGF: [FLT] Failed to inject fault at circuit_tb.U0.n2174." Here are the files called from the commands above. fi.list: fault_target circuit_tb.U0.n2174 -type SET+SA1+SA0 fs_strobe.tcl: fs_strobe circuit_tb.WRITE_OUT circuit_tb.PC_OUT[0] injection.tcl: fault -stop_severity 3 -inject -time 2ns -type sa1 circuit_tb.U0.n2174 I already checked the NETs with simvision, so their paths are correct. Any ideas? PS: I know about Xcellium, however, I don't have it yet. Full Article
d IC Packagers: Five Steps to IC-Driven Package Design By feedproxy.google.com Published On :: Thu, 05 Mar 2020 17:23:00 GMT They say Moore's law is slowing. It may be slowing but it is still running - it has not stopped! And, it has been running at full throttle for quite a few decades now. The net result of this run? Well, you can't design ICs in isolation from the...(read more) Full Article Allegro Package Designer
d IC Packagers: The Different Types of Mirrors By feedproxy.google.com Published On :: Tue, 10 Mar 2020 15:19:00 GMT I’m not talking about carnival funhouse mirrors, but rather the different options for mirroring symbols, vias, and bond fingers in your IC Package layout. The Allegro Package Designer Plus and SiP Layout tools have two distinct styles of m...(read more) Full Article Allegro Package Designer
d IC Packagers: Design Element Label Management By feedproxy.google.com Published On :: Wed, 18 Mar 2020 13:46:00 GMT A few weeks ago, we talked about template text labels for design-specific information. There, we were focused on labels that are specific to the design as a whole: revision information, dates, authors, etc. Today, we’re looking at a diff...(read more) Full Article Allegro Package Designer Allegro PCB Editor
d IC Packagers: Identify Your Components By feedproxy.google.com Published On :: Tue, 24 Mar 2020 14:19:00 GMT We’ve all seen bar codes and the more modern QR codes. They’re everywhere you go – items at the grocery store, advertisements and posters, even on websites. Did you know that, with the productivity toolbox in Allegro Package Designe...(read more) Full Article Allegro Package Designer Allegro PCB Editor
d IC Packagers: Don’t Get Stranded on Islands, Delete Them! By feedproxy.google.com Published On :: Tue, 31 Mar 2020 14:44:00 GMT No, this isn’t a Hollywood movie. We’re talking about pieces of plane shapes with no connections to them, not an idyllic private oasis in the Caribbean (sorry). Removing shape islands is something you’ve always been able to do in th...(read more) Full Article Allegro Package Designer Allegro PCB Editor
d IC Packagers: A New Option in Bond Finger Solder Mask Openings By feedproxy.google.com Published On :: Tue, 07 Apr 2020 14:17:00 GMT If you design wire bond packages, you’re familiar with the need for the bond fingers and rings on the package substrate layers to be exposed through the solder mask layer. If they aren’t, it becomes… rather difficult… to bon...(read more) Full Article Allegro Package Designer
d IC Packagers: You Can Leave Your (Molding) Cap On… By feedproxy.google.com Published On :: Tue, 21 Apr 2020 14:27:00 GMT Molding caps aren’t something we talk about too frequently around here. We all know they exist, and they serve an important purpose of protecting the delicate die from potentially harsh environmental conditions. They impact how well heat can be...(read more) Full Article Allegro Package Designer
d IC Packagers: Shape Connectivity in the Allegro Data Model By feedproxy.google.com Published On :: Tue, 28 Apr 2020 13:14:00 GMT Those who work in the IC Packaging design space have some unique challenges. We bridge between the IC design world (90/45-degree traces with rectangular and octagonal pins) and the PCB domain (any-angle routing, filled planes, and a multitude of pad ...(read more) Full Article Allegro Package Designer Allegro PCB Editor