Univerzitet u Beogradu Elektrotehnički fakultet dr Nenad M. Grbanović Interaktivni Generator Vizuelnih Simulatora Digitalnih Sistema (IGoVSoDS) Priručnik za korišćenje Prvi dodatak Beograd, oktobar 2011. godine
i Sadržaj Sadržaji 1 Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice.1 1.1 Povezivanje Undefined signala na ulazni port PortModule komponente 1 1.2 Nova komponenta Sp Trans..2 1.3 Identifikacija verzije izlazne.vse datoteke.3 1.4 Snimanje i učitavanje sadržaja memorijskog modula (Export/Import).3 1.5 Tabela operacija ALU jedinice..4
Priručnik za korišćenje (Prvi dodatak) Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice 1 1 Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice U ovom dokumentu date su: promene softverskog alata IGoVSoDS (izmene urađene tokom 2011. godine) tabela operacija ALU jedinice Izmene su urađene sa ciljem da se prevaziđu najznačajnije teškoće u primeni alata, i realizovane su u četiri dela: Omogućeno je povezivanje Undefined signala na ulazni port PortModule komponente Uvedena je nova komponenta Sp Trans Uveden je sistem identifikacije verzije izlazne.vse datoteke u kojoj se čuva opis digitalne strukture koja se prikazuje i čiji rad se simulira Snimanje i učitavanje sadržaja memorijskog modula (Export/Import) U tekstu koji sledi daju se detaljan pregled učinjenih izmena i tabela operacija ALU jedinice. 1.1 Povezivanje Undefined signala na ulazni port PortModule komponente Povezivanje Undefined signala na ulazni port PortModule komponente nije dozvoljeno, jer se na ovakav port mogu povezivati samo signali koji imaju vrednost. Učinjenom izmenom omogućeno je kreiranje strukture koja, na prvi pogled izgleda kao opisana zabranjena struktura, gde je kreirani signal odmah promovisan u InPort signal (ulazni port PortModule komponente, koja bi nastala integrisanjem modula na kome se radi, u neki drugi modul). Pomenuta struktura kreira se kada se pokuša povezivanje Undefined signala na ulazni port PortModule a. Nakon pokušaja kreiranja ovakve veze, briše se kreirani Undefined signal, jer je to i dalje nedozvoljena akcija, i prikazuje se poruka kojom se korisnik obaveštava da učinjena akcija nije dozvoljena (slika 1), sa napomenom da softverski alat može da kreira strukturu koje će biti promovisana u InPort signal. Slika 1 Poruka sa pitanjem da li treba kreirati signal povezan na InPort PortModule a Ukoliko je korisnik imao nameru da kreira Undefined signal koji bi promovisao u InPort, treba da prihvati ponudu softverskog alata da se kreira pomoćna struktura koja omogućava da se uradi ono što je korisnik imao nameru da kreira. Ukoliko korisnik potvrdno odgovori, softverski alat kreira signal povezan na ulazni port PortModule a (slika 2, gde je dodat i ispis naziva kreiranog signala). Takav signal nije Undefined
Priručnik za korišćenje (Prvi dodatak) Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice 2 signal, već se kreira jedan pomoćni objekat, sa pripadajućim ulaznim i izlaznim signalima. Ulazni signal se proglašava za InPort signal, dok se izlazni signal povezuje na odabrani ulazni port PortModule a. Pomoćni objekat i njegov ulazni signal se sakrivaju i nisu vidljivi korisniku, dok se izlazni signal oblikuje kao Undefined signal povezan na odabrani ulazni port PortModule a. Preostali vidljivi signal ima izgleda i ponašanje kao da je Undefined signal. Slika 2 Signal povezan na ulazni port PortModule a, sa ispisom naziva signala U svim delovima softverskog alata gde se radi sa signalima i portovima, kreirani vidljivi signal se ponaša približno isti kao i svaki drugi signal i/ili InPort signal povezan na ulazni konektor neke komponente. U onim delovima alata, gde je realizovana zaštita kreirane strukture od nepovoljne akcije korisnika, daju se upozorenja da određena akcija nije dozvoljena, sa savetom šta treba da se uradi. Bez ikakve dodatne modifikacije kreirane strukture (slika 2), nakon snimanja opisa strukture u izlaznu.vse datoteku, i nakon integrisanja kreirane strukture u drugi modul korišćenjem funkcije Add Module/SubModule with Ports, prikazuje se modul sa jednim ulaznim portom, koji je softverski alat kreirao (slika 3). Nazivi portova (InPort1, InPort2,), koje softverski alat kreira na ovaj način, ne garantuju redosled ulaznih portova na modulu. Naziv porta kreira se tako što se nizu karaktera InPort pridružuje prvi slobodan broj, koji garantuje jedinstven naziv porta. Funkcija Canvas Menu/Port Manager omogućava podešavanje redosleda portova, kao i promenu njihovih naziva. Slika 3 Modul sa jednim ulaznim portom, koji je kreirao softverski alat IGoVSoDS 1.2 Nova komponenta Sp Trans Uvedena je komponenta Trans (Special Objects, Sp Trans), sa sledećim karakteristikama: Izlaz komponente generiše se identično kao i kod AND komponente sa dva ulaza, koja na oba ulaza ima signale iste vrednosti Dozvoljene su sve akcije koje su obezbeđene za ostale komponente: Object Menu/Expand Connectors Object Menu/Conector Not Sign Create/Delete Main Module Menu/Port Manager kreiranje InPort karakteristike za ulazni Undefined signal i OutPort karakteristike za izlazni signal Magistrala može da se poveže na ulazni konektor, ali izlazni signal nema karakteristike magistrale, već je običan izlazni signal.
Priručnik za korišćenje (Prvi dodatak) Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice 3 Nova komponenta Trans (Special Objects, Sp Trans) prikazana je na slici 4. Slika 4 Izgled komponente Trans 1.3 Identifikacija verzije izlazne.vse datoteke Softverski alat IGoVSoDS kreira izlaznu.vse datoteku u kojoj je dodat jedan slog na početku, u kome se nalazi identifikacija verzije softverskog paketa IGoVSoDS, koji je kreirao izlaznu.vse datoteku. Novija verzija softverskog alata IGoVSoDS može da čita i interpretira.vse datoteke kreirane starijim alatom, dok obrnuto nije moguće, gde se prikazuje prigodna poruka da treba instalirati noviju verziju softverskog alata IGoVSoDS. 1.4 Snimanje i učitavanje sadržaja memorijskog modula (Export/Import) Funkcija Object/Memory Module, u svim svojim granama, obezbeđuje snimanje sadržaja memorijskog modula u tekstualnu datoteku (Export Memory Content) i učitavanje sadržaja definisanog u tekstualnoj datoteci u memorijski modul (Import Memory Content). Funkcija Object/Memory Module/Memory Content File Template kreira datoteku sa opisom svih dozvoljenih zapisa koji mogu da se koriste u datoteci opisa sadržaja memorijskog modula. File: IGoVSoDS_MemoryContentFileTemplate.mem -----------------! IGoVSoDS Memory Content Template File -----------------! Every line started with '!' is comment and do not participate in loading memory procedure! Every character after '!' in any line will be ignored! Introductory clause [IGoVSoDs]=Asm! Loading memory clause! [MEM]=ClearLoadMem - clear all memory locations and load content described below [CONTENT]! [MEM]=UpdateMem - load content described below [CONTENT] without clearing any memory location [MEM]=ClearLoadMem or [MEM]=UpdateMem ---------! Starting memory content clause --------- [CONTENT]! [CONTENT] has to be last clause! Program 0100 3122! ldimm x.2, r2! r2 = 2 0101 3181! ldimm x.8, r1! r1 = 8 0102 4123! add r1, r2, r3! r3 = r1 + r2! Loading data 0150 0001! loading data! [x.0150] = 1 0151 0034! loading data! [x.0151] = 34 adrm datam! comment adrn datan! comment
Priručnik za korišćenje (Prvi dodatak) Promene u alatu IGoVSoDS (2011g) i operacije ALU jedinice 4 1.5 Tabela operacija ALU jedinice Aritmetičke operacije Logičke operacije Operacija u2 u1 u0 Rezultat rada ALU ADD 0 0 0 F = A + B + Co Cn=prenos, En=0 SUB 0 0 1 F = A B Eo Cn=0, En=prenos INC 0 1 0 F = Increment(A) + Co Cn=prenos, En=0 DEC 0 1 1 F = Decrement(B) Eo Cn=0, En=prenos AND 1 0 0 F = A and B OR 1 0 1 F = A or B ExOR 1 1 0 F = A xor B Complement 1 1 1 F = Complement(A) Tabela 1 Tabela operacija ALU jedinice