Un simulator CPU interactiv bazat pe Java pentru utilizare în clasele introductive de organizare a computerelor Scrisă și întreținută de Dale Skrien Departamentul de Informatică Colby College Waterville ME 04901 E-mail: djskrien@colby.edu Pagina de pornire a autorului: https://cs.colby.edu/djskrien/
rezumat
CPU Sim este o aplicație Java care permite utilizatorilor să proiecteze procesoare
simple de computer la nivel de microcod și să ruleze programe în limbaj mașină sau în limbaj de asamblare pe acele procesoare prin simulare. Poate fi folosit pentru a simula o varietate de arhitecturi, inclusiv arhitecturi bazate pe acumulator, RISC sau pe stivă (cum ar fi JVM). Este un instrument util pentru instructorii care doresc ca studenții lor să obțină o expunere practică la o varietate de arhitecturi și să aibă șansa de a proiecta și implementa propriile arhitecturi și de a scrie programe în limbaj mașină și limbaj de asamblare pentru arhitecturile lor.
Cea mai nouă versiune 4 a CPU Sim este scrisă folosind pachetul
JavaFX. (Versiunea 3, care este încă disponibilă, a fost scrisă folosind pachetul Swing.) Versiunea 4 a CPU Sim ar trebui să ruleze pe orice platformă care are instalată pe ea mediul de rulare Java (JRE) versiunea 1.8.0u66 sau o versiune ulterioară a Java 1.8. , dar nu Java 9 sau Java 10. Versiunea 3 a CPU Sim ar trebui să ruleze pe orice platformă care are instalată versiunea JRE 1.5 sau ulterioară. Versiunea 4 este compatibilă cu versiunea 3, deoarece toate mașinile create în versiunea 3 pot fi încărcate și rulate în versiunea 4.
Caracteristicile ambelor versiuni 3 și 4
Aplicația CPU Sim este un mediu de dezvoltare complet integrat care include
următoarele caracteristici.
Instrumente pentru proiectarea unui CPU la nivel de transfer de registru:
o Casete de dialog pentru specificarea numărului și lățimii registrelor, matricelor de registre și RAM-urilor. o Dialoguri pentru specificarea microinstrucțiunilor (de exemplu, transferuri de biți între registre) care sunt utilizate pentru implementarea instrucțiunilor mașinii o Un dialog pentru specificarea instrucțiunilor mașinii, inclusiv: numărul de biți din fiecare instrucțiune valoarea opcode și numărul de biți pe care îl ocupă opcode numărul operanzilor și proprietățile fiecărui operand semantica fiecărei instrucțiuni (așa cum este specificată de o secvență de microinstrucțiuni) Un editor de text cu evidențiere de sintaxă pentru scrierea programelor în limbaj de asamblare Un asamblator pentru convertirea programelor de asamblare în cod de mașină pentru CPU-ul utilizatorului. Un depanator pentru pas înainte și înapoi prin execuția unor astfel de programe, inspectând și opțional schimbând starea mașinii după fiecare pas.
Caracteristici noi ale versiunii 4
Există un nou desktop principal. Registrele și matricele de registre sunt în
coloana din stânga, RAM-urile sunt în coloana din dreapta, iar editorul de limbaj de asamblare este în centru. Consola este în partea de jos. Puteți indica preferințele dvs. pentru personalizarea CPU Sim .
Există multe opțiuni pentru personalizarea mașinii curente simulate.
Puteți specifica numele, lățimea și valoarea inițială a tuturor registrelor
(afișate) și numele și valorile inițiale ale fiecăruia dintre registrele din matrice. De asemenea, puteți specifica registre ca doar pentru citire. Pentru fiecare RAM, puteți specifica un număr arbitrar de celule adresabile și puteți specifica orice număr de biți per celulă. Puteți edita aspectul instrucțiunilor mașinii și instrucțiunilor limbajului de asamblare utilizând glisarea și plasarea.
Puteți crea și edita liste de microinstrucțiuni pentru secvența de preluare
(afișată) și implementările de instrucțiuni de mașină folosind drag and drop. Există ajutor online extins cu posibilitatea de a căuta termeni specifici.
Mai multe informații despre versiunea 3
Iată câteva imagini ale casetelor de dialog, ferestrelor și meniurilor din versiunea
3 . Versiunea 3 are o versiune în limba chineză pe care versiunea 4 nu o are încă.
Descărcări
CPU Sim este gratuit.
Puteți descărca un fișier zip de 5 MB care conține versiunea 4.0.11 a
pachetului CPU Sim . Instrucțiunile de instalare Versiunea 4 explică ce se află în fișierul zip și cum să instalați și să porniți pachetul. Manualul de utilizare este disponibil prin meniul Ajutor al CPU Sim . Notă: va trebui să instalați Java Runtime Environment (JRE) versiunea 1.8.0u66 sau o versiune ulterioară pe computer.
Puteți descărca în continuare un fișier zip de 5 MB care conține versiunea 3.9.0 a
pachetului CPU Sim . Instrucțiunile de instalare Versiunea 3 explică ce se află în fișierul zip și cum să instalați și să porniți pachetul. Manualul de utilizare este disponibil prin meniul Ajutor al CPU Sim . Notă: va trebui să instalați Java Runtime Environment (JRE) versiunea 1.5 sau o versiune ulterioară pe computer.
Este disponibil și un manual al instructorului, care include exemple de proiecte de
programare și soluțiile acestora. Vă rugăm să mă contactați la djskrien@colby.edu dacă sunteți interesat de aceste materiale suplimentare.
Dacă sunteți interesat să vă uitați la codul sursă, CPU Sim este open source și este disponibil pentru descărcare pe GitHub .
În plus, există o listă de redare YouTube , creată de Anshuman Bhardwaj, care
arată cum să instalați și să rulați CPU Sim și cum să creați un nou procesor pentru simulare.