Atlas cisc simulator

Posted by | October 11, 2009 | Uncategorized | 3 Comments

Un proiect de facultate devenit un simulator in toata regula.Atlas este un simulator pentru un procesor cu unitatea de control microprogramata. Detalii arhitecturale gasesti aici in documentatie iar programul il poti descarca de aici. Intrucat nu am inclus in documentatie un manual de utilizare am sa incerc sa explic aici modul de utilizare si mai ales utilitate lui.

Un pas esential in utilizarea simultatorului este parcurgerea documentatiei ( la urma urmei trebuie sa se inteleaga ce se simuleaza 🙂 ), trebuie sa prezicez ca am plecat de la ipoteaza ca utilizatorul este familiarizat cu conceptele fundamentale de CISC,unitate de control,registre,intrerupere etc.

A. Pasi utilizare

  • 1. Se scrie codul de asamblare ce se doreste executat apoi se apasa butonul Genereaza cod masina . Codul scris de catre utilizator este supus procesului de asamblare rezultand codul masina ce este incarcat in memorie la adresa 0x100, concomitent se reseteaza registrele si se incarca in PC adresa 0x100 (adresa primei instructiuni).
  • 2. Executia pas cu pas
  • 3. Simulatorul poate fi resetat folosind butonul Reseteaza procesor
  • 4. Pentru a genera o intreupere se introduce numarul ei si se apasa butonul Genereaza intrerupere.

B. Intereruperi.

  • Trebuie precizat faptul ca simulatorul include si facilitatea de a simula o intrerupere in timpul executie.
  • De asemenea se ofera utilizatorului posibilitatea de a-si defini propriile rutine de trarea intreruperiilor, rutine care pot fi salvate pentru a fi folosite implicit de catre simulator la fiecare rulare sau doar in timpul executiei curente.

Utilitatea simulatorului este cumva mai mult didactica, dupa cum spuneam este doar un proiect de facultate.

P.S.:Daca va intereseaza.. va pot da si sursele.


About Andrei Tara

Andrei is a developer/geek who loves creating high quality and efficient applications, always following the best practices in software engineering. He loves the challenge of learning new, exciting things and playing with new languages, frameworks, and tools.

3 Comments

  • tomitzel says:

    Chiar ma intrebam ce s-a mai intamplat cu acel simulator 🙂

  • Este un simulator la nivel func?ional sau arhitectural (adica interpreteaza codul ma?ina “direct” sau este simulata func?ionarea la nivel de schema bloc)?

  • admin says:

    Simulatorul este mai mult decat un simplu interpretor de cod asamblare… sunt de fapt automatele din procesor implementate in soft la nivel de ciclu masina (ignorand hazarduri sau mai stiu eu ce probleme apar in hard-ul real).
    Automatele sunt “alimentate” cu cod masina rezultat din asamblare a programului pe care utilizatorul il introduce.

Leave a Reply