Python Logic Circuit Hardware Description Language Package
-
PyCircHDL is a Python package for modeling and simulating simple Logic Circuits specifically designed for educational use in introductory computation and digital logic college level courses.
-
As such, it was primarily tuned for readability, convenience, fast learning curve, and less for speed or industrial production.
-
It is a light weight package especially designed for small scale circuits, such as those that are studied in introductory academic courses on the theory of computation and digital/electronic design.
-
Its main characteristic is that a digital circuit can be easily defined by a series of simple Python commands, rather than an external static language, which adds more overhead and inconvenience.
-
It is inteneded to be used by novice Python programmers and non-programmers (through tools such as Jupyter notebook).
-
But it allows more experienced Python programmers can make more sophisticated use with it.
-
It can be a useful companion for theoretical course on computation models and languages who wish also to engage the students with some programming experience and skills.
- It is planned to be used in such a course by the author (Hebrew book at http://samyzaf.com/afl.pdf).
- It enables students to easily model and experiment with typical logic circuits, verify circuits designs, design and test circuits, and for exercises and problem solving.
- It does provide an opportunity for students to develop and practice programming skills while covering the theoretical computation course.
-
Substantial documentation is included in the following Jupyter notebook:
- https://samyzaf.com/pycirc/pycirchdl.html
- Google Colaboratory notebook from:
- https://samyzaf.com/pycirc/pycirchdl.ipynb
- You may copy this notebook to your space and use it with Google Colaboratory or a a local Jupyter notebook.