PyMTL 3 (Mamba)
==========================================================================

[![Build Status](https://travis-ci.com/cornell-brg/pymtl3.svg?branch=master)](https://travis-ci.com/cornell-brg/pymtl3)
[![Codecov Status](https://codecov.io/gh/cornell-brg/pymtl3/branch/master/graph/badge.svg)](https://codecov.io/gh/cornell-brg/pymtl3)

PyMTL 3 (Mamba) is the latest version of PyMTL, an open-source
Python-based hardware generation, simulation, and verification framework with
multi-level hardware modeling support. The original PyMTL was introduced
at MICRO-47 in December, 2014. Please note that PyMTL 3 is currently
**beta** software that is under active development and documentation is
currently quite sparse.

In June 2019, [Keeping Computer Hardware Fast and Furious: "PyMTL is a fantastic example of what we need to jump-start the open-source hardware ecosystem…It’s a key missing link."](https://research.cornell.edu/news-features/keeping-computer-hardware-fast-and-furious "Link to the article") was featured on Cornell Research.

Tutorial
--------
We recently hold a very high quality PyMTL 3 tutorial at FCRC 2019 with 40+
researchers attended.
The code for tutorial is here https://github.com/cornell-brg/pymtl-tutorial-isca2019.
The website with all slides and link to VM is here https://www.csl.cornell.edu/pymtl2019/.
This 32-bit CentOS 7 virtualbox image includes pymtl3 and all the
open-source EDA toolchains required to complete the tutorial. 


Related publications
--------------------------------------------------------------------------

- Shunning Jiang, Christopher Torng, and Christopher Batten. _"An Open-Source Python-Based Hardware Generation, Simulation, and Verification Framework."_ First Workshop on Open-Source EDA Technology (WOSET'18) held in conjunction with ICCAD-37, Nov. 2018.

- Shunning Jiang, Berkin Ilbeyi, and Christopher Batten. _"Mamba: Closing the Performance Gap in Productive Hardware Development Frameworks."_ 55th ACM/IEEE Design Automation Conf. (DAC-55), June 2018. 

- Derek Lockhart, Gary Zibrat, and Christopher Batten. _"PyMTL: A Unified Framework for Vertically Integrated Computer Architecture Research."_ 47th ACM/IEEE Int'l Symp. on Microarchitecture (MICRO-47), Dec. 2014.


License
--------------------------------------------------------------------------

PyMTL is offered under the terms of the Open Source Initiative BSD
3-Clause License. More information about this license can be found here:

  - http://choosealicense.com/licenses/bsd-3-clause
  - http://opensource.org/licenses/BSD-3-Clause
