From 0ae6028c18647d095feba3b60ecd0662bdd2f6b6 Mon Sep 17 00:00:00 2001 From: Nicola Belluti Date: Wed, 22 Jan 2025 16:37:33 +0100 Subject: [PATCH] Reworded --- content/docs/introduction.md | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/content/docs/introduction.md b/content/docs/introduction.md index a922e78..a61f1b0 100644 --- a/content/docs/introduction.md +++ b/content/docs/introduction.md @@ -9,12 +9,12 @@ Patt](https://users.ece.utexas.edu/~patt/) and [Sanjay J. Patel](https://sjp.ece.illinois.edu/) to teach their students about computer architecture. -The processors in this family are extremely simple and they all feature a +The processors in this group are extremely simple and they all feature a *very* [RISC](https://en.wikipedia.org/wiki/RISC) instruction set; they all have a 16-bit address bus and a 16-bit data bus, except for the latest -architecture of the group -- the LC-3b -- which has an 8-bit data bus. +architecture of the series -- the LC-3b -- which has an 8-bit data bus. -The most famous ISA of this category is without a doubt the LC-3, the third +The most famous ISA of this family is without a doubt the LC-3, the third iteration of the architecture: on this specific ISA people made a [subreddit](https://reddit.com/r/lc3), a [Wikipedia page](https://en.wikipedia.org/wiki/Little_Computer_3), an [online @@ -24,12 +24,12 @@ using a search engine. ## Why am I doing this? The goal of this project is to make more people know about this family of ISAs, -which I believe is ideal for teaching computer architecture, operating systems -and programming languages. +which I believe is ideal for learning about computer architecture, operating +systems and programming languages. -Naturally, the focus will be on the last two ISAs of the series, the LC-3 and -LC-3b, as they are the most recent, the most comprehensive, and, in my opinion, -the most interesting. +Obviously, the focus will be on the last two iteration of the series, the LC-3 +and LC-3b, as they are the most recent, the most comprehensive, and, in my +opinion, the most interesting. ## Roadmap @@ -41,7 +41,7 @@ The first step is to create a comprehensive documentation with a lot of sources. There isn't much information available about these architectures, so it is -necessary to refer to the original books and save what can be found online +essential to refer to the original books and save what can be found online using the [WayBack Machine](https://web.archive.org/). ### ◻️ Creation of a Developement Suite @@ -51,26 +51,27 @@ tools, such as an emulator and an assembler. ### ◻️ Developement of a GUI Learning Environment -After developing the basic developement tools, we can create a graphical tool -that can replace the outdated software created by the original authors. +After developing a basic developement suite, we can create a graphical learning +environment that can replace the outdated software created by the original +authors. It would be great to create an environment where users can both write assembly and execute it, rather than having two separate apps. ### 💪🏻 Physical CPU with an FPGA -Inspired by [Ben Eater's series on the 6502](https://eater.net/6502), once the -GUI development environment is ready, we could take the program and load it -into an EEPROM to be executed by a physical copy of our CPUs! +Inspired by [Ben Eater's series on the 6502](https://eater.net/6502), we could +take the program and load it into an EEPROM to be executed by a physical +version of our CPUs, maybe on a breadboard! -Also, it would be interesting to create a motherboard with some sort of I/O -interface to enable our computer to communicate with the outside world. +It would be interesting to create a small custom motherboard with some sort of +I/O interface to enable our computer to communicate with the outside world. ### 💪🏻 Development of an LLVM Backend Let's access more modern programming languages such as C and Rust! -### 💪🏻 Creation of a UNIX-like Operating System +### 💪🏻 Creation of a small UNIX-like Operating System ### 💪🏻 Software Porting