INFORMATICA 4 YU ISSN 0350-5596 ŽELITE ? dave pJdatkOT "aeznih'pođšiste- i INSTITUT "JOŽEF STEFAN jugoslavija i yu jostin INFORMATICA časopis Izdaja SVovensko društvo INFORMATIKA, 61000 Ljubljana, Jamova 39, Jugoslavija : UREDNIŠKI GDBOR: Člani: T. Alekslč, Beograd, D. Ditrakov, Skopje, P. Dra-gojiovlč, Reka, S. Hodžar, Ljubljana, B. Horvat, Maribor, À. Mandžići Sarajevo, S. Mihalić, Varaždin, S. Turk, Zagreb. Glavni in odgovorni urednik : À.P. Železnikar TEHNIČNI ODBOR: Uredniki področij: V. Batagelj- programiranje I. Bratko - umetna inteligenca D. Ćećez-Ifecmanović - informacijski sistemi M . Exel - operacijski sistemi . A. Jerman-Blažič - novice založništva B. Jerman-Blažič-Džonova -literatura in srečanja L. Lenart - procesna informatika D. Novak - mikro računalniki N. Papié - študentska vprašanja L. Pipan - terminologija B. Popovič - novice in zanimivnsti V. Rajkovič-vzgoja in izobrazil vanje M. Špegel, M. Vukobratovič - robotika P. Tancig - računalništvo v humanističnih in družbenih vedah . S. Turk - materialna oprem.i Teunični urednik : R. Murn ZALOŽNIŠKI SVET - T. Banovec, Zavod SR Slovenije za družbeno planiranje, Ljubljana A. Jerman-Blažič , Slovensko (iriištvo Informatika, Ljubljana B. klemenčič, ISKRA, Elektromehanika, Kranj S. Sakslda, Institut za sociologijo in filozofijo pri Univerzi v Ljubljani J. Virant, Fakulteta za elektrotehniko. Univerza v Ljubljani Uredništvo in uprava : 61000 Ljubljana, Institut "Jožef Stefan", Jamova 39, telefon (061) 63 261, telegram : JOSTIN, telex: 31 269 YÙ JOSTIN. Letna naročnina za delovne organizacije jè 300,00 din, za posameznika 100,00 din, prodaja posamezne številke 50,00 din. Žiro račun: 50101-678-51841 Stališče uredništva se lahko razlikuje od mnenja avtorjev. Na podlagi mnenja Republiškega sekretariata za prosveto in kulturo st. 4210-151/77 z dne 4.5.1977, je časopis INFORMATICA strokovni časopis, ki je oproščen temeljnega davka oil prometa proizvodov. Tisk : Tiskarna Kreslja, Ljubljana Grafična oprenia: Tihomir Simončlč časopis za tehnologijo PaGunalnišCva in probleme informatike časopis za računarsku tehnologiju i probleme informatike : v spisanie za tehnologija na smetanjeto i problemi od oblasta, na informatikata ; YU ISSN?0350-5596 letnik 1. 19/'"7 - št.^. R. Tomovič A .P, Železnikar M . Kovačević D.Novak VSEBINA 3 Sistemski prilaz razvoju i projokto-vanjU gradskih inform,»cioiiih sistoiiia 9 Razvoj dinamičnih ponuiilnikov za mikro računalnike J.Zupan 2 2 Kriptografija na prelomu S. Nikolić 29 Jedan postupak za tiiikroprocesorsko Ž. Tošić ostvarenje prekidačkih hinkcija V. Zgaga 32TV - Terminal za mikroračunalo D.V. Glušac 37 Neki aspekti uvodjenja komunikacione mreže on-line real-time sistema Beogradske banke N. Papié ■ 42.Univerzalni serijsko vhodno/izhodni - M . Kovačevič modul V . Batagelj 48 Kako nai-išemo pravilni mnogokotnlk? 0.U.Popov 53 Procesor za aritmetično-logičnl izrazi , . L.N. Ojordjevié 60 On N-th Root Evaluation by Iterative Mfithtxls with Parameters M.Kovačevič 63BUS Standardi 1. Bratko 66 Drugo svetovno šahovsko prvenstvo računalnikov ^ ' ' - ' 68 Tendence v razvoju mikro procesorjev 68 Novice in zanimivosti 73Literatura In srečanja 76 Avtorji NFORMATICA Journal of Computing and Informatics Published by INFORMATIKA, Slovene Society for Informatics, 61000 Ljubljana, Jamova 39, Yugoslavia EDITORIAL BOARD: T, Alekslé, Beograd, D. Bitrakov, Skopje, P. Dra-gojlović, Reka, S. Hodžar, Ljubljana, B. Horvat, Maribor, A. Mandžlć, Sarajevo, S. Mihalić, Varaždin, S, Turk, Zagreb. EDITOR-IN-CHIEF : A. P. Železnlkar volume 1. - n° -4. TECHNICAL DEPARTMENTS EDITORS : V. Batagelj - Programming I. Bratko - Artificial Intelligence D. Ćećez-Kecmanović - Information Systems M. Exel - Operating Systems A. Jerman-Blažlč - Publishers News B. Jerman-BIažiž-Džonova - Literature and Metion rate for abroad is US 3 IH for companies, and US 36 for imlividuals. Opinions expressed in the contributions aro not necessarily shared by the lùlitorial Hoard. Prinli'd by: Tiskarna Kresija, Ljubljana DESICiN: I'ihomir Simoncir H. Tomovió A .1'. Zeleznikar M . Kovačević D. Novak J . Zupan S. N i kol ir Ž , To.šir V. Zgaiia D.V. Giušnc N . Papir M . Kovačević V . Batacjelj 0.B. Popov L.N. Djoi'djević M . Kovačević 1. Kratko CONTENTS 3'A System Approach to the Development and Design of Town lnfi>i ina-tion Systems 9 Development of Dynauiic.- Memory Modules for Mii riM ompntei 22 New TriHids in Cryptdni isti podaci pa čak i čitave datoteke ponavljaju se više puta. Stoga je.prilikom analize postoječe in-formacione baze nužno voditi računa o primamim i izvedenim datotekama. Utvrđivanjem karaktera datoteka moie se razlučiti osnovna neredundantna baza podataka od redundantnih i izvedenih podataka. Ovoje vaian parametar za projektovanje infor-macionog sistema jer se izvedeni podaci najčešće ne moraju fizički generisati, već se to radi programskim paketima. Naravno, ovo je samo prvi korak ka realizaciji automatizovane informa-cione baze. U celini ona moie da se isprojektuje jedino u funkciji zahteva korisnika. d) Projektovar^e banke podataka Tennin banka podataka koristiće se za označavanje delova informacione baze sa automatskim pristupom i automatskom obradom. Ako je reč o bankama viieg reda, sa izvedenim podacima, atribut »automatskia pristup nije neophodan. Bitan preduslov za projektovanje banke podataka je poznavanje stanja, obima i strukture postojeće, polazne informacione baze. Polazna baza podataka je često neautomatizovana, sa izo-lovanim redundatnim delovima. Međutim, ona, takođe, moie da već delom bude automatizovana tako da termin postojeća (polazna) informaciona baza ne treba izjednačiti sa nultim ili niskim nivoom automatizacije. Drugi važan prethodni elemenat za projektovanje banke podataka je poznavanje aktivnosti složene organizacije i zahteva korisnika. U stvari, projektanti banke podataka, bez obzira što je njihov finalni proizvod inženjerske prirode (oprema, programski paketi), moraju da budu detaljno upoznati sa ciljevima modernizacije i novim kriterijumima optimiziranja aktivnosti složene organizacije, inače može doći do ozbiljnog nesklada između tehničkih potencijala i načina rada složene organizacije. Sto značajno može da smanji opšti efekat automatizacje. Stoga je neophodno, u ovoj. fazi projektovanja upravljačkih informacio-nih sistema, stalno paziti da se obezbedi puna saradnja stručnjaka iz oblasti informatike, pravnih i organizacionih nauka, operacionih istraživanja i drugih disciplina. Između ostalog, u glavnom projektu banke podataka treba da budu zastupljeni sledeči elementi; - Osnovni parametri opreme za smeSlaJ I obradu podataka - Izraz osnovni parametri znači da se na osnovu fiksiranih karakteristika informacione baze može prići traženju ponude za . kupovinu opreme. - Osnovni parametri za reallzac(/u distribuiranog lt\for-maclonog sistema (terminali, punktovi decentralizovane obrade podataka, telekomunikaciona mreža). - Pri današnjem slanju računarske tehnologije jedva da može bili reči o strogo centrali-zovanim informacionim sistemima složenih organizacija. Ovakva rešenja posebno su neadekvatna u našim društvenim uslovima gde odlučivanje polazi od neposrednih proizvođača i kreće se ka udruženom radu. - Programski deo - Pod ovim terminom podrazumeva se čitav sistem programskih paketa u više nivoa koji omogućaviuu smeštaj, ažuriranje, proveru tačnosti podataka i vezu između fizičke i logičke, odnosno upotrebne organizacije podataka. tCao i u slučaju opreme, u ovom delu projekta, definišu se osnovni parametri za nabavku sistema programske podrške koja realizuje postavljene zahteve korisnika banke podataka. - Propisivan/e utazno-izlaznih dokumenata - Terminalni (ulazno-izlazni) punktovi upravljačkog informacionog sistema predstavljaju, kao i kod dinamičkih sistema upravljanja, bitne elemente njihove definicije. Kod organizacionih sistema ulazi i izlazi fizički si: realizuju preko sadržaja i formata odgovarajućih dokumenata, poruka, instrukcija. S obzirom na karakter javne uprave, opštenje sa korisnicima je, po pravilu, u obliku fiksnog ü'pa dokumenata. Iz ovih razloga, neophodno je, u glavnom projektu banke podataka precizirati parametre ulazno-izlaznih dokumenata. Time se u velikoj meri stvara podloga za modernizaciju rada. Međutim, treba jasno reći da se samim projektom i usvajanjem zahteva korisnika ni izdaleka ne iscrpljuje problem modernizacije I pobolJSanja rada uprave. Ovaj deo posla treba da prate operaciona istraživanja sadašnje i nove automatizovane tehnologije rada, nove sheme obavljanja aktivnosti složene organizacije, odgovarajući interni propisi i administrativne i zakonske promene. To je vrlo složen posao, koji po obimu ne zaoštre iza projekta banke podauka u užem smislu. e) Analiza ^ikasnosti ulagafija Prilikom projektovanja uprov^ačkih informocionih sistems postoji opasna tendencija da se između informacionog sistemo i potpune automatizacije stavi znak jednakosti. U tom ^Qledu nije naodmet imati stalno pred očima efekte automatizacije u industrii. Pored svih tehničkih dostignuća, kompletna automatizacija proizvodnje, uključujući procesne raČiinare, ne odvija se bez teSkoćo. Visokoautomatizovona proizvodnja postavlja >t1o oštre zahteve počev od kvaliteta sirovina, ažurnosti kooperacije, transporta, do kompletnog ambienta u kome je fabrika locirana. Slični problemi javlj^u se i pri visokoj automatizaciji upravljačkih ifnormacionih sistema. Iz tih ranoga, moraju se uvek temeljno ispitati zahtevi korisnike u svetlosti investicionih i eksploatadonih troškova. Kao i svi projektantski poslovi, tako i ovaj zadatak podrazumeva savesno ispitivanje raznih alternativa, počev od maskimalnih pa do minimalnih zahteva korisnika. Nd osnovu ovakvih analiza treba u funkciji opštih ciljeva modernizacije složene organizacije doneti konačnu odluku o ste-penu automatizacje odgovarajućih aktivnosti. ß Veza Između automatizovanog I neautomatizo-vanog dela it\formaciom baze Imsuući u vidu da se ne može očekivati da će upravljački informadoni sistem uvek biti kompletno automatizovan, u projektu banke podataka mora se predvideti postupak kojim će se obezbediti veza između automatizovonog i neautomatizovcnog dela baze podataka. Ako se tako ne postupi, preti opasnost da se, sa gledišta korisnika, Informacioni sistem raspadne na dva dda, bez mogućnosti efikasne interakcije. Veze između automatizovanog i neautomatizovanos đslo informacionog sistema rešava se na specifičan način u svakom datom slučaju. O tome će biti više reči prilikom opisivanja Upravljačkog informacionog sistema Skupštine grada Beograda. Stoga će ovde biti navedeni samo najopštiji mehanizmi pomoću kojih se obezbeduje efikasna interakcija automatizovo-nih i neautomatizovanih delova informacione baze. U tu svrhu koristi se adekvatno razvijen sistem šifara, kao, na primer, matični broj građanina. Važnu ulogu ima detaljno isplanirana Me-tadatoteka. Azbučni katalog pojmova i Nomenklatura upravnih poslova i zadataka (odeljak 2. 3, drugi deo rada). Naravno, problemi prelaza podataka kroz graničnu liniju automatizovanog i neautomatizovanog dela informacione baze mor^u se, takođe, rešavati organizacionim merama i precizno utvrđenim proceduralnim shemama. 1. 4 Opšti problemi U prethodnom tekstu ukazano je na okvire sistemskog prilazo razvoju upravljačkog informadonog sistema. Na jednom polu procesa počinje se postavljanjem dijeva modcmizadje i optimizacije složene orgnizacije, a na drugom kraju završava se sa projektom banke podataka, organizacionim reäenjima, opero-cionim istraživanjima i analizom efikasnosti ulaganja. Deoba procesa razvoja i projek,tovanja upravljačkog informacionog sistema na faze ne bi smela nijednog trenutka đo dovede do zabune. Naime, podela na faze uslovnog je karcktsra. U praksi se projektovanje i realizacija upravljačkog informccioncs sistema odvijaju u velikoj meri paralelno, sa fazama koje ae preklapaju. U ovom pogledu se izgradnja upravljačkog informadonog sistema bitno razlikuje od konstrukcija tehničkih objs-kata gde upravo sekvencijalni karatkter projektnog i izvođačkog procesa pruža garanciju za kvalitetnu i pravovremenu realiza-dju. Sistemski prilaz razvoju upravljačkog informacionoQ cisterna otvara i neka druga pitanja teorijskog i praktičnog karok-tera. Naime, u dosadašnjem izlaganju implicitno je pretpostavljeno da je upravljanje složenom organizacijom ekvivalentno upravljanju izolovonim objektom. Već u ovoj osnovnoj pretpostavci krije se opasnost od ozbiljnih promašaja, jer se u formla-noj teoriji objekat, definisan kao sistem, posmatra kao izolovana celina. Ako između viSe realnih objekata postoje značajni intcirak-doni članovi, oni se posmatraju kao sistem sastavljen od ,viie podsistema. Tako k dolazi do modela složenog sistema, sa ulaz-no-izlaznim parovima bez interakcionih članova prema okolini. Međutim, u kojim uslovima se jedan objekat moie tretirati kao izolovana ; celina, a kada ova pretpostavka nije prihvatljiva, ostaje otvoreno pitanje u teoriji sistema i mora se reSavati pojedinačno, na početku razvoja upravljačkog informacionog sistema. Prilikom preliminarnih razmatranja o razvoju 'upravljačkog informacionog sistema za grad, polaznu tačku za primenu sistemske analize treba tražiti u stepenu decentralizacije javne uprave. Ukoliko še odlučivanje o nizu funkcija javne uprave (planiranje, obrazovanje, zdravstvo, fìnansije i drugo) obavlja na lokalnom nivou, ima smisla tretirati grad kao sistem, a ne kao podsistem centralizovane složene organizacije. U takvim uslovima vrednost sistemske analize dolazi do punog izražaja. Važno fundamentalno pitanje svake teorije složenih si-. stema je dekompozicija na podsisteme. Veliki grad se razbija na podsisteme, na manje Ili veće urbane, administrativne i upravne celine. Stepen decentralizacije vlasti zavisi od druStvenog sistema u celini, tako da se problem dekompozicije mora posmatrati u tom svetlu. Sa druge strane, srodne aktivnosti javne uprave (unutrašnji poslovi, finansije, komunalne službe i drugo) grupišu se po sektorima. Ovo takode predstavlja specicičan vid dekompozicije složenog sistema po vrsti delatnosti. U našem smislu termin dekompozicija se odnosi na razlaganje samog upravljačkog itf/irmacionog sistema na podsisteme i njihovo uklapanje u postojeću strukturu lokalne uprave. Požto je dekompozicija lokalne uprave već uslovljena društveno-organizacio-nim i drugim faktorima, ovde će isključivo biti reči o problemu dekompozicije upravljačkog informacionog si.steina unutar zadale strukture gradske uprave. Dekompozicija upravljačkog informacionog sistema izuzetno je težak zadatak. Sa glediSta teorije složenih sistema bilo bi nužno da se ustanove opSti kriterijumi i postupci dekompozicije informacionih sistema tako da se naučno mogu praviti komparacije između različitih načina dekompozicije u okviru zadatih ograničenja. Zbog složene prirode urbanih organizacija, nema teorijskih reSenja dekompozdje upravljačkog inform.acionog sistema na podsisteme. Projektantima upravljačkog informacionog sistema ostaje da zadatak rešavaju multidisciplinamo i heuristički, ft da usvojene varijante proveravaju u praksi. Navešćemo neke vrlo opäte kriterijumé za dekompoziciju upravljačkog informacionog sistema. Jedno od mogućih rešenja je tzv. sektorska dekompozicija, prema prirodi aktivnosti organa uprave (unutrašnji poslovi, obrazovanje, zdravstvo, zaštita okoline, komunalne službe itd.). Dosledna prìmena ovog kriteri-juma ima više principijelnih nedostataka. Usled većeg broja podsistema (reda 10 do 12) pojavljuju se mnogostruki redundantni' podaci, komuniciranje između podsistemskih baza podataka je složeno, a opa.snost od zatvaranja organa uprave u resorske okvire nije smanjena. Drugi način dekompozidje upravljačkog informacionog sistema sledi tokove informacija unutar gradske uprave. Termin gradska uprava, odnosno upravljanje gradom u ovom kontekstu he treba usko shvatiti. Termin označava sve institucije koje se staraju o razvoju grada i zadovoljavanju potreba njegovih stanovnika. Na primer, tokovi podataka između organa unutrašnjih poslova, istražnih i pravosudnih organa, organa za saobraćaj, su po prirodi aktivnosti mnogo intenzivniji nego sa nekim drugim institucijama. Slično je sa tokovima podataka između domova zdravlja, bolnica, zdravstvenih institucija, organizacija zdravstvenog i socijalnog osiguranja. Na osnovu analize tokova podataka mogu se formirati odgovarajući podsistemi. Prednost ovakve podele na podsisteme u odnosu na prethodni kriterijum, očigledna je. Broj podsistema dobijen primenom ovakvog kriterijuma znatno je manji, a osnovni tokovi podataka kruže u okviru funkcionalnih podsistema. Nedostatak ovakve podele je što i dalje ostaje sektorska, iako u znatno manjoj meri. Pojavljuju se ponovo nepotrebni paralelni (redundantni) podaci. Ažuriranje se obavlja na više mesta, Sto povećava verovatnoće greški i netačnog praćenja realnog slanja. Nedostatke ovakve dekompozicije načelno je moguće otkloniti uvođenjem dodatnih kriterijuma podele na podsisteme. Posebnu podelu upravljačkog ifnormacionog sistema na podsisteme moguće je izvršiti na osnovu dekompozicije prema tzv. generatorima podataka. U ovom prilazu traže se osnovni subjekti koji generiraju podatke relevantne za upravljanje gradom. U krajnjoj liniji, stanje grada kao objekta upravljanja može se pratiti na osnovu podataka koje generiraju svojom egzi- , stendjom i aktivnošću građani, sve vrste organizadja koje đe-luju na njegovoj teritoriji, kao i stanje gradskog prostora (por-všinske parcele, podzmeni prostor, ekoprostor). Za svaki od ova tri genratora informacija vezuju se mnogobrojni parametri raspoređeni u datoteke baze podataka. U principu, postoji mogućnost da se svi parametri koji opisuju stanje građanina u ^nosu na gradsku upravu (identifikadoni blok, imovinska stanja^ stambena situacija, zdravstvene karakteristike i drugo) grupišu u jednom nizu oko generatora podataka. Istina, može se (jostaviti pitanje racionalnosti ovako glomaznih blokova obeležja, ali suština problema nije u tome. Ovakva vrsta dekompozidje, isključivo prema generatorima podataka, vodi suviše malo računa o prirodnoj strukturi složene organizacije. Na taj način pristup i tokovi f^ataka postaju isuviše složeni u odnosu na ustaljenu organizadonu strukturu gradske uprave. Do sada je bilo govora o monokriterijumskom načinu dekompozicije upravljačkog informadonog sistema. Radi otklanjanja pomenutih nedostataka ovog načina dekompozicije mogu se koristiti višenamenski kriterijumi podele na podsisteme. U tom pogledu poseban interes predstavlja složeni kriterijum dekompozicije »generator podataka plus tokovi podataka«. Na taj način se formiraju tri osnovna podsistema upravljačkog informacionog sistema - banka podataka o građanima, o gradskom prostoru i organizacijama, ali samo sa ključnim parametrima koji se jedinstveno ažuriraju. Ostali podaci, od stalnog interesa za pojedine grupe korisnika (zdravstvo, imovinska stanja, pros-veta i drugo) s.-ncšteni su u funkdonalnim podsistemima. Ovakvim hibridnim načinom (feÄompoz/cyedobijaseefikasan pristup informacionoj bazi, a odgovarajući blokovi podataka vezuju za najčešće korisnike i njihove načine obrade. Ovo izlaganje nije imalo za cilj da detaljno analizira optimalna reSenJa dekompozicije upravljačkog informacionog sistema. Kao što je rečeno, pri današnjem stanju teorije i prakse gradskih informacionih sistema, optimalna dekompozidja je stvar lokalnih uslova i heurističkih metoda. Cilj je bio da se ukaže na neke moguće kriterijume dekompozicije upravljačkih informacionih sistema, kao i njihove glavne odlike. Završavaji'ći uvodni deo o sistemskom prilazu razvoju gradskih upravljačkih informacionih sistema treba posebno naglasiti značaj je inog faktoi a čiji se uticaj često neopravdano potcenjuje. Reč je o rukovođenju projektovanjem i realizacijom upravljačkih informacionih sistema. Uloga ovog faktora je višestruka. Pre svega, rukovođenje je bitan uslov uspeha svakog muliidisciplinarnog posla, pogotovo tamo gde u projektovanju učestvuju stručnjaci vrlo raznovrsnih profila. Osim toga, interakcija izmi-đu tehnike, načina rada organizacije, kadrovskih problema i ciljeva modernizacije uprave je tako tesna da zanemarivanje bilo koje karike u lancu dovodi do neefikasnosti, pa i neupseha ceiog poduhvata. Ni najbolja oprema informacionog sistema ne može da, sama po sebi. izmeni statutarne i zakonske propise koji morajii da prate proces promene tehnologije rada i načina odlučivanja gradske uprave. Imajući u vidu sve ove činjenice može se istaći nekoliko opštih principa za rukovođenje projektovanjem i realizacijom upravljačkih Informacionih sistema.NcracIonalno je da sve faze i sve aspekte posla, obavlja sama organizacija koja se automati-zuje. Ona mora da koristi stručnjake i institucije sa strane. Međutim, neophodno je, ako se želi u tehnologiju rada. U određenoj fazi posla mora se, takode,'prići vertikalnoj or-ganizaciii rukovođenja izgradnjom upravljačkog informacionog' sistema. Naime, u trenutku kada prevođenje uprave na novi način rada zahvati više sektora, a nova tehnička baza upravljačkog informacionog sistema počne da se pušta u rad, pogodno je pored ostalih tela formirati i operativno rukovodstvo na najvišem nivou organizacije, koje može da kompetentno i brzo rešava sva stručna, organizaciona i druga pitanja u vezi sa realizacijom upravljačkog informacionog sistema. Jasno je da samim navođenjem elemenata sistemske analize upravljaikog informacionog sistema ne reSava pitanje celis-hodnosti i relativne prednosti formalne teorije sistema u ovoj objasti primene. Ocena o vrednosti sistemske analize u odrede-noj'dblasti primene moie se dati samo na osnovu proučavanja niza karakterističnih sluč^eva. Stoga su u drugom delu izlaganja izneti rezultati viSegc^injeg rada na razvoju upravljačkog informacionog sistema SkupStine grada Beograda. Međutim, i pre iznoSenja praktičnih rezultata, treba primetiti da se, ako ništa drugo, sistemskim prilazom obezbeđuje jasnije sagledavanje svih relevantnih multidisciplinarnih i društvenih faktora od kojih zavisi krajnji uspeh celog poduhvata. Sistemski prilaz ul"i-zuje, takode, ha osnovna principijelne i metodološke alternative koje se javljaju u razvoju ovog sistema. Več i sam izraz projektovanje i izj^adnja upravljačkog informacionog sistema ima u nekim svojim crtama sasvim drugačiji karakter nego u tehnici. Kod tehničkih objekata jasno se razlikuju uzastopne faze idejnog projekta, glavnog projekta i izgradnje. Međutim, prilikom realizacije upravljačkog informacionog sistema ne mogu se jasno odvojiti faze projektovanja, modernizacije, uprave i automatizacije. Staviše, one se prepliću u većoj ili manjoj meri. Najzad, ne može se govoriti ni o završetku izgradnje ovakvog sistema. Grad, kao i sve ljudske organizacije, stalno evoluira, tako Ja se ctlj>^i modernizacije i način upravljanja ne mogu fiksirati jednom zauvek. Prema lome, termini projektovanje i izgradnja upravljačkog informaaonog sistema odnose se na uvođenje odredenog stepena automatizacije aktivnosti složene organizacije, s tim što se u znatno većoj meri nego pri izgradnji tehničkih objekata ovde otvara proces kontinual-nog prilagođavanja evoluciji grada. monografija nema veće ambicije neßo äto je refieno. Pogotovu ne treba smatrati da se njome izriču bilo kakve konačne oceite o upravljačkom informacionom sistemu Beograda. Međutim, ocis što je do sade urađeno ukazuje da se išlo ispravnim putem i Ua su učii^jeni originalni doprinosi razvoju gradskih informadonih sistema u na8im uslovima. Pri oceni uspeha i neuspeha u izgradnji upravljačkog informacionog sistemo Beograda treba imati no umu da je bilo moguće vrio malo ili nikako iskoristiti tuđa iskustvo, jer je grad Beograd zojednica opštino i poseìjno samoupravna društveno-politička zajednica. 1 To3ik>w<ć K; Kcjpluo J.; Contro) of Loros Syosomo; trrado ojtđ psr-opscUvd. Utüvsraity of Cdiforato, Ua Anadea, UC8-A-ENO-770I, Jcnuory 1977. Informatica št. 4 letnik 1977 razvoj dinamičnih pomni -Inikov za mikro računalnike a. p. železnikar m. kovačevič d. novak udk 681.3 - 181.4.06, Odsek za raSunalništvo in informatiko Institut Jožef Stefan, Ljubljania Članek se:ukvarja ai-splošniml problemi razvoja modulov z dinamičnimi pomnilniki, ki uporabljajo naSin multipleksiranja naslovov ter prikazuje konkretne rešitve za mi-kroraSunalniske sisteme s procesorji P8, 6800 in Z 80. Najprej je opisana osnovna zgradba 16 pinskega dinamičnega pomnilnika za 4k in I6k bitov in prikazani so časovni diagrami teh dinamičnih pomnilnikov z njihovimi kritičnimi točkami. Članek obravnava u-skljajevanje časovnih diagramov oziroma signalov, ko imamo na eni strani zahteve mikro-računalniškega sistema, na drugi strani pa karakteristike pomnilnih čipov. Podrobna krmilna vezja modulov za sisteme z P8, 6800 in Z 80 so prikazana na slikah 5, 6 in 7 in opisana je natančna shema razvoja pomnilnega modula. Dan Je tudi testimi program za sisteme z Z 80, s katerim je mogoče diverzno preizkusiti poljubni pomnilni blòk. Posebni napotki za konstrukterja z analizo kritičnih mest so zbrani na koncu članka. Development of Dynamic Memory Modules fot Microcomputers. This article deals with general proDlems of dynamic memory modules development using chips with address multiplexing and presents some practical solutions for systems basing on F8, 6800 and Z 80 microprocessors. Plret, the structure of a 16 pin dynamic memory for 4k and l6k bytes is described and time diagrams for signals of these memories are analysed. The article deals with according of time diagrams and signals, respectively, when one has the microcomputer demands on one and the characterletlcs of memory chips on the other hand. Detailed control circuits od memory modules for P8, 6800 and Z 80 systems are presented in Pig. 5, 6 and 7 and an exact scheme of module development Is described by pseudocode. A testing program for memories in Z 80 systems is given which enables a diversity test of a given memory block. Particular Instructions for module engineering with analyses of critical problems are gathered at the end of this article. 1. Uvod Integrirana dinamična pomnilna vezja se intenzivno uporabljajo v različnih mikroracu-nalniških sistemih. Ta vezja (kratko pomnilni Sipi ali okrajšano PČ), ki jih uporabljamo pri gradnji posebnih pomnilnih sestavov, tako imenovanih pomnllnlških modulov, imajo naslovijive celice, v katerih se shranjujejo stanja posameznih bitov. Število celic oziroma bitnih lokacij bo v vseh naših primerih, tj. v enem PČ, vedno ali 4096 ali 16384; v prvem primeru bomo govorili o 4k PČ, v drugem primeru pa o I6k PC (črka "k" pomeni "kilo"). Večkrat bomo govorili kar o dinamičnih 4k ali l6k.RAM (Random Access Memory) pomnilnikih. V članku obravnavana snov je skrbno izbrana in je posledica,, Izkušenj pri lastnem razvoju vrste pomnllnlških modulov z dinamičnimi PČ. Pri tem ivelja poudariti, da bodo izbrani koncepti pomnllnlških modulov močno odvisni od uporabe določenega mikro procesorja (npr. P8, Intel 8080, Z 80, MC 6800 ltn.)j ti mikro procesorji Imajo različne kontrolne signale, ki krmilijo delovanje pomnllnlških modulov. Nekateri procesorji imajo že dobršen del t.i. os-veževalnega vezja za dinamične pomnilnike (n.;v pr. Z 80), a katerimi se Izvaja osveževanje vsebine v dinamičnih celicah PČ, Druge mikro- procesorske družine razpolagajo s posebnimi vmesniki za dinamične pomnilnike (npr. integrirano vezje DMI v družini P8), ki izvajajo sicer dokaj zapleteno koordinacijo osveževanja. Pri procesorju MC 6800 je moj.nih več. načinov osveževanja PČ, npr. s podaljševanjem polperiode sistemskega takta oziroma z Izvajanjem o-aveževanja v "neaktivni" polperlodi sistemskega takta (skrito osveževanje;. Prva metoda zahteva t.i. način zaviranja takta, druga pa dovolj hitre PČ oziroma krmilno vezje, ki lahko Izkoristi pomnilni cikel PČ. Pri procesorju 8080 (in tudi pri 6800) je moč uporabiti posebna, univerzalna integrirana vezja, ki generi-rajo osveževalni naslov v osveževalnl fazi in opravljajo hkrati funkcijo multipleksiranja naslovov v vpisovalnih in citalnih fazah. V naših razmerah dostikrat ne razpolagamo s temi posebnimi, povezovalnimi Integriranimi vezji. V takih primerih lahko zgradimo povezovalni del med naslovnim, podatkovnim in kontrolnim vodilom na eni strani in takolmenovano matriko PČ na drugi stràni, z navadnimi TTL in -MOS vezji. To pa zahteva obvladanje načrtovanja digitalnih vezij in določeno eksperimentiranje, saj moramo razen logičnih zahtev realizirati tudi časovne pogoje, ki jih postavlja na eni strani dani mikro procesor, na drugi strani pa izbrani tip dinamičnega PČ. 10 «ÜRITE- RAS- 15 CßS- TAKT«! 6EHE-QATOQ & 1 JT ÖUIIIPLEUSI-ßAöl TAKItJI 6EQERA10Q waTni BEtiE-QAIOB © ž 1 ao. al, a2. a3-> O a4. ss SzS as. ab. MUUlPlEKSBI PREKLOPHm PISAIUA URA VHOOtll VMEStlltt DATA in , 2 Ol IZHOOHI VHEStJIS DATA OU? 14 I -lo ikeomk: POMHIIHA MATRIKA na VZBUJEVAIHIH/ OSVEÌEVAIHIH ojaCevaihikov POMtllltlA HATRIKA HEME CEIICE Si UHU 2A ---STOIPCE---- STOLPOI Koomom t: S4 la/ouT PODATKI IZOlIiA 100 2 POOATtlOV-aiH VODIl Slika lo Zgradba I6k-bit-nega pomnilnega čipa (npro MK 4116)5 pri 4k pomnilnem 5ipu je na sponki 13 signal CS- Članek prikazuje najprej osnovne podatke o zgradbi dinamičnega pomnilnika (PC), analizira prikladnost časovnih diagramov in pogoje za zanesljivo delovanje pomnilnika» pokaže osnovne probleme usklajevanja zahtev mikro procesorja in PC, obravnava konkretna vezja za dinamične fomnilnike v povezavi z mikroprocesorskimi dru-Inami PS, 6800 in Z 80, opisuje preizkušanje izgotovljenlh pomnilniških modulov (z osciloskopom in testimo programsko opremo), ter navaja napotke konstrukterju, ki mu pomagajo do uspešne izdelave specifičnega dinamičnega pomnilnega modula v mikroraSunalniškem sistemu. 2. Osnovna zgradba dinamičnega pomnilnika Zgradbo PČ oziroma njegovo bločno shemo ai bomo ogledali z namenom, da bi lažje razumeli delovanje PC, in sicer tako logično kot časovno, Razumevanje časovnega delovanja bo zlasti pomembno pri izbiri različnih alternativ generiranja krmilnih signalov in s tem konkretnega delovanja modula. Poudarimo takoj, da je moč realizirati pravilno delovanje PC z različnimi časovnimi zaporedji (različnimi kombinacijami) in časo^imi oblikami krmilnih signalov pri danem PC. Ogledali si bomo le bločno zgradbo I6k dinamičnega pomnilnika (slika 1), ki je integrirano vezje s 16 nožlcami ozirom 16 pini (glej sliko 2). Tako vesje uporablja način aa= stavljanja naslovov s multlpleksiranjsEi. Pri 4k pomnilnikih pošljemo najprej 6 naslovnih bitov in za njimi nadaljnih 6 bitov preko 6 pi-nov (sponk) v vezje. Pri I6k pomnilnikih liaa= mo dva zaporedna naslovaa paketa po 7 bitov, 4k oziroma I6k RAM PC ima tele krmiln® signala (znak minus, tj, za Imenom signala pomeni- da je logična vrednost "O" aktivna vr®-dnost, "+" za imenom pa, da je logična vrednost "1" aktivna vrednost)s (pomen5 Row Address Strobes negativa® fronta signala RAS- začne prenašati prvih 6 ali 7 naslovnih bitov ali toälo vrstični naslov v poseben register PCj signal RAS- traja do konca vpisovalno, izpiaovalne in osvežitvsns operacije) (pomen: Column Address Strobej negativan fronta signala CAS- začne prenašati nE>= slednjih 6 ali 7 naslovnih bitov ali t, in Stolpni naslov v poseben register PCj signal CAS- mora trajati p?! klasičnih pomnilnih vezjih praktično natanko tako dolgo kot signal RAS-, tj, v mejäh ozkih časovnih toleranc) (pomen: Chip Selects nizka vrednost signala CS- povzroči aktiviranj© 4k PČ p^i vpisu in čitanju{ I6k PC iraa na tem mostu naslovni pin A6+) RAS- CAS- CS-oz. A6+ TIMING DIAGRAMS RSAD CYCLE REAO-WRITE/HEAO-MODIFY-WRITE CYCLE HAS V|, WRITE CYCLE (EARLY WRITE) OOUT «OUT Von , Vol -RAS ONLY" REFRESH CYCLE •.May ch«no« LOW-IO-HIGH Slika 3. Časovni diagrami za I6k pomnilni Sip, pri štirih tipičnih režimih 12 Voo 1 C 0 31® Vag 0,n zc ] 13 CAS räSlTE 3 C ] 11 OouT RSŠ «C ]13 55 flo 3C ]I2 A J fls 6C ]ll Ao Ö, rt 310 Äa VoB eC ] B Vcc Voa 1 C »0» Oltl eC lis £ÄÖ WRÌTI 9C JI« OoUT BAŠ «C ]IS Ao "o st ]I2 «i oc ]M Ao TC ]» Ao v„ ot 30 Vce Slika 2 o Razpored signalov na pomnilnih 5i-plh za 4k in I6k bitov ra- do A5<-oz o »1+ Pri dinamičnih I6k RAM pomnilnikih" gnala CS-c, ker je ta nožica PC (pomen! Writes z nizko TOeno8t;Jo eignala WR- se opravi vpis v PC, z visoko vrednostjo pa Sitanje vsebine iz PC) (pomen; Address Bit z ustreznim indeksom; zunanje vezje poskrbi, da je ob pojavu signala RAS- na razpolago prvih lest oz» sedem naslovnih bitov, ob pojavu signala CAS- pa še preostalih Šest oz. sedem naslovnih bitov) (pomen: Data Inj signal DI+ prihaja iz procesorja po podatkovnem vodilu in bit DI+ se zaSne vpisovati v PC z negativno fronto signala WR- ali eignala CAS-, tj» s tisto od obeh front, ki se je pojavila kot zadnja, seveda ob prisotnosti ostalih signalov, tj, RAS-, CS-) D0+ (pomen: Data Out? Signal D0+ prihaja iz PC in se v ustreznem trenutku preko posebnega vmesnika odda na podatkovno vp-' dllo mlkro računalnika, seveda pri Iz. . polnjeni?',, ostalih pogojih) Signali RAS-, CAS-, CS-, ra-, A0+ «., A6+, DI+ in D0+ so standardni za dinamične ram pomnilnike, kl uporabljajo metodo adresnega multlpleksiranja. Iklh nimamo si-potrebna za na-daljni naslovni bit. Na sllkl 1 je prikazana le groba zgradba PC za I6k bitov. Iz te slike lahko na določen način pojasnimo delovanje PÖ, saj je iz sheme razvidna groba logična odvisnost krmilnih, naslovnih in podatkovnih signalov. Razlika med bločnima vezavama za 4k in I6k PC je minimalna« Večjo razliko imamo med dvema tipoma 4k PC, in sicer med t,l, klasičnim In starejšim (MCM 6604, MK 4096, P 409^ DC) ter td. razširlji-vlm in novejšim 4k RAM pomnilnikom (MK 4027)? slednji tip je namreč razširljiv oziroma zamenljiv s 16k RAM pomnilnikom (npr. MK 4116, P 16 K itn.), če ustrezno spremenimo povezavo na nožico a6+. Novejša pomnilna vezja v mlkro računalnikih so navadno tako konstruirana, da je s minimalnim ožičevanjem možno uporabiti 4k ali I6k PC. 3. ^Časovni diagrami dinamičnih pomnilnikov Poznavanje časovnih diagramov signalov PČ oziroma njihovih odvisnosti j^e odločilno pri izbiri različnih signalnih kombinacij v konkretnih primerih uporabe, ko povezujemo pomnilna polja z mlkroracunalniškim sistemom. Časovna zaporednost, logična odvisnost signalov in njihovo traj anjQ nudijo vrsto možnosti, kako se najceneje dosežejo sistemske zahteve, V večjih sistemih je pri načrtovanju in razvoju dinamičnih pomnilnih vezij potrebno upoštevati tudi probleme motenj in z njimi povezano zanesljivo delovanje dinamičnega pomnilnika, V časovnih diagramih moramo pri določeni uporabi upoštevati zaporednost signalov RAS-, MUX+, CAS-, CS-, WR- in še nekaterih pomožnih signalov (npr. D0E-) ter njihovo vzročnost. Navadno se pri določenih zunanjih pogojih generira najprej signal RAS-, ta pa sproži skladno s časovnimi karakteristikami PC in zahtevami sistema nekatere od preje naštetih signalov. Tu imamo namreč na voljo več možnosti. Npr, pri določenih pogojih sme biti signal CS- (Izbira PČ pri 4k RAM) ves čas aktiven, pa tudi signal CAS- je lahko prisoten v vsaki sistemski takt-= ni periodi, v kateri ni osveževanja PC, Podobno lahko velja tudi za signal MOX+ oziroma MUX-. Pri zaporedju signalov CAS- in WR- pa moramo biti previdni. Kadar zahtevamo kratek pomnilni cikel, se mora signal WR- pri vpisovanju podatka v PC pojaviti pred ali kvečjemu istočasno s signalom CAS-. To pa vselej ni mogoče, npr, tedaj, ko se podatkovni signali iz centralnoga procesorja pojavijo proti koncu zadevne periode; v tem primeru je celotni pomnilni cikel daljši od cikla z obratnim vrstnim redom nastanka signalov CAS- in WR-. Na sliki 3 imamo časovne diagrame za I6k PČ (P 16 K), In sicer za štiri tipične režime: čitalnl, pisalni (z zgodnjim vpisom), čitalno-plsalni oziroma modiflciml in osveževalni cikel z RAS- kot edinim signalom. Pri tem velja opozoriti na tele kritične, značilne situacije s 1. Obstaja bistvena, kvalitativna signalna razlilča med 4k klasičnimi, razširijiviml in l6k PČ, Ta razlika se zrcali v cenejši izvedbi krmilnega vezja za I6k in 4k razširijive pč (ne-glede ha mlkro procesor) ter v njihovem zano-sljivejšem obratovanju zaradi manj kritičnih pogojev ob nastopanju signalnih front, READ DATA FROM MEMORY OR PERIPHERALS Ađdr,ci 5TV Prom MPU o.d V Dato Prom Memory or Porlphorolo Dato Not V.lld WRITE IN MEMORV OR PERIPHERALS Slika 4, Časovni diagrami sa čitalni in pisalni cikel mlkro procesorja KlasiSen 4k PÖ je s stallšSa krmilnega vez;)a najbolj zahteven. Ena izmed najbolj kri-tiSnih zahtev je, da morata biti pozitivni , fronti (konSnl fronti) signalov RAS- in CAS-praktično poravnani. Pri nekaterih PC (npr. Pairchild)' sme biti dopustna toleranca le enosmerna (-20 ns), pri veSini PC pa se dopušča toleranca med -50 in +50 ns. Krmilno vezje mora tako poskrbeti za čimbolj "istočasno" ugasnitev signalov RAS- in CAS-. Pri razšlrljivih 4k PČ obstaja znatna razlika med ciklom z zgodnjim (tj^^) in poznim (tg^g) pisalnim signalom WR- (npr. pri MK 4027-4) ; ta razlika znese tudi do 30^, kar pomeni, da je PC s poznim čltalnlm signalom precej počasnejši. Pri 16k PC je razlika med tjj^ tudi tolikšna (npr. za MK 4116-4, P 16 In t RWO K-4 in P 16 K-5). Ta podatek je pomemben takrat, ko primanjkuje razpoložljivega časa in moramo zaradi tega izbrati cikel z zgodnjim pisalnim signalom. Ta nevšečnost pa odpade pri kvalitetnejših in dražjih 16 k PC ter v celoti tudi pri klasičnih 4k PC (t^^ ,= ''^rwC ^^^ 4116-2, MK 4116-3, P 16 K-2, P 16 K-3, MK 4096). 4. Osveževanje s signalom RAS- kot edinim signalom je seveda ceneno in je dopustno pri vseh 4k razšlrljivih in l6k PC. Pri nekaterih klasičnih 4k PC (tip 4096) pa tako osveževanjo , v, delovnih režimih nI vedno dopustno, ker mora prvemu čitalnemu ali pisalnemu ciklu (npr. po daljšem obdobju samega oaveževanja) nujno pred. hoditi par signalov (RAS-, CAS-)j pri teh PC je tovrstno osveževanje dopustno le v režimu mirovanja, ko želimo ohraniti podatke v dinamičnemu pomnilniku (npr. pri MK 4096) za daljše obdobje (npro preko noči, ko sistem ne obratuje). 4. Dinamični pomnilnik in mikro procesor Dinamični pomnilni modul lahko razdelimo na dva bistvena dela: kontrolno vezje In pomnilna matrika. Pri Izgradnji oziroma razvoju kontrolnega vezja moramo upoštevati dvoje: sistem; ake zahteve in lastnosti izbranega PČ v pomnilni matriki. Kontrolno vezje je tedaj vmesnik med kompleksnim sistemskim vodilom (in njegovimi lastnostmi) na eni ter Izbrano pomnilno matriko na drugi strani. Karakteristike sistemskega vodila so v veliki meri odvisne od izbranega mikro procesorja, saj je t.l, kontrolno vodilo, ki je del celotnega vodila, speljano iz mikro procesorja. Pri načrtovanju kontrolnega vezja je tedaj smiselno govoriti o usklajevanju zahtev sistema oziroma mikro procesorja in dinamične pomnilne matrike. To. usklajevanje' je največkrat vezano na dva tipa časovnih diagramov: diagrami mikro procesorja (čitalni in pisalni cikel) in diagrami Izbranega dinamičnega PC (npr. diagrami na sliki 3). Oglejmo si primer z mikro procesorjem M 6800, ko imamo časovne diagrame na sliki 4. Iz čitalnega diagrama je razvidno, da morajo biti podatki iz pomnilnika na razpolago za čitanje v mikro procesor vsaj v času T^g^ = 100 ns pred koncem taktne faze 02+ ter morajo trajati še v času Tjj = 30 ns pO prenehanju negativne fronte signala 02+. S to zahtevo je tedaj potrebno uskladiti pojav signala Dq^^j, na sliki 3 za čitalni cikel (Read Cycle). To pa pomeni, da se mora negativna fronta signala CAS- pojaviti vsaj v času t^^^, (npr. = 195 ns) pred časom ^DSB skupnem času t^^^ + Tpgg) pred ne- gativno fronto taktne faze 02+. Ob vsem tem moramo seveda upoštevati, da bo signal RAS- nastal le pri naslednjih izpolnjenih pogojih; ko je Izbran (selektljan) ustrezni segment pomnilnega prostora (dekodiranje iz naslovnih bitov); 2. ko se je pojavil signal VMA+'(Valid Memory jjdress), ki pove, da je na naslovnem vodilu veljaven naslov (to pri M 6800 časovno ni^ vedno res tedaj, ko se ukaz nadaljuje preko vec ciklov faze 02+); ' ^ 3. ko S9 je že pojavila negatiima fronta (lahkö"tudi pozitivna) signala 02+ (ta pogoj je potreben zaradi izjem v .točki'2); 4j. vsakokrat (neodvisno od točk 1,2 in 3), ko se pojavi signal odobritve, za osveževanje (Refresh Grant) dinamičnega pomnilnika. Nekoliko bolj kritičen primer iahko nastopi v pisalnem ciklu, v tem ciklu se podatek iz mikro procesorja vpisuje v pomnilnik. Eden od dodatnih pogojev je v tem primeru, da se pojavi signal R/W+, in sicer njegova negativna fronta. Torej imamo Še tole: 5. ko je pri čitanju R/W+ = 1 ter pri pisan ju~S/W+ = 0. Podatek prispe do pomnilnika šele po času ^DDV = (glej sliko 4) za pozitivno fron- to faze 02+; to pomeni, da moramo ta podatek prevzeti v pomnilnik ali z negativno fronto signala CAS- ali z negativno fronto signala VfR-, pač v odvisnosti od tega, katera ,od obeh front se je pojavila kasneje. Tu imamo tudi možnost izbire zgodnjega (vobče krajšega cikla) ali poznega signala Vffl- (vobče daljšega pisalnega ci-' kla). Ob tem moramo vedeti, da se prevzem podatka opravi s signalno fronto in da mora biti zaradi tega podatek v celoti prisoten ob prevzemu. Pri razpravi o usklajevanju signalnih zahtev mikro procesorja in PC velja poudariti, da moramo časovne diagrame (npr. na sliki 3 In sliki 4) predhodno uskladiti, tj. narisati časovni potek signalov za konkreten .primer še pred načrtom kontrolnega logičnega vezja. Primer usklajevanja časovnih diagramov z mikro računalnikom 6800 iln danim PÖ bi bil tudi najenostavnejši. Drugi mikro procesorji uporabljajo čltalne in pisalne cikle, ki se raztezajo preko več period taktne faze 0+ (npr. PB In Z 80); torej moramo s posebno pozornostjo upoštevati časovne diagrame takih mikro procesorjev. 5. Vezja za povezavo dinamičnih pomnilnikov z mikroprocesorskimi sistemi Pomnilni modul, ki je sestavljen iz kontrolnega (krmilnega) vezja in pomnilne matrike, uporablja naslednje osnovne signale: RAS-, MUX- in/ali MUX+, CAS-, WR-, CS- Tem signalom moramo dodati še nekatere specifične interne signale modula: DOE- ali D0E+, RAS0-.....RAS3i', REP- itn. Tu je DOE- (pomen: Data Output Enable) signal, ki praviloma odpira ojačevalnike s tremi stanji na podatkovno vodilo sistema. K tem signalom moramo dodati še krmilne signale mikroprocesorskega sistema; in sicer imamo: za MC 6800: VMA+, R/W+, C]:,K+ (lahko tudi več derivacij), REPG+, REPR-, AD12+, ...,AD15+; za F8 s 0+, W+, ROMC0+,...,ROMC4+J za Z 80 : MRQ-, RPSH-, RD-, WR-,'AD12+, AD15+ Prikazana vezja na slikah 5,6 in 7 so konstruirana za uporabo dinamičnih 4k ali I6k PČ; z enostavnim ozlčevanjem nekaj točk v teh vezjih dobimo tako osembitne (zložne) pomnilne module za I6k ali 64k zlogov. Pri tem vel.la tale 3 •ö O o ■HVO >•!> O •H« r^ e nH ® Ö trs S U O O P. m o d Ü o u | ■ T-a N 0} i ^ rj P- rj 4.» cr- cpus* cpur» RAS- MUX * CAS- DATA* doe- Slika 8. Časovni diagram signalov krmilnega vezja na sliki 5 v sistemu z F8 ter simbolični prikaz priključkov unj-verzalne matrike U JL-JL-u tlPI: Število hn8s2 1 74ls157 2 74ls123 2 74ls 04 1 74lsoo 3 74ls 33 1 74ls75 1 74ls74 1 74 ls83 1 74 ls 173 2 8t97 2 4096 32 skupno 49 splošna ugotovitev: če smo konstruirali vezje za uporabo klasičnih 4k PC (npr. MK 4096) naj-Blabse kvalitete (ujemanje pozitivnih front signalov RAS- in CAS-), tedaj bo vezje delovalo z vsemi 4k in I6k PC. Oglejmo si najprej pomnilno vezje v sistemu P8 na sliki 5. Za to vezje imamo časovne digrame na aliki 8. Osnovna taktna frekvenca sistema P8 je 2MHz in s to frekvenco se pojavlja signal 0+. Z dinamičnim vmesnikom ĐM1 (oznaka MK 3852) se iz sistemskih signalov 0+, W+, ROMC0+,...,R0MC4+, D0+,...,D7+ pripravijo val interni naslovni signali A0+,-... ,A15+ ter ostali signali za pogon in osveževanje dinamičnih PC v pomnilni matriki. Podatki DO0,...,]X)7 ae pri čitanju (čitanje glede na mikro procesor) vključujejo na dvosmerno podatkovno vodilo preko vmesnih registrov s tremi Izhodnimi stanji (741S173) in s pomočjo signala D0E-. Vezje ima štiri monostabilne multivibratorje (D103...., D106: 74LS123), ki oblikujejo časovno osnovo za generiranje signalov RAS-, Max+, CAS- in DATA+; s slednjim signalom se prevzemajo podatki v registra D130 in D138 (glej spredaj), časovne konstante za te štiri signale so prikazane na sliki 8: tu moramo ustrezno izbrati RC pare (R101,C101),,..,(R104,C104). Multlpleksi-ranje se opravi s hitrime preklopnikoma D102 In D113 (74LS157). Izbira 4k segmentov je določena z nastavitvijo stikala SlOl ter s seštevalnikom D124 (74LS83!) in izbiralnikom D125 (74LS42). Izbiranje l6k segmentov (pri 64k modulu) praktično ni potrebno, vendar lahko zasedemo modul s I6k pomnilnimi cipi samo delno« v tem primeru lahko izbiramo tudi I6k strani oziroma segmente. Osveževanje se izvaja avtomatično z vmesnikom DlOl, v katerem se nahaja osveževalni števnik. Osveževanje se izvaja enkrat na štiri cikle, kar v vseh primerih zadostuje. 5.2._Krmilno_vezj^e_pri_proce£orju MC_68pO Na sliki 6 imamo do skrajnosti poenostavljeno krmilno vezje za sistem z mikro procesorjem MC 6800, To enostavnost omogočata dve MOS integrirani vezji: 1. naslovni multlpleksór In osveževalni števnik za 16k dinamične RAM PČ (Intel 3242) in 2. -kontroler za diamlone pomnilnike D104 (MC 3480){ ti integrirani vezji poskrbita za vse potrebne krmilne signale,. Oa-veževalna taktna ura je realizirana z vezjem D102 ter z ustreznimi časovnimi konstantami. Signal IX)E+ nastane iz izbirnega signala modula, VMA+ in R/W+. V vezju so dosledno uporabljeni vmesni ojačevalniki s tremi izhodnimi stanji (tip 8T26). Posebnost tega krmilnega vezja je uporaba signalov CLK2+ in CLK4+, ki nista standardna In predstavljata takt z dvojno in štirikratno frekvenco osnovnega takta C1K+. Vanđar velja tu omeniti,, da no'S'o sistemsko taktno veaje XC 6875 (Motorola) generira tudi ti dve visoki taktno fazij z uporabo tega vezja se hkrätl poenostavi tudi sistemska tira v sistemu a mlkro procesorjem MC 6800. 5^o2"_Itailno_veziejprljprooe8orJu Z 80 Slika 7 kaže krmilno vezj® za pomnllniSkl modul 5 ki ee nahaja v sistemu a mikro procesorjem Z 80 o Tu imamo štiri bistvene krmilna sig-nalsi MRQ- (pomens Memory Request), RPSH- (pomen? Refresh)J RD- (poment Read) in WR- (pomens Writs). To vezje Je namenjeno le uporabi 4k PC razširljivega tipa (npr. MK 4027) ali l6k PC. Iz slike 7 Je razvidno» da se v časovnih diagramih pozitivni fronti signalov RAS- in CAS-ae ujemata. Torej klaslSnih 4k PC ne moremo u-porabitio Krmilno vezje ima zakasnilno verigo poSasnih negatorjev D106,...jD109 (74104);, s katero se doseže želena zakasnitev med signali RAS-5 mux- in CAS-. Multipleksiranje naslovov ■ se tu doseže z oJaSevalniki s tremi stanji DICI5 D113 in D120 (tip 8T97). Ti ojačevalniki 80 hkrati vmesniki med naslovnim vodilom in krmilnim vezjem. Izbiranje pomnllnlSklh strani s® opravi preko dela ojačevalnika D127 in selektorja D126 (741S139) tako, da se dvojice (pari) I = na vezjih D102, DUO, D114 in D117 povežejo na sponke XK- in YJ-, SpJ = 0,1,2,38 ki so izhodi iz vezja D126. Na ta način lahko 4k pomnilne strani razmečemo poljubno v okviru 64k pomnilnega prostora. Generiranje signala DOE- Je standardno s ta signal nastane, ko Je hkrati izbran modul (visoke naslovne linije) ter Je prisoten signal RD-, Signal WR- Je tu identičen a signalom TO- za pomnilno matriko. Vezje za prenos podatkov iz in aa dvosmerno podatkovno vodilo Je realizirano z ®naklmi ojačevalniki, kot Jih imamo pri prevzemu naslovov iz naslovnega vodila, tj, z ojačevalniki tipa 8T97 (D116, D122 in 0129). Časovni diagrami na sliki 7 (levo spodaj) kažejo medsebojno časovno signalno odvisnost. Slika S kaže grobo strukturo pomnilne matrike, ki je v vseh naših prejšnjih primerih enaka. Seznam člpov in časovni diagrami pa se nanašajo na krmilno vezje v sistemu z FS, tor®J na eliko 5. 6. Načrtovan,ja In preizkušanje pomnilnih vezil Osnovno vprašanje Je, kako načrtujemo pomnilno vezje in kako ga preizkušamo. Tukaj velja poudariti, da sta načrtovanje in preizkušanje povezana postopka, ki bi Ju preprosto lahko imanovall kar razvoj pomnilnega vezja. Razvoj predpostavlja tu določen načrt, ki upošteva specifikacije, eksperimentiranje, izpopolnjevanje načrta (revizijo), odpravljanje logičnih in vezalnih (tudi ožicevalnih) napak ter preizkušanje vezja, in sicer z elektronskimi a-paraturaml pa tudi s posebnimi testifnlmi programi, ki se izvajajo kar na goatlteljskem ai-0t©mu, Razvoj pomnilnega modula lahko todaj poteka po tejle shemi: DEVELOPMENT dinjram modul preglej in spoznaj" specifikacije uporabnika dinamičnega modulaj preglej in spoznaj zahteve primernega integriranega pomnilnega vezja (PC)j preslej in spoznaj zahteve gostiteljskega sistema z mlkro procesorjem} napiši in preizkusi program za testiranje delovanja pomnilnika v gostiteljakem mikrora-čunalnlškem sistemu; DOÜNTIL (modul deluje, tako kot Je zahtevano) nariši časovne diagrame kontrolnih signalov modula, upoštevaje zahteve integriranega dinamičnega pomnilnega vezja in zahteve sistema z mlkro proceaorjemj načrtaj logično vezje z vsemi podrobnostmi (specifikacijami, tehničnimi zahtevami)o upoštevaje časovne diagrame 5 realiziraj logično vozjs na plošci s tehniko ovijanja žic ali podobno metodo? nastavi s pomočjo osciloskopa krmilno signale modula, tako Icot jih predvidevajo .časovni diagrami (sakasnitve, signalno front®, logični pogoji)5 preizkusi modul v realnem sistemu s uporabo sistemskega monitorja (vpis in čitanja podatkov iz pomnilnika)5 preizkusi vse pomnilne celice modula z dovolj kompleksnim in zahtevnim preizkusnim programom, ki daje sporočila o naravi napaki ugotovi napake (logične, vezalna, tohnolo-ške v člpih) In predvidi njihovo odpravo g ENDDO nariši tiskano vezje (dvostransko) skladno 0 preizkušenim in pravilno delujočim vezjem in ga daj v pilotsko izdelavo 5 Izdelaj podrobno tehnično dokumentacijo (logični vezalni načrt, kosovnica, načrt a lego elementov na tiskanem vezju, opis delovanja modula, napotek za aparatumo in programsko preizkušanje modula)5 sestavi vezje na tiskani plošči ter ga dokončno preizkusi (popravi risalne napake, čq te obstajajo)5 ENDDEVEIOPMENT Ta razvojna shema tudi nakazuje preizkus pomnilnega modula npr, z osciloskopom ter skla= dno s časovnimi diagrami (npr, tistimi na slikah 7 in 8), Podrobneje pa si sedaj oglajmo šo dovolj kompleksen program za testiranje modula v konkretnem mikroračunalniškem slstemUo Obstoječi sistem Z 80-MCB razširjamo s novim l6k modulom. Dodani modul želimo preizkušati kar s tem mikroračunalniškim sistemom. Strategija preizkušanja naj bo tales pomnilni blok napolnimo•vsakokrat z določeno vsebino, nato pa v naslednjem koraku preizkusimo to ves= bino Ikako se Je vpisala v prejšnjem koraku). Vsak zlog pomnilnega bloka (8 bitov) protesti^ ramo na vso možne kombinacije, tj, s vpisom 00o 01, 02o„,., PP, Pri tem vpišemo v dva eosednja pomnilna zloga vselej koraplementarnl osembital vrednosti; s tem testiramo tudi dovolj gosto menjavo signalnih vrednosti na podatkovaem vodilu. V dani blok (glej vrstice spodaj) vpisu mo zaporedoma naslednje vzorce s 00, FP, 00, PP, ,., PP, 00, PP, 00, PE, 01, PE, 01, ... PD, 02, PD, 02, ... 02,' 02° PD,' 1.1 01, PE, 01, PE, Po vsaki vpisani vrstici pomnilnik teatiratao. Ce se vsebina osembitne celic© na ujema s pri= merjalno vrednostjo, tiskamo naslov celice, vsebino te celice in primerjalno vrednost,, Is razlike sklepamo, kateri bit dolujo napcSaOj is naslova pa,' v katerem potanilaera ss^asit-^a tak© ugotovimo, kateri pomnilni 5lp ali mesto v vezju je pokvarjeno. Ta program uporùbljesio tuđi sa občasno preizkušanje pomnilnika. Se sklope-mo, da se je morda pojavila napaka kjes» koli v pomnilnem vezju. Imejmo najprej tolo osnovno atrukör^s grama: - . PROGRAM RATETEST INCLUDE INIT DOUHTIL (B = O) LD HLjAEBEG LD A,B INCLUDE STORE LD HL,AEBEG ID A„B . . INCLUDE COMPARE EKDDO ■ INCLUDE SUCC ^ ENDPROGRAM ■ Tu je AEBEG zaSetek pomnilnega bloka, ki ga bomo preizkušali. V tem psevdo kodu smo uporabili že ukaze procesorja Z 80j podoben zapis bomo uporabljali tudi v segmentih INIT, STORE, COMPARE in SUCC. Imamo tele segmente gornjega programa: SEGMENT INIT INIT : ■ ■ LĐ IZ,AEBEG {set IX to area begin 'LD B,OOH ;resèt B LD (IX+04H),B jreset error flag LD (IX+05H),B jreset line count LD (IX+06H),B {reset heading flag LD DE,AEBEG+02;set DE to area end ^ ENDSEGMENT SEGMENT STORE STORE: LD (HL),A OR A PUSH HL SBC Hl,DE POP HL INC HL CPL A JR C,STORE~S! ENDSEGMENT SEGMENT COMPARE COMPARE : CP (HL) CALL HZ.ERMES OR A PUSH HL SBC HL,DE POP HL INC HL CPL A JR C,COMPARE-S{ ENDSEGMENT SEGMENT SUCO SUCC : LD'HL,MESS CALL MSG ID HL,(AEBEG) CALL PUTHL LD HL,ANDMES CALL MSG LD HL,(AEBEG+02) CALL PUTHL XOR A CP (IX+04H) JR Z.OKIilES LD Hl.PAILME CALL MSG JR END-Sf OKMES: LD HL,RIGHT CALL MSG END: JP MONITR ENDSEGMENT V segmentu COMPARE se pojavlja subrutina ERMES, ki opravi tole: natisne glavo sporočila o napakah, in sicer v zaporedju "naslov", "vsebina tega naslova" in "primerjalna vrednost". Torej ADDR MY AC ... . Potem tiska ta subrutina pod temi naslovi zaporedoma naslove napak z vsakokratno vrednostjo MY in AC. Imamo« SUBROUTINE ERMES ERMES: LD (IX+04H) ,OFPH ,*set error flag I'D C »A {Save compar. value AC {Store (A) {reset carry flag {Save (HL) {(HL)-(DE) negative? {reload (HL) {increment (HL) {complement (A) {if negative repeat {compare ((HL)) {if HZ go ERMES {reset carry flag {Save (HL) {(HL)-(DE) negative? {reload (HL) {increment (HL) ' {complement (A) {if negative repeat {common message {print it {print the memory { block interval J {reset A {if no failure { output success { otherwise print { error statement i {success message J {program end XOR A CP (IX+06H) JR NZ,TYPE-$ HEAD: PUSH HL LD HL.HEADMS CALL MSG POP HL LD (IX+06H),0PFH TYPE: INC (IX+05H) CALL PUTHL LD A,SPACE RST TTYWR LD A,(HI) CALL PUTA LD A,SPACE RST TTYWR LD A,C CALL PUTA LD A,SPACE RST TTYWR RST TTYWR LD A,06H CP (IX+05H) JR NZ,EERM-5f I.D (IX+05H),OOH CALL CRLP EERM: LD A,C RET ENDSUBROUTINE {reset acc {test heading flag {if NZ type error data {Otherwise { save (HL) { and print { heading row• {reload, (HL) {set he'ading flag {increment line count {print error address J " ■ ■ {print space ' {((HL)) to acc {print mem.contents OT {print apace {reload compar. value AC {print.AC f ' {print double space {test line count { for end ofc'line {if not end go EERM { otherwise clear line { count, print CR and LP {reload compar. {return value >D 12A9 102 12A9 OD OA 41 44 44 52 20 4D 59 20 41 43 20 20 41 44 12B9 44 52 20 4D 59 20 41 43 20 20 41 44 44 52 20 40 12C9 59 20 41 43 20 20 41 44 44 52 20 4D 59 20 41 43 12D9 20 20 41 44 44 52 20 4D 59 20 41 43 20 20 41 44 12E9 44 52 20 4D 59 20 41 43 OD OA 0 0 OD OA 54 48 45 I2F9 20 54 45 53 54 45 44 20 4D 45 40 4F 52 59 20 42 1309 4C 4F 43 4B 20 42 45 54 57 45 45 4E OD OA 54 48 1319 45 20 41 44 44 52 45 53 53 45 53 20 00 20 41 4E 1329 44 20 00 OD GA 49 53 20 44 45 46 45 43 54 49 56 1339 45 2E 20 47 4F 20 41 4E 41 4C 59 5A 45 20 54 48 1349 45 20 46 41 49 4C 55 52 45 20 4D 45 53 53 45 41 1359 47 45 2E DO OD OA 49 53 20 .57 4F 52 4B 49 4E 47 1369 20 50 52 4F 50 45 52 4C 59 2E 20 54' 48 45 20 46 1379 41 49 4C 55 52 45 2C OD OA 49 46 20 41 4£ 59 2C 1389 20 49 53 20 4F 55 54 53 49 44 45 20 54 48 49 53 1399 20 4D 45 4D AF 52 59 OD OA 42 4C 4F 43 4B 2E 2E 13A9 2E 00 Slika 9. Tabela sporočil programa RAMTEST, izpisana v ASCII V programu RAMTEST, se pojavljajo standardne monitorske subrutine mikro računalnika Z 80~ MCB, in sicer: MSG I naslov 04D1; ta subrutina natisne sporočilo, ki začenja na naslovu (HL) ter se v pomnilniku končuje z vrednostjo OOH oziroma z ASCII znakom "NULL"{ PUTHL: naslov 01BE{ ta subrutina natisne vsebino registra HL v obliki 4 heksadecimal-nih znakov{ TTY1VR: naslov 0020{ ta subrutina natisne ASCII znak, ki je v akumulatorju A{ PUTA : naslov 01C3{ ta subrutina natisne vsebino akumulatorja A v dveh heksadecimalnlh znakih{ CRLP : naslov 04CA; ta subrutina natisne CR in LP (pomik glave v levo in nova vrstica). Na sliki 9 imamo tabelo sporočil programa RAMTEST. Vaako sporočilo se razteza od danega naslovnega začetka do vrednosti OOH v tabeli. Sporočila so: 1207 DD 21 00 12 1257 28 08 I20B 06 00 1259 21 2C 13 120D DD 70 04 125C CD Dl 04 1210 DD 70 05 125F 18 06 1213 DD 70 06 1261 21 5D 13 1216 ED 5B 02 12 1264 CD DI 04 121A 2A 00 12 1267 C3 60 00 121D 78 126A DD 36 04 FF 121E 77 126E 4F 121F B7 126F AF 1220 E5 1270 DD BE 06 1221 ED 52 1273 20 OC 1223 El 1275 E5 122A 23 1276 21 A9 12 1225 2F 1279 CD Dl 04 1226 38 F6 127C El 1228 2A 00 12 I27D DD 36 06 FF 122B 78 1281 DD 34 05 122C BE 1284 CD BE Ol 122Đ C4 6A 12 1287 3E 20 1230 B7 1289 E7 1231 E5 128A 7E 1232 ED 52 128B CD C3 Ol 1234 El 128E 3E 20 1235 23 1290 E7 1236 2F 1291 79 1237 38 F3 1292 CD C3 Ol 1239 10 DF 1295 3E 20 123B 21 F4 12 1297 E7 123E CD Dl 04 1298 E7 1241 2A 00 12 1299 3E 06 1244 CD BE 0 1 129B DD BE 05 1247 2k 26 13 129E 20 07 124A CD Dl 04 12A0 DD 36 05 00 124D 2A 02 12 12A4 CD CA 04 1250 CD BE Ol 12A7 79 1253 AF 12A8 C9 1254 DD BE 04 Slika 10, Kodni format programa RAMTEST SUCMES: naalov 12F4; vsebina: "CR""1P"THE TESTED MEMORY BLOCK BETV/EEN"CR""LS"' the_adSresses~"Null^ ANDMES: naalov 1326? vaeblna: __AND_"NUI,L" PAIIiME: naalov 132Cj vaeblna: "CR""1P"IS DEFECTIVE, GO ANALYZE THE FAILURE MESSEAGE."BtJLi:" - - - right : naalov 135d5 vsebina: "cr""lp"is working properly. the failure, "?r""lp" ip any „"is outside thts mem0ry^cr""lp'' blö'cko ot-nüll" HEADMSj naslov 12A9; vsebina: "CR""LP"ADDR MY AC ADDR MY AC ADDR TJIY AC ADDR flff Tu smo uporabili znak za presledek. Na sliki 10 imamo program RAMTEST zapisan v kodnem (ukaznem) formatu, tako da ga ja moc skupaj s tabelo na sliki 9 naložiti v pomnilnik ter uporabiti. Slika 11 prikazuje testime primere s tem programom^ kjer vidimo obliko sporo-Sila pri uspehu ter pri napakah. 7, Posebni napotki; kritiSna mesta Ko vstavimo izgotovljeni modul v mikrora-Sunalniški sistem„ se lahko zgodi, da delovanje tega modula ne bo zanesljivo. Krajši testimi programi npr, ne bodo pokazali napake, vendar bomo lahko po določenem Sašu opazili nepredvidene in nedopustne spremembe vsebin na nekaterih pomnilnih lokacijah. Za zanesljivo delovanje pomnilnega modula je pomemben predvsem dovolj nizek nivo motenje ki nastajajo pretežno zaradi pojavljanja signalov RAS- in CAS- pri Sitanju, vpisovanju in še posebej pri osvež®-vanju. Diagram na sliki 12 je tipičen za 4-k PČ klasične vrste (MK 4096), Podobne diagrame poznamo tudi pri 4k razširijivih in I6k PČ, Iz diagramov na sliki 12 je razvidno, da je nivo motenj najnižji tudi tik pred nastopom negativne fronte (začetka) signala RAS-, Vprašanje, ki si ga tu postavimo, je, kako se je moč izogniti motilnim vplivom napajalnih tokov in doseči zanesljivo delovanje PC skozi poljubno dolgo obdobje. Poznamo dve učinkoviti metodi za zanesljivo delovanje PC, ki ju lahko uporabimo posamično ali pa tudi obe hkrati. Najprej moramo zma= njšati tokovne impulze napajanja na vodih (+12V, +5V in -5V) tako, da ustrezno blokiramo (premostimo s kondenzatorji) določene točke. Zahtevamo tudi nizkoinduktivne vode (palice) zb preje naštete tokovne vode. Uporabimo pa tudi nizkoinduktivne kondenzatorje, in sicer najmanj 10 nP na dva pomnilna čipa in najmanj 6,8 uP na osem PC, Dodatno zanesljivost dosežemo z uporabo vzorčevanja naslovnih signalov. Npr, tik pred nastopom signala RAS- (negativne fronte) poberemo naslovne bite v register (latch) in to is-formacijo iz registra (ne iz naslovnega vodile) uporabljamo potem do konca pomnilnega cikla. Dogaja se namreč lahko, da motnje iz naslovnoga vodila sistema udarjajo preko vmesnih ojačeval--nikov modula in povzročajo moteče posledice, Nadaljni korak pri kontroli zanesljivega obratovanja dinamičnega pomnilnega modula je vedba bita za kontrolo parnosti (deveti bit), s katerim lahko zaznamo eno napako v osembitnem zlogu. Ta način pa zahteva dodatni bit v pomnilniku in vezje za signalizacijo napake, ko eo npr, sproži prekinitev uporabniškega programa s sporočilom, kje je napaka nastala. Nazadnje velja še omeniti, da moramo pri 4k klasičnih PC v mejah dopustnih toleranc poravnavati pozitivne fronta signalov RAS- in CAS-, Ker praktično ne moremo dosoči popolno i- THE TESTED MEMORY BLOCK BETWEEN THE ADDRESSES 180 0 AND IBFF IS WORKING PROPERLY, THE FAILURE^ IF ANY/ IS OUTSIDE THIS MEMORY BLOCK..,> Slika 11. Primer sporočila programa RAMTEST pri uspehu in pri napakah ADDR MY AC ADDR MY AC ADDR MY AC ADDR MY AC OFFF 7E OE OFFF 7E OD OFFF 7E OC OFFF 7E OB OFFF 7E 08 OFFF 7E 07 OFFF 7E 06 OFFF 7E OS OFFF 7E 02 OFFF 7E 0 1 THE TESTED MEMORY BLOCK BETWEEN THE ADDRESSES OFFF AND 10 03 IS DEFECTIVE. GO ANALYZE THE FAILURE MESSEAGE.» ADDR MY AC OFFF 7E OA OFFF 7E 04 ADDR MY AC OFFF 7£ 09 OFFF 7E 03 (RI5) I no A12 VOLT \ '00 SUPPLY ; ia> ('-5 voltv '88 ^ supply^ 1 •. i ^ f |iOOr s/DI v / \ e - /i / j j / JI D C v «v V Slika 12. Tokovni mptilni signali pri generiranju signalov RASt in CAS- stočasnosti teh front (razlika Je mimogrede nekaj 10 ns), je pred dokon5no izdelavo modula obvezna kontrola z osciloskopom. Pri logičnem načrtovanju vezja moramo izhajati iz časovnih diagramov, ki ismo jih narisali z upoštevanjem karakteristik PC in zahtev gostiteljskega mikroračunalniSkega sistema. Pri vseh naštetih izpolnjenih pogojih za zniževanje nivoja motenj lahka dosežemo pri dinamičnem pomnilnem modulu enako stopnjo zanesljivosti, kot jo imamo pri uporabi statičnih PC. K programu RAMTEST pa povejmo tole ; kadar želimo dani pomnilni blok med heksadecimalnimi naslovi J^XjX^X^ in testirati s pro- framom RAMTEST, vstavimo ta naslova v celice 200H, ... ,1203H, in sicer tako, da imamo preslikavo 1200 X3X4 1201 1202 1203 ^2 Z monitorsko direktivo J 1207 poženemo program. Ce je pomnilni blok dolg (npr. I6k zlogov), bo trajalo testiranje tudi nekaj minut. Pri uspehu so bo sporočilo pojavilo povsem na koncu izvajanja programa, pri napaki pa ob nastanku vsake napake. Ce je iz doslej generirariega sporočila o napakah razvidna fatalna napaka^pomnilnika, prekinemo program s pritiskom na gumb za sistemski "reset", saj bi se sicer izpisovanje napak lahko povečalo preko razumne meje. Program RAMTEST je moč spremeniti tako, da dobimo namesto sporočila o numerični napaki kar sporočilo o defektnem elementu, tj. o lokaciji, na kateri se pokvarjeni čip' nahaja. Takšen način testiranja je tedajj primeren predvsem v proizvodnji, tj. tam, kjer pomnilne module sestavljamo. Literatura (1) 1977 Memory Products Catalog, Mostek Corp., Texas 1977. (2) A.P.Železnikar, I.Ozimek, M.Kovačevič, D, Novak, Programiranje mikro računalnikov s procesorjem Z80, Informatica 1 (1977), št. 2, str. 5-12. 22 Informatica št. 4 letnik 1077 kniptografija na prelomu J. župan UDK 681.3.06:003.6 Kemijski institut "Borio Kidrič" LJubljana Opisanih In razloženih je nekaj metod, ki se uporabljajo za šifriranje podatkov in sporočil. Navedena in diskutirana so merila za kvaliteto iSifrirnih algoritmov ter smernice razvoja modernih kr^'ptografsk-ih metod s pomočjo računalnikov. NEW' TRENDS IN CEYPTOGRAPHY. Some simple cryptography methods and algorithms along with new directions of research in the field of modern computer cryptography are di scribed and discussed. UVOD Kriptografija, šifriranje poročil, je nedvomno staro toliko kot pisava, s precejšnjo gotovostjo bi lahko sklepali, da Se več, saj so verjetno tudi že stari narodi skušali s ponarejenimi znaki ali signali zakriti pravi pomen sporočil. Dokazano eo prve šifre uporabljali Fenečani, za njimi Grki, Rimljani in ee kasneje Benečani (1). 8 prodorom računalniške tehnologije, posebno v zadnjih letih, na skoro vsa področja gospodarskih, socioloških, političnih, vojaških ter še mnogo drugih udejstvovanj, se je predvsem povečal pretok podatkov med posameznimi avtomatiziranimi enotami. Problemi varovanja zaupnosti, točnosti in avtentičnosti poslanih oz. sprejetih podatkov so postali osnovne zahteve vBeh uporabnikov. Varnost vsebine podatkov ni samo stvar vojaškega ali političnega pomena, prav tako se tiče bank, industrijskih obratov in laboratorijev, trgovskih mrež, patentnih pisarn, zasebnih telefonskih pogovorov ter že mnogo drugih uporabnikov sodobnih komunikacijskih sistemov. Poleg zaščite vsebine, ki je nedvomno najpo- membnejši dejavnik vsakega šifriranega sistema, je tu še problem, ki je navadno odrinjen na stran, a ni zaradi tega nič manj važen, to je avtentičnost podatkov. Avtentično je sporočilo s posebnim "pečatom" odpošil-jateija, ki prejemniku nedvomno dokazuje, da je bilo poslano iz pravega naslova. Lahko se zgodi, da vsebina niti ni toliko pomembna, kot izvor podatkov. To je npr. problem pri letaliških radarjih, zelo obremenjenih letališč, kjer je natančno določanja izvora informacij bistveno; da o vojaških potrebah niti na. govorimo. Seveda so 'na voljo tudi bolj enostavni in vsakdanji primeri, pri katerih je zaščita podatkov nujna. Vzemimo samo srednje velik računalnik, ki ga skupno uporablja nekaj ljudi. Vse njihove datoteke morajo biti načeloma zaščitene pred nedovoljenim kopiranjem, spreminjanjem, ali kaki drugačni zlorabi. Še bolje morajo biti zaščiteni statistični podatki, npr. o bolnikih in njihovih boleznih v bolnicah, življenjepisi, in podobno. Pri vse sploiinem naraščanju zmogljivosti računalniške tehnologije seveda ne smemo pozabiti, da postaja tudi odkrivanje šifer vedno laž Je. 'Postavlja se vprašanje, kdo bo zmagal v tej 'tekmi? Če predpostavljamo, da pri ogromni ^množici šifriranih podatkov nikakor ne moremo zahtevati, da ostanejo vsa šifrirana sporočila večno tajna, moramo istočasno postaviti zahtevo, dà mora biti šifrirni algori-jtem sestavljen tako, da se ga ne da razkriti, tudi, če je na voljo poljubno dolg šifriran tekst z znano vsebino. J •Če sedaj na hitro strnemo, kar smo povedali, dobimo naslednje zahteve, ki jim mora ustrezati sodoben kriptografski sistem oz. posto-.pek: - šifrirni algoritem mora biti tak, da ga z y najhitrejšimi znanimi algoritmi in z naj-2 sodobnejšo računalniško opremo ne moremo ( "zlomiti" v doglednem času (npr. v 1000 J letih), algoritem mora biti nerešljiv tudi v pri-^ meru "plain text" testa, tj. pri predpostavki, dk poznamo poljubno dolg šifrirani tekst, in r šifrirano sporočilo mora biti avtorizirano, vsebovati mora avtorjev "pečat". Vsem tem zahtevam nikakor ni lahko ustreči in šele v zadnjih letih (1976/77) se^ je z deli Diffie-a ih Hellman^^a (2) ter Rivesta (3) pokazala realna možnost, da bi v tem uspeli. SUBSTITUCIJSKE SIPHE Sem sodijo vsi šifrirni sistemi, ki zamenjujejo posamezne črke znanega teksta z drugimi žnaki v skladu z naprej določenimi pravili ali.ključem. Če.so ti, drugi znaki, -zopet črke abecede (to pot seveda z drugim pomenom) ni tajnost šifre nič manjša, znatno pa še olajša prenos šifriranega teksta z računalniki ali .teleprinterji. Med najenostavnejše substitucijske metode sodi nedvomno monoalfabetska substitucija s cikličnim premikom črk, znana pod imenom Cezarjeva šifra (1,4). Ključ K je v tem primeru ciklični premik vrste števil: O, 1, 2, 3, 4,......23, 24, 25, ki ustrezajo 26 znakom naše abecede: presledek. A, B, O, Č, ..... V, Z, Ž. če i-ti znak teksta označimo s t(i), ustrezni šifrirani znak pa z :£(i), lahko šifrirni in dešifrimi postopek s Cezarjevo šifro napišemo v obliki: šifriranje: xCi) = (t(i) + K) mod 26 (la) dešifriranje: t(i) = (x(i) - K) mod 26 (Ib) Pri tem smo fimkcijo x mod y definirali kot: . X mod y = X - y [x/y] Znak pomeni največje celo število, ki je še manjše od à. , Kljub temu, da je Cezarjeva šifra izredno enostavna in lahko zlomljiva, saj ne spremeni frekvenčne porazdelitve znakov znanega teksta, ampak jo samo ciklično premakne, je vseeno zanimiva zaradi osnovnega pristopa, ki se v izboljšani obliki uporablja tudi pri teže rešljivih polialfabetskih substitucijah. Osnovni način šifriranja s polialfabetsko substitucijo je podan v Tabeli I za primer ključa s tremi črkami. To je 5-črkovna substitucija, kjer je ključ beseda "TRI". Ključ K v tem primeru ni konstanta, ampak končna množica [kJ p elementov k(i) , i =0,1,2,.... p-1. Izraza (la) in (ib) se ustrezno izpre-menita: x(i) = (t(i) + k(i mod p)) mod 26 (2a) t(i) = (x(i) - k(i mod p)) mod 26 (2b) Tabela I Šifriranje s 5-črkovno substitucijo. Ključ je beseda "TRI". Sporočilo Ključ Šifriranje Šifra 0 16 T 21,. (16+21) mod 26 = 11 11 J B 2 R 18 ( 2+18) mod 26 = 20 20 Š Z 24 I 10 (24+10) mod 26 s 8 8 G 0 16 T 21 (16+21) mod 26 = 11 11 J R 18 R 18 (18+18) mod 26 s 10 10 I N 15 I 10 (15+10)' mod 26 = 25 • 25 Ž I 10 T 21 (10+21) mod 25 = 5 5 D K 12 R 18 (12+18) mod 26 — 4 4 Č Polialfabetska substitucija, ali z drugim imenom Vigenereova šifra je tem teže rešljiva, čim večji .je p, oz. čim daljši je ključ ' {k} . Tuckerman (5) je pokazal, da je Vigenereova šifra vedno rešljiva, če imamo na voljo najmanj 20 p znakov šifriranega teksta, V primeru, da je : a) perioda p daljša od teksta, b) da je ključ j_K| uporabljen samo enkrat in c) da znani tekst ne pride v roke dešifrantu, je Vigenerova šifra teoretično nerešljiva (6) in se imenuje Vemamov sistem. Vemamov sistem se veliko uporablja za prenos izjemno važnih informacij. Ker morata potovati šifrirani tekst in ključ do prejemnika po dveh ločenih poteh, je šifra za široko uporabo zelo neprikladna. Ideja, ki se ponuja sama od sebe, je koar-strukcija neskončno dolgega ključa {K(i) , Za to je navadno potreben generator slučajnostnih števil (GSS). Dobri algoritmi za izračun slučajnostnih števil ne dajo samo števil, ki so "slučajnostno" porazdeljene med 1 in neko maksimalno vrednostjo m, ampak poleg tega generirajo vsa ta števila, preden se ponove, na tak način, da izgleda izbor slučajnosten. Algoritma, ki generira dovolj dolgo vrsto slu-čajnostnih števil, da jo lahko v praksi imenujemo "neskončna", nikakor ni lahko konstruirati (7). Knuth (7) je pokazal, da generira lineami GSS v obliki s TCi+1) = (aT(i) + c) mod m (3) vrsto s periodo m " takrat in le takrat, ko je o lih in a mod 4 = 1. Vrednost T(0) imenujemo kal generatorja. Ker je k navadno izbran tako, da je malo manjši od števila bitov v računalniški besedi je vrsta T(i)» preden se začne ponavljati zelo dolga. S 60-bitno besedo naredimo lahko ele- mentov dolgo "slučajnostno" vrsto, preden se začne ponavljati, V nadaljevanju je opisan verjétno najboljši (6) algoritem šifriranja z neskončnim ključem, ki ga je sestavil Carroll (8) in iz- . boljšal McCarthy (9). Algoritem je osnovan na dvostopenjskem kongruentnem GSS in izmenično generira dve vrsti; S(i) , ali vrsto kali ter K(i) ali ključ. Vrednosti konstant, ki so navedene v algoritmu A, so . ' bile uporabljene pri kodiranju Turjaške Ho-zamunde (Tabela II in III). Kal je bila kratica OZMIF - Obzornik za matematiko in fiziko, interpretirana v 7-bitni ASCII codi,Vsi izračuni so bili narejeni na računalniku DEC 10, Algoritem A Al. (iniclallzacija) m -=^-2 A2. (vstavimo kal )S(0) A3, (postavimo L ) L ■=5)' A4. (izraSun S 30 .15 a -— K{i-1)+K(i-1-L) , öe je L a ■J?« n u NVh 0) Oko o Ü o •r' -P h (0 (Ol to (O ■d ß 3 U a H S o to O 4) O »H rH P< presi. A 17.32 1.52 4.81 4.03 3 = 76 8,01 0.86 1.92 4.81 3.77 B 1,92 17.52 3.83 4,15 5.91 C 0.63 8,01 2.78 3,09 3o96 C 1.29 1.92 3.87 4.07 3,83 D 2.97 0.63 3.40 3.25 3,91 £ 11.02 1.29 2,89 3,87 3.88 F 0.00 2,97 3.21 3,87 3o69 G . 1.41 11.02 3.36 4.11 3,79 H 1,06 0.00 7.74 3,91 3,81 I 5,00 1,41 6.57 3,68 3,82 J 4.50 1,06 3.82 3,95 3,84 K 2.93 5.00 3O05 3,40 3,72 L 3.56 4,50 2.81 3.56 3,86 , M 2.03 2.93 2,27 3,76 3,85 N 4.65 3,56 5o55 3,83 3o96 0 7o23 2,03 1,65 3.64 3,93 P 2.46 4.65 2,19 4.34 3,79 B 5,08 7,23 7«19 3.99 3.90 S 4.30 2.46 4.65 4.34 3,93 S 1.60 5.08 7.55 3,91 5o79 T 3.52 4,30 3.56 3.87 3,86 U 1.95 1,60 2,19 3.72 3.80 V 3.17 3,52 1.64 3,99 3.86 z 1.52 1.95 5.43 3,17 3,88 ž 0.86 3.17 3.21 3.68 3.88 Še namig za dešifriranje 3-črkovn® substi= tucije: vsota frekvenc črk T, E in I (Tabe- la II, stolpec 'v) je natanko enaka frekvenci preslèdka pri znanem tekstu (stolpec 2, 3.56+7,19+6.57=17.32). Tabela II Prvi štirje verzi Turjaške Rozamunde (a) Kodirani s tremi šiframi, (b) Cezarjeva šifra, (c) 3-črkovna substitucija in (dj algoritem ■A.' ■ ■ . a he&st stoji v turjaškem dvoru b jšotvbtrlvkbžbvzblcumgobfžršzb c cillimlždbhprčoištkt ehžnžkmh d ctjuatl očgljžpž lafuž cjogsra a vrh vz.üiguje svoj v oblake b žšjbž fkizlgbtžrlbžbrćcnmgb c piršnfžbpocnšjeicheržuiiiezh d ajactcatšsdfšotaspmšsc edo a v sehgi pri kai'tthtni mizi b žbtgpdkbsžkbmcoektekbok kb C prb fkčr kbhesvhbčhbhgbrba d mošbrvfikihrfjvhžcbkcbtorm a zbor sedi gospode žlahthe b Crèbtgì'kbirtsrpgbarcjvpgb c ršžkrb vsš žihžžzhsdiczl r d lčn ajalposekžvvsšiabtčdhk DES (Data Encription Standard) ŠIFRA Leta 1975 je NBS (National'Bureau of Standards) pripravil smernice (6) za izdelavo standardnega šifrirnega algoritma, katere- ■ ga tajnost naj ne bi bila pogojena s tajnostjo algoritma, pač pa s ključem, ki bi nudil toliko možnosti, da ga ne bi bilo mogoče odkriti, če bi hoteli preizkusiti vse možnosti. Smernice so vsebovale tudi stališče, da mora biti algoritem dostopen vsem zainteresiranim uporabnikom. Po dveh letih je bil v Federal Registru U.S. (10, 11) objavljen ustrezni algoritem, za katerega avtorji (IBM) trdijo, da ustreza vsem sodobnih zahtevam uporabnikov, kakor tudi zahtevam NBS. DES algoritem deluje'na 64-bitnem (2 52--bitni besedi) bloku teksta (8 ASCII-1968 8-bitnih znakov), in ga v skladu s 56 bitnim ključem predela v 64-bitni blok kodiranega teksta. Vsi operatorji (s, c, p. Is, e), ki nastopajo v algoritmu so standardi-? zirani in si jih lahko vsak ogleda v literaturi (12-14). Algoritem DES. (Spodnji Indeks pomeni Število hitov v beseđi> DESOl. (start DES02. (cepitev DES03. (naslednji korak DES04, (i-ti ciklieni premik) • Cd) D(l) •) B5g-.8(Kljvi5tAg4) , i O , j-It-O ) C (0) 28 ,0 (0) 28 r- ■ cipO(B5g) ) i1 + 1, 6e je i>16,>gremo k OFSO? . C(l)20-^ 1S^(C{1-1)28' 28-^13^(0(1-1)28) DES05. (skrčiteV ) K(l)5g-*-s (C(l)28/n(l)28> DES06, (gremo k DESOS". ) DES07. (nov 64-bltnl blok ) j^j + 1 , l-»-0 , če ni veö teksta STOP DES08. (permutacija p DES09. (cepitev 64 ) L(0)32,R(0)32' DESIO, (naslednji korak ) 1 + 1» Se je i ^ 16 gremo k DES14, ) L(i)32-»-R(1-1)32 DESÌI. (Izračun L(l) DES12. (izračun R(l) ) R(i)-»-algorltem R(R(l-l) ,L(l) ,K(1) ) DESI3. (gremo k DESIO. ) DES14. (Inverzna permut. ) X(j) 64-*-<"(16)32'L(16)32» DES15. (gremo k DES07. ) Algoritem R(R,L,K). (Spodnji Indeks pomeni St. bitov v besedi) Rl. (vhodni podatki R2. (razširitev R3. (logični ,XOR. R4. (cepitev R5. (akrčltev RS. (sestavitev ^32- "32 r— e — A K e(R32) 48' 1-»—O 2' .XOR.K. ''32' Ns- B^g-S— A4g.XOR.H4g C(l)g,C(2)^,...C(8)g C (B^g) - a(C(l)g) , ) D(i), za vse lils.8 ) R7. (permutacija / r^j R8, (Izračun rezultata ) R R9. (return R ) (0(1)4,0(2)4,...0(8)4) ) 32 p (E32) I,32.X0R.F32 Algoritma DES in R lahko primerjamo s pri-vzdigovanjem in mešanjem kart. DESI. DES6. pripravi 16 "kupčkov" za primešanje v skladu s ključem (K(i) so vedno enaki). V zanki DES7. DESI5. tekst, "kupček" 64-ih kart, 16 krat "privzdignemo" na dva dela L(i) in R(i). Algoritem R poskrbi za i-to zmeaanje obeh polovic skupaj z ustreznim "kupčkom" K(i). Po vsakem mešanju v algoritmu R, celotni razširjeni "kup" še skrčimo na pravo velikost. Korda bolj zanimive, kot sam algoritem, so bile reakcije in kritike, ki jih je sprožila njegova objava v Federal Registru. Najbolj očitno je bilo predvsem, da stoji za algoritmom IBM, ki je s tem zopet dosegel eno od prednosti na boju za trg. Vse firme v ZDA, ki bodo vgrajevale šifrirni soft-ware v svojo opremo, bodo "vezane" na 32-bitni blok, kar je zopet v prid IBM, Drugi, bolj resni, ugovor pa zadeva zloialjivost šifre. Marca 1976 sta Diffie in Hellman (12) kritično vzela v precep izbiro 56-tiitnega ključa in postavila vprašanje, zakaj je prišlo do te odločitve, ko bi ali 128-bitni ključ z gotovostjo pokopal vse upe deši-frantov. Sestavila sta predračun hipotetičnega računalnika, ki bi imel vgrajenih 10® specialnih chipov za paralelno preizkušanje vseh 2^® i. možnih ključev. S tehnolo- gijo iz leta 1976 je možno izdelati specialni chip, ki bi preizkusil 10® ključev v sekundi, kar bi pomenilo, da bi celotno vezje lahko pregledalo vseh 10^'^ možnosti v 10^ sekundah, tj. v približno enem dvevu. Pri ceni 10 $ na chip in pri 5 letni amortizaciji celotnega sistema, ki je obremenjeno Se s 100 % stroški za energijo in kontrolo, bi to pomenilo ceno 10000 $ za eno rešitev. Če upoštevamo, da je v povprečju mogoče priti do rešitve v pol dneva, je cena še manjša. Julija 1977 je G.B. Kolata v Science (13) objavila zanimivo informacijo, da je nad razvojem DES ves čas bedela USA (National Security Agency), ki jo je predvsem zanimal tisti del smernic NBS, ki so zagotavljale dobavo šifrirnega sistema vsem potencialnim uporabnikom. Članek citira kritike DES-a, ki trdijo, da NSA gotovo ni zainteresirana za to, da bi ZDA izvažale šifrirni algoritem, ki ga ni mogoče razkriti. Cena dešifrimega računalnika, ki sta jo navedla Diffie in Hellman je ravno tako visoka, da si jo lahko privošči vlada, ne pa privatna firma. Zanimiv je se podatek, da je predstavnik Bell Telephon Company izjavil, da je DES preveč nezanesljiv, da bi ga firma uporabljala. Delno na pritisk Diffiea in Hellmana, delno pa na rastoče zanimanje drugih računalniških strokovnjakov, sta NBB in IBM organizirali avgusta in septembra 1976 dva semi- narja, na katerih so diskutirali o varnosti DES algoritma. Medtem ko so na prvem sestanku vztrajali, da dešifrimega računalnika, kot ga opisujeta Diffie in Hellman ne bo mogoče, izdelati do 1990 leta, so strokovnjaki IBM na drugem simpoziju izjavili, da tudi IBM raziskuje možnost izdelave takega sistema do leta 1981, ki pa bi stal 10 krat toliko, kot predvidevata Diffie in Hellman, tj. 200 milijonov dolarjev. Dodatni zaključek obeh sestankov je bil še, da je algoritem DES, kljub nekaterimi pomanjkljivostim, trenutno (1976) najboljši komercialno dobavljivi šifrirni sistem. ŠIPEIENI SISTEM ZA JAVNO UPORABO Komaj slabo leto po tej ugotovitvi je Eivest s sodelavci (3) objavil izpopolnjeno inačico javnega šifrirnega sistema, kot sta ga zasnovala Diffie in Hellman (2,^). To in pa napoved, da bo HIT (Massachusetts Institute of Technology) pričel izdelovati integrirano yezje za šifriranje podatkov, ki bo delovalo na omenjenem postopku, je privedeno do takšnih posledic, da si je sistem, ki mu vsi priznavajo visoko kvaliteto, vredno ogledati. Pri zamisli Diffiea in Hellmana lahko tak sistem primerjamo z javnim telefonskim omrežjem. Vsak, ki bi želel sprejemati in oddajati šifrirana sporočila bi dobil "številko" in "telefon". "Številka" vsakega uporabnika bi bila, skupaj z njegovim imenom in naslovom, natisnjena in objavljena v javnem "telefonskem" imeniku. "Številka" so vsi parametri šifrirne funkcije, s katero lahko šifriramo poljubno sporočilo. Vsak, ki želi poslati šifrirano sporočilo nekomu, ki je naveden v "imeniku", pogleda njegovo "številko" (šifro) in kodira ter pošlje sporočilo, V primeru, da sam nima "telefona" lahko uporabi "javno govorilnico", ker je tudi funkcija, ali algoritem za šifriranje javen. Še več» vsak, ki ima "številko" oz, "telefonski priključek", lahko sporočilu doda avtoriziran "pečat", ki dokazuje, da je pošiljatelj res on. Tak, na prvi pogled, skoro nemogoči šifrirni sistem, je osnovan na tipu algoritma, ki ga Diffie in Hellman imenujeta "one-way trap function" (OWT), ali po naše enosmerna past. OWT funlccija ima naslednje lastnosti: - je enolična nad prostorom ključev : y = f^(x), k č { K I , - ima inverzno funkcijo g, tako je: g^ (f^(>:)) = f^ (g^(x)) = X, - eksistira algoritem Z, s katerim lahko za ' C i k k vsak ,k iz (_KJ izračunamo f in g , - računalniško nemogoče (v dpglednem času) je najti ali določiti funkcijo g^, ali ■ njej ekvivalentni algoritem, če poznamo samo f^ in algoritem Z. Pri predpostavki, da poznamo tak algoritem Z, ki nam določa pare f^ in g^, ki skoro za vsak k iz ustrezajo zgornjim pogojem, bi javni šifrirni sistem deloval takole: vsak uporabnik i ima dva algoritma f^ in g^. Vsi f^ so objavljeni v "imeniku", vse g^ obdrže uporabniki tajne. Z uporabo f^ lahko vsak, tudi tisti, ki nima lastne šifre, spremeni sporočilo t v šifro x in jo pošlje uporabniku i; X = f^(t) Ker je zadnji pogoj izpolnjen se ni bati, da bi kdorkoli razen lastnika funkcije g^, lahko dešifriral sporočilo: t = = gi (f^(t))= t Z dvojnim šifriranjem lahko dodatno pošiljatelj j ( lastnik "številke j") pošlje uporabniku i tudi avtorizirano sporočilo t; f^(z) = tHskt)) Ko prejemnik i dobi sporočilo x in ga prvič dešifrira z uporabo lastne funkcije g^, dobi nerazumljivo sporočilo z, ki postane smiselno šele, ko uporabi pošiljateljeve javno "številko" f^. Dejstvo, da dobi smiselno -sporočilo po uporabi prave f^, mu nedvomno dokazuje, da je sporočilo lahko poslal le uporabnik j, ki je prvič šifriral poročilo z lastnim g^. z = g^(x) = gi (f^(z)); t = f^(z) » fj(g^(ij)) Vse bi bilo lepo in prav, če bi bilo OWT funkcijo lahko določiti in najti algoritem Z. Diffie in Hellman ugotavljata, da kljub nekaterim sugestijam (2) , nista našla primerne rešitve zastavljene naloge. Kot sem že omenil že prej, so Rivest in sodelavci iz MIT lani prišli do originalne rešitve, temelječe na teoriji praštevil, ki omogoča izvedbo omenjenega sistema v vaeh podrobnostih. Še več, avgusta je bilo v reviji Scientific American objavljeno (4), da je Bivestovo poročilo (64), brezplačno na voljo vsem zainteresiranim. Istočasno je navedeno tudi, da bo integrirano vezje, ki ga namerava izdelovati MIT slonelo na 128 bit- nem ključu, ki bo zanesljivo jamčil za varnost šifre. Prav tako j è bilo objavljeno, da bo na Simpoziju o kriptologiji, napovedanem za oktober 1977 na Cornell University, pod pokroviteljstvom IEEE (Institute of Electrical and Electronics Engineers), diskusija o Eivestovem algoritmu. S tem se je stvar zapletla. NSA je posvarila IEEE, da je javna objava takih raziskav v nasprotju z Zakonom o zaščiti zaupnih tehničnih podatkov ... atomskega orožja in kriptografije (15). IEEE je predal obvestilo MIT in Stanfordu, kjer so se odvetniki takoj spravili na delo in izjavili, da sodijo, da je objava še v mejah zakona. Kljub temu je bilo razpošiljanje Rivestovega poročila ustavljeno. Reakcija na vmešavanje NSA v raziskovalno dejavnost je bila zelo hitra in Science (16) se je vprašala do kod segajo meje svobodnih raziskav ir Gelo The Kewlork Times (17) je na prvi strani postavil isto vprašanje. Za konec lahko navedem samo grobi obris Ri-vestove metode, v kolikor je bila objavljena (4, 14), saj sem tudi sam med tistimi, ki niso dobili njegovega poročila. Vsak uporabnik i objavi dve števili s^ in r^, ki služita za šifriranje do 20 znakov dolgega .bloka teksta t: i X = t" mod r Dešifriranje poteka na isti način: t = x" mod r^, pri čemer igra potenca vlogo tajne inverzne funkcije g^; r^ je produkt dveh praštevil Obe p^ in ki morata biti večji od števili s^ in sta tudi funkciji p^ in Da bi zlomili šifro, moramo najti potenco oziroma obe števili p^ in ki določata Vge tri parametre šifre: s^, r^ in Rivest ocenjuje, da je čas potreben za določitev dveh 63- bitnih praštevil, ki tvorita določen 126 bitni prodiikt, z najboljšim znanim algoritmom in z najzmoglivejšim računalnikom 4.10^5 Vsekakor dovolj. Literatura: 1. D.Kahn, The Codebreakers, Macmillan, New York, 1967 2. W.Diffie, n.E. Hellman, IEEE Trans,Infoim. Theory^, 644, (1976). 3. R.L. Rivest, A.Shamir, L.Adleman, On Digital Si^atures and Public-Key Cryptosys- tem, Technical Memo 82, MIT, April 1977. 4. H. Gardner, Scient. Am. (8), 120, (1977). 5. B. Tuckerman, IBM Report EC 2879, May (1970). 6. L.J. Hoffman, Modera Methods for Computer Security and Privacy, Prentice Hall 1977, strani 49, 59, 70-86. 7. D.E.Knuth, The Art of Computer Progra-mmins. Sec, Ed., Addison Wesley, Heading, 1973, Vol, II, s, 78, 1558. J.M. Carroll, P.M. Lelland, Security and Privacy in Computer Systems, Ed. L,J. Hoffman, Melville Pubi. Co., Los Angeles, 1973. 9, J.McCarthy, Comm. ACM 18, IJl, (1975). 10. Federal Register, 40 (52), 12134, (1975). 11. Federal Register, W (149),52395, (1975)- 12. W.Diffie,'M.E.Hellman, Comm. ACM, 164, (1976). 13. G.B. Kolata, Science, 12Z, ^^38, (1977), July 29. 14. G.B. Kolata, Science, 122, , (1977), August 1915. International Traffic in Arms Regulations, 22 CFR, 125.01 -t-ITAR, 125.01, Category XIII (b). 16. G.B. Kolata, Science, 122» 1345, (1977). 17. K.W. Brown, The New York Times, 19» Oktober 1977, stran 1. 29 Informatica št. 4 letnik 1977 jedan postupak za mikro-ppocesonko ostvanenje pnekidačkih funkcija s. nikolić ž. tošič UDK 681.3 - 181.4 Elektronski fakultet, Niä U radu je dat jedan način za predstavljanje prekidačkih funkcija pogodan za njihovo mikroprocesorsko ostvarenje. Svaki član disjunktivne normalne forme odredjen je parom (M,D). Ovaj par prža mogućnost odredjivanja vrednosti funkcije za date vrednosti nezavisno promenljivih. Postupak za ovo odredjivanje je efikasniji od postupka koji je izložen u radu /1/. A PROCESS OF SWITCHING FUNCTIONS IMPLEMENTATION BY MICROPROCESSORS. One way of representing switching functions suitable for their microprocessor implementation is given in this paper. Each member of a disjunctive normal form is determined by the pair (M,D) . This pair makes possible determining values of a function for the given values of the variables. This determing procedure is more effective than that explained in paper /1/. 1. . UVOD Mikroprocesorsko ostvarenje prekidaö-klh funkcija je sledeči problem. Data je preki-dačka funkcija, a traži se da se ona iia pogodan način predstavi u mikroprocesorskoj memoriji. Jednovrei..eno se postavlja zahtev da taj način predstavljanja o.nogući efikasan postupak za odredjivanje vrednosti.prekidačke /unkćije za date vrednosti nezavisno promenljii Ji. Rešenje se pri tome ocenjuje na osnovu veličine potrebnog memorijsJ.og prostora i brzine odredjivanja vrednosti funkcije za date virednosti nezavisno pr-. omenljivili. U radu . 111 je dato rešenje na ^osnovu minimalnih normalnih forK.i prekidačkih funkcija. Svaki član normalne forme predstavljen je sa minimalnim i maksimalnim elementom odgovara-judeg kuba. Ha osnovu relacije uredjenja temena kuba ispituje se,da li data vrednost nezavisno promenljivih pripada kubu. Shodno tome se odre-djuje vrednost prekidačke funkcije. U ovom"iradu se ^razmatira poboljšanje po stupka za mikroprocesorsko ostvarenje prekidačkih funkcija koji je izloiSen u radu |1|. Poboljšanje se sastoji u vedoj brzini odredjivanja vrednosti funkcije za datu vrednost nezavisno promenljivih pri istoj veličini potrebnog"mèmori j skog prostora. '. 2. ELEMEIJTI POSTUPKA Ovo poglavlje ukazuje na -jednu mogućnost predstavljanja proizvoda promenljivih. potpunih ili skračenih, u mikroprocesorskoj memoriji, kao i na elemente pO£tupl;a za ostvarenje prekidačkih funl;cija. Definicija 1. Proizvodu nezavisno promenljivih p = X .X . ,i j, i=l,___,n (1) pridružuje se niz M = m,. . .m .. . .m , m.tiO.li, i=l, 1 1 ni na sledeči način 0, X 1 "i - ^ - / - > i naziva se r.askom. Definicija 2. Proizvodu nezavisno promenljivih tipa (1) pridružuje se niz M* = m?.-. .m*. . .m*, mfe{0,2}, i=i, lini na sledeči način % — 0/ X .e{x .,x .) 1, X . = 1 i=l______ 1 i takodje se naziva maskom. Proizvodu tipa (1) može se pridružiti l.ub .. .. v^l f^ido.i}, 1=1,..., n} |i I pri čemu važi X. = J = v.e{0,l} X. = X . = >v . = i} i=l, X . = X . = >v . = 0 11 1 . Deilnicija3 . Maksimalni element kuba C jeste tene DeC za loje važi: = i = = o = = » i} i=i, = = >d. = O Definicija 4. Haksimalni element kuba C jeste teme GeC za koje važi; X. - i = = i = = = J) ^ - = >sr^ = O Teorema 1. Za v^ 0,1 , va- ži fee ako je v ^ M = D (2) Pri tome je M pridruženo proizvodu tipa (1) kome odgovara kub C, a A označava poUom-ponentnu I operaciju. Dokaz. Ako se proizvod tipa (1) važi i=l,...,n tada na osnovu Definicija 1 i 3, važi da V /V H i D imaju i-te komponente jednake 0. Ako za proizvod tipa (1) važi x^^l, 1=1,...,n, onda je.-na osnovu. Definicije 1, m =1, pa je i-ta komponenta V A H jednaka v^t{0,l). I i-ta komponenta u D je jednaka v^, jer sva temena kuba C-imaju iste i-te koiiiponehte za koje važi x^j'i |1|. U suprotnom vic. Teorema 2. Za V=v,... v.... v , v.e{0,I), i=J,...,nva---I 1 n ■ ji ži VeC ako i sanio ako je V V tf = G (3) pri tome je M*, na osnovu Definicije 2, pridruženo proizvodu tipa (1) kome odgovara kub C, a V označava pokomponentnu ILI operaciju. Dokaz. Ako za proizvod tipa (1) važi = I, i=l,...,n , tada na osnovu Definicije 2 i 4, važi da V V M' i G imaju i-te komponente jednake 1. Ako za proizvod tipa (1) važi x.fil, i=l,...,n, onda je na osnovu Definicije 2, m^^O, pa je i-ta komjponenta v v u' jednaka v10,1). Takodje je i-ta komponenta G jednaka v^ |l|. U suprotnpra v^c. ' Prethodne dve teoreme ukazuju na način ispitivanja da 11 je vtc. Dovoljno je da je ispunjena jedna od relacija (2) ili (3), pa se mo že tvrditi da vcc. Teorema 3. Par (n,D)((H',Gì) jednoznačno odredju je proizvod tipa (1). Dokaz. osnovu Definicije 1 (Definicije 2) M(fi*) svojim 1 (0) -komponentama ukazuje na promenljive koje su zastupljene u ovom proizvodu. Na osnovu Definicije 3 (Definicije 4) D(G) vrednošću svojih komponenata odredjuje sta nje komplementiranja ovih promenljivlh. Teorema 4. AI:o M sadrži g - Komponenata 1, onda se odnosi na proizvoda tipa (1). Dokaz. Bez uticaja na opätost dokaza, ne- ka je M ^ m ... , m ... , m ni ... .m 1 1 . q g+1 n ro^ "i, ..,g m^ = O, i=g+l Na osnovu Definicije 1, ako je u proizvodu tipa (1) promenljiva pro- izvoljno. Tor.'.e odgovaraju dva različita proizvoda tipa (1). Pošto svakom u:(i=l....,qì odgovaraju nezavisno po dva proizvoda ukupan broj različitih proizvoda je očigledno 3. POSTUPAK ZA OSTVARENJE PREKIDAČKIH FUNKCIJA Prekiđačke funkcije (...,x..., predstavljena je minimalnom dlsjunktivnom normalnom formom p^v...vp. V. P. Pri torae je p . f i=l,,.., r j proizvod tipa (1). Na osnovu Teore-iie 3 svaki član p 1=1,... r) je odredjen parom Na osnovu Teoreme 1 i parova fMj,, d^ ;,..., koji odredjuju svaki član disjunktivne normalne forme može da se odredi vrednost prekidačke funkcije za zadatu vrednost nezavisno promenljivlh V = V..V..v^, v^c{o,l], n.Pri tome se koristi sledeči postupak. 1. Na osnovu para (m.,d.> počev od i=i ispi tuje se da 11 je Ispunjen uslov f A « I (- i i .+ I i SI. 1 Sličan dijagram toka može da se formira na osnovu Teoreme 2. Ila osnovu teòren.e 4, ovde može da se . postigne, u izvesnim slučajevima, uSteda me-morijskog prostora mikroprocesorske memorije, zajedničkim korišćenjer,-. maske M za više proizvoda u disjunktivnoj normalnoj formi. ,4. ZAKLJUČAK Dat je jedan postupak za odredjivanje vrednosti prekidačke funkcije za zadatu posebnu vrednost nezavisno promenljivih. Svaki član disjunktivne normalne forme prekidačke funkcije opisan je parom podataka (m,d). Pri tome M opisuje koje su promenljive zastupljene u odgovarajudem članu, a D opisuje stanje njihovog komplementiranja. Na osnovu para (n,D) ispituje se da li posebna vrednost nezavisno promenljivih pripada kubu koji odgovara datom članu normalne forme. Shodno tome se odredjuje vrednost prekidačke funkcije. Izloženi postupak je pogodan kod mikro-procesorskog ostvarenja prekidačkih funkcija. Veličina potrebnog memorijskog prostora iznosi p = 2nr (bita) gde je: n - broj rpomenljivih prekidačke funkcije, JT - broj članova disjunktivne normalne funkcije. Zajedničkim koriščenjem m ovde se može postidi izvesna ušteda memorijskog prostora. Prosečno vreme t potrebno za odredjivanje vrednosti funkcije je , gde je t prosečno vreme izvršenja mikroprocesorskih naredbi potrebnih u ovoir. postupku. Ova vrednost prosečnog vremena važi pod uslovom da je svaki element para IH,D) sn-ešten u poseban registar mikroprocesorske memorije. 5. LITERATURA \lI A.Albau, J.FiffUeraS: AN ALGORITHM FOR BOOLEAN FUNCTION IMPLEMENTATION USING A MICROCOMPUTER, Microarchitecture' of Computer Systems, R. l-f.Hartenstein and R.Zaks, (eds.), Euromicro, North-Holland Publishing Company, 1975. 1^1 T.Aleksić: Logička sinteza digitalnih sistema, Rr^-građ, "Naučna knjiga", 1971, 32 Informatica št. 4 letnik 1977 tv-terminal za mikroračunalo V. zgaga UDK 681.3 - 181.4:681.327.13 Institut "Rudjer Bošković" Zagreb Opisana je izvedba sklopa za prikaz alfanumeričkih podataka na standardnom TV prijemniku. Novi način generiranja video-signala 1 novi način adresiranja memorije znakova bitno smanjuju broj potrebnih komponenata, a ujedno proširuju mogućnosti terminala:uz dodatak potrebne memorije dobije se repetltlvna grafika, a sklopovi dodani generatoru znakova omogućuju ispis slova č, š, ž, ć. "Cursor" se generira hardware-skl. Znakovi mogu biti bijeli na crnoj podlozi, Ili Invertirani - crni na bijeloj podlozi. Terminal je predvidjen za rad pod kontrolom procesora 8080 ili Z 80. TV-TERMINAL FOR A MICROCOMPUTER : A hardware realization for the display of alphanumeric data on a standard TV receiver Is described. A new way of video-signal generating and a new way of character memory addressing considerably reduce the number of components required. At the same time they increase terminal capacities. Vv^hen necessary memory is added, the repetitive graphic terminal can be achieved, and by some circuits added to the character generator the display of letters is accomplished,Cursor is generated by hardware. Characters can be displayed as white on a black background, or vice-versa. The terminal is designed to work under the control of microcomputer based on 8080 (or Z80) processor. UVOD Razvoj mikroračunarsklh sistema zahtjeva i paralelno razvijanje uredjaja za ulaz/Izlaz podataka. Ispis slova brojeva I specijalnih znakova na ekranu katodne cijevi (alfanumerički prikaz) svakako je vrlo pogodan način komuniciranja sa korisnikom, pogotovo ako postoji i mogućnost "crtanja" po ekranu (grafički prikaz) • Za male računarske sisteme takodjer je bitna I jednostavnost Izvedbe takvog terminala, jednostavnost povezivanja sa procesorom, i, naravno, cijena. Kako kod jednostavnijih alfanumeričkih terminala veći dio troškova otpada na samu katodnu cijev I éklojjove za otklon zrake, opravdano Je kao jedinicu za prikaz upo- . trijebiti obični TV prijemnik. Kompleksnost elektroničkih sklopova ovisi o funkcijama koje ise žele postići : rad u mikroračunarskom sistemu obično dozvoljava direktnu viSežIlnu vezu izniedju terminala 1 računala, pa otpada potreba za paralelno^-serijsklm pretvorbama. Paralelnim vezama na male udaljenosti mogu se postići vrlo vèlike brzine jDrljenosa podataka izmedju računala i terminala, pa se neke funkcije terminala (čak i generiranje cursora) mogu izvesti programom. Ovakav pristup omogućuje izradu "Inteligentnog" terminala malih dimenzija sa relativno jednostavnim elektroničkim sklopovima , koji se može ubaciti kao modul u kutiju samog mikroračunala (time naziv "terminal" u stvari gubi smisao).Najjednostavniji sklop za prikaz podataka na TV prijemniku sadrži, dakle, samo memoriju znakova M, generator znakova GZ, registar za paralelno-se-rijsku pretvorbu R, binarno brojilo za adresiranje me- morije BB, te sklop'za generiranje sinhro-impulsa S. Video signal dobije se zbrajanjem TTL-izlaza iz posmač-nog registra i sinhro-impulsa. Broj dijelova ne može biti manji, jer je prijenos podataka izmedju bilo koja dva bloka sa sl.l pre brz za današnje mikroprocesore. M GZ -N -1/ H fr-F 1 BB S A © video Sl.l. Minimalna konfiguracija Promjena ispisa na ekranu televizora postiže se promjenom sadržaja memorije znakova. U memoriji su znakovi jedan po jedan spremljeni u ASCII kodu. Sklop za sinhro-nizaciju sinhronizira otklon zrake u TV prijemniku sa adresiranjem memorije znakova, tako da se za odredje-ni položaj zrake u TV prijemniku uvijek adreslra ista lokacija u memoriji. ASCII znak upisan u toj lokaciji pomoću generatora znakova i posmaćnog registra pretvara se u niz TO, impulsa, koje prijemnik ispisuje kao niz svijetlih i tamnih točaka (postupak generiranja video-signala detaljno je opisan u slijedećem poglavlju). Ako se želi na nekom mjestu ekrana ispisati neki drugi znak, a ne onaj koji se na tom mjestu upravo prikazuje, potrebno je promijeniti ASCII kòd u odgovarajuco] rnémbrijékoj lokaciji. Da'bi mikroračunalo to moglo Izvršiti, potrebno je prema sl.l. : - privremeno adreširati memoriju Iz mikroračunala (npr. preko sabirnica adrese) - u adresiranu lokaciju ispisati novi ASCII kod. Kako se redovno ispisuje znak do znaka, zgodno je imati brojilo koje uvijek pokazuje" na slijedeću memorijsku lokaciju (upisom novog podatka u tu lokaciju brojilo sé inkre-mentira). Sad mikroračunalo treba, da bi upisalo novi znak (desno do znaka koji je zadnji bio upisan), učiniti slijedeće: ■ • - prebaciti adresirarije memorije na brojilo ''AC" (si.2) - upisati novi znak u memoriju (adresa je zadana iz "AC") - inkrementlrati brojilo AC - vratiti adresiranje na brojilo BB. Korisniku je potrebno znati adresu brojila AC, kako bi znao na kom mjestu će se upisati slijedeći.znak. Zato se na ekranu na tom mjestu (to je, trènutak kad je sadržaj AC jednak sadržaju BB) generira posebni znak, tzv. "cursor". Brojilo AC sadrži, dakle, adresu £ursora. Blok shema ovakvog uredjaja je na sl.2. Veza sa računalom je ostvarena preko sabirnica podataka procesora SP i kontrolne linije za upis podataka sa sabirnica u izlaznu, jedinicu (signal I/OW za procesor 8080). SP upis ,M ■ GZ il AC, o •v" V 1 BB da Sl.2. Dodatak "cursora" Konfiguracija sa 51.2. je još uvijek relativno jednostavna za izvedbu, ali sa bitno većim mogućnostima negò ona sa sl.l. Brojilo ÀC i komparator izmedju AC i BB mogli bi se rijésiti i programom, no to bi značilo da vrlo velik dio raspoloživog vremena procesora (oko 50%) otpada samo na simuliranje rada tih sklopova. Zato su ti sklopovi izvedeni hafdwar eski - konfiguracija sa sl.2. izabrana jé kao temelj za izgradnju ovdje opisanog TV terminala. GENERATOR SINHRO-IHPULSA Ako se kao jedinica za prikaz koristi obični TV prijemnik, potrebno je signalu koji prenosi podatke o s,vje;tlihi točke dodati i impulse za sinhronizaciju, pomoću kojih prijem-nik.-sinhrpnizira svoje sklopove za otklM zrake sa predajnikom. ,Upravljanje prijemnikom pomoću sinhro impulsa prikazano je na si. 3. ■■ , ,'11 i, ( ! J—U.. »j Ht Najgornji graf prikazuje amplitudu horizontalnog otklona zrake u TV prijemniku, srednji ( U ) amplitudu vertikalnog otklona, a donji prikazuje video signal (V) koji je prouzročio oba otklona.Na video signalu se mogu razlučiti tri osnovna naponska nivoa. Najniži nivo (1) je nivo sinhro: impulsa, (2) je nivo.'"crnoga", a (3) je nivo "bijeloga". Za vrijeme kretanja zrake duž jedne linije (npr. od A do B) video signal modulira svjètlinii točke : ako duž cijelog puta od A do B točka treba biti nevidljiva, amplituda video signala treba za to vrijeme biti na nivou "crnoga". U točki B predajnik treba prijemniku narediti "vrati zraku na lijevi rub". To se radi kratkim impulsom na nivou 1, koji se zato zove horizontalni sinhro-impuls (HS). Taj impuls će u prijemniku upravljati horizontalnim oscilatorom. Po završetku HS impulsa zraka će se naći ria lijevom rubu ekrana, pa će početi ispisivanje nòve linije. Ako na sré-dini treće linije treba ispisati svijetlu točku, video signal će izgledati kao stoje prikazano na slici. Na kraju zadnjeg reda otpremnik treba prijemniku narediti "vrati se u početni položaj". To se opet izvodi impulsom na nivou 1, tzv. vertikalnim sinhro impulsom (VS). Taj impuls traje bitno duže od impulsa HS, pa se u prijemniku obično raspoznaje sklopom sa RC spojem i komparatorom. U Evropskoj TV mreži prikazuje se 293 vidljive linije za vrijeme jedne vertikalne periode. Svaki drugi VS impuls postavlja zraku u točku E, za pola razmaka medju linijama ispod točke A. Time se u stvari dobiva prikaz sa 2-293 = 586 vidljivih lihija. Svaki VS impuls traje koliko i ispis 19,5 linija (nevidljivih!), što ukupno daje 625 redova, tj. jednu "sliku". Frekvencija vertikalnog otklona izabrana je da bude baš frekvencija mreže (50 Hz). To daje za frekvenciju horizontalnog otklona 50-312,5 = 15625 Hz. Za frekventni opseg video signala izabrano je od DC do 5 MHz, što dozvoljava do 530 elemenata slike (točaka) po svakoj liniji. Za ispis znakova na tV prijemnik zgodno je upotrijebiti samo polje od 256x256 točaka (2 -256). Prikaz na 256 linija se postiže zanemarivanjem razlike izmedju svakog drugog vertikalnog otklona, a preostalih 293-256 a 37 vidljivih linija se zanemaruje (treba ih učiniti nevidljivim). Uobičajeni način genériranja sinhro-im-pulsa je dekodiranje stanja dva binarna brojila (sl.4a). Prvo brojilo pogoni-se oscilatorom od 5 MHz, a njegova binarna vrijednos odgovara amplitudi horizontalnog pomaka zrake. Od stanja brojila 0 do 255 ispisuju se znakovi, zatim se u širini 5 znakova; (255-295) ispisuje nivo crnoga, pa u širini 6 znakova (295-343) HS impuls, te opet 5 znakova crnoga. HS Impuls inkrementira drugo brojilo, koje sadrži redni broj retka koji se ispisuje, tj. iznos vertikalnog otklona zrake. Od stanja 0 do 255 ispisuju se znakovi, od 256 do 293 ispisuje se nivo crnoga, a od 293 do 312,5 ispisuje se VS impuls,. Oba brojila resetiraju se kad postignu odredjeni sadržaj (npr. drugo brojilo resetira se nakon što postigne vrijednost 313). sklop HS VS a) b) SI.3. Rad TV prijemnika SI.4. Mogućnosti za dobivanje HS i VS impulsa SI.5. Prvi dio sheme terminala SI.6. Nedostatak upravo opisanog nači na generiranja sinhro-impulsa je u složenosti sklopova za dekodiranje stanja brojila .Ti sklopovi mogu se bitno pojednostavniti tako da se HS impulsi generiraju astabilom. Na si.4a je prikazan klasičan način generiranja sinhro impulsa, a na si.4b je način sa astabilom. Na si.5 je shema astabila koji generira HS impuls, monostabila kojim se podešava trenutak početka ispisa znakova (udaljenost znakova od lijevog ruba ekrana), te oscilatora od 5 MHz koji prije Ispisa . svakog novog reda treba biti resetiran - inače bi ispis pojedine točke bio nedefiniran za trajanje jedne periode oscilatora, tj. baš za širinu jedne točke. Brojilo za horizontalni otklon realizirano je ša dva 4-bitna binarna brojila i jednim bistabilom. Nakon 256 točaka izlaz bistabila postane "1": to je signal koji "gasi" zraku u TV prijemniku., Ovdje više nisu potrebni nikakvi dodatni sklopovi. Binarno brojilo za vertikalni otklon ta-kodjer je reallziranp sa dva 4-bitna binarna brojila i jednim bistabilom. Upotrebljeni generator znakova pretvara ASCII kod u znak od 7x9 točaka. Iskorištena je mogućnost upotrebljenog generatora znakova da se znakovi ispisuju na 8x16 točaka (8 točaka po svakoj horizontalnoj liniji, a 16 linija) - mjesta izvan polja 7x9 kod ispisa ostaju zatamnjena. Zbog 16 linija po znaku očito prvo brojilo treba adresirati jednu od 16 linija pojedinog znaka, a drugo 4-bitno brojilo odredjuje redak znakova koji se ispisuje (na ovaj način može se na ekranu ispisati najviše 16 redaka teksta, i najviše 32 znaka u svakom redu). Iz stanja tog drugog 4-bitnog brojila i bistabila jednostavno se može dobiti impuls za vertikalnu sinhronizaciiu (sl.5). Pogodnim miješanjem oba sinhro impulsa (VS i HS) sa serijskim izlazom iz posmačnog registra (šl.6) dobije se video izlaz. Tim signalom se može amplitudno modulirati VF oscilator, čiji izlaz se onda može direktno dovesti na antenski ulaz TV prijemnika. ADRESIRANJE MEMORIJE ZNAKOVA Za pamćenje znakova koji se prikazuju upotreblje'na je memorija 1024x8 bita. Znakovi su u ASC II kodu, a 8-i bit odredjuje da li će dotični znak biti prikazan bijelo na crnoj podlozi ili obrnuto ("ekskluzivno ili" funkcija izmedju serijskog izlaza iz posmačnog registra i 8-og bita). Kako je kapacitet memorije 1024 znaka, a na ekranu se može prikazati 16x32 = 512 znakova, memorija može pamtiti i prošlih 16 redaka, tzv. "drugu stranicu". Za . adresiranje 1024 znaka potrebno je 10 bitova. Najnižih 5 označuje znak u redu, slijedeća 4 pretstavljaju redni broj reda, a najviši adresni bit odredjuje da li se prikazuje tekuća ili prošla stranica. Adresa znaka u redu je zapravo sadržaj prvog binarnog brojila sa si.S. : prva 3 bita odredjuju koja od 8 točaka u jednoj od 16 linija pojedinog znaka se upravo ispisuje, a slijedećih 5 bitova definira jedan od 32 znaka u Jednom od 16 redova. Drugo binarno brojilo sa sl.5 pokazuje vertikalni otklon kod ispisa. Sa prva 4 bita odredjuje jednu od 16 linija unutar pojedinog znaka, a sa druga 4 bita definira jedan od 16 redova. Ovakva organizacija adresiranja memorije znakova je vrlo jednostavna, a ujedno dopušta i izvedbu grafičkog terminala rastera 256x256. U tom slučaju treba adresirati pojedinu točku, a ne znak. Adresa točke se sastoji od 8+8 bitova (za horizontali^^ i vertikalni otklon). Potrebna je memorija kapaciteta 2 bita. Takva memorija direktno se može adresirati sa dva 8-bitna brojila sa sl.5. Radi lakše komunikacijama procesorom bolje je memoriju organizirati kao 2 x8 bita (8Kx8 bita). U tom slučaju opet se koristi posmaćni registar za ispis 8 po 8 bitova, kao i u alfanumeričkom terminalu. RAD POD KONTROLOM MIKRORAČUNALA Klasični alfanumerički terminal redovno sadrži I tastaturu,preko koje se znakovi mogu direktno upisivati u memoriju znakova. Ovdje opisani terminal nema priključak za'tastaturu. Prijenos podataka od bilo kojeg izvora znakova do memorije znakova u terminalu mora se vršiti preko mikroračunala. Za sve kontrolne funkcije (brisanje memorije znakova, invertiranje pojedinih znakova), kao I za kontrolu cursora ( cursor gore, dole, lijevo, desno, u lijevi gornji kut) potrebna je programska podrška. Brojilo koje sadržava adresu cursora izvedeno je hardware-ski (sl.7.). To brojilo sastoji se iz dva dijela : oba se nezavisno mogu inkrementirati i dekrementlrati. Prvi dio (5 bita) definira Jedan od 32 znaka u redu, a drugi (4+1 bit) definira jedan od 16 redaka i stranicu. Promjena stanja ovih brojila vrši se izlaznom naredbom mikroračunala : npr. za skok na početak novog rèda potrebno Je 1) resetirati prvi dio i 2) inkrementirati drugi dio. Izmedju brojila za adresu cursora i binarnih brojila koja adresiraju memoriju znakova postoje komparatori. Kad su obje adrese jednake znači da je na ekranu TV prijemnika upravo u toku ispisivanje znaka na Čijem mjestu se nalazi i cursor. Na tom mjestu se tada ispisuje znak cursora (npr. invertira se postojeći znak, kao na sl.7. ). Kad računalo treba u terminal upisati slijedeći znak (na adresu zadanu cursorom) potrebno je memoriju A 01234 567 8 load takt ^ v novi red gore lijevo I/OW READY gore ^ SI. 7. Drugi dio sheme terminala znakova privremeno adresii-ati iz brojila za adresu cur-sora, kao što je bilo prikazano na si.2. To zahtijeva ugradnju 10-bitnih digitalnih sklopki. Ovaj dodatak može se potpuno izbjeći na slijedeći način: kad procesor počne sa izvršavanjem slijedeće naredbe (I/OW) za upis novog podatka u memoriju znakova ^ pomoću postojećeg kompara— tora se testira da U je adresa na memoriji znakova jednaka adresi cursora (sl.8) .Ako'nije, pomoću READY ulaza u mikroprocesor privremeno se zaustavlja rad mikroračunala, sve dok se te dvije adrese ne izjednače. Tada se ponovo dozvoli rad procesoru, pa se i započeta izlazna naredba kompletira. I/OW JI i —»- READY - 0 . zaustavljanje procesora I da READY-1 prijenos u memoriju znakova SI. 8. Maksimalno vrijeme koje procesor može.biti zaustavljen radi upisa pojedinog znaka je približno vrijeme ispisa jedne poluslike na TV prijemniku, dakle 1/50 sekunde. Interesantno je da je vrijeme potrebno za izmjenu svih 16 redova na stranici, sa do 16 znakova u redu, takodjer samo 1/50 sekunde. ( Svaki red znakova sastoji se iz 16 linija koje se u TV prijemniku ispisuju jedna ispod druge, a za ispis svake linije potrebno je oko 51-10-^ R2 0 0 ipe-io^ 2113 0 0 2113 » 110^ slika 3 2.1 Izbor vrste veze Dilema oko Izbora vrste veze je Ipak mala, tj. svi sistemi u "realnom vremenu " ("REAL-TIME") isključivo traže Iznajmljene veze. Mi ćemo ovde napraviti prikaz u kome fie se videti razlika Izmedju ove dve vrste veza, da bi se videla "cena" uvodjenja Jednog sistema u "realnom vremenu". - troškovi iznajmljivanja Jedne komutirane veze čine oko 13% cene jedne Iznajmljene veze (2), - stepen Iskoriščenja Iznajmljene veze je veoma nizak, ali Je opravdan značajem Jednog sistema u "realnom vremenu", - dozvoljen odnos grešaka na Iznajmljenoj vezi je oko 1.10"^, a komutirane veze oko 1.10"®, - u uslovlma naše PTT mesečna cena izn^mljene 2-žične veze Je 900 NDIN, ako veza prelazi područje Jedne telefonske centrale, a 1800 NDIN ako prelazi dve telefonske centrale, ltd. I na brzini od 2400 BPS, modem Je tipa 'ITT 2400", Interval merenja 15 minuta, a izlazni nivo je - 6 dBm. vreme merenja broj pogrešno primljenih broj prenetih stepen greške bitova blokova bitova blokova bitovi blokovi Rj 1055-11'0 0 0 2,16-lC^ mi R2 09^-09^5 0 0 2,16 ICP Ì2Z7 Rj tß-VpO 0 0 2,16-Kfi Ì227 S NO'^ slika 4 Merenja telefonskog tipa a) merenje Impulsnog šuma u Intervalu 15 minuta. 3.1 Izbor primarnih karakteristika linija U ollju sagledavanja primarnih karakteristika Unija koje će se koristiti za prenos podataka, na zahtev Beogradske banke, naše PTT preduzeće je Izvršilo mei-enja primarnih karakteristika nekih 12 linija (koje su sad komutirane veze 1 koriste za telefonski saobraćaj) 1 ovde ćemo izvučl najhitnije karakteristike Iz detaljnog tehničkog izveštaja. Od ukupno 12 pravaca, što lokalnih što medjumesnlh, uzećemo u analizu 3 pravca u području grada, gde se očekuje preko 90% pravaca mreže. Za data tri pravca, prema slici 2, uvedene su skraćene oznake Rj ,, relacija: [/. MIŠĆA 39-A. NiKOUĆA 2 .................f'' relacija: NJEGOŠEVA 'j'-KOLARČEVA 5 ^3 relacija- NJEGOŠEVA?- B. REVQLUÜJE 2i stika 2 Sva meronja se dele u dve grupe: a) merenja telefonskog tipa - slabljenja na 80U Hz , - Izobličenje slabljenja u opsegu 300 - 3400 Hz, - Izobličenje kašnjenja grupe u opsegu 300-3400 Hz, - Impulani šum, b) merenja telegrafskog tipa - stepen greške na bitovima, - stepen greške na blokovima su vršena prema CCiTT - V53 (|iJoglavlje 2.1 gdo je za 1200 BPS odnos greške po bitu 5. 10'''. PRAG MERENJA U (dBm) -50 -40 f^l vreme merenja 12^5.1300 broj impulsa iuma 206 17 R^ vreme merenja „Jfö. „45 ,0^5_„00 broj impulsa iuma 120 320 vreme merenja 7/55 1155-12«) broj Impulso šuma 37 0 Slika 5 Merenja telegrafskog tipa su vršena na brzini od 1200 BPS, modem je tipa "ITT 1200", interval merenja Je 15 min, izlazni nivo Je - 6 dBm. b) Merenje promene slabljenja (dB) *10 (kHz) *5 -5 0 0.4 a Ì___/; ' u 5 _ 2 0 2.4 2 8 3 2 3 6 40 1 1 1 J g 1 L L 1 i 1 r ? 1 ■Ž2 ■_i _ 2- Zl E }- ■= 1 ■25» — P rj = 3 € •j i- — — J t i - 1 --1 J slika 6 j Vidi se Iz slike 6 da su morene vrednosti u okviru gabarita ^ propisanih sa CCITT - M102, prijemni nivo je -3 dR, opseg mersnja od 300 - 3400 Hz, referentna frekvencija je 2 KHz. c) Mererije izobličenja kašnjenja grupe (kHz} *4 *3 *2 0 - 1 -2 >> R slika 7 2 Analiza rezultata mcrenja Može se konstatovatl da su švl primarni parametri linijskih karakteristika u okviru CCITT propisa (M-102). Odnos greške na bitovima, Jedan od glavnih parametara za ocenu kvaliteta voda koji se koristi za prenos podataka, takodje Je zadovoljavajući prema V. 53 CCITT propisa. Stanje iznajmljenih Unija kod naše PTT se može smatrati dobrim za brzine prenosa do 1200 i 2400 BPS! 3. 3 Dodatna merenja Pored meronja koje PTT preduzeće vrši pred iznajmljivanje linija, korisno bi bilo meriti Još: ~ bell šum, - kratkotrajne prekide, - nagle promene nivoa, Kod merenja Impulsnog šuma je uzeto najnepogodnije vreme merenja od 10 - 13 časova, Jer su tada i najveći Impulsnl šumovi (od raznih električnih mašina, uredjaja Ud. )., 4. Dileme kod Izbora 2-žlčne odnosno 4-žlćne veze Sama dilema kod Izbora 2-žlčne odnosno 4-žične veze ju u stvari 1 dilema prenosa podataka u polu-dupleUsu odnosno punom dupleksu. Kao polaznu osnovu uzimamo dh oprema ON -LINE sistema pruža mogućnost izbora ova dva načina rada 1 dn naredne analize 1 procene treba da nas dovedu do odluke. 4. 1. Vremenski dijagram prenosa podataka u 2-žičnoJ vezi Anallzlrnjući vreme potrebno za prenos jednog broja karaktera u 2-žičnoj odnosno 4-žičnoj vezi, dolazimo do osnovne razlike koja govori u prilog 4-žične vezo. Ova razlika nastaje kod 2-žlčne veze zbog potrebe da se "menja smer prenosa" 1 da je za to potrebno odredjeno vreme, dok kod 4-žične veze Imamo izdvojene pravce prenosa: prijem 1 predaja. Pokušajmo doći do tog vremena preko kraće analize prenosu: npr. 720 transakcija /čas u oba načina rada. I ovde treba imati da je analiza ■ vezana za jedan odredjcnl sistem, ovde je to oprema ON-LINE RKAL-TIME sistema japanske firme "FUJITSU". prijem RS (zahtev za slanje) CS (spreman za ^ , slanje) O —K^ predaja ^bV^^'XiPn -f---tppf MiWlMl noseca učes lanosi podaci JAPANSKI i\ standard ' VREME ZA slika S ■ 'W™ ..Posmatrajućl vremenski dijagram prenosa podataka vidimo 2 èratlrane zone: 1) vreme izmedju uspostavljanja signala US (poznat u CCITT standardima kao "Zahtev za slanje" ili na engleskom jeziku "liKQUEST TO SEND") i slgiiala'CS ("Spreman za slanje" -"CLEAK TOSEND") usvojeno je od strane Japanske PTT na 84 msec. Vreme promene smera prenosa koje po CCITT standardu (konferencija V. 23 - 8. f) usvojeno na 150 msec (u literaturi se sreće kao "SQUELCH TIME"). Dakle, vreme potrebno za prenos proizvoljne poruke se uvećava za 234 ms (84 + 150), za slučaj 2-žlčne veze u odnosu na 4-žlčnu, ko|R to vreme ne traži. Nadjlmo koliko se karaktera može preneti za ovo vreme, pri brzini rada od 1200 BPS, što Je potrebno za dalju analizu. Imajući u vidu da pomenutl sistem radi u aslnhrononi načinu (1 karakter sadrži 10 bitova) 40 dolailmo do brzine od 120 kar/eck (1200 BPSAO = 120 kar/s. Neka sa N označimo traženi broj karaktera 1 uspostavimo relaciju: 120 kar 1000 ma 120 1000 Nkar 234 ms 234 ■= 24, 08 kat (za 234 ms) Znači, povećanje vremena prenosa poruke zbor korlSćenja 2-žlčne veze (odnosno polu,- dupleks veze) Iznosi 234 ms 111 28, 08 karaktera. 4. 2 Dijagram komunikacione procedure po jednoj transakclll U cilju obavljanja jedne transakcije, za sistem koji obradjujer mo, koristi se sledeća komunikaciona procedura data na si. 9. L.F.O. = broj kar, koje prenosimo na »at maks. br. kar. za datu brzinu prenosa X 100 1 potražimo maksimalni broj karaktera za brzinu od 1200 UPS (označimo je sa T) T= 1200 BPS = - 120kar/Bek da bi dobili koliko karaktera prenesemo na sat pomnožimo: 120 ^ X 360Ò = 432.000 sok I dalje sledi: 194.400 sek L. F. O. 432. 000 = 0,452 X 100 =45,2% Ovaj faktor nam govori da je 4-žična veza IskorlSćuna za dati broj karaktera 1 datu brzinu sa oko 45% svoje ukupno propusne moći. predaja' ceniar^ierminal E I poruka E i prijem: terminahcentar 12 a i- ii ok K poruka "A ^ e il -C>' Za slučaj 2-žlčno veze, uz isti broj karaktera na sat 1 brzinu prenosa, 'povećava so srednji bro] karaktera na sat sa 270 na 690 kar (zbog dodatnog vremoiia za promenu amcra pronosa pri jednoj transakciji od 3510 ms za koje vrome se pn-neso 420 karaktera - vidi [xiglavljc 2. 2) Ukupan broj karaktera koje trclja prenoti na sat Iznosi: (270 + 420) X 720 = 497. 32 5 kar/sat a odatle sledi: 497.325 L.F.O. 432. 000 X 100 = 115,0% Znači, dolazimo do nemoguCcg slučaja, jer LFO mora biti manji od 1 (odnosno 100%). 4-žlčna 2-žlćnn Broj transakcija na sat Sred. br. kart. ix> transakc. Ukup. br. kart, na sat ' Linijski faktor opterećenja 720 TR/sat 270 kar/tr 194.400 45, 2% 720 Tll/sat 2701420-= = 690 knr/lr 497.325 ^115,0% slika 9 Dakle, u cilju dovodjenja LFO u normalne granice moramo III smanjiti broj transakcija koje želimo preneti nii sat 111 povećati brzinu prenosu na liniji. Po ovoj komunikacionoj proceduri iz centra se šalju dva puta poruke terminalu, a prima samo jedanput uz obavezno kontrolne poruke (ovde se nećemo u njlh .udubljlvatl). Osenčene po-vrèine uz svaku od poruka (ima ih ukupno 15 1 svaka je obeležena rednim brojem) su povećanje vremena zbog 2-žlčne vezo (u prethodnom paragrafu detaljno objašnjeno) od 234 ms. Dakle, za celu transakciju se gubi 15 x 234 ms = 8510 ms, za koje se vreme može preneti 421, 2 karaktera pri brzini od 1200 BPSl 4. 3 Poredbeni prlmor upotrebe 2-žlčnc odnosno 4-žlčne veze U tabeli sa sliko 10. vidimo rezultate ove analizo, čiju smo postavku dali na prenosu 720 kar/sat pri brzini od 1200 BPS. Uradimo proračun linijskog faktoca opterećenja za slučaj 4-žične veze, dok je za 2-žlćnu identičan postupak. Znamo da Je potrebno preneti 720 transakcija na sat, a ako pretpostavimo srednji broj karaktera po transakciji, 270 karaktera debljamo da treba preneti 194.400 karaktera na sat za 720 transakcija. Linijski faktor opterećenja definlsan Je sa: 4.4 Testiranje [irenosnog pula Upotreba 4-žlčnc veze daje još joiliiu prednost nad 2-žlčnom, a to Je mogućnost testiranja linije 1 udaljenog modema u slučaju 4-žlčnc voze, što nije slučaj u 2-žlčno j vozi. 5.1 Izbor modema Izbor modema je nešto lakši deo posla, jer su modemi, kao telekomunikacioni uredjajl, veoma striktno definisanih karakteristika, funkcija kao 1 svih ulazno-izlaznih žila. Dakle, modem za brzinu prenosa treba od 1200 Dl'S äa zadovolji; - tehničke uslove zii modem 600/1200 BPS (ol^ivljcno u PTT Vesnlku, br. 15, 197fi), - da omogućuje jednostavno održavanje, - da Je pouzdan u tehnološkom smislu, - da poseduje atesl PTT prcduzeća. Modem za brzinu od 2^00 BPS treba uglavnom da zadovolji iste uslove, a da odgovara tehničkim uslovima ("PTT Ves- nlk" broj 5. 1977). 5. 2 Dizajn modema U našem slučaju primene od opolonlh sklopova koje svaki mor dem može da Ima, ml smo se odlučili na sledeči dizajn modema: - modem ne poseduje povratni kanal od. 75 BPS (sistem prenosa ga ne zahteva), - modem ne, posedujé "eho supresor" (potreba za njim javlja se na večlm brzinama prenosa), - modem poseduje "detektor kvaliteta linije", - modem ima mogućnost jednostavne ugradnje "kompromisnog korektora amplitudne 1 fazne karakteristike". jednostavan način (lakše Je grešku lokalizovati "na nižem nivou složenosti", tj. lakše je liniju lokalizovati kao izvor greške, nego istu tražiti u složenim ispitivanjima sa celim sistemom). Kao poseban parametar pouzdanosti u Uteraturl (1) se sreče podatak da se dozvoljava "ispad" Unije do 2% vremena koriščenja Unije. 7.1 Zaključak Problemi koje smo ovde analizirali su ti sa kojima če svako da suočava pri uvodjenju komunikacione mreže svog ON-LINE sistem, pa se nadam da će u ovom radu naći poneki odgovor za sebe. 6.1 Pouzdanost prenosnog puta Ovde ćemo pobrojati osnovne činioce pouzdanosti prenosnog puta: - proizvesti (Izvršiti izbor) modem visoke pouzdanosti kako komponenti tako 1 celog uredjaja, - obezbediti dobro testirane linije od strane PTT, - koristiti 4-žičnu vezu (manje smetnje), - ako Je moguće obezbediti rezervne Unije, - realizovatl testiranje i snimanje linijskih karakteristika na Literatura: 1. JAMES MARTIN: "Design of real-time computer systems". Prentice - Hall, New Jersey 2. M. ŽrVKOVIĆ: "Prenos podataka u Jugoslaviji preko PTT linija" - "Praksa" broj 9, 1972. godine 3. PTT Vesnlk: "Tehnički uslovi za MODEM 2400 BPS" PTT Vesnik, broj 5, 1977. 4. PTT Vesnlk; "Tehnički uslovi za MODEM 1200 BPS" PTT Vesnik, broj 15, 1976. 5. J. OBA: "Technical report about data transmission" "FUJITSU", Papers, Nov. 1977. 42 Informatica št. 4 letnik 1977 univerzalni serijsko vhodno izhodni modul n. papic m. kovačević UDK 681.3 - 181.4:681.327.2 Institut "Jožef Stefan" Ljubljana Članek opisuje praktične prijeme pri projektiranju vhodho-lzhodiih modulov za mikroračunalnike.Podana je električna shema modula za priključitev Baudotovega printerja na mikro računalnik Iskradata 1680.Natančno je opisano funkcioniranje modula in programska oprema ki je potrebna za vključitev omenje omenjene periferne naprave v obstoječo programsko opremo tega mikro računalnika. UNIVERSAL, SERIAL INPUT/OUTPUT MODULE - In this paper some particular solutions for the problems which appear during the development and realisation of I/O Interfaces for microprocessors are outlined. Figure 9 shows a module for Baudot printer and microprocessor Iskra Data 1680, We have explained the structure for interface logic. An interface software package which is compatible with the existing monitor programme for this microprocessor is included. 1. UVOD Mikro računalnik (kratko uR) potrebuje za komunikacijo z uporabnikom ustrezno periferijo (izhodno-vhodne enote). Prejkoslej bodo uR postali del našega vsakdanjega življenja, zato je potrebno omogočiti uporabnost uR na različnih mestih in nalogah z uporabo najbolj enostavne ali obstoječe periferije. Izbor perifernih enot je pomemben, ker pogosto odločilno vpliva na ceno mikroračunalniškega sistema. Zato smo tudi prišli na idejo, da uporabimo navadni printer z Baudot-ovim kodom za vhodno-izhodno enoto. Običajne periferne enote uR so n .pr. D/A in A/D pretvorniki, čitalniki in luknjalniki papirnega traku, video zasloni, magnetno-tračne enote (kasete) in diskete. Da bi informacije, ki jih vnašamo, ali dobimo, bile uporabne, za človeka in tudi za stroj, je med periferno enoto in uR potreben vmesnik. Ta prenaša tudi podatek o možnosti prenosa (informacije in uravnava razliko med časom posredovanja informacije uR in periferne enote. Vmesnik ima štiri osnovne funkcije: dekodiranje ukaza pri enotah, kjer imamo razen čitanja tudi druge operacije, n.pr. premikanje traku; izbiranje periferne enote, pri več perifernih enotah z dekodiranjem naslova; sinhronizacijo izmenjave informacij med uH in periferno enoto; za vse te tri funkcije uravnavanje časa in kontrolo. Izmenjava informacij se lahko opravi na dva načina - z mikroračunalniškim programom kontroliramo prenos ene besede v trenutku, ali z direktnim dostopom v pomnilnik (DMA), ki ga kontrolira periferna enota in omogoča prenos večjega bloka informacij. Prvi način je mogoč pri vseh mikro računalnikih. Kontroliran je s programom in je lahko sinhronski, asinhronski ali s programskimi prekinitvami. Sinhronski način se uporablja pri perifernih enotah, ki imajo točno določen čas prenosa. Periferna enota mora biti pripravljena za prenos in izvrševati prenos informacij brez posebnega določevanja časa instrukcije procesov. Asinhronski prenos uporabljamo, ko je potrebno preveriti stanje periferne enote pred izvajanjem vhod-no-lzhodne operacije. Potrebujemo štiri korake: 1. Kontrola stanja periferne enote 2. Aktiviranje periferne enote, če je pripravljena 3. Izvrši se prenos (vhod-lzhod) 4. Deaktlviranje periferne enote. OATA BIT LIME 4 BUS ■- DEVICE SELECT LINE t DEVICE ADDRESS I'Ol'N Docodar 1 Dovico 1 (Port 11 1 1 J _ DEVICE SELECT [LINE 2 T ENABLE F r> To Doi^ I -Raaiy (Pan 21 Stiilua FlipFlosi STROBE IN Sllka 1. Ponazoritev povezave periferne enote na vodilo Ponazoritev povezave periferne enote na vodila je dana na sliki.v; ,■ Slika.2 je tipičen časovni diagram za asinhronski prenos . ENABLE ; StroU .. in Statui Q Device ' lelect linei Device wlect line 2 . ±n __rL —r Input Malus Input data Slika 2. Časovni diagram za asinhronski prenos : Asinhronski prenos je u^raben v primerih, ko obstaja časovno nesorazmerje med uR in periferno enoto. uR najverjetneje čaka, da bo periferna enota PRIPRAVLJENA. Zato tak prenos nfe uporabljamo pri kontroli procesov, kjer bi morali zadrževati kontrolni,signal, dokler čakar mo na signal. ~ ' : PARALLEL TRANSFER " SERIAL TRANSFER Zaporedna beseda ima lahko startni bit, 5-8 podatkovnih bitov, kontrolni bit za parnost, enega in pol ali dva ustavitvena bita. Število podatkovnih bitov je programirano. Kontrola parnostl se lahko nastavi ali pa rie upošteva. Število ustavitvenih bitov tudi lahko izberemo . , Dela za pretvorbo vzporednih v zaporedno in zaporednih v vzporedne podatke sta ločena in delujeta simultano ali ločeno eden za drugim. Kontrolni del je skupen za zaporedni in vzporedni pretvornik. Prenosni del sprejema vhodne podatke na vhodih D 1 -D ' 8. Podatek se shrani v prenosni vhodni register in nato v prenosni register, kar se kontrolira s signalom TDS. Serijski podatek se prenese na izhod TSO ob impulzu TCP (impulz takta). Pri tem se nastavita tudi kontrolna bita TBMT in TEOC, ki nam povesta, ali je podatek prenesen iz vhodnega prenosnega registra v prenpsni register in ali je prenos zaključen, ko se lahko vstavlja že novi podatek. Časovni potek tega prenosa je podan na sliki 5. TRANSMITTER TIMING» "1 fp jto_ jttO- jiP____J' IK CLOCK CVCLD- Slika 5. Časovni potek prenašanja , Slika 3 . Blok diagram uporabe UART •Periferne enote sprejemajo ali oddajajo'podatke v ■ vzporedni ali zaporedni obliki ^ V našem primeru ■ periferna enota prenaša podatke v zaporedni obliki. Zato je bilo potrebno v vmesniku upor^iti vzporedno-zaporedni pretvornik signalov. Posebno integrirano vezje za take transformacije je UART (Universal Asynchronous Receiver-Transmitter), tj. univerzalni asinhronski pretvornik. Bločni diagram je prikazan na sliki 3. Na Sliki 4. pa vidimo diagram sistemske uporabe. M m mn HMiouonoMOMDMaajMaMi m on w P J 7v-r« nr m ■ •0-3 ao» 1 """I U-lj*' 1 i«io.«^iigorniii U-.. r moifTiii T^ •Mit________-« «i«W«a» m m m « «M-:—♦»«UM«.^ « • IIB L-J Sprejemni del sprejema podatke iz serijskega vhoda RSI. Podatki, ki se shranijo z 1/16 periode takta RCP,. se prenašajo iz sprejemnega registra v sprejemni izhodni register (D01 - D08). Bit RDE omogoči izhod podatkov iz tega registra. ~ V sprejemnem delu se generira več kontrolnih bitov: RPE za kontrolo parnostl, RFE kontrolira zaključitev sprejema podatkov s STOP bitom in ROR, ki se nastavi, ko je nov znak sprejet v sprejemni izhodni register dokler je prejšnji bil še v registru. To se zgodi ; če bit ODA (ki ugotavlja ali je cèl znak sprejet in prenesen v sprejemni izhodni register) ni v pravem trenutku spremenil stanje, kar spet povzroča bit RDA (uniči podatek, da je znak dostopen). Časovni pbtek sprejema je podan na sliki 6. RECEIVER TIMINO 10. ID 40 tO »O JO t ■ i T—iSffi::i::i_ jj.I . J. _. - I I I I I I I I I I I I PMUn fnHOR IHTATtl fRAMmO litNDR 0.tT*1|l ILAOLII14TATII Slika 6. Časovni potek sprejemanja Slika 4. Blok diagram UART S1883 Status periferne enote je določen z že opisanimi biti TBMT, TEOC, RFE, ROR, ODA. Krmiljenje operacij periferne enote se opravlja preko kontrolnih bitov: SWE - omogoča čitanje statusa periferne enote in s tem tudi sproži odločitev o sprejemu ali prenašanju; RDE - ob prihodu veljavnega signala na ta vhod je omogočen sprejem (podatek gre v izhodni sprejemni register) ; TDS - ki časovno krmili prehod podatkov v prenosni vhodni register (sprejem vzporednih podatkov v UART). Vsi ti kontrolni signali se v vmesniku generirajo na poseben način, ki je določen z logično zasnovo vmesnika. RESET signal se pripelje na UART mikroračunalniško direktno. TCP in RCP signala generi-rata potrebne periode. Serijski vhod SI in serijski izhod SO sta zaključena z 20 m A tokovno zanko. 2, LOGIČNA ZASNOVA VMESNIKA ' Vhodni podatki vmesnika so signali z adresnega in podatkovnega vodila, časovna signala CLKl, VMA (Valid Memory Address), RESET, R/V in serijski vhod za podatke s teleprinterja. Z dekodiranjem adrese izberemo signal za čitanje statusa, ali za pisanje ali čitanje podatkov. V našem primeru sodeluje DATA signal pri formiranju signala, ki povzroči pisanje ali čitanje podatkov. Signal CNT sodeluje pri formiranju signala za čitanje statusa. V konjunkciji teh siganlov z R/W in (D^ dobimo končno RDA (RDE ob katerem se izvede čitanje podatkov; TDSraBi za pisanje podatkov in SV/E za odčitavanje statusa,- Prenos vzporednih podatkov na podatkovno vodilo krmilimo v prvem primeru s pogojem, ki nastopi . ob istočasnem prihodu signalov (D^, VMA in UA/ in drugič s signalom iz UART, ki daje obvestilo o tem, ali Je končana oddaja znaka in ustavitvenih bitov. 3. ELEKTRIČNA SHEMA VMESNIKA Pri realizaciji nastanejo težave zaradi neusklajenosti različnih signalov; zato je bil uporabljen en multi vibrator za "podaljšanje" signala pri pisanju podatkov (S74121). Na sliki 8 je logični diagram tega multivibratorja in časovni diagram . Vhoda Al in A2 sta vhoda, ki sprožita aktivnost, ko eden od obeh ali oba preideta v ligično O, ko je B na logični 1. Zahtevani impulz dobimo, ko vežemo kondenzator C^j med pine 10 in 11. Zunanjo upornost Rt vežemo med pine 9 in 14. Eno od teh vrednosti določimo poljubno (za C J so meje med lOpF in 10 uF, za upornost pa 2-40 K ) drugo pa izračunamo iz enačbe za časovno dolžino impulza : 0.693 . C, Za hitrost 45,45 baudov popravljamo dolžino impulza na 1,3 X 10"3 s. Zaradi uporabe teleprinterjev z različnimi hitrostmi smo uporabili za Rj- nastavljivi potenciometer in že vezali preko stikal priključitev na printerje s hitro-r strni 50 in 100 baudov. n n n n n n n □ u Ù□QÜ u « n >C3 nr - rttwto MMK» v.4ui -wi Slika 8.Logični in časovni diagram multivibratorja Slika 7. Blok shema vmesnika za priključitev navadnega teleprinterja na mikro računalnik Programski del je izveden strukturirano. Narejeni so podprogrami za čitanje in izpisovanje Baudotovega serijskega znaka ter za konverzijo ASCII v Baudotov kod in obratno. Konverzijski rutini omogočata prilagoditev sistema z monitorjem, pisanim za ASCII teleprinter na konfiguracijo z Baudotovim teleprinterjem kot vhodno-izhodno enoto. Komentarji . so pisani ob posameznih korakih programa, ki je priložen. esil s^sS <»3 = — ö C it - 9tr L^ M -■ «3 Ul «J . ■--. ^ O ÜJ Ü. liJ a: M ■ vr II ITI ' -Vs ^^ ^ I C« ci: in H 3 > 3 >- l'I i z Lj ri o co uj r- j ÉJÌ cj o- ^ o o n u. u- u. UJ ui u. lu U. Ltl Ui t[V « +N «v +tf r-11-- ci- tu «1 i uj _j Oj o u. ill tA 41. «> «t tO «4 tli tiv ti> 111 tjt UI «I t:i ti> {} t.1 i;i u* l;i 0~i Dj UTl CX!l Qj D'J OTi Oj üj O O O o o C) Ci o Ik u. u. u. u. u. u„ u. U- ci co OJ cij a'i cù o Ol ai oti cj a'i ori 11 e- <...' o o o tj C..1 CJ» o o t.1 u 11- u. u. u. u_ u. U- u. U- u. u. U- uj Cl o CÙ 0:1 OJ oj ClJ O'J ai OTi Oj Cij 01 oj aj oj O-l oj 01 Cj cj 01 c o ■ o 1 C.a tj C o CJ- o o 1,1 C.1 o t.J o Cl o 11 UI t-i <• ' 1 o 1. ' ' • t t,- ll- U- U- U- u, U- ll. U- u. Lu u U- U- U^ Ü- u. U. U- u. u. u. I- U- li. r: I 1-1 Ll ll o irj o UJ u. lu X i-i -) it' _j sr. z o o. o o; Uj I- p > 3 >-1 >- h-1 » » ic » if- o T ' c-1 r'; u j r-. o-- o • ' >: 1 r 1 --i n . 'i • + ^ 04 n in -o r- aj o »-i r-- t-« v -r • *-i --i • t * i' 1 c j i' i 1 111 1 * t.1 o 0-t;i tj Cj cj C.' *-j t ' cj ci cj < > c,1 C i c:* c c- r ■ c.' r. ' 1. < 1. > c' tn Cij Oj tr- 07 Oj oj uj ui oj o- o'; oj oj oJ 01 oi u, u' o", tu u. oj oj rii 01 <1: <: <1: (..■ Cj c-i o ci i. r Oj 'i: o r.j «j x: C' o: re a ii_ Oj ■r: ll.. I LJ CT. o o: - o I U tlj CJ DJ — LJ I-- O." I ti oj 01 UJ — Cj C. ri o -J Oj o u. »■■I UI o CJ < o u. LJ o: OJ ai Ch- Oi • t-4 Cj ll- n: ti3 r.» u. U3 C» 0 115 •C D . Cit 1/J h' U> tli m i - 0 • h' Cu 0 L13 »—1 >1 ÌTJ < 2: A- lu ta 0 CL> 0: a: <1 I-- Ci:: Cr: -z 1- -•IJ ÜI a: CC <- 0 a: ct: J«« H»" • tr» 0 0 UJ 0 UJ ^ Ü- < Ll 1 u. UJ u. r. 4- t') »■•« ÙC cn UI L'I VI * rr cr: H- UJ : u. -i: 0 c' -c -č 1 IJ- * CrJ .t • • -1: -j t/: x h- X Cir «■ z: >1- V- 0 C — 3 7Z < »-UJ U J h- -r UI Oj o- t..' 3 &j X-. X u. X u. u. i- X < r.J t-J ..J o o o vt 111 cj -J- oil OJ <1: CJ r- < 1-1 . -f- -r ro rj UJ i:i 11. U- i-- > * DJ 01 U' (It * X D: Ci /iTO t.' 3: CO lil i.' z: h- h -•C _ 1 ll. ll. u u H-O za G »-i h- 01 Ui r. c:. Cii >f >i< CL. Ci Cl. C- Ci: ti:^ tn '■ X 1-1 t-i CJ 01 1-1 0 CI- f-4 C.J c- U U- < u C. » a'j C»'i "wT Cr- Ct u 1 0 0 0 c; CT t; n c.1 Cl 0 0 ■t- u- u. - 1 ^ CJ 01 • c;. OJ <-■■ -ij u u u. U- UI u. Ol CJ C 1,1 U.Cj ci CJ C-! < 1 C in CJ CI Cl C.. Cl ci m o Cl o ocj r-" Dl < 10 " 2: 11.'' ■ : 0 (0 (O LJ C- 0.« fji H- " • UJ 0 K- . • ti:i. Ü] cc: LÜ 0 cn UJ hJ K oc. tji h- C :i • ■ , . -I 00 •■ C . CM C- CiC C u ■ • K- Ci 0 ù'. . 0 co Cr; -r. 0 - UJ h- 0 h- Ili H- UJ • t.> . h- 0 IT' ■ t. > UJ 0 LJ UI ur <1: 0 co •0 Ci Ci'1 •«n cc: z • ■ to < ,0 XX . ■ ♦n UA C^l "v C.) 0 IS >< X r^i CI X CJ >.; >< >< X C.i TA' U' C- t.4, o I- C-^..] ► d., h- c-j cl. q- < x a, uj c iit u sn ttj h- »— o h- o") r: uj crj h- o ii cj o CÜ cü -J ct: ^ a: ^ o: o_ ..J o CÙ -3 co o.. h-i o Ci": co wJ cù X X tJ -T. X t,j ••t >< •T- to :v' h- <.'-• 1 cu -r c:; u i ...i fi.: : o u_ o ri ß c-j a o o o u.. vj- o ut o o U.J -r o o K- 2*" ir. u.. 6 0 C- t,.-« t- CJk •■•i" rt! • r- LiJ . CTI u t in c.^ 0 0 f.' U. r-jrj 0 r.i hI 0 CJ fi n 0 LU -i' C-' C-1 ^-r CJ >r u» r^ t-- <> o- tr- 'O »r? Cj r-- c-^ lj «:• t- -iü! u.. <0 i-i Ci C-i oi r"; «o r> on rit'« to cr cm cü ri c^ o *i: ci c< 0- O'I --£ o ljj CJ n m «j:« es;» Cr- - c UJ O n irì 0- < O UJ CD .-u C o Cr' f J h- o- C. f: U! • L'; li. I:'i -r t' f - LiJ O o.' W 0- ( t-- t' - r-' - h- C- tO »-■> u. -1" u- h. li. »'. li- o f-' c." c; C-' t.i C.' L) T' • v- c'j o r:.; r:- c;; c:-1: ? c: o »1: lll v.) O CI c;i ui . C..J > t.j < iL» O O uj rr.r t-i h- uj u.t uj uj uj uj ^ u. fi: »h u. cc is- - ü- .i'." ' i'; t ll» fix uj uj fi: . 1 «j: Z-t ti: <1; ii ci- •c _j •:r t. j co vi; -i t.". U- X tj t'l ■ CJ 10 X U. UJ 0 U- It; - C' CI t.J UJ h. Cl »--1 CJ« C Ù-« * ►■•H \ - ■ UI UJ , * LLI r: (1.: lil h- 0 • t: C- A- C -J X o: «..J ■ -i' Ui ni fi'i -J 'J < 0 (.» Ll I t..' -1: -1 ■ fi: -t ^ H- 12 n 0 J-.I ■Al 1 h- C- -I- U.. 4- ■ h- Zc'. »-1 »t» CU -1 c: U. -■i.; u U I :i: X. -in /k •T.:. 0:1 C.I >•: i' m U) - Ui o •r o.i Di *i •: < ^c < <4: < >< Ci 2 :: to C ' r:' h- 0 h- 0 h- tJ^ Cl.. 0 UJ Cl- -T: ca ^J Cl-; „j ff ^ t;:: Ö1 .J ü'.i t:- l.. fr. fjj ...J t..' Ol C.I vr C- .t-. 0 <1: C.> C M U'i t-l UlC-t Cl--' dì rj r i rü -u • « f-- C-i fii 0- -i l r.r- -i!' C- <' Cr L.; u cù C i r. cjj a r-j ti.i n o:« r-j tif' r 1 C-:- h 3 r i 0 cri 0 ti. f! vi- u:i vi; (J,1 t:. UJ u. C i -t 'i: ni <2 > ' -J Hi : X >•: t .« t .' « t: >-.' t.' h £5 O (li tn _( 0: h: cu -.r u.. if»-: —1 fi.. .. I 3: «. O C^J . 4 «»^ »t- ri M'i ('••. t ' iu ct cj M.» -r.i -o •^."i ^i.i Ml t- f- r- r^ r- r- r- r- r- ui ai oj oj ai u-. m r.; c^ u> tr o t-.' cj o c; I"--; Ci C' cj C.I C j C-i C c.f o c:i o d o ri cj t j o t » c i rj c c.i c:i f.t r.i r.. cj o c.-) en o a o c.; o r.i cj c.m c:- o o ci cj c> c: či c-' n cu m C J Cl • e:- C": M r-i CJI 1.1 I--- UJ -J-.I Ü-- -L' 11 - 0- 0 < I- J U.I C-J ti]: (ii C. U- (1 'j C C Ü C- (J- -i: -.i" C ! t :. c:: c:. C«::; C:Ì C j c; c:' c-3 0 CJ c:i c.1 C." Informatica št. 4 , letnik 1977 kako narišemo pravilni mnogokotnik ? v. batagelj UDK 681.3:513 PNT, VTO matematika in mehanika Ljubljana Namen sestavka jejOb reševanju navidez enostavno naloge: narisati pravilni mnogokotnik z vsemi diagonalami, seznaniti bralca z nekaj osnovnimi značilnostmi uporabe risalne naprave (plotterja)- V sestavku se srečamo tudi s teorijo grafov (Kulerjev izrek), z uporabo rekurzije pri programiranju in s prevedbo rekurzivne rešitve v iterativno, HOW TO DRAW A REGULAR POLYGON'? - In the paper some basic characteristics of plotter-programming are illustrated by solving the problem: write a program for drawing the regular polygon with all diagonals« The use of recursion and the transformation of the recursive solution to an iterative one are also included« Haloga : Sestavi program, ki bo na risalni napravi (plotterju) narisal pravilni mnogokotnik z vsemi diagonalami ; kateri je posvečen pričujoči sestavek, sodi v tisto področje programiranja, ki mu radi pravimo "igračkanje na računalniku"; nekateri pa celo: "kako lahko z računalnikom zapravljamo čas (in denar) ?l". / Toda to je le ena plat■ 1 then begin risilih( m-2 ); for i 2 to m-1 crtado( m - i mod end; crtado( 1 ) do begin 2 ); crtado( 1 ) end end [ risilih ; Kaj pa, če jezik, v katerega programiramo, no pozna rekurzije ? Običajno se moramo tedaj zateči k uporabi sklada; vendar to v našem primeru ni potrebno, ker postopek vsebuje samo an rekurzivni klic. Take procedure ne zahtevajo "drevesnega mehanizma" in jih zato lahko pogosto brez posebnih težav prepišemo v iterativno obliko. Proceduro risilih bi tako zapisali v Structranu £3] ! SUBPOUTINE PISI LIH ( M ) N n 3 WHILE < N ,LE, M ) DO NM = N - 1 fori ( i = 2, nm ) do call crta 00 ( n - h0d(i,2) ) call crta do ( i ) ENOFOR calt' crtft do ( 1 ) ni a n ♦ 2 enodhile REtrURN' eno Tako, lihe mnogokotnike znamo narisati v eni potezi. Kako pa je a sodimi 7 Recimo, da želimo narisati 2k - kotnik. Potata nam Eulerjev izrek pove, da bomo morali vsaj k krat pomakniti pero "po zraku" v drugo točkob pa tudi, da to zadostuje. Podobno kot proj, lahko problem razbijemo na dva podprobleaa: - nariši 2k-l - kotnik in - nariši ostanek: diagonale, ki imajo eno krajišče v točki Tgk ° Prvi podproblem je naš staori znanec - risanje lihega mnogokotnika. Torej moraiao premisliti Is še risanje ostanka. Ta sedaj iagloda takolss Ker mora biti risanje 2k-l - kotnika in ostanka vsklajeno, Je najenostavneje začeti risanje v točki Tj^ . Tako dobimo naslednji postopek: 1. 2o 2.1„ 2.2, 2,3, 3o pomakni se v točko T^ in nariäi 2k-i - kotnik za i ■=■ 1, 2, .o., k-I ponovi nariäi daljico do T, nariäi daljico do pomakni se v točko 2k ^2i nariSi daljico do '2i+l S tem omo obdelali obe možnosti (lihe In aod® mnoKOkotnike)o Preostane nam le öe, da Ju združimo v enoten program za risanje poljubnega mnogokotnika: P303RAM TETIVE( INPUT, TAPE1«°INP1JT ) COMWMi / TOČKE / X(5l>). Y(50) 04tft PI / 3. u159 26536 / C»LU 30PRI o preberemo. red m in polmer r mnogokotnika r-bdk u, o ) m, r o oologmo koordinate oolise mnogokotnika PI o. J o PI / M FOR ( I = Ü M ) DO «ID = R t» COS(IoFI) r(I) = R o SIN(IOFI) E^DI'O^i o narišemo MNOOOKOTNIK calu 'omik v < 1 i in ( m00(mi2» „eq. i ) then call RISI LIH ( m )' E5.BEI >1m a m - 1 call risi lih ( mm ) <^0^1 ( i 2« mm. 2 ) 00 call' crts do < m ) call, crta 00 ( i ( call' pomik v ( i«! ) endfor call crta. 00 ( h ) emoif c4lu 2apri E^D V programu smo poleg podprograma rieilih , ki ga že poznamo, uporabili nekaj podprogramov, ki omogočajo delo z risalno napravo. Ti so odvisni od osnovnih rutin za risanj®, ki se od računalnika do računalnika spreminjajo. Za računalnik Cyber na HRO v Ljubljani izgledajo takole fill t SJBtOJTiNE CRTa 00 ( I ) COMMOMi / TOČKE / X(5;)) » Y(50> C4LLI »LINE ( K(l), vd), I ) REIT JRMl EMO SJB^OJTINE POMIK V ( I j COMMOM! / TOČKE / K<50), Y< 50 ) CftLU »LINE ( X REIT UR Ml ENO' SJB^'O'JTINE odpri CALLI 'OPEM ( 11,, ćLTETIvE I C4LLI 'SCALE ( Ilo, Coo 11.» II. -1., 1.» -I.e I« ' B£ITJR>J E'JO S'JB^ojtine zapri CALLI »CLOSE RtffJRMi EMO Opomba; Bralec, ki ima dostop do Cybera, lahko zahteva izpis priročnikov za delo z risalnimi rutinami iri za ütructran s Scope karticama: BEGIN,MINI. MANUAL,PLOCTKH,STfiUCTRAN. Na koncu naj omenim soroden in nekoliko "uporabno Jäi" (vsuj za tisto, ki se ukvarjajo z prafi) problem, pri reßovanju katerega bi nam nabrane izkuänjo precej koristilo. To Jo: oeotavi program, ki bo na podoben način, kot smo ga uporabili pri risanju mnoi;;okotnikov, narisal dani neusmerjeni graf, v katerem poljubni dve točki veže največ ena povezava. Nekaj korietnih idej v tej smori Je najti na zadnjih straneh sestavka £23 , Problem si lahko dodatno zabelimo s zahtevo, naj bodo točke grafa razvräöene po krožnioi tako, du se bodo povezave sekale čim nanjkrat. To pa Je že zelo težek problem, LITiiHATUHA ^ij V.Batagelj: CLUüE - program za hierarhično razvrščanje v skupine; priročnik., Ljubljana, 1977 £23 V.BatagelJ, T.Pisanski: Delno usmerjeni Eu-lerjevi grafi; (rokopis) seminar za računalniško in nutnorično matematiko, Ljubljana, 1977 ITjl V.BatagelJ, K.ZakraJšek: Structran, Informatica 75, Bled, 1975 £43 D.Cvetković, M.Milić: Teorija grafova i njene primene; Naučna knjiga, Beograd, 1977 £53 O.J.Dahl, iä.W.DiJkstra, C.A„H,Hoare: Structured programming; Academic Press, London, New York, 1972 If.Gruenberger, G.Jaffray: Problems for Computer Solution; John Wiley & Sons, New York, 1965 H.B.Kieburtz: Structured programming und problem solving with PL/1; Prentice-Hall, Knglewood Cliffs, Now Yersey, 1977 O.Nievergelt, J,0.Ferrar, Ji.MoReingold: Cob-puter approaches to mathematical problems, Prentice-Hall, ling. Cliffs, N.Ysrsey, ig?*«- M.B.Wells: Klements of Combinatorial Computing; Pergamon Press, Oxford, 1971 N.Wirth: AlRorithms+Data Strcturea^^Programs5 Prentice-Hall, Jing.Cliffs, W,Yersey, 1976 £ll3 JS.ZakraJäek: Uporaba risalna naprave "ì? HtìC; priročnik, Ljubljana, 1975 53 Informatica št. 4 letnik 1977 procesor za aritmetično -- logični izrazi o. b. popov UDK 681.3 - 181.4.055.06 Univerzitet "Kirili Metodij"Skopje Se pogolemata primena na mikroprocesorite na site podr9Čja od naukata za smetački mašini uslovi razvivanje na soodve-tna programska oprema. Prirodata na programskata oprema se zasniva na principot na izvršuvanje na istat, odnosno dali taa će bide izveduvana na samiot smetač ili na nekoj proizvolen sistem koj od svoja strana nudi izvesni prenosti. Močna i kompleksna aritmetika mu ovozmožuva na sistemot da go proširi poleto na svoeto dejstvuvanje, kako vo rešnvanjeto n,i soodvetni matematičko-prirodni problemi, taka i.za simulacija na tehnični procesi. Procesorot za aritmetičko-logični izrazi pretstavuva eden mal preveduvač, koj ovozmožuva preveduvanjeto na programite napisani vo programski jazik od povisok red da bide izveduvano na uslužen smetački sistem i so toa se zgolemat možnostite što gi podava mikroprocesor-skiot sistem MC6800. PROCESSOR FOl? ARITHMETICAL AND LOGICAL EXPRESSIONS. The purpose of this article is to enlighten some ideas in the development of software for microprocessors. The top-down method of vertical fragmentation has been employed in the construction of the processor for arithmetical and logical expressions for the actual microprocessor MC6800. The structure of the processor ressembles both functionally and structurally, that one of a mini-compiler. Powerfull and convenient arithmetics broadens the field for the application; it also enables us to develop the associate software before the actual microprocessor has been purchased. Finally, some efforts have been explained in the construction of processor that will employ the principle of machine independance. UVOD Pojavata na m ikroprocesorot pretstavuva revolucija vo razvojot na naukata za smetački mašini.Razvlenata tehnologija,masovnoto proizvodstvo i potrpšuvačka.sigurnata i eftrna izrabotka se pričini koi uslovija da mikropro-cesorot deneska naoga primena vo site podračja na naukata za smetački mašini. Vistinata da e mater i jal na ta oprema na mikropnocesorot ednostavna I modularna vo odnos na osnovniot sistem,često pati e zamaglena so vistinata da e program iranjeto naporno i skapo,Množestvoto na mikroprocesori koe deneska e prisutno na tehnološkiot pazar,uslovi razvivanje na soodvetna programska oprema na tri nivoja: - programi ranje.vo iieksadeciraalna koda - programiranje vo sobiren jazIk - programiranje vo jazIk od povisok red Sekoj od ovle tri načina na programiranje nosi so sebe odredeni prednosti 1 nedostatoci.Trgnuvajči od čovekot kako osnoven faktor za kogo treba da bide olesneta upot-rebata na mikroprocesorot,se odlučivme za razvivanje na programska oprema koja ovozmožuva upotreba na jazik za programiranje od povisok red, Vo odnos na izvršuvanjeto na programskata oprema,i stata ja delime na: sistemsko zavisna programska oprema I sistemsko nezavisna programska oprema.Sistemsko zavisnata programska oprema sodrži programi koi se napišani vo množestvoto naredbi koi pripagaat na mikroprocesorot i se izvrSuva na samiot mlkroprocesor.S istemsko nezavls-nata programska oprema sodrži programi koi se izveduvaat na uslužen smetački sistem,ne bara poznavanje na jazikot na mikroprocesorot,so cei da se izraboti programska oprema za konkreten mikroprocesor.Razvivanjeto na sistemsko nezavisnata programska oprema ni ovozmožuva da g i koristime site prednosti Što gi poddava eden golem smetački' sistem.Pri toa vremenskata kompleksnost na programite vo obrabotka e relativno mala.Nedostatok e nesoodvetnata prostorna kompleksnost,zatoa što programite napisani vo jazik od povisok red generiraat dva pati poveće mašlnska koda.otkolku programite koi se riaplšani vo sobiren jazik; , znači upotreben e dvapatl pogolfm prostor vo memori jata na smetačot. KOUCEPTUALEN MODEL MA PROCESOi?OT 1 I'rocesorot za ari tmet ično-logični izrazi po svojata kon- '. ceptualna struktura potsetuva na mini-preveduvač za jazik što generira aritmetIčno-Iogični izrazi.Procesorot e ver- : tìkalno fragmenti ran; podelen e na poveće fazna struktura koja go izveduva procesot na preveduvanje posiedovatelno. Sestaven e od dva osnovni modula: modul na analiza i modul na sinteza.Implementaci jata na procesorot če bide realizirana na proizvolen smetački sistem,koj vo napiot slučaj e iraenuvan uslužen smetač.Izlez na procesorot e niza od naredbi vo sobiren jazik.koj od svoja strana pretstavuva izvoren jazik za mikropnocesorsklot sistem MC68OO. Procesorot treba da ovozmoži: - koristnikot pri razmisiuvanjeto i izrabotkata na programi i algoritmi da ostane na logično nivo;arhitek-turata,osobini te i možnosti te na objektniot smetač ne go zasegnuvaat. - procesot na prepoznavanje i popravanje na greSkite da bide poednostaven - zgolemuvanje na un i verzal nos ta na mikropnocesorot so premena na jazlkot i ednostavni modifikacil na odredeni subroutini - poednostavna modularnost vo programi ranjeto i dokumentacija Kodulot na ani iza gl sodrži slednite funkcionalni edinici: a. leksičen analizator : izgraduva vnatreSen oblik na pretstavuvanje na sekoj izvoren znak; go pregleduva Izvorni te zborovi i gradi simbolni tabeli vo koi se naoga Informaci jata koja se odnesuva na semantičnoto značenje na izvorni te simboli i koja ja upotrebuva procesorot vo procesot na generiranje na koda. b. sintaksen analIzator : opredeluva dali jazlčnata struktura na izvornata rečenica se sovpaga so si)ntaksnata definicija na jaz i kot; gradi sintaksno drvo za sekoja rečenice c. translator na programot vo preoden jazlk:nastanuva Iinearizacija na sintaksnoto drvo,pri Sto dóbivame struktura pogodna za generacija na kodata. (■iodulot ria sinteza gi isodrži slednite funkcionalni edinici: a. generator na kodata: g i presmetuva site adresi zavisni od sistemot(objektnlot smetač), pridružuva registri na operandi te i generira niza sobirni naredbi kol ovozto-žuvaat Izvräuvanje na soodvetnite aritmetično-logični operaci i. b. optimalizator na kodata: ja optimalizira soblrnata koda na smetačot; pri toa se namaluva prostornata I vremen-skata kompleksnost na izvorniot program. Pokraj spomenatite funkcionalni edinic porazdeleni vo dvata osnovni moduli na procesorot.postojat dve funkcionalni edinici koi procesorot gi gradi vo modulot na anllza 1 gi upotrebuva niz celiot proces na preveduvanJe.Toa se: simbolnata tabela I edinicata za otkrivanje i popravanje na greški te. Izvorniot Jazik e element na množestvoto programski Jazicl od povisok red.Toj e tipski jazik;značl da atributlte koi gi pridružuvaat operandi te eksplicitno ill impileitno,vo zavisnot od samata Implementacijia na Izvorniot Jazik.Jazlkot za aritmetlčno-loglčnl izrazi ( JAL vo ponataraošnata sodržina) e generiran od kontekstno-slobodna gramatika. Prvobitniot oblik na ovaa gramatika sodrži leva rekurzlja od čisto semantični pričini.Pri konstrukciJata na sintaskniot analizator kontekstno-slobodnata gramatika ja preveduvame vo regularna gramatika,(ovoj oblik i go podavame). Strukturata na JAL e opredelena so slednite ograničuvanja I pravila: - site identifikator! se sostaveni samo od bukvi - maksimalnata dolžina na sekoj identifikator e šest znaka - site realni konstanti sodržat decimalna točka - promenllvata od levata strana na rečenicata na pridru-žuvanje mora da bide od ednakov tip kako i izrazot na desna strana - operandi se promenlivi i konstanti - operatori te se ednomestni,dvomestni i povećemestni - rezultat na aritmetična operacija so celobrojni vrednosti e sekogaš celobrojna vrednost - rezultat na aribmetična operacija so realni vrednosti e'sekogaš realna vrednost - vo slučaj da imame operandi od različen tip pri aritmetičnite operaci i,rezu 1tatot e realna vrednost - vo logičnite izrazi operandite moraat da imaat logična ( boolean ) vrednost - rezultat na logični operaci i e sekopaš logična vrednost - rezultat na re lad ski operaci i e sekogaš logična vrednost Sintaksni edinici na JAL se: operand I .operator i i poseben znak .Imenuvan "simbol na krajot na izrazot" ( gi razdeluva izrazite megu sebe ) i go označuvarae so ( " ; " )• Napomena:Programi te koi gi pretstavuvaat soodvetnite funkcionalni edinici na procesorot za JAL ne se dadeni vo celost. Veruvame da od delovite koi se pretstaveni.osnovnite principi i metodi koi se upotrebeni se jasni. leksični analizator Simbolna preoden Greška tabela program opti gall ko9 ata sobiren jazik HC ^ioo LEKSICEH ANALIZATOR Vlez na leksičniot analizator e niiza od znaci od Izvorniot program,koi gl pregleduva i sozdava edinstvena logična pret-stava za sekoJ znak imenuvana " simbol". Leksičniot analizator e imenuvan REDAKTOR ,zatoa što osnovna negova dejnost e redakcija na Izvorniot tekst { program ) i preureduvanje za ponatamošna obrabotka.REDAKUOR e račno napišan leksični analizator.koj gi izvršuva slednite operacij: 1. Čitanje na značite nà izvorniot program 2. Prepoznavanje na soodvetnite sintal sledniot simbol za procesiranje - GREŠKA : ako terminalniot simbol ne se sovpaga so sintaksniot konstrukt na jazikot,se povikuva rutinata GREŠKA koja generira za vi dot na sintaksnata greška vo Izvorniot program program S INTAKSNAANALI ZA co ja procesi rame rečenicata na pridružuvanje co cal 1 PROMENLIVA ; j_f ( cal 1 SIMBOL = ":=•') then cal I REDAKTOR ; else call GREŠKA end if ; cal 1 IZRAZ ; _if ( call SIMBOL = " ; " ) then cal 1 REDAKTOR else cal 1 GREŠKA end if ; endproqraiti co kraj na programot SINTAKSNA ANALIZA co subroutine IZRAZ co karäkterot na Izrazot go poddava atributot na p romeni i va ta na levata strana od izrazot- co case karakternaizrazot easel ( karakternaizrazot = aritmetični izraz ) call ARITHETICENIZRAZ ; case2 ( karakternaizrazot = logičen izraz ) call LOGIEENIZRAZ ; endcase ; endsubroutine subroutine ARITHETIČENIZRAZ co proveruvame dali kako operator se Jàvuva ednomesten minus co ^ ( call SIMBOL = "-'■) then call REDAKTOR ; call ČLEN else call CLEN end if ; CO procesi rame niza od operatori na sobiranje co dowhile ( call SIMBOL ° "-" ill "-<-" ) 'call REDAKTOR ; call CLEN ; enddo ; endsubroutine subroutine CLEN CO proveruvame dali kako operator se pojavuva sirabolot za stepenuvanje co 11 ( cal2 SIMBOL = " ) then cal 1 REDAKTOR j call FAKTOR else cal I FAKTOR end if J CO procesirame niza od operatori na množenje co dowhile ( can SIMBOL - " ft " Ili " / " ) call REDAKTOR ; cal 1 FAKTOR ; enddo ; endsubroutine , subroutine FAKTOR co proveruvame dali postojat podizrazl vomali zagradi ( okrugli zagradi ) co J_f ( can SIMBOL = " ( " ) then call REDAKTOR ; cal I ARITMETIČEN IZRAZ ; ( cal I SIMBOL = 'M " ) then call REDAKTOR ; else cal 1 CRESKA endi f ; else If (call SIMBOL vo ronožestvoto A...Z ) then call PROMENLIVA else cal I KONSTANTA end If ; end if ; endsubroutine subroutine LOG 1 CEN IZRAZ call IMPLIKACIJA \ CO procesirame niza od operatori na ekvivalencija co dowhlle ( cal 1 SIMBOL = "EQUI" ) call REDAKTOR ; call IMPLIKACIJA ; enddo ; endsubroutine subroutine IMPLIKACIJA call LOGICENCLEN ; co procesirame niza od operatori na implikacija co dowhile ( cal 1 SIMBOL = "IMPL" ) call ftEDAKTOR ; cal I LOGICENCLEN ; enddo ; endsubroutine subroutine LOGICENCLEN call LOGICENFAKTOR ; co procesirame niza od operatori "ILI " co dowhile ( ca II SIMBOL = "OR" ) call REDAKTOR ; call LOGICENFAKTOR ; enddo ; endsubroutine subroutine LOGICENFAKTOR cal I LOGICENKONSTITUENT ; CO procesirame niza od operatori na "I" co dowhlle ( call SIMBOL = " AND " ) call REDAKTOR ; call LOGICENKONSTITUENT ; enddo ; endsubrout ine subroutine LOGICNIKONSTITUENT CO proveruvame dell kako operator se pojavuva negaci ja "NE" co rf ( calM SIMBOL = " HOT " ) then cal I REDAKTOR ; cai I LOGICNAPRIMITIVA else cai I LOGICNAPRIMITIVA end if ; endsubroutine subroutine LOGICNAPRIMITIVA co proveruvame dali postoi logiCenpodizraz vo mail zagradi co if ( call SIMBOL =."(■') then cal I REDAKTOR ; call LOGI CENIZRAZ ; If ( cal 1 SIMBOL = " ) " ) then call REDAKTOR ; . . c^ GREŠKA ■ ' end If else _I_f ( call SIMBOL vo mhožestvoto A ... Z ) then call LOGIČNAVREDNOST : ' else If'( cal I SIMBOL ° identifikator ) ■ then call PROMENLIVft else call ODNOS ■ endlf \ ■ end if ; . endlf ; endsubroutlne PraviInoto deluvanje na sekoj proces e zavisno od vlezot. Vleznata struktura može da ne se sovpaga so strukturata koja go Izvrluva procesot 111 da ne postojat toSnl speci-fikacii na vleznite podatoci .zboruvame respektivno za logična 1 formalna greška.Pri realizacijata na procesorot za ari tmetično-logični izrazi treba da se posveti odi-eden napor i vnimanie za implementacija na rutinata GREŠKA.Reali-zacijata na rutinata treba da se zasniva na slednite pravi la : ' - da e nasočena kon koristnikot ;da ja otkriva gre?ka-ta na kori stni kot-programer,a ne na procesorot - da Ja lokaliziragreškata i da bide što podetalen opisot na prirodata na greškata ( može da seodrži i poseben simbol koj ke ukažuva na mestolo na greSkata ) - da porakata za greškata se zasniva na izvornibt tekst Za pretstavuvanje na l.zvornlot program vo preoden jazlk, ja Izbravme postfiksnata polska nbtaciJa.Algoritraot na tran-slacija vodi smetka za odnapred defoniranata hlerarhlska prednost na aritmetični te I logičnite operatori.Kodata koja Ja generi rame od programot vo preoden Jazik vo post-fIksna.polska notacija e relativno optimalna.Algorltmot na-translacija e podaden podetalno vo (15). GENERATOR NA KODATA Generiranje na kodata pretstavuva presiIkuvanje na programot vo preoden Jazlk vo nekoja niza od simbol I.Presi i-kuvanjeto go razgleduvame kako operator definiran nad sintaksnoto drvo I informacijata vo simbolnata tabela. Pri generacija na kodata se obiduvame da so pomoš na mno-mestvoto primitivni operatori gl razbiene složenite konstrukti na izvorniot JazIk.Def ini rame okolina na objektniot sistem,koja Ja tvorat organi zaci.jata na regis-ri.te I strul<' turata na adresiranje.Za konkretniot primer okolina na sistemot e programskata struktura na mikroprocesorot I1C 6800; 7. ACC A 7 0 ACC B akomulator A akomulator B Indeksen registar Programski brojač Skladoven pokažuvač Us loven registar Generatorot na kodata e sostaven od dve funkcionalni edi-nlcl: skladoven avtomat I simulator.Skladovniot avtomat' gi dostavuva soodvetnl te operandi i operatori na simula-: torot.Simulatorot generira soodvetna koda i ja raenuva oko-I inata na sistemot.Za da ja izvrši taa zadača simulatorot sodrži opis na site vrednosti kol se naogaat vo procesot na obrabotka.toa e si ika na vrednosta , kako i opiis na okolina na objektniot sistem, imenuvan siika na sistemot. Vrednosta,prolzvolna^e pretstavena vo sistemot na poveće načini.zadaća na slika na vrednosta da Ja póddava momental-nata pretstava na vrednosta.Regi stri te na objektniot sistem sodržat poveće vrednosti za vreme ha izvršuvanje na programot zadača na slikata na sistemot da Ja dava momentalnata sodrži-na na sekoJ programski regi star.Vrednosta e pod kontrola na generatorot na koda,koga skladovniot avtomat bara simulacija na simbol koja e operand ; momentalnata sostojba na avtomatot e argument na simulacljata.Generatorot ja preklnuva vrskata . pomegu siikata na vrednosta I slikata na s istemot,koga vrednosta e upotrebena kako operand. • 0> TD jO C V m q— rezultat ; else call COHPLEMENt; ca 11 GENERIRAJ ; skladnaoperandi te -o— rezultat ; end if ; endsubroutine subroutine OVOMESTNAOPERACIJA case operator case i ( operator = " + " ) 1f ( vrednost na operand i te = realna ) then cal I FPADD ; call GENERIRAJ ; skladnaoperandi te-»- rezultat ; else prodolži endlf ; i f ( vrednost na operandi te = celobrojna ) then call FIXPADO ; call GENERIRAJ ; skladnaoperandi te -a- rezultat else prodolži endlf ; i f ( vrednost na operandi te = različna ) then call CONVERSION : call FPADD ; call GENERIRAJ ; skladnaoperandi te else cai I GRESKA endlf ; case2 (operator €=••-<•) rezultat endsubroutine program GENERACIJANAKODATA inicijalIzacija ; co go inicijal i zi rame skiadot na operandi, koj e vsuSnost kontrolen sklad na skladovniot avtomat; go inicijalizirame poleto vo koe se naoga arit-metično-logičniot izraz vo postfiksert poiski oblik, go inicijalizirame poleto'na vremenski lokacii co dowhile ( IZRAZ = " ; " ) j_f { A registar = zafaten ) then call GENERIRAJ ; skladnaoperandite o- temaddress else prodolži endlf J 1 f ( B registar = zafaten ) then call GENERIRAJ; skladnaoperandite «r temaddress else prodolži endif ; J_f ( IZRAZ = operand ) then call POBARAJVOTABELATA ; call P0BARAJV0REČM1K0T ; case vidnaoperandot easel ( vidnaoperandot= konstanta ) call GENERIRAJ ; skladnaoperand i te <>- IZRAZ ; case2 ( vìdnaoperandot= promenllva ) cal 1 GENERIRAJ ; skladnaoperandite o- IZRAZ ; endcase ; else prodolži endlf i If ( IZRAZ = znak na operacija ) then i f ( znak na operacija ednomestna ) then calj EDNOMESTNAOPERACIJA else ^U OVOMESTNAOPERACI JA endif ; else cal I GRESKA endlf : SISTEMSKO NEZAVISEN PROCESOR ReSenleto na sekoj problem teži kon uni verzalnost.Pri konstrukcijata na procesorot za arltmetično-ioglčni izrazi se obidovme da se do nivoto na sinteza procesorot bide nezavisen od objektnio si stem.Procesorot e sistemsko neza-visen na nivo na generacija na kodata.koga ne vodi smetka za opIsot na sistemot i generira abstrakten preoden Jazik,koj podocna lesno može da se pretransformira vo sobiren jazik za konkreten mikroprocesorski sistem. Konceptot na abstrakten sistem ,koj što go voveduvam0,kako model za prouEuvanje i razvivanje na sistemsko nezavisna programska oprema,pretstavuva eden vid na preod po megu čo-vekot i realnlot si stem.Abstraktnlot sistem go pretstavuvame 50 ednostavna arhitektura i malo množestvo na primitivni naredbi. Primitivni nàredbl se: - LOAD I STORE : formante na ovi e naredbi se edno-adresni.Koga procesorot eiiiì ti ra naredba LOAD i .operandot e staven na vrvpt od skladot.ostanata sodržina e pot I snata nadolu.Prlnareidbata STORE operando t e odstranet od vrvot na skladot .ostanata sodržina e potisnata nagore. ■ -OPERACI I : operatorlte nemaat adresa ( eden vid na na sistem so nulta adresa );Ednomesthite operatori dejstvu-vaat na vrvot od skladot na samo eden operand,dvomestni te na gorhite dva operanda. SImulatorot pretstavuva ranožestvo na rutini kol se naplšanl so najgolema možna opštost za određeni semejstva mikroprocesor! koi se razdeleni vo odredeni ekvivalentni klasi. iNa toj naEln simulatorot se pISuva za soodvetnlot pretstavnik na ekvivalentni te klasi. izvoren j az i k abstrakten jazik ABSTRAKTEN ANALIZATOR SISTEM SIMULATOR SOB IRAC abstrakten Jazik objekten jazik MEMORIJA U{ PROCESOR SKLAD ZAKLJUCOK Procesori-preveduvači deneska e možno da se implementiraat vo skoro site programski Jazici; postojat i posebno napišani Jazici za implementacija na preveduvači.Izborot na program-skiot jazik se zasniva na minimalizacijata na naporite pri realizacljata kako i najgoiem možen kvalitet vo upotrebii-vosita i univerzalnosta na preveduvačot. JaziJnitè strukturi se napolno formalizirani vo vremeto po Chontsky.so što e olesrieta rea 1 i zac i jata na odredeni Jazici. Lekslkalnite i sintaksnite analIzatorI se napolno definirani i verojatno najizučeni oblasti od naukata za konstrukcija ;na preveduvači. Generaci jata i optimal i zaci jata na kodäta se pred se zavisni od objek'tnrot sistem.Optimal izaći jata na jazikot JAL,treba da bide nasofen'a kon optimalizacija na zaedničkite arltmetl-čni I loglSni izrazi.Edno od možnlte reSehlJa.sekako treba so vnlmanie da se razgleda i izuči,e i voveduvanje na redun-dančni zagradi za sekoja n-torka zaednički podizrazi. Ilal rečnik na klučni zborovi 1 frazi ( angl Isko-makedonski hardware = materijalna oprema software = programska oprema compiler = p.reveduvač assembler = sobiren jazik source language = izvoren jazik ' resident software = sistemsko zavisna programska oprema non-resident software = sistemsko nezavisna programska . oprema tiigh-leVel programming language = programski Jazik od povi sok red LITERATURA (1) A.P. 2ELEZNIKAR Prevajalniki ,Univerza v Ljubljani 1977 (2) A.P. 2ELEZNIKAR Psevdokodiranje: sintaksa in uporaba Elektrotehniški vestnìk,Letnik li3,St.5,1976 (3) D. GRIES Compiler Construction for Digital Computers John Wiley 6 Sons,Inc. , 1971 W F.L. BAUER S J. EICKEL Compiler Construction: An Advanced Course Springer-Verlag, 1976 (5) J.S. RÖHL An Introduction to Compiler Writing Macdonald 6 Jane's .London ,1975 (6) F. GENUYS Programming Languages Academic Press London 6 NewYork.1968 (7) A.V. AHO £ J.D. ULLMAN The Theory of Parsing,Trans lat ion 6 Compiling Volume I : Parsing ; Volume II : Compiling Prentice Hall 1972 (8) H.S. STONE Introduction to Computer Architecture Science Reasearch Associates,1nc. 1975 (9) F.R. HOPGOOD Compiling Techniques Macdonaid London,197't (10) D. QUEYSAC Understanding Microprocessors Motorola Inc..Semiconductors Products Division (n) W. MARTIN Microcomputer in der Pilozesdatenverarbei tung Carl Hansen Ver iag,München,1977 (12) It's getting easier to program uPs with the new software design aids Electronic Des 1gn,Volume 25,No: 2 ,January 18,1977 (13) Solve software problems step by step Electronics Design,Vol ume 25,No: 2,January 18,1977 (l'i) R.T. YEH Applied Computation Theory : Analysi s,Design & Modelinq Prentice Hal 1,1nc.,1976 (15) O.B. POPOV, Diplomska naloga,FE-Onlverza v Ljubljani 60 Informatica št. 4 letnik 1977 on n-th root evalution by iterative methods with parameters I. n. djordjevic UDK 681.3:51 Faculty of Electronic Enyineoririci University of NIŠ, Yugoslavia Introducing parameters new iterative formulae for n-th root evaluation are obtained. Choosing parameter values an iterative higher-order convergence formula is obtained', as a linear combination of iterative lower-order formulae. Thus one can achieve parallelization of an iterative procedure. O IZRAČUNAVANJU N-TOG KORENA ITERATIVNIM METODAMA SA PARAMETRIMA. Uvodjenje parametara -lobijene su nove iterativne formule za izračunavanje n-tog korena. Izborom vrednosti parametara dobija se iterativna formulu višeg reda konvergencije, kao linearna kombinacija iterativnih formula nižih rc lova. Tim se postiže paralelizacija iterativnog procesa. 1. INTRODUCTION Evor IncTMsIng rofo of digital computon In various practical fleldi requlras an Incra-asod ^>eed In square, cube and n-th root evoluotlon. That requires the generation of the new Iterativa algorithms of a hlgh^order convergence. To evoluito o simple real root of equation f(K)=0, tfie use In [ I ] has been token of formule (1) Vl"*'"^' (1=0,1,2,.,.), where »(x) = OjW/i^ W, and Dj(x) and ore the following dotonnlnantes a /« • • - f/t (fn)'ffr,Y (fn)' tó'W" (nT (fr.)'f/r,y- (/n) m'm' (fTt) -np--g- Lef us luppoie thof In (3) parameter p tolcei m mutually different valuei and that j ore correspondent approximote voluei '^cTettlmoted by meani of (3) for the given value of Xp be an orUbmeHco) maon volue of thoto m opproxì- tnote value» x^^l Then tt holds . 1=1 i=i 1=1 Necetsoiy and luKIclent conelittor riMtSj^j haj eonverseneo order m+2 bs J b,(p,)-0, 1=1 m I yp^H), ,i=i (12) I b>,H), I-' m 1=1 CorKflllon (12) dotonntnei Hie lyjtem m of aljebnilc e Hneor, fhe second quodrciric and m~tli equation U of degree m. EllmlnatTng the ur^nown m-1 one can obtain on aquation with p. 03) ^ m(n-1) 1 (3^^) n-3m*2U-2 , The roots of eqtMtlon (13) ore the volues of porometer pj for which (M) m+2 where C{n) It o sum J b^^^ (pj) for the found values of pj. 1=1 " Fufthei, the coses m = 1 ond m " 2 will be studied. For tn = 1 For m ° 2 equation (13) becomes (15) 6p'+6(n-1)p+(n-1){n-2)-0, . the roots of which are SubsHtutlng the volues Pj and pj In (14) one, obtains (16) Depending on that which value of porometer p Is token, (3) gives two volues for the follcTMlne «^proxlmottt root volue k/K^-O) "l'"? where x,^, , Is the volue of '^öobwe, ond x,^, j Is th. value of below the exact volue. Then, (or the next opproxIrMte volue Is token (18) ledx,^,_, and 2 = (n-l)(n-2)/ (n^-l)xf' If In (18) ore directly substlhjted x,^, , and x^^, j from (17), and the use Is taken of connections pj+pj = 1 -n, pjpj = (n-l)(n-2)/6 It Is obtained (19) ^ (n-^I)(n^-2) xf" +4(n^-l) oxf ^ (n-2)(n-l) o' Note thot In [2] , for the next approximote value of the arithmetic mean of (4) and (5) (pj « 0, Pj = - n+1). Is token. The conveigence order of so obtolned method Is three'(3) for n ^3, that Is, for one order lower than the convergence order of formula (18). 3. METHOD^ WITH TWO PARAMETERS In this cose t" 1, ♦ (x) = x*", (x) » x"", f{x) = x" - o, ond formula (1) öfter evl-o I ' dent slmpllflcotlons ond substitutions p + q = u, pq = v acquires the form [(n-I)ufv+(n-I)'] xf"+ l(2-n)u-2vtn^+2n-2] ox"+(v-u+l)o^ 00) (nuv+n^ I E --flu-2v+n^. Formula (20) has the convergence order 3, and there ore two Independent porometers u ond V In It. By cowxectlon v =» -(n-1)(3u+n-2)/6 convergence order of (20) Is increased to 4, and only one parameter stoys In (20). So the problem Is reduced to the previous cose where Instead of p there exists u. Nw.: whore b|(u) (i=1,2,3,4,5,...) ore given by b,(u)"utn-I bj(u)=- [t5u'+M(n+I)ut11n^t30n-t4 1 /30 (23) b3(u) - [3u'+(9n+6)u^+(7n^+12n+I4)utn^+4n'+14n-22 ] /12 b^(u) = - [63u^+(252n+126)u^+(336n^t378nt294)u' + + (168n^+210n^+588nW2)u»^29n^-42n^+2I8n'+672n-IOB4 ] /504 Here, too, the cases m = 1 and m " 2 will be considered. For m " 1, u+n-l - 0 ahd (20) Is reduced to (24) I -- X|+l -I The relative en-or (24) Is (25) (n+l)(2n+l)^+2(2n-l)(2n+l)ax,"+(n-1)(2n-l)o^ . , 2n 2. 6n(x, - o ) (n'-iy4n'-l) 5 - il 720 Formulo (24) hos the convergence order 5 ond simpler structure thon (19) whose convergence order Is 4. 82 for m = 2, tho voluoi of parametar« u^ and Uj Mtlily tha oquoHon (26) + 30(n-l)u+(n-2)(11 n-8) = 0. Subitltutlng u, and u^ In [ b|(u,Hl>j(uj) ] /2 , (|=3,4,5), for tho rola»lvo orror of tho ortrtimoHeal moon Oj^, oblotnod oio »ho tonni (27) Coiidoring (27) one may conclude ihot tho combined method hoi tho convoii0onco order 8 for n ° 2 and 7 for n ^ 3 using u^ ond U2 from (26), and not 6 oi may bo expected by onology with reiults ftom (2). For u = 2-n , v = (n-I)(n-2K3 (1») U obtained from (20), ond for u = - 3n ond V ■> It? h obtained tho convergence order of which Ii Iroo ond In which only ono divlilon h nocotsary at the beginning of the Iterative process. Introducting three poromoton, on ttorotlvo formulo may bo obtolnod whoso convorgonco order Is 7 or moro. Numerical chock of convergence speed of the doscrfbo.-J methods hos conftrmcd tho correctness of tho oxposed studies, Tho checkvfos dono for on Intotvol I ^ » ' ] ond lorn = 2 no. ■ 4. CONCLUSION The mentioned methods can be used 1n evaluation of /x by i>:ean$ of standard programme package for realization on nlcroprocessors In float point arithmetics. (2B) >1 -I («"-o) [(n+l)»"-(3n+l)a] 1 -T-TT-^- REFERENCES /1/Var|uhln V.A, Koslonfuk S.A., Ob iteroclonyh motodoh utoSnenlfo kcmo} mov-nonl|, 2. vyilsl. motem. I motom, fix., 1969. 9, No 3, &84-«e7. /2/ Prihodiko 6.K., O v/člslenll komoi s notuialioym pokoiotolicm, Motomotlka v ikolo, 1972, NoS, 11-16. 63 Informatica št. 4 letnik 1977 bus standardi m. kovače vic UDK 681.3 (083.7) Institut "Jožef Stefan" Ljubljana Standardizacija na svim područjima tehnike je proces.koji je star skoro toliko koliko i tehnika sama, a razvija se i širi, osvajajući nova područja, zajedno sa razvojem tehnike. Tako i na području računarske materialne opreme (hardware) uočavamo sve veća i brojnija nastojanja na području standardizacije elemenata pa čak i-modula. Jedan od značajnijih posega na području standardizacije materialne računarske opreme predstavljaju pokušaji usvajanja jedinstvenog vodila (bus). U ovom broju našeg časopisa vam predstavljamo najpopularnije vodilo na području mikroračunarskih sistema S-100. pin symbol ime funkcija 1 + 8 V + 8 Volts 2 + 18V + 18 Volts 3 XRDY EXTERNAL READY 4 . V/O Vectored Interrupt Line 0 5 V/l Vectored Interrupt Line 1 6 V/2 Vectored Interrupt Line 2 7 V/3 ■Vectored Interrupt Line 3 8 V/4 Vectored Interrupt Line 4 9 V/5 Vectored Interrupt Line 5 10 V/6 Vectored Interrupt Linè 6 , 11 V/7 Vectored Interrupt Line 7 12 XRDY 2 EXTERNAL READY 2 13-17 18 STAT DSB STATUS DISABLE 19 C/C DSB COMMAND/CONTROL DISABLE 20 UNPROT UNPROTECT 21 SS SINGLE STEP 22 ADD PSB ADDRESS DISABLE 23 DO DSB DATA OUT DISABLE 24 ® 2 PHASE 2 CLOCK 25 (Dl PHASE 1 CLOCK 26 PHLDA \ HOLD ACKNOWLEDGE 27 PWAIT WAIT 28 PINTE INTERRUPT ENABLE Nestabiliziran napon na basu koji po stabilizaciji na ploči štampanog kola dobija vrijednost + 5 V. Predstabillziran pozitivni napon. Vanjski status ulaz u CPU modul Drugi vanjski status ulaz sličan XRDY Nije definisano Otvara/zatvara medjuspojeve za 8 status linija Otvara/zatvara medjuspojeve za 6 izlaznih komandno/kontrolnih linija Ulaz na memorijski zaštitni flip-flop na memorijskom modulu Označava da računar djeluje u režimu korak po korak (SS flip-flop je postavljen) Otvara/zatvara medjuspojeve za 16 adresnih linija Otvara/zatvara medjuspojeve za 8 Izlaznih podatkovnih linija Procesorski komandno/kontrolni signal koji se pojavi kao odgovor na HOLD signal po kompletiranju tekuće naredbe; označava da podatkovni i adresni bas prelaze u stanje visoke impedanse. Procesorski komandno/kontrolni signal koji se pojavi kao odgovor na skok READY signala na niski nivo; označava da procesor generira seriju WAIT stanja trajanja 0.5 us, dok READY ponovo predje u visoki nivo. Procesorski komandno/kontrolni izlazni signal koji označava dozvolu za prekide u skladu sa stanjem CPU fUp-flopa za prekide. Ako je flip-flop setlran, CPU; prihvata prekide, inače ne. pin symbol ime 29 A 5 Address line 5 30 A 4 Address line 4 31 A3 Address line 3 32 A 15 Address line 15 33 A 12 Address line 12 34 A 9 Address line 9 33 DOl Data Out Line 1 36 DOO Data Out Line 0 37 A 7 Address line 7 38 DO 4 Data Out line 4 39 DO 5 Data Out line 5 40 DO 6 Data Out line 6 41 DI 2 Data In line 2 42 DI 3 Data In line 3 43 DI 7 Data In line 7 44 SMI MACHINE CYCLE 1 45 SOUT OUTPUT 46 SINP INPUT 47 SMEMR MEMORY READ 48 SHLTA HALT 49 CLOCK CLOCK 50 GND GROUND 51 + 8 V + 8 Volts 52 - 18 V - 18 Volts 53 SSWI SENSE SWITCH INPl funkcija 54 55 56 57 58 69 70 71 72 73 74 EXT C LB RTC STSTB DIGl FRDY 59-67 68 ' MWRITE PS PROT RUN PRDY PINT PHOLD PRESET EXTERNAL CLEAR REAL TIME CLOCK STATUS TSBOBE DATA INPUT GATE 1 FRONT PANEL READY MEMORY WRITE PROTECT STATUS PROTECT RUN PROCESSOR READY INTERRUPT REQUEST HOLD RESET Statusni izlazni signal koji označava da je |iroslane aktivan. Statusni izlazni signal koji označava da je na adresnom basu adresa ulazno napravo, te da ulazni p(jrocesor8ki modul statični ram pomnilniski modul statički ram memorijski MOOVL teleprinter teleprinter mooem modem druge serijske periferne naprave ostali serijski periferijski uređaji dinamični ram pomnilniski modul dinamički ram memorijski modul serijski komunikacijski modul serijski komunikacioni modul modul procramskih prekinitev modul programskih prekida eprom pomnilniski modul eprom memorijski modul statični ram/eprom POMNILNISKI MODUL statički ram/eprom memorijski modul paralelni komunikacijski modul paralelni komunikacioni modul programator eprom integriranih ve2ij programator eprom integriranih ostale paralelne periferne naprave ostali paralelni periferni ureda računalnik racunar linijski tTAMPAC Mikroračunar Iskradata 1680 je zasnovan na mikroproce-sorskoj seriji MOTOROLA 6800. Sistem je izradjen u modularnoj tehnici, tako da svaki modul (ploča sa štampanim kolima, format dvojna evropa) predstavlja električni zatvorenu celinu. Zajednički sistem vodjica za ploče, na koji dolaze signali zajednički svim modulima, omogućava korisniku proširivanje osnovnog sistema, odnosno slobodan izbor konfiguracije mikroračunara Iskradata , 1680. Ulazno/izlazni moduli povezuju uredjaj sa proizvoljnim perifernim uredjajima i time otvaraju široke mogućnosti komuniciranja. Programski deo mikroračunara Iskradata 1680 obezbedju-je korisniku jednostavno pisanje programa i vezu sa programskim komandama. Mikroračunar Iskradata 1680 sačinjavaju moduli sa zajedničkim vodjiocima zbog toga mogu zauzimati proizvoljno mesto u uredjaju. Moduli nemaju fizičke adrese i zato mogu dobiti proizvoljnu adresu u okviru celog adresnog područja. U svojoj strukturi svaki modul ima relativnu adresu, koja se uključuje na samom povezivanjem ili pomoću preklopnika. Software mikroračunara Iskradata 1680 omogućava korisniku jednostavno programiranje sistema. Kontrolni program (monitor) sadrži sve potrebne rutine (naredbe) potrebne za upravljanje sa mikroračunarom (zapamti, pokaži itd) . Kontrolni program je upisan na EPROM integrisanom kolu. Rezidentni asemblerski prevodilac omogućava korisniku jednostavno pisanje programa u mnemoničkim rečima. (source program) . Makro assembler/disassemblerski prevodilac služi za pisanje programa u makro assembleru, odnosno za pretvaranje mnemoničkih naredbi u heksadecimalni kod. Korisnik ima takodje mogućnost programiranja u višem programskom jeziku BASIC . Korisnik može izbrati prevedeni program upisan u EPROM memoriji, odnosno na bušenoj papirnoj traci, koji potom sam svaki put unosi u RAM memoriju. U budućnosti bićemo u mogućnosti da isporučimo pored mikroračunara Iskradata 1680 još i potrebne perifer ne jedinice (ekranski pokazivač, teleprinter, uredjaj za disketu, linijski štampač itd.) Pored modula prikazanih na slici, imamo i : Brisač EPROM-a je u samostalno kućište ugradjena ultravioletna lampa za brisanje EPROM-a sa vremenskim uključenjem brisanja. U pripremi su još sledeći moduli: časovnik realnog vremena, DMA moduli, D/A i A/D konverter, koji će omogućiti još veću univerzalnost i sveukupnost sistema mikroračunara Iskradata 1680, ISKRA, Industrija za telekomunikacije, elektroniko in elektromehanike, Kranj, TOZD Računalniki, 64000 Kranj PE Ljubljana, 61000 Ljubljana, Titova 81 - telefon: (061) 326-367 . INFORMATICA 78 Bled, 2.-7. oktober 1978 simpozij 13. jugoslovanski mednarodni simpozij ó obravnavanju podatkov Bled, 2.-7. oktober 1978 seminarji izbrana poglavja računalniških znanosti Bled, 3.-6. oktober 1978 razstava računalniška oprema in literatura Bled, 1.-7. oktober 1978 organizator Slovensko društvo INFORMATIKA v sodelovanju z Institutom Jožef Stefan in Fakulteto za elektrotehniko, Ljubljana roki 20. marec 1978 - zadnji rok za sprejem formularja s prijavo in 2 izvodov razširjenega povzetka 30. april 1978 - pošiljanje rezultatov recenzije in avtorskega kompleta 20. junij 1978 - zadnji rok za sprejem končnega teksta prispevka nadaljnje informacije : INFORMATICA 78 Institut Jožef Stefan, 6001 Ljubljana, pp. 199 telefon : (061) 263 261, telegram : JOSTIN, Ljubljana telex : 31 296 YU JOSTIN S tradicionalnim posvetovanjem "Simpozij in seminarji INFORMATICA" slovensko društvo INFORMATIKA nadaljuje aktivnost Zveznega strokovnega odbora za obravnavanje podatkov pri Jugoslovanskem komiteju za ETAN. To posvetovanje je postalo tako po udeležbi kot po tehtnosti objavljenih del osrednje jugoslovansko srečanje teoretikov in praktikov s področja obravnavanja podatkov. Lanskemu simpoziju, na katerem je bilo predstavljenih 247 tujih in domačih del, je prisostvovalo 443 strokovnjakov. Zaradi hitrega vzpona znanstvenih in strokovnih računalniških moči v Jugoslaviji in sosednjih deželah pričakujemo, da bo na letošnjem simpoziju in seminarjih sodelovalo še večje število predavateljev in poslušalcev. Tudi letošnji simpozij bo mednarodnega značaja. V vabljenih uvodnih predavanjih in na seminarjih, ki bodo potekali vzporedno s simpozijem, bodo priznani tuji in domači strokovnjaki pregledno predstavili najnovejše dosežke iz izbranih področij računalništva in informatike. Za naše strokovnjake bo simpozij priložnost, da v teku uradnega dela simpozija in v neformalnih srečanjih podvržejo svoja dognanja kritični oceni priznanih tujih in domačih strokovnjakov. Upravičeno smemo pričakovati, da bo simpozij pomemben prispevek k medsebojnemu povezovanju ter izmenjavi izkušenj na področju računalništva. Vabimo vas, da se š prispevkom aktivno udeležite letošnjega posvetovanja. jezik simpozija Zaradi mednarodnega značaja simpozija vabimo avtorje, da predložijo in predstavijo svoja dela v angleškem jeziku, kar zagotavlja večji krog poslušalcev in bralcev. Seveda bodo v program uvrščena tudi dela, napisana v kateremkoli izmed jugoslovanskih jezikov. zbornik del Vsak udeleženec bo prejel zbornik del ob prihodu na simpozij , vsak avtor pa bo poleg tega prejel še pet kopij svojega prispevka. prijavnina Za simpozij : 2.000 din Za seminarje : 500 din (velja za cikel treh seminarjev) Za študente velja 50% popust Avtorji plačajo enak znesek kot drugi udeleženci. INFORMATICA 78 Bled, October 2-7, 1978 Symposium 13th Yugoslav International Symposium on Information Processing Bled, October 2-7, 1978 Seminars Selected Tbpics in Computer Science Bled, October 3 - 6, 1978 Exhibition Computer Equipment and Literature Bled, October 1 - 7, 1978 Organizer INFORMATIKA , Slovene Computer Society in co-operation with Jožef Stefan Institute, and Faculty of Electrical Engineering, University of Ljubljana Deadlines March 20, 1978 - submission of the application form and 2 copies of extended summary April 30, 1978 - mailing out of the summary reviews and author kits June 20, 1978 - submission of the full text of contribution Further information INFORMATICA 78 Institut Jožef Stefan, 61001 Ljubljana, pp. 199, Yugoslavia Phone : (061) 263 261, Cable: J03T1N Ljubljana Telex : 31 296 YU JOSTIN The traditional Bled computer conference, "Symposium and Seminars INFORMATICA", carries on its role as the major Yugoslav meeting of professionals in the field of computers and information processing Last year, 443 experts from Yugoslavia and abroad attended the meeting and presented 247 papers. In view of the recent upsurge of computcr-related .icti-vities in Yugoslavia and in its neighbouring countries, even stronger participation is expected this year. As in previous years, this will be an international symposium . In their invited papers and at the semin, rs, eminent foreign experts will present surveys of the latest achievements in selected fields of information science and technology. The sponsors and tlie organizing committee believe Ihnt INFORMATICA 78 will be a good opportunity for the exchange of ideas.and experiences in the field of inforniation processing. As a meeting of people from East and West it will also be an opportunity to further mutual understanding and co-operation. You are invited to take part in the symposium with submitted papers. General Information In view of the international character of the symposium, authors are invited.to write and present their contributions in English in order to benefit from broader audiences. However, papers written in any of the Yugoslav languages will also be included in the program. Proceedings Participants will receive the proceedings upon arrival. Each author will also receive five copies of his paper. Registration Fee For symposium : 2,000 din For seminars : 500 din (for cycle of 3 seminars) Student registration will be half price. Authors pay full registration fee. organiziran y obliki 8192 8-bitnlh besed. Podatkovni izhodi treh stanj in vhodi za izbiro čipa, ki jih je mogoče programirati, omogočajo širjenje pomnilnika. Vsi vhodi in izhodi SÒ TTL kompatibilni. INS8364 je mogočfe dobiti tudi kot INS8298 8080A LL "BASIC" interpreter in Hex Debbugger. Hitrost dostopa jè 450 nsec, čip pa potrebuje samo eno napajalno napetost + 5 V. ALGOL, SNOBOL za sistem s procesorjem 8080 Uporabniki sistemov z vodilom S-100 lahko sedaj kupijo simulator , s katerim je mogoče simulirati skoraj vse programske pakete, ki so pisani za PDP-8, na sistemih s procesorji 8080/8085/Z-80. Brez modifikacije je mogoče uporabljati tudi višje programirne jezike kot so : FOĆAL, Fortran II, ALGOL, LISA in SNOBOL ter asemb-lerski jezik, editor in programski paket za aritmetiko s plavajočo vejico. Edina osvojitev je hitrost pri BASlC-u in FOCAL-u, sicer pa se izvaja točna simulacija procesorja PDP-8. Uporabnik programira svoj sistem, kot, da bi delal z računalnikom PDP-8. Za kompatibilni sistem 8080/Z-80, ki simulira PDP-8 je potrebno : 12K RAM pomnilnik, CPU, vmesnik za kasetni pogon, čital-nik luknjanega traku ali floppy disc in običajen V-24 terminal. Za 89.000 Sch je že mogoče dobiti razvojni sistem IMSAI 8080 in PDP-8 simulatorski sistem. Nekoliko dražji je sistem z Z-80 - CPU. Prednost te ponudbe je v obilici programskih paketov za PDP-8, ki jih je mogoče dobiti po ugodnih cenah pri Digital Equipment ali DECUS-u. Simulator je mogoče kupiti pri Margreiter GesmbH, Dunaj. Nekateri razsikovalni in razvojni projekti s področja mikro računalnikov in obdelava podatkov na Japonskem. V spisku so navedeni nekateri projekti, ki se izvaja jo na japonskih univerzah ter podjetjih,in so zanimivi tudi za nas. Podatki se nanašajo na stanje v septembru 1977. Spisek je tale (naslov projekta:nosilec:naslov ustanove) : 1/ Lisp machine using a micr computer as a control : unit : Prof. Kotare Mano; College of Science and Eng. Aoyama Gakuin University, 6-16-1 Chitosedai Setagaya-ku, Tokyo. 2/ A new model of distributed type associative memory : Kenji Murakami ; Faculty of Engineering, Ehime University; Matsuyama-shi, 790 Japan. 3/ Microprogram Generator : Takanobu Baba ; Department of Computer Science University of Electro-Communications; 1-5-1 Chofuga-pka, Chofu-shi, Tokyo 182 Japan. 4/ BASIC-S Project : Mitsuo Kobayashi ; Department of Computer Science, University of Electro-Communications; 1-5-1 Chofuga-oka, Chofu-shi, Tokyo 182 Japan. 5/ On a question-answering for fuzzy informations: Division of Information Engineering, Graduate School of Engineering, Hokkaido University; Kita-ku, Kita 13-jo Nishi 8-chome, Sapporo, 060 Japan. 6/ Implementation of PASCAL Compiler by Bootstrapping Technique : Eiichi Miyamoto; Division of Information Engineering, Graduate School of Engineering, Hokkaido University. 7/ SL/M : A Microcomputer-Oriented System Description Language : Keiji Makino; Dept. of Electronic Engineering, Faculty of Engineering, Hokkaido University. 8/ uCAD (Computer Aided Design for Microprogra-mmablc Microprocessor Application Systems) : Mario Tokoro, Ph. D. ; AISO Research Group, Dept. of Electrical Engineering, Keio University, 832 Hiyoshiclio, Koho-ku-ku, Yokohama, Japan. 9/ The Changeable Floppy Disk Operating System depending upon the Diskette : M. Kitagawa ; Faculty of Engineerin, Keio University. 10/ Simulation of computer system with buffer memory: Tomoo Nakamura; Department of Engineering, Kyoto University ; Yoshida Honmachi, Sakyo-ku, Kyoto, Japan. 11/ Development of a Universal Assembler ,: Prof. Toshiyuki Sakai; Dept. of Information Science, Faculty of Engineering, Kyoto University. 12/ An Interactive Picture Processing System on a Minicomputer : Makota Nagao; Dept. of Electrical Eng., Kyoto University. 13/ Implementation of Associative Data Processing System a Multi-computer : Terumasa Hosomi ; Dept. of Information and Computer Sciences, Osaka University. Machikaneyama, Toyonaka, 560 Japan. ' 14/ Shortening the length of programs by using subroutines : Yoshiki Katsuyama; Dept. of Information and Computer Sciences, Faculty of Engineering Science, Osaka University, Toyonaka, Osaka 560, Japan. 15/ Networking for inter-university computer centers in Japan : Hiroshi Inose, Director, Computer Center, University of Tokyo; Dept. of Information Science, Faculty of Science, University of Tokyo; Yayoi 2-11-16, Bunkyoku, Tokyo, 112, Japan. 16/Job Management System of Computer Network TECNET: Hidekido Tanaka; Moto-oka Lab., Dept. of Electrical Engineering, Faculty of Engineering, The University of Tokyo; 7-3-1 Hongo, Bunkyo-ku, Tokyo, Japan. 17/ Implementation and Application of Concurrent Pascal : Masaru Watanabe ; Institute of Industrial Science, University of Tokyo; Roppongi 7-22-1, Minato-ku, Tokyo, Japan 18/ Implementation of a compiler for the programming language Pascal : Teruo Hikita, Computer Center, Univ. of Tokyo 19/ Implementation of a compiler for the programming language Pascal : Kiyoshi Ishlhata; Dept. of Information Science, Faculty of Science, University of Tokyo; 2-11-16 Yayoi, Bankyo-ku, Tokyo 113, Japan. 20/ Address Mapping with Softvrare : Morio Onoe, Institute of Industrial Science, Univ. of Tokyo; Roppongi 7-22-1 Minato-ku, Tokyo 106 Japan. 21/ Pattern recognition of the handwritten numerals : Toyoshi Shlmaoka; Junior College Dept., Yamaguchi University; Ogushi Ube City Yamaguchi. 22/ Development of Multi-Micro Processor System : Makoto Ito; Facility of Engineering, Yamanashi University; 4-3-11 Takeda, Kofu, Yamanashi, 400, Japan. 23/ System Program for Multi-Micro-Processors : Makoto Ito; Faculty of Engineering, Yamanashi Univ., 4-3-11 Takeda, Kofu, Yamanashi, 400, Japan. 24/ Hierarchical Programming Language System : Makoto Arisawa; Computer Science Dept. Yamanashi . University. 25/ Parallel Processing System for Multioperand Arithmetic Operations : Hiroyoshi Ohara; School of Science and Engineering, Waseda Univ., 4-170 Nishi-OJfkubo, Shinjuku-ku. Tokyo 160 Japan. 26/ Development of a high-performance microprocessor architecture : H. Iizukn; Electrotechnical Lab., 6-1, 2-chome, Nagata-cho, Chiyoda-ku, Tokyo, Japan. 27/ A model and analysis of bus-connected multiprocessor systems : T. Furutani; Electrotechnical Lab.,'6-1, 2-chome, Nagata-cho, Chiyoda-ku, Tokyo, Japan. 28/ A Design of Mutual Exclusion Control Module for a Multiprocessor System; Electrotechnical Lab., 6-1, 2-qhome, Nagata-cho, Chiyoda-ku, Tokyo Japan. 29/ Personal LISP Machine : Toshio.Shimada; Electrotechnical Lab., §-1, 2-chome, Nagato-cho, Chiyoda-ku, Tokyo, Japan. 30/ Study on Simulation Program System for Various Type of Arithmetic Instructions of Aerospace Computer: MasaoNaka; National Aerospace Laboratory; 1880 Jindaiji-machi, Chofu, Tokyo 182, Japan. Japonski mikroračunalniški klub. Število clanóv tega kluba je že v letu 1976 preseglo 1000. Klub je zainteresiran za izmenjavo izkušenj, časopisov,,informacij, itn. Naslov je : JAPAN MICROCOMPUTER CLUB, Mr. Koji Vada, Manager, Computer Center, Electrotechnical Laboratory, Tanaski Branch, 5-4-1 Mukodi-Machi, Tanaski-shl, Tokyo, Japan. Amaterski računalniški klub Essex Anglija obstaja že pet let in ima več kot tisoč članov, tako iz Velike Britanije kot iz oddaljenih krajev sveta. Člani kluba so povezani s časopisom, ki izhaja šestkrat letno. Vsebina časopisa je tako iz liardwarskega kot iz softwarskega področja. Letna naročnina znaša 2 funta. Naslov kluba je_: Amateur Computer Club at 7 Dordells, Basildon, Essex, England. Tvrdka Burr-Brown je najavila nov čip z oznako MP20, t. j. mikroprocesorski, analogni vhod z 16 kanalnim analognim multiprocesorjem, ojačevalnikom z visokim ojačanjem, 8 bitnim analogno-digitalnim pretvornikom in potrebnimi vmesniki vodil. MP20 je časovno in logično združljiv s procesorji 8080A ir. 8008. Ne zahteva se zunanja logika, Absolutna točnost je boljša od - 0,4% pri - 5 V ali napetostnem območju od O do + 5 V. Nizko nivojske signale kot so termosklopljenl izhodi lahko uporabimo neposredno. Ojačevalnik lahko programiramo od zunaj s pomočjo zunanjega upora, tako da lahko uporabimo vhodne signale velikosti ^ 10 m V. Dejansko lahko smatramo MP20 kot pomnilnik. Vsak analogni vhodni signal zasede eno pomnilniško lokacijo. Pomnilniška referenčna instrukcija se lahko smatra kot dostopen podatek. Tako s pomočjo LDA prenesemo vhod-nl' podatek iz enega kanala v akumulator. Potrebni enosmerni napetosti sta - 15 V In + 5 V. Za podrobnejše informacije pišite na naslov: Burr-Brown, International Airport Industrial Park, Tuscon AZ85734. Texas Instruments ima na tržištu podatkovni terminal Silent.700 sa memorijom sa magnotnim nijohurićima. To je prva poznata aplikacija memorija sa magnotnim mjehurićima. U standardnoj verziji Ima taj terminal 20K bajtova memorije sa magnetnim mjehurićima, .što je moguće proširiti na 80K bajtova. Momorijski podatkovnimi terminali udružuju iskustva povozana sa TI Silent 700 terminalima 1 prednosti magnetnih mjuhuriča za gradnju podatkovne memorije za terminalo koji inače zahtijevaju mnogo skuplje memorijsko medije kao na primjer kaseto, papirne trako, floppy diske itd. 763 ali 765 terminal može doseći bilo ko.i'i zapis u memoriji za 15 ms, što je mnogo manje u odnosu na nekoliko sekundi do nekoliko minuta za kasetno sistem. TI označava da aplikacije za novi terminal uključuju "timoslinring", novinarsko reporterstvo, bankovno poslovanje to poslovanje u osiguravajućim društvima. TI takodor znači da terminal može biti upotrijebljen za bilo koju aplikaciju u toku cijelog dana u režimu offline. Zapamćeni pcKlatci niotju, u odgovarajućem trenutku, biti poslani u glavni računar. Ovako off-line unošenje podataka reducira vrijomo prenosa I zauzetost telefonske linije preko koje se komunicira. Sa samo 17 funti, model 765 Portabl Momorijski terminal ima potpunu ASCII tastaturu, tilii termički panter, velike editorske sposolMiosti itd. Modol 765 Ibrtable Meniory Terminal stane 2995 3, moNorwalk,, CT 06856. no bazo, maksimalna.globina oklepajev pa je štiri. Negativna števila so prikazana na prikazovalniku v eniškem : ali dvojiškem komplementu; velja za heksadecimalno in oktalno bazo. ' - Kalkulator izvaja operacije AND^ OK-, XOR, OR in SHIFT bit za bitom nad heksadecimalnimi in oktalnimi števili. Za popolnejšo informacijo pišite: Texas Instruments ; , Inc. , Inquiry Answering Service POB 5012, M/584 : (ATT: TIP), Dallas TX 75222. Z novo tehnologijo LSI je tehnologija komponent naraščala, z njo pa tudi gostota integracije logičnih vezij v čipu., S postavitvijo modernih tekočih trakov za množično j proizvodnjo lahko za enako ceno podvojimo količino eie- | mentov ali pa'jim izboljšamo zmogljivosti. i Vse to vpliva na proizvajalce, ki se ukvarjajo z razvojem : materialne opreme. Za svoj obstoj morajo podvojiti proizvodnjo elementov ali pa izboljšati zmogljivosti. Na osnovi teh teženj je INTEL-ov predstavnik najavil 16 bitni paralelni mikro procesor v eneni čipu, INTEL 8086. Najavljen je za konec četrtletja. Trg in cena se približu- ; jeta osem bitnemu 8080 A z ceno 30 g za čip v količinah : nad 100 komadov. To pomeni povečanje števila upora- . , bnikov družine 8080. ' V sredini leta lahko pričakujemo, da bo tudi Zilog najavil svoj novi 16 bitni mikroprocesor Z86. Za konec leta . pa se najavlja tudi Motorola s 16 bitnim AMPS. Predvideva se, da bo tudi njihova politika cen gibala skladno z Intelovo; ' Toda INTEL 8086 ni prvi 16 bitni procesor v enem čipu'-na tržišču. Ze pred 18 meseci so se najavljali proizvajal vi kot so: Ferranti, General Automation, Texas .'Instruments, Data General in Fujitsu. Vendar so bili vsi ti čipi proizvedeni v majhnih količinah. Predvideva se, da se bo z visoko proizvodnjo 16 bitnih mikrò procesorjev približala do konca leta 1978 cena vseh 16 bitnih mikro rpocesorjev na nivo 30 To znižanje cen se bo poznalo predvsem pri produkciji mikroračunalniških modulov in pri izdelavi celotnih sistemov za razvoj programske opreme. - Klub uporabnikov Cosmac Elf. Klub izdaja mesečnik s članki, ki se na našajo na mikro računalnik firme RCA, Cosmac Elf. Naslov kluba : C.E. Manry, 2102 Williamsburg et S, League City, TX 77573, USA. Proizvodnja LSI Intégriranih vezij je poenostavljena z tehnologijo, ki jo je uvedla Hughes Aircraft Company. Gre za večslojno tankpplàstno metaliaacijo na monolitu. Nova tehnologija se imenuje SCAT (Hughes Schottky Cell Array TEchnology) omogoča gradnjo LSI vézij na osnovi knjižnice standardnih MSI in SSI Schottky TTL elementov. Rezultat SCAT tehnologije je zmanjšana poraba prostora in izboljšana zanesljivost. Tvrdka Texas Instruments je dala na tržišče nov kalkulator namanjen programerjem'. Kalkulator vsebuje osmiš-ko, heksadecimalno in decimalno aritmetiko in pretvorbo iz ene baze v drugo . Tipične aplikacije kalkulatorja so npr.: pretvorba heksadecimalnih adres v decimalne, ' izračun relativne adrese ipd. Izrazi imajo lahko meša- Ura, koledar in kalkulator v enem vezju. Na tiskanem vezju za vodilo S-100 se nahaja ura realnega časa, koledar in 40 funkcij kalkulatorja. Uporaba ure in koledarja obsega tiskanje izhoda za čas in datum ter sprožitev alarma in časovniških operacij s pomočjo dveh posebnih števnikov na tiskanem vezju. Vezje se lahko napaja iz akumulatorja. 40 funkcij kalkulatorja obsega aritmetične funkcije s plavajočo vejico ter tigonometrične, aigebrič-ne in druge osnovné matematične funkcije. Vezje se proizvaja v treh vrstah sestavljenk : sestavljenka za čas, datum in kalkulator stane 2 199; sestavljenka za čas in datum stane ^ 165; sestavljenka za kalkulator velja g 149. Naslov proizvrajalca :CQmpuTime. POB 417. Huntington Beach, CA 92648, USA. Testiranje oseb.la za obdelavo podatkov. Na Zapadu se je med drugimi,preizkusi človeških sposobnosti uveljavilo tudi psihologistično testiranje osebja, ki je zaposleno pri obdelavi podatkov. Pri teh testih gre za preizkuse obnašanja ter za ugotavljanje t.i,, vedenjskih konstant posar-meznikov, Lastnosti, ki jih želijo preizkusiti s takimi testi posameznikov so : splošna inteligenca, logično-kombinatorijsko razmišljanje, analogijsko razmišljanje, sposobnost abstrahiranja, jezikovna inteligenca, analitične sposobnosti, koncentracija in delovna dinamika. Seveda ni mogoče vseh teh lastnosti ugotavljati z enim samim testom. Vendar velja omeniti, da je osem gornjih lastnosti preizkusljivih s kombinacijami drugih testov, kot so : luknjičavi, slikovni, računski/kombinatorični, besedni, izdržljivostni in obremenilni, slučajnostni preizkus in preizkus prostorske predstavljivosti. Vsak preizkus se lahko nadomesti tudi s psihodiagnostičnim razgovorom. proizvajalca je : Digital Pathways Inc., 4151 Middlefield Rd, Palo Alto, CA 94306, USA. Mini/mikro računalnik RCA Cosmac. Elf II je 8 bitni mikro računalnik z možnostjo naslavljanja 64K zlogov, DMA, prekinitev, 16 registri, ALU, 256 zlogi RAM-a, kompletno heksadecimalno tastaturo, dvomestnim heksa-decimalnim prikazovalnikom, s petimi podnožji za razširitev sistema na glavni plošči tiskanega vezja Elf II. Ima kristalni taktni oscilator in RCA 1861 video integrirano vezje za prikazovanje poljubnega pomnilniškega segmenta na video monitorju ali navadnem televizorju. Cena sestavljenke je S! 99,95, naslov proizvajalca je : Netronlcs R D Ltd., Dept. BY2, 33 Litchfield Road, New Mllford, CT 06776, USA. Naklada časopisa BYTE . V mesecu februarju 1978 je naklada popularnega časopisa za majhne računalniške sisteme BYTE presegla število 110 000. Urednica časopisa obljublja, da se bo poslovanje časopisa izboljšalo, tako da ne bo več pripomb glede na ekspeditivnost obravnave želja in zahtev naročnikov. Nizozemski računalniški klub. T^ klub ima 230 članov, tretjina njih ima osebne računalnike. Klub priporoča zlasti uporabo procesorjev 6800. Naslov kluba je : HCC, Delftsekade 12, 2266 AJ Leidschendam, Netherlands . Kasetni zapisovalnik/čltalnlk za 4800 Baud. Zapis je asinhronski NRZ tip, zapisovalnik omogoča tudi start/ stop motorja. Razmerje napak je 10^ pri 4800 Baud. Zapisovalnik/čitalnik se lahko uporablja za hitrosti med 110 do 4800 Baud preko elementov U ART in PIA ter dobiva oz. oddaja signale na sponke RS232 ali TTL; tako ne uporablja nizkofrekvenčnega vmesnika. Ustavljanje in zagon motorja sta ročna ali s TTL in RS232 signali. Hitrost traku je 8 cm/sek ali 4 cm/sek.(s posebno izbiro). Uporabljajo se lahko visokokvalitetne kasete Philips ali pa digitalne kasete. Pogonske napetosti so: 110 V, 220 V izmenične ali 12 V enosmerne. Tipične obdelave v zvezi s tem zapisovalnlkom/čitalnikom so : zbiranje podatkov procesiranje tekstov, shranjevanje računalniških programov (nalaganje/shranjevanje) in podatkov. Programska oprema za obdelave na sistemih s procesorji 6800 in 8080 je na razpolago. Cene tega modela (Model CC-8) znaša 0 175, naslov proizvajalca je: National Multiplex Corp., 3474 Rand Avenue, South Plainfield, NJ 07080, Box 288, USA. Čas in datum za LSI-11. Tiskano vezje (za LSI-11) daje datum in razpolaga s funkcijami realnega časa za računalnik PDP-11, Model TCU-50 je namenjen LSI-11 in ima tele lastnosti : daje mesec in dan ter čas v urah, minutah in sekundah potem, ko je bil sprožen posebni čitalni ukaz. Model TCU-IOO je namenjen uporabi v računalniku PDP-11 ter ima še prekinitvene mehanizme, tako da lahko prekinja sistem v določenih časih ali pa v regularnih intervalih. Vezje se lahko napaja iz akumulatorja. Cena teh enot je 3 325 za TCU-50 In $ 495 za TCU-IOO, naslov POJMOVI I SKRAĆENICE NA PODRUČJU RAČUNARSKE TEHNIKE - Flow chart - Grafična predstava logičnog toka programa. - Hibrid computer (Hibridni računar) - Računarski sistem u kojem su digitalne 1 analogne komponente kombinirane. - Interpreter - Program koji naradbe u visokom programskom jeziku pretvara u mašinske naredbe i neposredno zatim ih izvršava. - Interrupt (Prekid) - Suspenzija normalnog izvršavanja programa s ciljem da se izvrši odredjeni servis zahtjevan iz periferije. Poslije kompletiranja servisa nastavlja se sa izvodjenjem osnovnog programa. - Interrupt handler (Kontrolni program za prekide) -Program koji ima kontrolu nad prekidima. Registri 1 statusi prekinutog programa se zapamte prije nego što se kontrola prenese na kontrolni program za prekide. - Interrupt level (Nivo prekida) - Oznaka prioriteta nekog prekida u odnosu na druge. - Label (Oznaka) - Simbolična reprezentacija adrese koja se sastoji od jednog alfanumeričkog znaka ili niza znakova. Oznaka identificira instrukciju, program, konstantu, varlaben ill podatkovno podriičje. - Link Loader (Nalagač koji povezuje) - Nalagač koji omogućava povezivanje programa i subrutina u jedan program. - Loader (Nalagač) - Program koji u memoriju prenese program u mašinskom kodu. - Macro - Pseudo naredba koja se upotrebljava pri generiranju skupina mašlnsklh instrukcija koje izvršavaju odredjene zadatke. - Mask - Uzorak bitova koji se upotrebljava za izvajanje dijela riječi (ili byte-a) tako da se izvrši logična funkcija AND sa tom riječi. - Microcomputer - Mali računar projektiran prije svega za OEM aplikacije, često sa hard-wired programima. - Micro instruction - Instrukcija u CPU koja operira na nižem nivoju od mašlnsklh instrukcija. - Micro program - Logični niz mikro Instrukcija koji je zapamćen u CPU jedinici. - Monitor - Program koji nadzire, kontrolira i verificira operiranje računarskog sistema. - Overlay - Upotreba istog dijela glavne memorije za nekoliko različitih programskih segmenata ili zbirki podataka koji se vremenski ne poklapaju. Tu tehniku upotrebljavamo ako su potrebe za radnom memorijom veće od'raspoložijivih kapaciteta. - Page - Memorijski segment koji može biti direktno adresiran jednom naredbom. - Page register - Registar koji sadrži broj stranica koju želimo adresirati. - Polling - Procedura testiranja statusa 1^0 naprava jedne za drugom s namjenom da se odredi ona koja zahtijeva servis. - Port - I/O dement koji omogućava povezivanje perifernih naprava sa računarom dozvoljavajući visoku brzinu prenosa tehnikom direktnog dostupa do memorije. - Program counter (Programski brojač) - Registar koji drži adresu sljedeće instrukcije koju treba da prihvati CPU. ■ ' ; f . - Programmed I/o - I/Ó tehnika pri kojoj CPU direktno kontrolira prenos podataka. - Pseudo instruction - Naredba koju interpretira asemb-ler i koja nema ekvivalenta u objektnom kodu. - Radix - Broj različitih znakova za digit u odredjenom brojnom sistemu.! literatura in srečanja Tvrdka Osborne and Associates, Inc., je ena vodilnih s področja izdajanja knjig iz mikroračiinalništva. Poglejmo nekaj iz ponudbe :> 1 1/ "An Introduction to Mlcr(x:omputers : Vol. I -Basic Concepts by Adam Osborne; 350 strani, cena ( ?! 7,50; Book No.:2001. 2/ "An Introduction to Microcomputers : Vol. II -Some Real Products" by Adam Osborne; 120 strani, cena 2 15 .00,^Book No. : 3001. 3/ "Some Common Basic Programs", by Lon Poole arid .Mary Borchers; 200 strani, cena jI 7,50, Book No.: 21002. 4/ "8080A in 8085 Assembly Language Programming" by Lance Leventhal; 450 strani j cena S! 7,50; Book No.: 31003. ' 5/ 8080 Programming for Logic Design", by Adam Osborne, 300 strani, cena ?! 7,50, Book No. 4001. 6/ 6800 Programming,ifor Logic Design by Adam Osborne, 300 sti-ani, cena 0 7,50, Book No..; 5001. ■ .. ■ .. j-.J 7/ "Z80 Programming fpr Logic Design", by Adam Osborne and Susanna Jacobson, cena 37,50, Book No.: .7001. . ■ Osborne and Associates, Inc., P.O.Box 2036, Berkeley, CA 94702. Hilberg, W.; Piloty, R (Hrsg.): Mikroprozessoren und ihre Anwendungèn; München: Oldenbourg 1977, 284 S., 151 Abb., 7 Tab., DM 58.- Hoffmann, R. : Rechenwerke und Mikroprogrammierung; München: Oldenbourg 1977, 197 S., 80 Abb, 17 Tab., DM 48." Kohonen, T.: Associative Memory A System Theoretical Approach; Berlin: Springer 1977; 176 S., 54 Abb., 7 Tab., DM48,- Martin, W.: Mikrocomputer in der Prozezdatenverarbei-tung; Aufbau und Einsatz der Mikrocomputer zur Überwachung, Steuerung und Regelung (Applied Computer Science 5); München: Hanser 1977, VIII, 205 S., 85 Abb., 13 Tab., DM 38.- Pieper, F. : Einführung in die Programmierung paralleler Prozesse; München : Oldebourg 1977, 133 S., 52 Abb., 35 Alg., DM 38.- Seitzer, D. : Elektronische Analog-Digital-Umsetzer ; Verfahren, Bauelemente, Beispiele; Berlin : Springer 1977, 143 S., DM 39.- Uticaj primene elektronskih računara i automatizacije na poboljšanje rezultata poslovanja u privredi. Izdavač: Privredna komora Jugoslavije, Sekretarijat PKJ-za istraživanje i razvoj, Beograd, 1978. Sadržaj : 1. Povezivanje na nivou jedne složene organizacije udruženog rada na primeru poljoprivrednog kombinata "Beograd". 2. Upotreba procesnih (mini) računara u čeličani,, Uvodjenje i koriščenje NC-tehnologije i NC-mašina alatnih u Željezari Ravne. 3. Prednosti vodjenja tehnoloških procesa i obrade podataka u industriji elektronskim računarom na primeru Železarne Ravne - Ravne na Koroškem. 4. Koriščenje elektronskih i ačunara u ZP"Jugoturbina" 5. Programski proizvod CPPS sa mogućnošću primene u industriji nafte i petrohemijskoj industriji na prinieru Rafinerije nafte Pančevo. 6. Mogućnosti primene elektronskih računara u elektroprivredi na primeru SOUR "Elektroprivreda BiH" •• 7. Osnovne informacije o primeni elektronskih računa-rau industriji sa. primerom Topionica bakra RTB - ; Bor. 8. Prednosti priniene elektronskih računara za vodjenje procesa elektrolize na primeru fembinata aluminija -r Titograd. . 9. Neki pogledi na pri menu elektronskih računara u proizvodnim organizacijama. Operativni sistemi održavanja opreme elektronskim računarima. 10. Primjena elektronskih računara u SOUR "Uljanik" -Pula. Numerička kontrola alatnih mašina u Fabrici aviona ■ "Utva"- Pančevo. 12. Ekonomija primene NC upravljanja. 13. Uvodjenje NC tehnologije u organizacije udruženog rada. 14. Primena elektronskih računara 1 automatizacije u baznoj hemijskòj industriji i ostalim proceaiim tehnologijama. 15. Prednost vodjenja tehnoloških procesa i obrade podataka u industriji na primeru Hemijske farmaceutske i kozmetičke industrije "Alkaloid".- Skopje. 16. Primena elektronskih računara u industriji konfekcije. 17. Tendencije razvoja sredstva za automatsku obradu podataka u složenim proizvodnim organizacijama. 18. Aktuelni problemi automatske obrade podataka u poljoprivredno-prehrambenonni sistemu, Osijek. 19. Mikroračunari i miktoprocesori, Roboti. 20. Primena elektronskih računa i elektronike u grafičkoj 1 riovlnsko-izdavačkoj delatnosti. 21. Primena elektronskih računara u trgovini na primeru Preduzeće robnih kuća "Beograd" . 22. Primena elektronskih, računara u poslovnim bankama, ' Primena elektronskih računara u Službi društvenog knjigovodstva, ■'Potreba za uključivanje Jugoslavije u SWIFT. I 23. Prednosti vodjenja procesa i obrade podataka na primeru PIK "Takovo" - Gornji Milanovac. S. Alagić, M.A. Arbib : The Design of Vell-Structured and Correct Programs, Springer-Verlag, BerUn-Heidel-berg-New York, cena DM 27,90. V februarju 1978 je v okviru zbirke "Texts and Monographs in Computer Science", ki jo urejujeta P.L. Bauer in D. Gries izšla knjiga priznanega jugoslovanskega strokovnjaka na področju računalniških znanosti v koavtorstvu s specialistom za umetno inteligenco M.A. Arbibom, ki obravnava razvoj dobro strukturiranih in korektnih pro-. gramov. Na 260 straneh s 68 slikami je opisan navzdolnji razvoj programov, sestavljanje akcij in pravila dokazo- . vanja, tipi podatkov, razvoj programov z dokazi korektnosti, procedure in funkcije,' rekurzije ter programiranje z in brez stavkov go to. Avtorja uporabljata Pascal, primeri algoritmov pa so skrbno izbrani. LETO 1978 Organizator: ACM-SIGARCH, lEEE-CS Informacije: ACM HQ, 1133 Avenue of the Americas, New York, NY 10036, USA. 11-13 april, Stocholm, Švedska SEMINAR ON MINIS IN TERMINAL-BASED SYSTEMS Organizator: On line Conference Limited Informacije: Jean Seago, Online, Cleveland Road, Oxbridge UB8 2DD, Middlesex, UK. 3-8 april, Paris, Francija SALON INTERNATIONAL DES COMPbSANTS ELECTRONl-QUES Informacije: Französische Fachausstellungen Reisnerstrasse 50, 1030 Wien 3. 11-22 april, Madrid, Španija INTERGOVERNMENTAL CONFERENCE ON STRATEGY AND POLICIES FOR INFORMATICS Organizator: IBI, UNESCO Informacije: IBI.Headquarters, POB 10253, 00144 Rome Italy. 10-14 april, Zagreb JUREMA Informacije: Djura Salàja S/VIII, PBO 398, 41000 Zagreb. 9-12 maj, London, Velika Britanija EUROCOMP 78 Organizator: Online Conferences Limited Informacije: EUROCOMP 78, Online, Cleveland Road, Uxbridge UBB 2DD, England. 22-25 maj, Taormina, Sicilija SIXTH INTERNATIONAL CODATE CONFERENCE Organizator: CODATA Informacije: CODATA Secretarat, 51 Boulevard de Montmorency, 75016 Paris, France. maj. Bled, Jugoslavija CONFERENCE ON COMPUTERS IN BANKING AND FINANCE Organizator: lAG Informacije: lAG HQ, Paulus Potterstraat 40, Amsteridam -1007, The Hetherlands. 29 maj - 3 junij, Dubrovnik, Jugoslavija MEDJUNARNA ŠKOLA ELEKTRONIKE Informacije: Institut za Nuklearne Nauke "Boris Kidrič", POB 522, Beograd. 14-17 marec, Toulouse, Francija SYMPOSIUM ON MEDICAL INFORMATICS Informacije: Prof. Francois Begon, CTI, Domalne de Vo- luceau, BP 105. 78150 Le Chesnay, France. 29-31 marec, Lancaster, Velika Britanija COMPUTERS IN HIGHER EDUCATION Informacije: Dr.E.Tagg, S Dept. of Mathematics, University of Lancaster, Lancaster LA 1 4YI, UK . 3-5 april, Palo Alto, California, ZDA FIFTH ANNUAL SYMPOSIUM ON COMPUTER ARCHITECTURE 11-17 junij, Helsinki, Finska IFAC CONGRESS Organizator: Finish Society of Automatic Control Informacije: Mr Olli Pezolanti, Höyläämotie 18, 00380 Helsinki 38, Finland. ■ 21-23 junij, Toulose, Francija 1978 INTERNATIONAL SYMPOSIUM ON FAULT TOLERANT COMPUTING-FTCS-8 Organizator: FTC Technical Committee of the Institute for Electrical and Electronics Engineers Computer Society Informacije: IEEE. 345 East 47th Street, New York, NY 10017, USA. 11-15 junij, Prague, Češkoslovaška IFAC/IFIP INTERNATIONAL SYMPOSIUM "SOFTWARE FOR COMPUTER CONTROL" Organizator in informacije: IFAC/IFIP TC 5 12-15 junij, Zürich, Švica FOURTH INTERNATIONAL SYMPOSIUM AND EXHIBITION MINI- AND MICROCOMPUTERS AND THEIR APPLICATIONS-MIMI'TS Organizator : International Society of Mini-and Microcomputers Informacije :'Secretariat.MIMI'78, Intere oh venti on, c/o Swissair, Postfach, 8085, Zürich, Switzerland. 22-24 junij, London, UK THE 1978 DO-IT-YOURSELF COMPUTER SHOW Organizator: Online conferences limited Informacija: Mrs. Lynne Swiatek, Cleveland road, Uxbridge UB 8 2DD, Middlesex, UK 22-23 juriij, Gardone Riviera, Italija ICPCI 78: INTERNATIONAL CONFERENCE ON THE PERFORMANCE OF COMPUTER INSTALLATIONS Organizator: Politechnico di Milano, Università Cattolica del S.Cuore, Università Commerciale L. Bocconi, Università degli Studi di Milano, Università degli Studi di Pavia Informacije: ICPCl 78 Conference Secretariat, CILEA, Via Raffaello Sanzio 4, 20090 Segrate (MI), Italia. 29-30 junij, Milano, Italija INTERNATIONAL CONFERENCE ON MANAGEMENT DATA Organizator: ACM Italian Chapter Informacije: ACM HQ, 1133 Avenue of the Americas, New York, NY 10036, USA. 18-22 julij, Udine, Italija . FIFTH INTERNATIONAL CONFERENCE ON AUTOMATA LANGUAGES AND PROGRAMMING Organizator : CISM , CNR Informacije : CNR, Via Panciatachi 56/16, 50127 Florence, Italia. ' 24-26 julij, Newport Beach, California, ŽDA ■ 1978 SUMMER COMPUTER SIMULATION CONFERENCE Informacije : Dr. Ralph Ć. Hunsinger, Comp. Science Dept., California State University - Chico, Chico, CA 95029, USA, 6-9 avgust, Jerusalem, Izrael JERUSALEM CONFERENCE ON INFORMATION TECHNOLOGY Informacije : Dr. A. Ralston, SUNY at Buffalo, 4226 Ridge Lea Road, Amherst, NY 14226, USA. ) 13-18 avgust, Rehovot, Izrael MODELIZATION AND SIMULATION METHODS Informacije : Bernard Zeigler, Dept. of Applied Mathematics, Weizmann Institute, Rehovot, Israel. 21-25 avgust, Amsterdam, Nizozemska FOURTH INTERNATIONAL CONGRESS OF CYBERNETICS AND SYSTEMS Informacije : Dr. J. Rose, c/o College of Technology, Feilden Street, Blackburn BB2 ILH, Lanes,UK; or Prof, van der Zouwen, Dept. of Research Methods, The Free University, de Boelelaan No 1115, Amsterdam, Netherlands. September, Berlin, ZRN THIRD INTERNATIONAL CONGRESS ON ELECTRONIC 1NFOR-: MATION PROCESSING .(IKD) Organizator: AMK-Berlin, IKD Professional Commission Informacije: ÀMK-Berlin, Ausstellungs-Mess-Kongress-GrhbH, Messedamm 22, D-lOOO, Berlin 19, Germany. 4-8 september, Manila, Filipini SOUTH EAST ASIA REGIONAL COMPUTER CONFERENCE 1978 (SEARCC 78) Organizator: Singapore Computer Society Informacije: Robert lau, President, Singapore Computer Society, c/o Central Provident Fund Board,' Robinson Road, Singapore 1, Rep. of Singapore. - 5-6 september, München, ZRN SECOND INTERNATIONAL SYMPOSIUM ON DATA .PROCESSING IN SOCIAL SECURITY Organizator: International Social Security Association Informacije: Dr. V . Velimsky, ISSA Data Processing Consultative Service, Boulevard de 1' Empereur 7, B-IOOO Brussels, Belgium. 11-15 September, London, Velika Britanija MINI AND MICRO CONFERENCE Organizator: Online Conferences Limited Informacije: Jean Seago, Online, Cleveland Road, Uxliridge UB8 2DD, Middlesex, UK 13-15 september . West Berlin, ZRN FOURTH INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES Informacije: Herbert Weber (Gen Chm), Huhn-Meitner Institut, 1 Berlin 39, Postfach 390128, Federal Republic of Germany 18-22 september, Paris, Francija CONVENTION INFQRMATIQUE 78 Informacije: Convention Informatique, Secretariat, 6 place de Valois, 75001 Paris, France. 21-23 September, Bologna, Italia INTERNATIONA CONFERENCE ON INTERACTIVE TECHNIQUES IN COMPUTER-AIDED DESIGN Informacije: Ira Cotton,^Institute for Computer Science and Technology, National Bureau of Standards, Washington, DC 20234, USA. 10-12 oktober, Venezia, Italija SECOND CONFERENCE OF THE EUROPEAN COOPERATION IN INFORMATICS ON INFORMATION SYSTEMS ^iE^HODOLOGY Informacije: Prof. dr. P. Lockemann, Institut für Informatik II, Universität Karlsruhe, Postfach 6380, D-7500 Karlsruhe 1, Federal Republic of Germany, or Luciano Lippi, IBM Centro Scientifico, Dorsoduro 3228, 30124 Venice, Italia. 24-27 oktober, Copenhagen, Danska COPENHAGEN CONFERENCE ON COMPUTER IMPACT Organizator: Danish lAG ^ Informacije: CCCI-78, DIAG,, The Danish EDP-Council, 58 Brcdgade, DK-1260 Copenhagen K, Denmark. 30 oktober - 1 november, Washington, DC, ZDA SYMPOSIUM ON FUTURE TRENDS IN COMPUTARIZED STRUCTURAL ANALYSIS AND SYNTHESIS Organizator: University of Maryland, George Washington University, NASA Langley Research Centre Informacije: University of Maryland, College Park, MD, USA. vsebina letnika 1977 7-10 november, Kyoto, Japonska FOURTH INTERNATIONAL JOINT CONFERENCE ON PATTERN RECOGNITION : Informacije: Prof. T. Sakai, Kyoto University, Dept. of Information Science, Kyoto, Japan. avtorji in sodelavci Veljko ZGAGA (1955), diplomirao je 1977 godine na Elektrotehničkom fakultetu u Zagrebu, usmjerenje računarska tehnika i informatika.. Zaposlen je; na Institutu "Rudjer Bošković" u Zagrebu, gdje radi na primjeni mikroprocesora i razvoja mikroračunarskih sistema. Tokom studija bavio se problemima sinteze ljudskog glasa. Iz tog područja objavio jè nekoliko radova u zemlji i jedan u inozemstvu. Anton P. ŽELEZNIKAR (1928), diplomiral leta 1956 z diplomskim delom "Magnetostrikcijska spominska zanka" na Fakulteti za elektrotehniko v Ljubljani. Magistriral leta 1966 in doktoriral leta 1967 s področja teorije algoritmov. Leta 1968 je prejel Kidričevo nagrado za dela s področja teorije algoritmov. Od leta 1965 je bil predsednik strokovnega odbora za obravnavanje podatkov (ETAN), organizator simpozijev Informatika na Bledu, kongresa IFIP 71 v Ljubljani . Od leta 1976 je predsednik Slovenskega društva Informatika in od leta 1977 izredni profesor na Fakulteti za elektrotehniko v Ljubljani. Objavil je vrsto del v jugoslovanskih časopisih. Slavko TRIPKOVIĆ (1949), diplomirao na odsjeku za automatiku Elektrotehničkog fakulteta u Sarajevu 1973 godine. Magistrirao na odsejeku za računarsku tehniku I informatiku. Elektrotehničkog fakulteta u Beogradu 1977 godine. Od 1973 godine radi u Energoinvestu - Institut za računarske i informacione sisteme - na problemima primjene računara u upravljanju industrijskim procesima i programiranje u realnem vremenu. Sadašnje područje interesovanja i rada obuhvata distribuirane sisteme (realno vrijeme) na bazi mikro/niini računara. Roman TROBEC (1953), diplomiral 1976 leta na Fakulteti za elektrotehniko v Ljubljani, smer industrijska elektronika, s temo diplomske naloge: "Matematični model za funkcionalno diagnostiko sistemov." Zaposlen v oddelku za dektroniko na Institutu "Jožef Stefan" v I.jubijaiii. Področje dela je odkrivanje metod za funkcionalno diagnostiko sistemov (mikroračunalnikov, računalniško vodenih sistemov) in uporaba mikroračunalnikov za potrebe industrije, kakor tudi izdelava programske in sistemske opreme za te naloge. Alagić S., R. Jovič, Dž. Ridjanovič: Manipulisanje hijerarhijskom bazom podataka (št.l, str.10). Alagić S. : Cleaninig up Unstructured Algorithms Using Invariants (št. 2. str. 17) . Batagelj V. : Urejanje zaporedij (St. 1, str. 56). Batagelj V. : Kako narišemo pravilni mnogokotnik (št. -1, str. 50). BratkoI.: Drugo svetovno šahovsko prvenstvo računalnikov (št.4, str. 67). Ćećez-Kecmanović D.: Okvir za izračunavanje informacijskih sistema (št. 1, str. 25). Davčev D. : Memoire virtue'le et la technique d'optimisation ,-idnptee a 1'interpreteur APL sur Mitra 15 (St. 1, str. 50). Davčev D. : Function de tri croissant et de tri decroisant APL Mitra 15 (št. 2, str. 62) . Djordjević L.N. : On N-th Root Evaluation by Iterative Methof)radske l.)anke (št. 4, str. 30) Oojanovlć D.: Graphics Machine lnde|-)endence with Help of Network Graphic Protocol (St. 3, str. 35). Kalan J. : Primer koncepta računalniškega omrežja (št. 3, str. 40). Kalin T., I. Lajovic, V. Rajkovič, D. Viličič: Osnovni parametri in usmeritev načrtovanja računalniške mreže v Sloveniji (št. 3, str. 15). Kette B.: Specifičnosti mikroprocesorske izvedbe mjerila broja okretaja (št. 3, str. 27). KodekD.: Primer preprostega mikro računalnika z mikro procesorjem Motorola 6800 (št. 1, str. 46). Kolbezen P., B. Mihovilović, Z. Milavc : Rešitve nekaterih problemov krmiljenja objekta z mikroprocesorje!^ v realnem času (št. 2, str. 35). Kovačević M., D. Novak, A.P. Železnikar: Monitori za mikro sisteme sa procesorom 6800 (št. 2, str. 20). Kovačević M., D. Novak, J. Novak, A .P.Železnikar : Preizkušanje mikroračunalniških modulov (št. 3, str. 32). Kovačević M. : BUS standardi (št. 4, str. 64) . , MichieD.: New Face of Artificial Intelligence (št. 3, str. 5). MuftićS.: A Model of Secure Computer System (št. 1, str. 33). Nikolié S., Ž. Tošić: Jedan postupak za mikroprocesorsko ostvaranje preki-đačkih funkcija (št. 4, str. 31). Novak D., M. Kovačević, A.P. Železnikar: Priključitev hitrega čitalnika luknjanega traku na mikro računalnik (št. 3, str. 20). Paplć N., M. Kovačević : Univerzalni serijsko vhodno/izhodni modul (št.4, str, 44). Popov O.B. : Procesor za aritmetično-logični izrazi (št. 4, str.54). Ponebšek B.: The Microcomputer Families 8080, 6800, F8, Z80 (št. 1, str. 21). Popovič B., M. Exel, M. Mekinda: Primjena monitorskog koncepta u izgradnji operacionog sistema za periodično aktiviranje programa (št.2, str.13) Sgall D. : Linguistics and Automatic Processing of Texts (št. 2, str. 68). Tasič J., L. Lenart, B. Blatnik: Ceneni mikroračunalnik s procesorjem SC/MP (št. 3, str. 50). Tomović R. : Sistemski prilaz razvoju i projektovanju gradskih infor-macionih sistema (št. 4, str. 5). Trampuž C ., A . Ferligoj : Nekateri vidiki uporabe računalnikov v sociologiji in politologiji (št. 1, str. 17). Tireford H. : Linking Fortran and Assembly Language Programs (št. 2, str. 60). Trobec R., J . Korenini, F. Novak : Dinamični MOS pomnilniki (št. 2, str. 55) . Tripković S., M . A škrabič : Kros-asembler i simulator za mikro/mini računare (št. 3, str. 23). Virant J. : Reševanje problemov računalniškega kadra in kadra informatike v SR Sloveniji (št. 1, str. 38). Zgaga V. : Upis kontinuiranih signala u mikro računalo (št 2, str. i?) Zgaga V. : TV-Terminai za mikroračunalo (št. 4, str. 34). Zupan J. : Kriptógrafija na prelomu (št. 4, str. 24). Železnikar A .P. : O časopisu Informatica (št. 1, str. 3). Železnikar A.P., Ozimek 1., M. Kovačević, D. Novak: Programiranje mikro računalnikov s procesorjem Z80 (št. 2, str. 5) . Železnikar A.P., M. Kovačević, D. Novak:'. Razvoj dinamičnih pomnilnikov za mikro računalnike (št. 4, str.11) . CENIK OGLASOV Ovitek - notranja stran (za letnik 1977) 2 stran-------------------- 16 .000 din 3 stran--------------------12.^00 din Vmesne strani (za letnik 1977) 1/1 stran------------------ 8.000 din 1/2 strani-------:----------^ 5.000 din Vmesne strani ( za posamezno številko) 1/1 stran------------------ 3.000 din 1/2 strani---------,--------- 2.000 din Oglas o potrebah po kadrih ( za posamezno številko) ------------------ 1.000 din Razen oglasov v klasični obliki so zaželjene tudi krajše poslovne, strokovne in propagandne informacije in članki . Cena objave tovrstnega materiala se bo določala sporazumno. ADVERTIZING RATES Cover page (for all issues of 1977) 2nd page------------------- 16 .000 din 3rd page------------------ 12.000 din Inside pages (for nil issues of 1977) 1/1 page------------------ 8.000 din 1/2 page----------------- 5.000 din Inside pages (individual issues) 1/1 page------------------ 3.000 din 1/2 page ------------------ 2.000 din Rates for classified advertizing: each ad------------------- l .000 din In addition to advertisments, we wellcome short bustii.\ss or product news, notes and articles. The related chtiiyes are negotiable. mikroračunalniki vt STE SE 2E ODLOČILI ZA UPORABO MIKRORAČUNALNIKA V PROIZVODNJI, ALI PA 2E IMATE MIKRORAČUNALNIK IN 2ELITE IZVESTI REŠITVE PO VASI ZAMISLI? NUDIMO VAM: -NAJSODOBNEJŠE TEHNIČNE REŠITVE Z UPORABO NOVE TEHNOLOGIJE - PROJEKTIRANJE VEČJIH SISTEMOV (MULTIPROCESORSKIH) - DIAGNOSTICIRANJE PROCESOV - IZDELAVO iN TESTIRANJE UPORABNIŠKIH PROGRAMOV S POMOČJO VELIKIH SISTEMOV - KONZULTACIJE ZA UPORABO MIKRORACUNALNIŠKIH SISTEMOV V INDUSTRIJI IN GOSPODARSTVU - IMAMO IZKUŠNJE Z UPORABO MIKROPROCESORJEV (Z 80, 6800, F-8, 8080, 2650, PFL 16, SC/MP), DINAMIČNIH POMNILNIKOV, PERIFERIJE ITN. Institut Jožef Stefan, Ljubljana, Jamova 39 ODSEK ZA RAČUNALNIŠTVO IN INFORMATIKO Telefon (061)83-261 Int. 305 MIKRORAČUNALNIKI