.. Copyright 2003-2023 by Wilson Snyder. .. SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0 ************************ Contributors and Origins ************************ Authors ======= When possible, please instead report bugs at `Verilator Issues `_. The primary author is Wilson Snyder . Major concepts by Paul Wasson, Duane Galbi, John Coiner, Geza Lore, Yutetsu Takatsukasa, and Jie Xu. Contributors ============ Many people have provided ideas and other assistance with Verilator. Verilator is receiving significant development support from the `CHIPS Alliance `_, `Antmicro Ltd `_ and `Shunyao CAD `_. Previous major corporate sponsors of Verilator, by providing significant contributions of time or funds include: Atmel Corporation, Cavium Inc., Compaq Corporation, Digital Equipment Corporation, Embecosm Ltd., Hicamp Systems, Intel Corporation, Mindspeed Technologies Inc., MicroTune Inc., picoChip Designs Ltd., Sun Microsystems Inc., Nauticus Networks Inc., SiCortex Inc, and Shunyao CAD. The contributors of major functionality are: Krzysztof Bieganski, Byron Bradley, Jeremy Bennett, Lane Brooks, John Coiner, Duane Galbi, Geza Lore, Todd Strader, Stefan Wallentowitz, Paul Wasson, Jie Xu, and Wilson Snyder. Major testers included Jeff Dutton, Jonathon Donaldson, Ralf Karge, David Hewson, Iztok Jeras, Wim Michiels, Alex Solomatnikov, Sebastien Van Cauwenberghe, Gene Weber, and Clifford Wolf. Some of the people who have provided ideas, and feedback for Verilator include: David Addison, Tariq B. Ahmad, Nikana Anastasiadis, Vasu Arasanipalai, Jens Arm, Sharad Bagri, Matthew Ballance, Andrew Bardsley, Matthew Barr, Geoff Barrett, Kaleb Barrett, Julius Baxter, Jeremy Bennett, Michael Berman, Jean Berniolles, Victor Besyakov, Moinak Bhattacharyya, Krzysztof Bieganski, David Binderman, Piotr Binkowski, Johan Bjork, David Black, Tymoteusz Blazejczyk, Daniel Bone, Gregg Bouchard, Christopher Boumenot, Nick Bowler, Byron Bradley, Bryan Brady, Maarten De Braekeleer, Charlie Brej, J Briquet, Lane Brooks, John Brownlee, Jeff Bush, Lawrence Butcher, Tony Bybell, Iru Cai, Ted Campbell, Chris Candler, Lauren Carlson, Donal Casey, Alex Chadwick, Marcel Chang, Aliaksei Chapyzhenka, Guokai Chen, Terry Chen, Yi-Chung Chen, Enzo Chi, Robert A. Clark, Ryan Clarke, Allan Cochrane, John Coiner, Keith Colbert, Gianfranco Costamagna, Sean Cross, George Cuan, Joe DErrico, Lukasz Dalek, Gunter Dannoritzer, Ashutosh Das, Bernard Deadman, John Demme, Mike Denio, John Deroo, Philip Derrick, John Dickol, Ruben Diez, Danny Ding, Jacko Dirks, Ivan Djordjevic, Jonathon Donaldson, Larry Doolittle, Sebastian Dressler, Jonathan Drolet, Alex Duller, Jeff Dutton, Tomas Dzetkulic, Usuario Eda, Charles Eddleston, Chandan Egbert, Joe Eiler, Ahmed El-Mahmoudy, Trevor Elbourne, Mats Engstrom, Robert Farrell, Eugen Fekete, Fabrizio Ferrandi, Udi Finkelstein, Brian Flachs, Bill Flynn, Andrea Foletto, Bob Fredieu, Duane Galbi, Mostafa Gamal, Benjamin Gartner, Christian Gelinek, Richard E George, Peter Gerst, Glen Gibb, Michael Gielda, Barbara Gigerl, Shankar Giri, Dan Gisselquist, Petr Gladkikh, Sam Gladstone, Mariusz Glebocki, Andrew Goessling, Amir Gonnen, Chitlesh Goorah, Tomasz Gorochowik, Kai Gossner, Sergi Granell, Al Grant, Nathan Graybeal, Alexander Grobman, Graham Rushton, Xuan Guo, Driss Hafdi, Neil Hamilton, James Hanlon, Oyvind Harboe, Jannis Harder, Junji Hashimoto, Thomas Hawkins, Mitch Hayenga, Harald Heckmann, Robert Henry, Stephen Henry, David Hewson, Jamey Hicks, Joel Holdsworth, Andrew Holme, Hiroki Honda, Alex Hornung, Pierre-Henri Horrein, David Horton, Peter Horvath, Jae Hossell, Kuoping Hsu, Teng Huang, Steven Hugg, Alan Hunter, James Hutchinson, Ehab Ibrahim, Edgar E. Iglesias, Jamie Iles, Vighnesh Iyer, Ben Jackson, Shareef Jalloq, Marlon James, Krzysztof Jankowski, HyungKi Jeong, Iztok Jeras, Alexandre Joannou, James Johnson, Christophe Joly, Franck Jullien, James Jung, Mike Kagen, Arthur Kahlich, Kaalia Kahn, Guy-Armand Kamendje, Vasu Kandadi, Kanad Kanhere, Patricio Kaplan, Pieter Kapsenberg, Rafal Kapuscik, Ralf Karge, Per Karlsson, Dan Katz, Sol Katzman, Ian Kennedy, Michael Killough, Sun Kim, Jonathan Kimmitt, Olof Kindgren, Kevin Kiningham, Dan Kirkham, Aleksander Kiryk, Sobhan Klnv, Gernot Koch, Jack Koenig, Soon Koh, Nathan Kohagen, Steve Kolecki, Brett Koonce, Will Korteland, Wojciech Koszek, Varun Koyyalagunta, Arkadiusz Kozdra, Markus Krause, David Kravitz, Roland Kruse, Andreas Kuster, Sergey Kvachonok, Charles Eric LaForest, Ed Lander, Steve Lang, Stephane Laurent, Walter Lavino, Christian Leber, Larry Lee, Yoda Lee, Michaƫl Lefebvre, Igor Lesik, John Li, Eivind Liland, Yu Sheng Lin, Charlie Lind, Andrew Ling, Jiuyang Liu, Paul Liu, Derek Lockhart, Jake Longo, Geza Lore, Arthur Low, Stefan Ludwig, Dan Lussier, Fred Ma, Duraid Madina, Affe Mao, Julien Margetts, Mark Marshall, Alfonso Martinez, Unai Martinez-Corral, Adrien Le Masle, Yves Mathieu, Patrick Maupin, Conor McCullough, Jason McMullan, Elliot Mednick, David Metz, Wim Michiels, Miodrag Milanovic, Kevin Millis, Wai Sum Mong, Peter Monsson, Sean Moore, Dennis Muhlestein, John Murphy, Matt Myers, Nathan Myers, Richard Myers, Dimitris Nalbantis, Peter Nelson, Bob Newgard, Rachit Nigam, Paul Nitza, Yossi Nivin, Pete Nixon, Lisa Noack, Mark Nodine, Kuba Ober, Andreas Olofsson, Baltazar Ortiz, Aleksander Osman, Don Owen, James Pallister, Vassilis Papaefstathiou, Brad Parker, Morten Borup Petersen, Dan Petrisko, Maciej Piechotka, David Pierce, Cody Piersall, Michael Platzer, Dominic Plunkett, David Poole, Mike Popoloski, Roman Popov, Rich Porter, Stefan Post, Niranjan Prabhu, Damien Pretet, Usha Priyadharshini, Mark Jackson Pulver, Prateek Puri, Marshal Qiao, Nandu Raj, Kamil Rakoczy, Danilo Ramos, Drew Ranck, Chris Randall, Anton Rapp, Josh Redford, Odd Magne Reitan, Frederic Requin, Dustin Richmond, Samuel Riedel, Alberto Del Rio, Eric Rippey, Oleg Rodionov, Ludwig Rogiers, Paul Rolfe, Arjen Roodselaar, Tobias Rosenkranz, Ryszard Rozak, Huang Rui, Graham Rushton, Jan Egil Ruud, Denis Rystsov, John Sanguinetti, Martin Schmidt, Julie Schwartz, Galen Seitz, Joseph Shaker, Salman Sheikh, Hao Shi, Mike Shinkarovsky, Rafael Shirakawa, Jeffrey Short, Fan Shupei, Anderson Ignacio da Silva, Rodney Sinclair, Ameya Vikram Singh, Steven Slatter, Mladen Slijepcevic, Brian Small, Garrett Smith, Tim Snyder, Wilson Snyder, Maciej Sobkowski, Stan Sokorac, Alex Solomatnikov, Flavien Solt, Wei Song, Trefor Southwell, Martin Stadler, Art Stamness, David Stanford, John Stevenson, Pete Stevenson, Patrick Stewart, Rob Stoddard, Todd Strader, John Stroebel, Sven Stucki, Howard Su, Emerson Suguimoto, Gene Sullivan, Qingyao Sun, Renga Sundararajan, Gustav Svensk, Rupert Swarbrick, Yutetsu Takatsukasa, Thierry Tambe, Drew Taussig, Jose Tejada, Peter Tengstrand, Wesley Terpstra, Rui Terra, Stefan Thiede, Gary Thomas, Ian Thompson, Kevin Thompson, Mike Thyer, Hans Tichelaar, Viktor Tomov, Steve Tong, Topa Topino, Alex Torregrosa, Michael Tresidder, David Turner, Neil Turton, Mike Urbach, Hans Van Antwerpen, Sebastien Van Cauwenberghe, Laurens van Dam, Leendert van Doorn, Cong Van Nguyen, Jan Van Winkel, Srini Vemuri, Yuri Victorovich, Bogdan Vukobratovic, Holger Waechtler, Philipp Wagner, Stefan Wallentowitz, Shawn Wang, Zhanglei Wang, Paul Wasson, Greg Waters, Thomas Watts, Eugene Weber, David Welch, Thomas J Whatson, Martin Whitaker, Marco Widmer, Leon Wildman, Daniel Wilkerson, Gerald Williams, Trevor Williams, Jeff Winston, Joshua Wise, Clifford Wolf, Tobias Wolfel, Johan Wouters, Paul Wright, Junyi Xi, Ding Xiaoliang, Jie Xu, Mandy Xu, Yinan Xu, Luke Yang, Amir Yazdanbakhsh, Keyi Zhang, and Xi Zhang. Thanks to them, and all those we've missed mentioning above, and to those whom have wished to remain anonymous. Historical Origins ================== Verilator was conceived in 1994 by Paul Wasson at the Core Logic Group at Digital Equipment Corporation. The Verilog code that was converted to C was then merged with a C-based CPU model of the Alpha processor and simulated in a C-based environment called CCLI. In 1995 Verilator started being used for Multimedia and Network Processor development inside Digital. Duane Galbi took over the active development of Verilator, and added several performance enhancements, and CCLI was still being used as the shell. In 1998, through the efforts of existing DECies, mainly Duane Galbi, Digital graciously agreed to release the source code. (Subject to the code not being resold, which is compatible with the GNU Public License.) In 2001, Wilson Snyder took the kit, added a SystemC mode, and called it Verilator2. This was the first packaged public release. In 2002, Wilson Snyder created Verilator 3.000 by rewriting Verilator from scratch in C++. This added many optimizations, yielding about a 2-5x performance gain. In 2009, major SystemVerilog and DPI language support was added. In 2018, Verilator 4.000 was released with multithreaded support. In 2019, Verilator joined the `CHIPS Alliance `_. In 2022, Verilator 5.000 was released with IEEE scheduling semantics, fork/join, delay handling, DFG performance optimizations, and other improvements. Currently, various language features and performance enhancements are added as the need arises, focusing on completing Universal Verification Methodology (UVM, IEEE 1800.2-2017) support.