Verilator by Ciro Santilli 37 Updated 2025-07-16
Verilog simulator that transpiles to C++.
One very good thing about this is that it makes it easy to create test cases directly in C++. You just supply inputs and clock the simulation directly in a C++ loop, then read outputs and assert them with assert(). And you can inspect variables by printing them or with GDB. This is infinitely more convenient than doing these IO-type tasks in Verilog itself.
Some simulation examples under verilog.
First install Verilator. On Ubuntu:
sudo apt install verilator
Tested on Verilator 4.038, Ubuntu 22.04.
Run all examples, which have assertions in them:
cd verilator
make run
File structure is for example:
Example list:
Radiative levitation is a physical phenomenon that occurs when an object is suspended in space due to the balance between the forces of radiation pressure and gravitational pull. This effect is most commonly observed in environments where the radiation intensity is high, such as in stellar atmospheres or in the vicinity of certain types of lasers. In radiative levitation, the force exerted by the radiation (typically photons) can counteract the force of gravity.
The Lambda point refers to a specific temperature at which helium transitions from a normal fluid phase to a superfluid phase. This occurs at around 2.17 Kelvin (K) for helium-4, one of the isotopes of helium. At the Lambda point, the specific heat capacity of helium-4 diverges, which is indicative of a phase transition.
New England's Dark Day refers to a significant historical event that took place on May 19, 1780. On this day, an unusual darkening of the sky occurred across parts of New England, particularly in Connecticut, and extended into other northeastern states. The cause of this phenomenon was not immediately understood, leading to widespread speculation and fear.
Weather lore refers to a collection of sayings, beliefs, and traditional knowledge about weather patterns and phenomena, often passed down through generations. These proverbs and observations are based on the experiences of farmers, fishermen, and local communities who have observed how weather changes can influence daily life, agriculture, and natural events. Weather lore often includes folk rhymes, sayings, and anecdotes that aim to predict future weather based on signs observed in nature.
"Works about weather" could refer to a variety of artistic, literary, and scientific works that focus on weather phenomena. Here are a few interpretations of this topic: 1. **Literature**: Many authors have written about weather in their novels, poetry, and essays, using it as a backdrop to explore themes such as change, mood, and human experience.
An explosive-driven ferromagnetic generator is a type of power-generation device that utilizes explosive energy to produce electrical power through the principles of electromagnetic induction. Here’s a breakdown of how it generally works and its components: ### Key Components 1. **Ferromagnetic Materials**: These materials are capable of becoming magnetized and are used to create magnetic fields. Common ferromagnetic materials include iron, cobalt, and nickel.
Kinematics in the context of particle physics refers to the study of the motion of particles without considering the forces that cause this motion. It encompasses the analysis of the trajectories, velocities, and momenta of particles as they move through space and time, particularly when they are involved in interactions or collisions. Key concepts in kinematics include: 1. **Position**: The location of a particle in space at a given time, often described using coordinates.
Mott scattering refers to a phenomenon observed in the scattering of charged particles, particularly electrons, by nuclei or other charged particles. Named after the physicist Neil Mott, this scattering process is notable for being a quantum mechanical interaction that can reveal important information about the internal structure of the target particles. In Mott scattering, an incident charged particle (like an electron) interacts electrostatically with the electric field of a charged target particle (such as an atomic nucleus).
A scattering channel generally refers to a medium or environment in which signals (like electromagnetic waves, sound waves, or particles) are dispersed or scattered due to interaction with obstacles or irregularities within that medium. This concept is widely used in various fields, including communications, physics, and radar systems. ### Key Aspects of Scattering Channels: 1. **Nature of Scattering**: In a scattering channel, incoming signals encounter surfaces or particles that cause them to deviate from their original path.
Helium cryogenics refers to the use of helium as a refrigerant in various cryogenic applications, particularly at extremely low temperatures, typically below 4.2 Kelvin (-268.95 degrees Celsius or -452.11 degrees Fahrenheit). Helium is unique among the elements because it remains in a liquid state at these very low temperatures, which makes it an ideal choice for cooling superconductors, particle accelerators, and other scientific experiments that require ultra-low temperatures.
Isaak Khalatnikov is a prominent Russian theoretical physicist known for his significant contributions to the field of cosmology and plasma physics. Born on January 12, 1919, he is particularly recognized for his work on the theory of the early universe, black holes, and the dynamics of cosmic processes. Khalatnikov has been associated with various academic institutions throughout his career and has played a critical role in advancing our understanding of physical phenomena in the universe.
The term "quantum solvent" can refer to different concepts depending on the context, particularly in quantum chemistry and condensed matter physics. Here are a couple of interpretations: 1. **Quantum Solvents in Quantum Chemistry**: In the realm of quantum chemistry, a quantum solvent can refer to a medium in which solute molecules interact with each other and with solvent molecules, where the effects of quantum mechanics are significant. This would contrast with classical solvent models, where behaviors can often be described using classical physics.
Two-dimensional quantum turbulence refers to the complex, chaotic behavior of quantum fluids, particularly superfluids, in two spatial dimensions. It is an area of research that intersects the fields of condensed matter physics, quantum mechanics, and fluid dynamics. ### Key Characteristics: 1. **Superfluidity**: - Two-dimensional quantum turbulence often involves superfluid systems, like helium-4 at low temperatures or Bose-Einstein condensates (BECs).
A water power engine, often referred to as a water engine or hydraulic engine, is a type of machine that converts the energy of flowing or falling water into mechanical energy. The basic principle behind it is the use of water as a source of energy, leveraging its flow, pressure, or gravitational potential to perform work.
"Timers" can refer to several concepts depending on the context. Here are a few common interpretations: 1. **Time Measurement Devices**: Timers are devices that measure time intervals. They can be used for various purposes, such as cooking (kitchen timers), athletic events (stopwatches), and scientific experiments. 2. **Programming**: In computer science, timers can refer to programming constructs that schedule events to occur after a specified period.
A vacuum pump is a device that removes gas molecules from a sealed volume to create a vacuum, or a space with significantly reduced pressure compared to the ambient atmospheric pressure. It works by extracting air and other gases from a designated area, thus lowering the pressure within that area. **Types of Vacuum Pumps:** 1. **Positive Displacement Pumps**: These pumps create a vacuum by trapping a volume of gas and then expelling it from the system.
Hydraulics is a branch of engineering and physics that focuses on the behavior of fluids, particularly liquids, in motion and at rest. The fundamental concepts of hydraulics arise from the principles of fluid mechanics and are widely applied in various fields, including civil engineering, mechanical engineering, and aerospace engineering. Here are some key concepts in hydraulics: 1. **Fluid Properties**: Understanding the properties of fluids, including viscosity, density, pressure, and temperature, is essential.
Heat loss due to linear thermal bridging refers to the additional heat loss that occurs at junctions and around openings in building elements—such as walls, roofs, and floors—where two materials meet. This phenomenon occurs because the thermal resistance of the junctions is often lower than that of the surrounding materials, leading to increased heat transfer. **Key Points about Linear Thermal Bridging:** 1.

