Sigma16 home page
Table of Contents
Sigma16 is a computer architecture designed for research and teaching in computer systems. This application provides a complete environment for programming in assembly and machine language and experimenting with the architecture.
The app runs in a web browser: just click the link in the box below. You don't need to download or install anything.
When the app runs in your browser, it will display the User Guide, which contains introductory tutorials as well as a detailed specification of the architecture, assembly language, and programming techniques. You can also access the User Guide directly, without launching the app:
This architecture is simpler than most commercial products, making it a good vehicle for teaching and experimentation:
- It is a 16-bit architecture with a simple yet powerful instruction set.
- A small core subset of the architecture is suitable for introductory teaching, and more advanced features support systems programming.
- Software tools include an assembler, linker, emulator, and IDE.
- Examples are provided that illustrate a variety of programming techniques, data structures, compilation patterns, concurrency and mutual exclusion, and more.
- There is a digital circuit that implements Sigma16. The circuit is specified at the level of logic gates and flip flops, and is expressed in Hydra, a functional computer hardware description language. Sigma16 programs can be executed using the emulator, and they can also be executed by simulating the digital circuit using the Hydra tools.
About Sigma16
- This sofware is free and open source.
- The version number is given in the running app on the Welcome tab, the User Guide, and the Options tab.
- The architecture, implementation, circuits, and examples are designed and written by John O'Donnell. See https://jtod.github.io/index.html.
- Copyright © 2023 John T. O'Donnell
- License: GNU GPL Version 3
- The implementation is available on the source repository. The app won't launch directly from the source repository; you need to click the link above on this home page to run it.
- Some components of the system, including the assembler and linker, are available as command line tools as well as on the graphical user interface provided by the web app. The command line tools require downloading and installation; see the User Guide for details.
- The full text of the license is given in the source repository in Sigma16/LICENSE.txt, as well as at https://www.gnu.org/licenses.
Sigma16 is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License, Version 3, as published by the Free Software Foundation.
Sigma16 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Sigma16. If not, see https://www.gnu.org/licenses.