This document provides an overview of simulation using GHDL for verifying digital designs. It discusses that simulation is important for detecting errors in a design early to reduce costs. Verification through simulation involves creating test benches to test a design against different input combinations. For large designs, decomposition is used to break them into smaller components that can be simulated more easily. The document advocates for using the open-source GHDL simulator, noting the benefits of understanding and improving open-source software. It provides instructions for installing GHDL on Linux and Windows and discusses using text editors like Vim or Gedit when working with GHDL. Coding best practices like commenting and readability are also mentioned.
Presented at NDC London (5th December 2014)
How much should you rely on your IDE to govern your coding style? How many asserts should a test case have or not have? How much work should a constructor (not) do? How do you name your classes and other identifiers? How closed or open should your classes be? How do you lay out your code? These questions and others have standard answers based on received and repeated mantras, practices that are communicated in good faith to be passed on as habits. But how much reason supports these assertions? It turns out that the advice often fails, even for the novices they are intended to guide, or simply doesn't make sense.
This talk has little respect for ritual and tradition and takes no prisoners: What actually makes sense and what doesn't when it comes to matters of practice? What guidelines offer the greatest effect and the greatest learning?
Architecting a Post Mortem - Velocity 2018 San Jose TutorialWill Gallego
Engineers are frequently tasked with being front and center in intense, highly demanding situations that require clear lines of communication. Our systems fail not because of a lack of attention or laziness but due to cognitive dissonance between what we believe about our environments and the objective interactions both internal and external to them.
It’s time to revisit your established beliefs surrounding failure scenarios, with an emphasis not on the “who” in decision making but instead on the “why” behind those decisions. With attention to growth mindset, you can encourage your teams to reject shallow explanations of human error for said failures and focus on how to gain greater understanding of these complexities and push the boundaries on what you believe to be static, unchanging context outside your sphere of influence.
Will Gallego walks you through the structure of postmortems used at large tech companies with real-world examples of failure scenarios and debunks myths regularly attributed to failures. You’ll learn how to incorporate open dialogue within and between teams to bridge these gaps in understanding.
Presented at NDC London (5th December 2014)
How much should you rely on your IDE to govern your coding style? How many asserts should a test case have or not have? How much work should a constructor (not) do? How do you name your classes and other identifiers? How closed or open should your classes be? How do you lay out your code? These questions and others have standard answers based on received and repeated mantras, practices that are communicated in good faith to be passed on as habits. But how much reason supports these assertions? It turns out that the advice often fails, even for the novices they are intended to guide, or simply doesn't make sense.
This talk has little respect for ritual and tradition and takes no prisoners: What actually makes sense and what doesn't when it comes to matters of practice? What guidelines offer the greatest effect and the greatest learning?
Architecting a Post Mortem - Velocity 2018 San Jose TutorialWill Gallego
Engineers are frequently tasked with being front and center in intense, highly demanding situations that require clear lines of communication. Our systems fail not because of a lack of attention or laziness but due to cognitive dissonance between what we believe about our environments and the objective interactions both internal and external to them.
It’s time to revisit your established beliefs surrounding failure scenarios, with an emphasis not on the “who” in decision making but instead on the “why” behind those decisions. With attention to growth mindset, you can encourage your teams to reject shallow explanations of human error for said failures and focus on how to gain greater understanding of these complexities and push the boundaries on what you believe to be static, unchanging context outside your sphere of influence.
Will Gallego walks you through the structure of postmortems used at large tech companies with real-world examples of failure scenarios and debunks myths regularly attributed to failures. You’ll learn how to incorporate open dialogue within and between teams to bridge these gaps in understanding.
How to get what you really want from Testing' with Michael BoltonTEST Huddle
EuroSTAR Conferences, with the support of ISA Software Skillnet, Irish Software Innovation Network and SoftTest, were delighted to bring you a half-day software testing masterclass with Michael Bolton
In this session, Michael Bolton (who has extensive experience as a tester, as a programmer, and as a project manager) explained the role of skilled software testers, and why you might not want to think of testing as "quality assurance".
He present ideas about the relationship between management and testers, and about the service that testers really provide: making quality assurance possible by lighting the way of the project. For those of you who who attended this event, we really hope it was of use to you in your testing careers.
www.eurostarconferences.com
How Four Statistical Rules Forecast Who Wins a Competitive BidIntelCollab.com
Can Bayesian statistics really determine in advance if the bid you are offering will be the winner or just another loser? And, if the metrics forecast a loss, can the same algorithm tell you what to change in order to win instead?
Competitive bidding is where big money sales opportunities are won or lost, and there are four (4) rules that can help you turn a losing situation into a winning sale.
These four rules help you better understand what the customer wants, examine what competitors might do in response and how to beat them, while helping you to offer the best bid, optimized for yours and your prospective customer’s intended outcome. Statistical metrics evaluate your probability of success against the competition and help you more objectively determine how to win. But how can you get at the foundational issues that will determine who will win?
Learning objectives:
Learn the Four Rules that help you understand what will actually determine the customer’s decision.
Visualize your bid head-to-head against the competition and employ objective metrics to determine if you will win.
Identify weaknesses in your offer that must be improved for your bid to beat the competition.
Bill Zangwill is a Professor, Emeritus, from the University of Chicago, Booth School of Business. He has authored four published books, one of which was selected by the Library Journal as “One of the Best Business Books of the Year,” and had over 50 papers in academic journals. In addition, he has had three articles published in the Wall Street Journal. His consulting engagements include top firms such as IBM, AT&T, Motorola, many smaller firms and the US government. He has also taught at the University of Illinois and the University of California, Berkeley. He is considered one of the most innovative thinkers in his field.
Bill will present 30 minutes on how the four rules can help you turn a losing situation into a winning sale and will be joined by webinar moderator Arik Johnson, Founder & Chairman at Aurora WDC.
SBQS 2013 Keynote: Cooperative Testing and AnalysisTao Xie
SBQS 2013 Keynote: Cooperative Testing and Analysis: Human-Tool, Tool-Tool, and Human-Human Cooperations to Get Work Done http://sbqs.dcc.ufba.br/view/palestrantes.php
Healthy City's Community Research Lab (CRL) shares best practices and methods for community-based organizations interested in supporting their strategies with research that combines community knowledge + Healthy City technology. The CRL is a resource for collaborating, networking, learning, and innovating with community-based organizations to lead and sustain research for social change. Using the Community Based Participatory Action Research framework, we partner with organizations to develop, implement, and disseminate community research projects, tools, and workshops.
Earlier this year, we received a two-year grant to provide our CRL Workshop series throughout California! In these workshops, we provide step-by-step guidance on topics that cover:
• how to develop research questions
• how to create effective community maps
• how to facilitate participatory mapping
• how to share maps and data with local community members
The workshops also include:
• facilitated activities training participants how to collect community feedback for advocacy, organizing and other projects
• sessions on how to develop strategies where community members can give input to telling their community’s story.
We are currently preparing to launch the first round of the workshop series in: Sacramento, Central Valley, and the Inland Empire!
Healthy City works with community-based organizations to apply Community Based Participatory Action Research (CBPAR) in their mapping and community-engagement work. CBPAR starts with issues and strategies to produce analysis, uses mapping technology as one tool for community engagement and focuses on communities within a geographic location, such as a neighborhood. Using CPBAR in mapping facilitates engagement, education, strategizing, and dialogue among community members--including youth--and decision-makers.
Including young people in map making allows them to contribute their unique knowledge and lived experiences as community residents. Youth can provide invaluable insight and can act as change agents advocating on behalf of their communities. Whether you are a Youth Organizer, Community Liaison or Direct Service Provider, there are a number of ways you can incorporate and share youth data and stories using a variety of free resources and tools available on HealthyCity.org to build community power.
In this webinar you will learn how to:
1) Research and map youth population data to enhance program focus and planning on healthycity.org
2) Upload your own data onto a map
3) Use Wikimaps to better plan, collaborate and share youth outreach strategies and stories
How to Use HealthyCity.org for Grant Writing & ReportingHealthy City
These slides are from a webinar (11/16/11) designed to demonstrate how to use HealthyCity.org to enhance your grant proposals and reports with visually impactful and relevant data, maps, and charts. Learn how to access data that highlights the needs and opportunities within your communities of interest and how to make the case that your program will make a difference.
In this training you will learn how to:
- Gather data for your particular area of interest by creating your own community boundaries.
- Create maps and charts that provide the visual evidence to demonstrate both the need and potential within your community.
- Report your results - make the case that your program or project has had a positive and measurable impact.
How to get what you really want from Testing' with Michael BoltonTEST Huddle
EuroSTAR Conferences, with the support of ISA Software Skillnet, Irish Software Innovation Network and SoftTest, were delighted to bring you a half-day software testing masterclass with Michael Bolton
In this session, Michael Bolton (who has extensive experience as a tester, as a programmer, and as a project manager) explained the role of skilled software testers, and why you might not want to think of testing as "quality assurance".
He present ideas about the relationship between management and testers, and about the service that testers really provide: making quality assurance possible by lighting the way of the project. For those of you who who attended this event, we really hope it was of use to you in your testing careers.
www.eurostarconferences.com
How Four Statistical Rules Forecast Who Wins a Competitive BidIntelCollab.com
Can Bayesian statistics really determine in advance if the bid you are offering will be the winner or just another loser? And, if the metrics forecast a loss, can the same algorithm tell you what to change in order to win instead?
Competitive bidding is where big money sales opportunities are won or lost, and there are four (4) rules that can help you turn a losing situation into a winning sale.
These four rules help you better understand what the customer wants, examine what competitors might do in response and how to beat them, while helping you to offer the best bid, optimized for yours and your prospective customer’s intended outcome. Statistical metrics evaluate your probability of success against the competition and help you more objectively determine how to win. But how can you get at the foundational issues that will determine who will win?
Learning objectives:
Learn the Four Rules that help you understand what will actually determine the customer’s decision.
Visualize your bid head-to-head against the competition and employ objective metrics to determine if you will win.
Identify weaknesses in your offer that must be improved for your bid to beat the competition.
Bill Zangwill is a Professor, Emeritus, from the University of Chicago, Booth School of Business. He has authored four published books, one of which was selected by the Library Journal as “One of the Best Business Books of the Year,” and had over 50 papers in academic journals. In addition, he has had three articles published in the Wall Street Journal. His consulting engagements include top firms such as IBM, AT&T, Motorola, many smaller firms and the US government. He has also taught at the University of Illinois and the University of California, Berkeley. He is considered one of the most innovative thinkers in his field.
Bill will present 30 minutes on how the four rules can help you turn a losing situation into a winning sale and will be joined by webinar moderator Arik Johnson, Founder & Chairman at Aurora WDC.
SBQS 2013 Keynote: Cooperative Testing and AnalysisTao Xie
SBQS 2013 Keynote: Cooperative Testing and Analysis: Human-Tool, Tool-Tool, and Human-Human Cooperations to Get Work Done http://sbqs.dcc.ufba.br/view/palestrantes.php
Healthy City's Community Research Lab (CRL) shares best practices and methods for community-based organizations interested in supporting their strategies with research that combines community knowledge + Healthy City technology. The CRL is a resource for collaborating, networking, learning, and innovating with community-based organizations to lead and sustain research for social change. Using the Community Based Participatory Action Research framework, we partner with organizations to develop, implement, and disseminate community research projects, tools, and workshops.
Earlier this year, we received a two-year grant to provide our CRL Workshop series throughout California! In these workshops, we provide step-by-step guidance on topics that cover:
• how to develop research questions
• how to create effective community maps
• how to facilitate participatory mapping
• how to share maps and data with local community members
The workshops also include:
• facilitated activities training participants how to collect community feedback for advocacy, organizing and other projects
• sessions on how to develop strategies where community members can give input to telling their community’s story.
We are currently preparing to launch the first round of the workshop series in: Sacramento, Central Valley, and the Inland Empire!
Healthy City works with community-based organizations to apply Community Based Participatory Action Research (CBPAR) in their mapping and community-engagement work. CBPAR starts with issues and strategies to produce analysis, uses mapping technology as one tool for community engagement and focuses on communities within a geographic location, such as a neighborhood. Using CPBAR in mapping facilitates engagement, education, strategizing, and dialogue among community members--including youth--and decision-makers.
Including young people in map making allows them to contribute their unique knowledge and lived experiences as community residents. Youth can provide invaluable insight and can act as change agents advocating on behalf of their communities. Whether you are a Youth Organizer, Community Liaison or Direct Service Provider, there are a number of ways you can incorporate and share youth data and stories using a variety of free resources and tools available on HealthyCity.org to build community power.
In this webinar you will learn how to:
1) Research and map youth population data to enhance program focus and planning on healthycity.org
2) Upload your own data onto a map
3) Use Wikimaps to better plan, collaborate and share youth outreach strategies and stories
How to Use HealthyCity.org for Grant Writing & ReportingHealthy City
These slides are from a webinar (11/16/11) designed to demonstrate how to use HealthyCity.org to enhance your grant proposals and reports with visually impactful and relevant data, maps, and charts. Learn how to access data that highlights the needs and opportunities within your communities of interest and how to make the case that your program will make a difference.
In this training you will learn how to:
- Gather data for your particular area of interest by creating your own community boundaries.
- Create maps and charts that provide the visual evidence to demonstrate both the need and potential within your community.
- Report your results - make the case that your program or project has had a positive and measurable impact.
Aduro is a revolutionary eLearning platform by Liqvid,a Noida based eLearning company.Aduro places mobile at the centre of its scheme of things and allows content creators to create content within a matter of hours.It's available on Android,iOS and windows.
Slides from my DevOpsExpo London talk "From oops to NoOps".
They tell you in these conferences that DevOps is not about tools, but about culture. And they are partially right. I am going to tell you that it’s not only about culture or tools but also abstractions.
It is a lot about how you see software and its value. About our mental model of what software is: how it runs, evolves, and interacts with the other facets of an enterprise.
We used to view software as code. As a state of code. Now we think about software as change, as a flow. A dynamic system where people, machines, and processes interact continuously.
At Platform.sh we spend a bunch of time asking ourselves not “How do you build?” - or even “How do you build consistently?” - but rather “What does it mean to consistently build in a world where change is good?” A world that lets you push security fixes into production as soon as they’re available because you don’t want to be an Equifax but you do want stability.
In this presentation, I will go over what we think software is and why having the right ideas about software will help you get your culture right and your tooling aligned, as well as gain in productivity, and general happiness and well-being.
A recap of interesting points and quotes from the May 2024 WSO2CON opensource application development conference. Focuses primarily on keynotes and panel sessions.
Worse Is Better, for Better or for WorseKevlin Henney
Presented at GeeCON (15th May 2014)
Over two decades ago, Richard Gabriel proposed the idea of “Worse Is Better” to explain why some things that are designed to be pure and perfect are eclipsed by solutions that are seemingly compromised and imperfect. This is not simply the observation that things should be better but are not, or that flawed and ill-considered solutions are superior to those created with intention, but that many solutions that are narrow and incomplete work out better than the solutions conceived of as being comprehensive and complete. Whether it is programming languages, operating systems, development processes or development practices, we find many examples of this in software development, some more provocative and surprising than others.
In this talk we revisit the original premise and question, and look at how this approach to development can still teach us something surprising and new.
Artificial Intelligence is back, Deep Learning Networks and Quantum possibili...John Mathon
AI has gone through a number of mini-boom-bust periods. The current one may be short lived as well but I have reasons to think AI is finally making some sustained progress that will see its way into mainstream technology.
Daniel Lance - What "You've Got Mail" Taught Me About Cyber SecurityEnergySec
An interactive look at what security research means today and how we got to zero days, bug bounties, and hoodie hackers in the news. What particular skills or talents are most essential to be effective as a security researcher, and how much can we learn from the new digital anthropologist in waiting.
Outgrowing Brendan Eich’s orders of mission, scope, clojure, prototyping, asynchronicity, ES6 and more great libs turned javascript into a red hot IT topic. Let’s synthesize this wealth and build an evolution where only functionalities and expressed intentions matter. Get ready for neural fun!!!
If the coding bug is banal, it doesn't meant it's not crucialPVS-Studio
Spreading the word about PVS-Studio static analyzer, we usually write articles for programmers. However, some things are seen by programmers quite one-sided. That is why there are project managers who can help manage the process of the project development and guide it to the right direction. I decided to write a series of articles, whose target audience is project managers. These articles will help better understand the use of static code analysis methodology. Today we are going to consider a false postulate: "coding errors are insignificant".
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
Home assignment II on Spectroscopy 2024 Answers.pdf
Notes on Simulation and GHDL
1. ∗
Notes on GHDL and Simulation
Dilawar Singh
Email : dilawars@iitb.ac.in
Version 1.0
January 18, 2011
“To leave error unrefuted is to encourage intellectual immorality.“
Karl Marx.
quoted in ’The Poverty Of Theory’ by E. P. Thompson.
The only Western Historian who could
think beyond the nation of Atlantis.
Simulation
An engineer should be able to not only correct an error but also locate them.
Simulation is mostly used for these two puposes. Failure in detecting errors
could be very costly. Later you detect it, costlier it gets. Intel has witnessed it
once. It may be not a matter of life an death but surely it can throw a mid-size
design house out of business. Big corporations can survive but it costs a lot. A
minor FDIV bug in Intel Pentium processor cost $500 million.
After you have implemented your design as per given ’specifications’, first
task is to test whether it is giving what was expected (verification). While
designing, one might have taken clues from on one’s common sense in addition
to what one knows for sure. Simulation protect you from this common sense
(or intuitions), same way mathematics protect natural sciences from common
senses of humans which by the way hardly have anything in common 1 . Studying
social sciences is beset with ills. There is no protection from ’common sense’.
No wonder, two economists seldom agree on anything.
Verification of design (mostly done using Simulation) is a big fraction of
today’s total design activities and consumes about 60-80% time. In VHDL, you
will create ’test benches’2 to test your design against certain set of test inputs.
For all these possible inputs, if output satisfies given ’truth table’ (or behavioral
description) then the design is said to be correct. One should test his/design
for all possible input combinations which is not possible for large enough input
∗ These notes have nothing to do with your course content. Usual disclaimer of ’I am not
responsible for any damages caused etc. etc’ applies.
1 As far as common sense is concerned, it make sense asking whether an electron is a wave
or a particle. For mathematics, this question in itself is absurd. An electron is what its
equation implies, nothing less, yet could be more than that.
2 While using ghdl you have to write test-bench in VHDL only, in Modelsim you have
another option called do files
1
2. ports. On top of it, one should be able to catch error as early as possible for
cost grows exponentially with design stages. If design is found faulty at later
stages, you might loose your job (or get transfered if in government job). In any
case, it will be a blot on your claim to be an engineer.
Simulation’s present is bright, future is surely bleak 3 . VLSI has grown up
in size tremendously. A modern chip has many input combinations that one
can possibly be tested in reasonable amount of time even though computer run
faster than Chacha Cahudhary’s brain. To overcome this, what one generally
does is to break a large design into smaller one (decomposition) and simulate
smaller parts. Most of simulation is done for moderate size components like
adder, multiplexer etc.
There have been tremendous growth in the area of formal verification (you
can google it if you like) but you can not do away with simulation, at least
for next 6-7 decades. Reduced Binary decision diagrams (RBDD) and Kripke
Structures are very prominent tools these days. In the past, using formal meth-
ods in practice seemed hopeless, only few crazy people stuck to them. Recently,
industries are trying out formal verification like Z notation to document system
properties more rigorously. Model checking and theorem proving (on certain
structures) are being plugged in to complement more traditional one of simula-
tion.
Making a case for GHDL
Since I am ’lobbying’ for ghdl, it is clear that I am heavily biased and like
electrons under bias my ideas will move in a certain direction i.e. towards
supporting ghdl.
Why ghdl? I can give two arguments, one is solely driven by my love for free
softwares, second is put forward my Prof M. P. Desai in his lecture. Free soft-
wares (as defined by http://www.gnu.org/philosophy/free-sw.html) allow one
to understand how a particular software works by providing you with its source
code. That makes improvement as well as enhancement faster. This is the right
way of making this planet ’smarter’. Another more effective way is by dumbing
down the users by taking away their rights to know that they are using. Adding
a fancy Graphical User Interface (GUI) may not necessarily translates into a
better software. We all have experiences with Microsoft Word!
Second, according to Prof Desai (quoting in spirit, not the exact words),
I’ll prefer giving 5 lacs more to someone who is an expert in free
software rather than spending 10 lacs buying a license of a propriety
softwares given that my job is done. Its like preferring a musi-
cian who is better trained with his instruments over someone who is
backed by costly electronic gadgets.
First argument is a truism given that one is suffering from the mental neces-
sity ’to know’ like Donald E. Knuth; second is also a truism if one works with
(for) people who have the same vision. But most of the time, this is not the
case. Only first rate mind appreciate first rate minds. N’th level mediocrity
3 I’m Done Simulating; Now What? Verification Coverage Analysis and Correctness
Checking of the DECchip 21164 Alpha microprocessor; Michael Kantrowitz, Lisa M. Noack;
See
2
3. always support N+1’th level mediocrity. So it should not be surprising to note
that most of the people prefer Madona over Pt. Ravishankar, Daniel Steele over
R. K. Narayanan, T-Shirt over Kurta - I plead guilty (Albert Einstein would
have looked more graceful in Kurta!) and ’some Indian Idol’ over Indian Ocean.
On same lines, Modelsim over ghdl (offense indented!). Bottom line is Your
real skills (with free-softwares) may be grossly undervalued (in pro-
priety softwares driven world). To survive in Industries, it is useful to have
familiarity with ’standard’ tools. Internet is flooded with articles about them.
Installing GHDL
Linux Users
Before using package managers such as synaptic, yast etc make sure proxy vari-
ables are set. On Ubuntu, synaptic is installed by default. Go to (System− >
Administration− > SynapticP ackageM anager), go to the settings− > P ref erances− >
N etwork and set the proxy. Search ghdl and mark for installation. If you prefer
using apt − get utility from command line then make sure to put proxy informa-
tion in /etc/apt/apt.conf file. For example, if my user-name is profc haos and
password is khoonid arinda then my file will look like this.
Acquire::http::proxy "http://prof_chaos:khooni_darinda@netmon.iitb.ac.in:80/";
Acquire::ftp::proxy "http://prof_chaos:khooni_darinda@netmon.iitb.ac.in:80/";
Acquire::https::proxy "http://prof_chaos:khooni_darinda@netmon.iitb.ac.in:80/";
For other linux distribution, please google about it. If you are new to linux, you
may not be able to get things right for first few hours. That suppose to happen,
but don’t let it put you off.
Windows user
Guys! Learn linux if you have not started learning it. As someone has said, “We
learn to live in the world of linux where there is no Gates or Windows”. . For
Modelsim student edition, you have to use windows as expected. In VLSI lab,
it is installed on linux and can be invoked by vsim command from terminal.
Modelsim tutorial is given on its website.
Text Editor
ghdl now have an inbuilt text editor but it may not be available on vlsi lab.
You have to use vim or gedit. vim is the most advanced and simple (as a rule
of thumb, takes quite a lot of practice to learn) text editor. gedit is also a
good editor. Spend some time with vim every week. You can curse me while
learning but you will surely thank me after a year. vim is like a light saber, it
is only effective in the hand of a ’Jedi Knight’. First timer can not do anything
significant with it. vim has a lot of tutorial and free books available on its
website.
3
4. Coding
Get into habit of commenting your code properly. Not only because it will be
readable by others but also you can remember what you have done a week ago.
Literate Programming is a school of thought which deals with readability of
codes. Writing readable codes not only recommended but also mandatory these
days. When a team of many people works on a single project, non-readability
consume much more time then it saves.
You make also like to read about subversion (or git). Its a ’version control
system’ which keeps track of what you have done in the past. You can easily
recover any past version of your file. You can use google-code to make your svn
repository or can set up your own local repository on your personal machine.
There are many blogs written about how to do it.
Few words of wisdom
4