Pinned article: Introduction to the OurBigBook Project

Welcome to the OurBigBook Project! Our goal is to create the perfect publishing platform for STEM subjects, and get university-level students to write the best free STEM tutorials ever.
Everyone is welcome to create an account and play with the site: ourbigbook.com/go/register. We belive that students themselves can write amazing tutorials, but teachers are welcome too. You can write about anything you want, it doesn't have to be STEM or even educational. Silly test content is very welcome and you won't be penalized in any way. Just keep it legal!
We have two killer features:
  1. topics: topics group articles by different users with the same title, e.g. here is the topic for the "Fundamental Theorem of Calculus" ourbigbook.com/go/topic/fundamental-theorem-of-calculus
    Articles of different users are sorted by upvote within each article page. This feature is a bit like:
    • a Wikipedia where each user can have their own version of each article
    • a Q&A website like Stack Overflow, where multiple people can give their views on a given topic, and the best ones are sorted by upvote. Except you don't need to wait for someone to ask first, and any topic goes, no matter how narrow or broad
    This feature makes it possible for readers to find better explanations of any topic created by other writers. And it allows writers to create an explanation in a place that readers might actually find it.
    Figure 1.
    Screenshot of the "Derivative" topic page
    . View it live at: ourbigbook.com/go/topic/derivative
  2. local editing: you can store all your personal knowledge base content locally in a plaintext markup format that can be edited locally and published either:
    This way you can be sure that even if OurBigBook.com were to go down one day (which we have no plans to do as it is quite cheap to host!), your content will still be perfectly readable as a static site.
    Figure 2.
    You can publish local OurBigBook lightweight markup files to either https://OurBigBook.com or as a static website
    .
    Figure 3.
    Visual Studio Code extension installation
    .
    Figure 4.
    Visual Studio Code extension tree navigation
    .
    Figure 5.
    Web editor
    . You can also edit articles on the Web editor without installing anything locally.
    Video 3.
    Edit locally and publish demo
    . Source. This shows editing OurBigBook Markup and publishing it using the Visual Studio Code extension.
    Video 4.
    OurBigBook Visual Studio Code extension editing and navigation demo
    . Source.
  3. https://raw.githubusercontent.com/ourbigbook/ourbigbook-media/master/feature/x/hilbert-space-arrow.png
  4. Infinitely deep tables of contents:
    Figure 6.
    Dynamic article tree with infinitely deep table of contents
    .
    Descendant pages can also show up as toplevel e.g.: ourbigbook.com/cirosantilli/chordate-subclade
All our software is open source and hosted at: github.com/ourbigbook/ourbigbook
Further documentation can be found at: docs.ourbigbook.com
Feel free to reach our to us for any help or suggestions: docs.ourbigbook.com/#contact