f y informatica Z FÄCOM kompjutere proizvodi Fujitsu, tvrtka koja najveću pažnju posvećuje sistemima. LSI s rebrima za hlađenje Prije svega kompjuter je sistem, tj. sredstvo za obradu podataka koji u sebi sadrži hardware, software i apiikacionu tehnologiju. Naravno razne tvrtke bave se prodajom kompjutera, tpak, malo je tvrtki koje mogu ponuditi potpuni izbor sredstava.za automatsku obradu podataka — : konstruirani tako, da osini optimalnih performanci, imajü mogućnost ugradnje u veće sisteme. FUJITSU je jedna od tvrtki koja to rpože ponuditi. Kao vodeći proizvođač kompjuterskih sistema u Japanu, FUJITSU proizvodi široki asortiman proizvoda od minikompjutera s jednim LSI cipom do u svijetu najmoćnijih LSI sistehia, kao i široki izbor periferne i terminalne opreme. FACOM kompjuteri obavljaju važne aktivnosti u poslovnim i državno-administrativnim organizacijama u mnogim zemljama sirom svijeta. U Japanu, drugom po redu najvećem tržištu kompjutera u svijetu, instalirano je najviše FACOM sistema u usporedbi s drugim modelima ostalih proizvođača. Ovi moćni, pouzdani FACOM kompjuteri sposobni.su za obavljanje svih mogućih poslova. Oni upravljaju satelitima u svemiru, daju prikaz atmosferskih prilika real-time grafikonima u boji, obavljaju bankovno poslovanje pomoću on-line sistema za višeod 7.OÖ0 filijala i ■ ekspozitura i jbš mnogo, mnogo toga. FACOM kompjuteri su potpuno integrirani sistemi gdje se kombinacijom visoko-kvalitetne tehnologije, moćnog softwarea i već provjerenih aplikacionih programa postiže efikasnost i pouzdanost kojima nema premca. ! r-. Za dalje informacije obratite se na: Zavod za primjenu elektroničkih računala i ekonomski inženjering 41000 ZAGREB Savska c. 56 Telefon: 518-706, 510-760 Telex: 21689 YU ZPR FJ FUJITSU Fujitsu Limited'Tokyo. Japan INFORMATICA 2/1979 MIKRORAČUNALNIK IKE-1 S PROCESORJEM I 8086 A.P. 2ELEZN1KAR D. NOVAK UDK: 681.3-181.4 INSTITUT JOŽEF STEFAN, LJUBLJANA Članek prinaša opis strukture, programiranja ter podroben naört določene rafiunalniSke konfiguracije s 16-bitniiii procesorjem nove generacije Intel 8086, Zgradba procesorja 8086 ima vrsto novosti, pa tudi ukazna zaloga procesorja vesbuje nekatere ukaze, ki so namenjeni zlasti multiprocesorskim sistemom. Opisana konfiguracija vsebuje krmilnik za prekinitve, časovnik, dva USARTa in paralelni izhodni port. Monitor konfiguracije ima le najosnovnejše direktive, ki pa omogočajo postopno razäiritev monitorja. Zanimivi ao tudi primeri uporabe posebnih ukazov, kot je prikazano v članku. IKli-l Microcomputer using 8086 Processor. This article deals with architechture,. programming and with design of a computer configuration using new generation 16-bit processor Intel 8086. Processor architecture has dome novelties and instruction set includes instructions dedicated to the design of multiprocessing systems. The described computer configuration is composed of interrupt controller, timer, two USARTs, and paraleli output. Monitor of this configuration is very basic with only few directives enabling for their monitor development. Examples of particular instructions usage are presented. 1. UVOD Članek opisuje mikroraCunalniško konfiguracijo s l6-bitnim mikro procesorjem INTEL 8086. Ta procesor je član t,i. novega mikroprocesorskega vala (prehodne generacije), ki jo sestavljata še Z-8000 in MC68000 ter drugi prihajajoči 16 bitni procesorji. Bržkone bi bila ocena procesorja 8086, kot prvega iz svoje generacije, površna, če bi preprosto povedali, da je 8086 le nekakšno nadaljevanje njegovih B-bitnlh predhodnikov 8080A in 8085. Res je, da lahko procesor 8086 uporabi periferne člane procesorske družine 8080A, kot so npr. PIO 8255, UBART 8251, PIT 8253, DMAC S257, FDC 8271, DEU 8294 itn. na delu svojega podatkovnega vodila, res pa je tudi, da ima procesor 8086 še svoje specifične člane, kot je.taktni generator in vmesnik 8284, krmilnik vodila 8288 ter registrski vmesniki 8286/8287 za demultipleksiranje vodila itn. Računalniške programe 8080A tudi ne moremo direktno Izvajati na procesorju 8086| potreben je predhodni prevod koda 808bA v kod procesorja 8086." Procesor 8086 ima svojo novo zgradbo in konfiguracijo ter uresničuje vrsto- novih programskih konceptov, zlasti tistih, ki so bistveni za sistemsko programiranje in sistemsko varnost, zanesljivost in razširljivost (multiprocesorsko). Njegovi registri procesirajo 16- in B- bitne podatkö in procesor naslavlja milijon zlogov pomnilnika in 64K vhodno/izhodnih vrat. Računalniška konfiguracija s procesorjem 8086, ki je opisana v tem članku, uporablja 2K 6- bitnih zlogov pomnilnika RAM, 4K zlogov ROMa 2616 (PROMa ali EPROMa), krmilnik prekinitev 8259, dva ÜSATa 8251, programirljivi intervalni časovnik 8253, krmilni izhodni vmesnik 8212, vhodni/izhodni taktni generator 14411 ter V/I linije za 20 mA (navadni ASCII teleprinter), dvakrat BS-232 (video terminal), za 40 do 60 mA G/v/> — •t 4(3 — 2 -Ab-IS ki>i3 — ^ 38 -Aì>4é/ss Am— v 37 -Ab 17 /Sit s 36 -AD4?/S5 Al>^o-4 6 35 -AD-»9/56 AM-^ 7 3V - MN /M K- M. Ab8 — 8 33 AD7 — 3 Vb Oo o 00 32 — Rb- . > AJ>6 - •10 3< - f)a-/G,r0- (HoLb) AD5-— 30 -ßa-jqr^-CHLbA) Ai>if — il — lock:-(^n^K-) Abi — IZ 2i — SZ- (M/IO-) AD-2 — lit n - s-f- Cor/R') Ab^ — ■fS - sgi- C.ÙEN-) 46 2S -QS0(ALE) NMI — il Zt -QSi (INTA-) . n 23 -TEST- CLK — qNù — 2o -fiESBT So ? ri ? u S« . •3 »a-*- Slika" 1. Shema signalov na procesorskga vezja 8086 podnožju (postni teleprinter) tar dvakratni dupleksni TTL kanaX (za kasetne naprave). Vodilo je olačenc in demultiplekairano z registri tipa 8282 in 6286 ter s krmilnikom 8288, taktnikom 8284 in ojačevalniki 8T97. Računalnik je ožičen na plošči dvojnega evropskega formata s standardnimi priključnicami. Članek opisuje zgradbo procesorja 8086, njegovo programiranje, računalniSko konfiguracijo s procesorjem 8086, shemo računalniškega monitorja ter preizkus dane konfiguracije. 2. Zgradba in delovanje procesorja I 8086 16-bitnt mikro prcesor 8086 naslovi direktno IM zlogov pomnilnika, ima 14 besednih (l6-bitnih) registrov za simetrične operacije, 24 naslovnih načinov, zmore operacije nad biti, zlogi, besedami in bloki, uporablja 8- in 16-bitno aritmetiko z množenjem in deljenjem za binarna in decimalna števila, deluje s taktom do 5 MHz (ima tudi različico do 4 MHz, ki je cenejša) ter razpolaga z vodilom, ki med drugim-^omogoča tudi realizacijo sistema z večkratnim Vodilom (multibus). I 8086 sodi v novo generacijo visokosposobnih mikro procesorjev (HMOS tehnologija) ter lahko naslavlja pomnilnike v obliki zaporedja 8-bltnih zlogov ali 16-bitnih besed. Procesorsko vezje napaja ena sama napetost 5V in je vsebovano v standardnemu 40 nožlčnemu paketu s podnožjem na sliki 1 (za maksimalno in mimimalno sistemsko konfiguracijo). Povezava procesorja s pomnilnikom in periferijo, je realizirana prek 20-bitnega časovno multipleksiranega naslovnega in podatkovnega vodila, ki omogoča manj Se Število nožic na integriranem vezju. To lokalno vodilo se lahko ojači ter se uporablja v sistemu v multipleksirani ali demultipleksirani obliki. Procesorsko komplekstnost (minimalrti ali maksimalni sistem) nastavimo s posebnim bitom (MN/MX-), ko generira procesor svoje lastno krmiljenje vodila. Pri kompleksnem sistemu uporabimo krmilnik vodila 8288. Družina 8086 ima tele ožje člane: 8086 t 8284 I 8282 : 8283 I 8286 i stanji 8287 t vmesnik 8288 t 8259 t centralna procesorska enota taktnik in ojačevalnik 8-bitni vmesnik 8-bitni invertirajoči vmesnik 8-bitni dvosmerni vmesnik s tremi 8-bitni invertirajoči dvosmerni s tremi stanji krmilnik vodila krmilnik prekinitev Struktura vodila procesorja 8086 omogoča uporabo perifernih integriranih vezij 8-bitnih procesorskih družin 8080A in 8085. Programe za 8080A je mogoče iz zbirnega nivoja prevesti v strojni jezik procesorja 8086, saj je množica registrov procesorja 8080A podmnožica registrske množice procesorja 8086. Pri tem pa moramo predelati prostorsko in časovno odvisna rutine, saj je potrebna sprememba njihovih shem. Tudi vektorske prekinitve se obravnavajo v sistemih s procesor'jem 80 86 drugače kot v sistemih s procesorjem 8080A, tako da moramo predelati tudi prekinitveno programsko opremo. Funkcije procesorja 8086 lahko razdelimo v - izvajalne/krmilne (IKE) in - povezovalne (na vodilo PVE) Slika 2. Funkcijski registri diagram procesorja 8086 z r (^K POMNILNIKU ) VObILo & OPANi> \/OblLO C Povezovalna enota NA VOb/LO CBiu) OPAr^/t> ES CS ss DS IP I- 1 r OPERAND AH ' AL . BH BL CH CL. 2>N HL SP BP S/ a/ VODILO a VRSTA UKAZNIH zlogov krmilni sistem aritmetična iN Loe,iČ^NA enota operand I JL. OPERA/^b! ZASTAVICE iZVAZJ ALNA/KRMILNA ENOTA ^.Žj (AC) AY (KL) BX (BC) C X (DE) DK -V/SOAf 7 ... 0 5 I^I^EK AH '////z.hL y//M vm CH y///AcL V///A '/m '////ADL akumulator BAZA ^TE^K/nik Podatek SPLOSNI Csp) (PC) (PSW) V////////////A SP V//////////A BP S/ D/ SKLAÙNI iCAZAL£C 8Azw/ kazalec IZVIRNI If^bEKS NAMENSKI meks kazalni in r INbEKSNl RBqiSTfll hLAQH [Ž^FLAG, L V///ASTATUS>N£ zastavice (,..) OZIROMA f/A so ReqisrR/ Pi?oc(rZoRziA 90^0A cs LS ss ES KOÙN! ZEßMENT PoùATKOVN! SES,fS ALI NOB£-bEN PRI V/l S Ulli o -1 oooo ODMIČNI NASLOV IZBKANI REQisreR o Fizični I^ASLOVUI 1 mm Iimmmi ; ' ReqiST£R Slika 4. Generiranje naslovov s segmentnimi registri Kot že povedano, se secjmenti -lahko tudi prekrivajo. Višjih 16-bitov naslova trenutnega segmenta je shranjenih v ustreznem l6-bitnen segmcntnem registru in teh 16-bitov imenujemo secjmentni naslov. Vsebina DS registra določa trenutni podatkovni segment. Vse podatkovne navedbe se smatrajo kot relativne glede na vsebino v DS; izjema so le tiste podatkovne navedbe, ki se nanašajo na DP (bazni kazalec), SP (skladni kazalec), ali UI (namenski indeksni register) v niznem ulazu. Podatkovne navedbe so lahko relativne tudi glede na ostalo tri segmentne registre, če je pred ukazom t.i. enozložni prednostni prefiks. Vsebino SS registra določa trenutni skladni segment. Vse podatkovne navedbe, ki se nanašajo na SP ali i3P, so relativne k SS. To se nanaSa na operaciji PUSH in POP, na CALL, prekinitve in vrnitve (iz subrutin). Podatkovne navedbe, ki se nanašajo na BP (toda ne na SP), so lahko relativne tudi k ostalim trem segmentnim registrom z uporabo posebnega enozložnega baznega prefiksa. Vsebino liS registra določa trenutni posebni segment. Ta segment je navadno dodatni podatkovni segment. Podatkovne navedbe v niznih ukazih, ki uporabljano DI (namenski indeksni register), so relativne glede na ES. Programi, ki ne nalagajo podatkov oziroma ne manipulirajo s segmentnimi registri, so dinamično premestijivi. Takšen program lahko prekinemo, ga pomaknemo v pomnilniku na novo lokacijo, ter nadaljujemo z njegovim izvajanjem pri novih vrednostih segmentnih registrov. Aritmetična/logična enota (ALE) na sliki 5 vsebuje naslednje registre: dva 16-bitn.a operandna registra, ki sta uporabniško nedostopna. register zastavic z 9 statusnimi zastavicami, kot je bilo opisano. ALE izvaja aritmetične, logične in rotirne operacije. Procesor 8086 ima . 20- linjsko naslovno vodilo za lociranje zloga ali besede (2 zaporedna zloga) v pomnilniku ali na V/I in ima tako dostop do 2 na potenco 20 zlogov (IM zlogov ali natančno 1048576 zlogov). Vsaka lokacija hrani 8 bitov. Beseda, ki jo sestavlja 16 bitov, zasede dva zaporedna zloga, katerih začetek je lahko liha ali soda lokacija. Procesor ima dva signala, in sicer BUE- in AO, s katerima selektivno izbere liho lokacijo, sodo lokacijo ali obe lokaciji. Pri naslovnih in podatkovnih operandih se nižji zlog besede shrani na nižji naslovni lokaciji in višji zlog na naslednji višji lokaciji. Pri optimalnih pogojih naj bi bil nižji zlog shranjen na sodem (pravem) naslovu. VOÙ/LO A A^RlTHBnČNA IN LO N I 'U i-i o o tc -H JtJ o m .5 Q N -r-i o d) -a O -r^ >0 H •O .H - ■H < jn 0) ••TJ CT\ -H U-l I O :n C -H . U > rj w J^ I Dr, 03 (U OJ I « Ü t: C.. e > > s > 0) •rt o -u C n ^ -rt -H ■o- Jj C « -rt tM o f^; -o ^ T > o 0) ^ fO o P-i u N "U & 01 (O nj > o C rj G o < o a VO -rt (1) co d C ' > fS d) 10 o 00 -rt e N ^ ga) U) > 'H rt o n! -i3 p -rt u 1 t^ -o d) > -S .-I !> ■H > .C C -rt o. -rt ii; N -p - con C • 'u e u ra 0) o U1 -r-i G .C o o N D N > u d) .H •rt 'Ü Ol > o « Vj VfO $ QCO • ^^ Ä CO illllllllissifcSi? (0 0) H o » O Ol C X co n o H O O 3 t X -tJ 00 N ro — la t; --H M ---H o (U -rt .i rH ■rt r-l T tO HO. m --I a • O . fM ^ tP UJ o OO -H fS a> C 1-1 x Fl u) Ü -H -H CM ci fS O u 0) ÜJ N re C* tđ «w È^ D f^ -rt OJ m K <0 o > d) W N -ntN n) - C + (O tn ^ -u M ^ M C 3 c: (d o* (B a M) +> > -m — C X •• C nj o o E-i O > -H " X E-> Ji (U -H g m ■n-O « -o <0 .H o s -H > A: nj > Q o «O (U (U + (Ti C tn O C n w Ul C A ^ ui u e J Q) m ^ o O 'O o I nS o» K > (M N (i «3 -«r ^ O «J N ^ OJ ^— d) U 'i <ä n T-.« H > X N e- C rH o 'd- 0) «J -- a.~- > r- M i '»*>•'«» »'S noi lìoì ■»■S >• O > 0 >■ O > o o o > LOOf ŽTZAf ioJl ast- act! > ßCSP ^ŽU I ùevT raso-« hO m A LOOP lj-t. L ^so^^^HeA. HZ ^DOk BRiT- T0O&\ ^^J^oor ^ùos- ,—iß^ HZ 7a Jcìoì slika 7c dUZL Konfiguracija obratuje z nižjim taktom (10 mz), kot je predpisana od proizvajalca (12 MHz), tako da je mogoča uporaba standardnih integriranih vezij družine 8080A (brez sufiksov A in 5). Vezje je ožičeno na standardni, ovojni evropski kartici (mali format) in seveda preizkušeno. Ta konfiguracija je namenjena preizkušanju in ocenjevanju procesorja 8086 in jo je mogoče razSiriti do maksimalnega sistema. 5. Shema monitorja za procesor 8086 Monitor demo-86 omogoča uporabniku štrnin^^' ^^^'"^"ianje in Izvajanje p^ogramfv strojnem nivoju. Monitor se nahaja v R0I1 pomnilniku in komunicira z uporabnikom preko tTJStr (teleprinter, „ = ^^ "a'^aja v skrajnem zgornjem delu SSfn^^^ prostora procesorja 6086 (od FF600 do FFFFF). Javi se z znakom (.)? Uporabniku so na voljo naslednje direktive: 7c. nikroyroceüorska koiifiguracijri )>rocc'sorjon; 8006; tn alika jo nadaljevanje tilil: 7a in 7b ter prikazuje še nadaljno povezavo na vodilo in v / -J -------J — - — prikazuje še nadaljno povezavo periferijo. Imamo prograr.Ar 1 jivi intervalni , časovnik (C253-!3), izhodna vrata {;i212) z o-jačevalnki za različne sigalne nivoje, üorijsko V/I vezju za aignalp «lOm;! (toiiovna zanka za navadni teleprinter), '+5V (TTL) in +- 12V (RS232). Konfiguracija lahko uporablja navadni teleprinter (npr. s 45 ali 5U Baud). 1. Prikaz vsebine pomnilnika. Sintaksa direktive je naslednja: Dt]I]/;/ 0<število zlogov>] J [< odmijc)] Monitor grupira po 16 zlogov v eno vrstivo. Na začetku vsake vrstice je naslov provega zlooa Primer: D FF60:00BC,25 2. Sprememba vsebine pomnilnika. sintaksa direktive je: SfJ {] r.onitor izpiše naslov, trenutno vsebino in pomišljaj za katerim pričakuje novo vsebino. Ce vsebine nočemo spremeniti odtipkamo (CI?), presledek ali (,). Sicer^ pa definiramo novo vsebino v obliki dveh šestnajstišhih Številk. Direktivo končamo z odtipkanjem poljubega znaka razen šestnajstiških znakov, (CR), presledek in 3. Startanje programa. Sintaksa jo naslednja: C[l [J Direktiva dodeli CS in II' vrednosti definirani v začetnem naslovu. Če katera vrednost ni definirana vstavi vrednost Ü. Prekinitveni vektorji kažejo v KOM pomnilnik, kjer so subrutine za izpis sporoöil. Ta sporočila nas obvestijo katera prekinitvena linija jo bila aktivna. Monitor je sestavljen iz treh programskih modulov: interpretacije komand, množico prekinitvenih subrutin in tako imenovanega serijskega modula. Mašteti moduli uporabljajo skupni podatkovni modul. Modul interpretacije komand vsebuje inicializacijo perifernih naprav (8259, 8251), interpretacijo vhodnih znakov in angažiranje rutin za javljanje napak. Ta modul vsebuje zunanji blok monitorja, kjer se začne izvajanje. Serijski modul je skupek podprogramov s katerimi so implementirane komandne funkcije. Podprogrami iz tega modula so zanimivi tudi zouporabnika. Grupirani so v tri dele: V/I del, uporabniäki del in komandni del, V uporabniškem delu sta podprograma SIO$ULAWKS za izpis specificiranega števila presledkov in SIOtCRLF za premik v novo vrstico. Iz osnovnega V/I dela pa so zanimive: DELAY za zakasnjevanje, SIOtOUT^CHAR za izpisovanje znaka, SIO$GETtCUAR za čitanje znaka in SIO^OUTéSTKING za izpisovanje niza znakov. Tretji . modul pa združuje prekinitvene rutine. Aktiviranje ga prekinitve zaradi zunajih dogodkov (INTR in NMI vhoda) in prekinitve zaradi notranjih dogodkov (deljenje z vrednostjo O, presežna vrednost (over f lov;) ) . Ustrezni podprogrami reagirajo na prekinitve z izpisovanjem sporočil na zaslon. Uporabnik mora seveda za svojo aplikacijo napisati ustrezne prekinitvene podprograme in spremeniti prekinitvene vektorje. 6. Preizkus konfiguracije Pri preizkusu pravilnosti delovanja mikroračunalnižkega sictoina in pri odkrivanju napak zaradi katerih sistem spoloh no deluje, se poslužujemo kratkih tipičnili programov. Ti naj bi sprožili takšno akcijo, ki jo je moooöe opazovati. Običajno so to programslce zanke, ki naslavljajo karakteristične naulovc v slstenu. 'L osciloskopom lahko potem ugotovimo ali se program dejansko odvija ali ne. Pri procesorju 8086 jo v ta namen uporabna predpona LOCK, ki nam omogoča, da' z opazovanjem signala LOCK ugotavljamo ali se program izvaja ali ne. Za začetek z osciloskopom protestiramo same signale v siotomu. Predvsem obstoj sistemske ure. naslednji korak je ugotavljanje pravilnosti delovanja sistemskih vodil. Testiranje mora vključevati najmanjšo možno množico materialnih virov potrebnih za izvajanje programa, ker za nobenega ne vemo, če pravilno deluje ali ne. V ta test so vključeni: procesor, KPROM pomnilnik in sistemska vodila. Program, ki nam bo omogočil testiranje je naslednji: LOOP: LOCK MOV AL,5 5H OUT 2 3 JMP LOOP Aktivira naj se s pritiskom na RESET gumb. Po aktiviranju programa opazujemo na osciloskopu signal LOCK. Če dobimo tu periodični signal pomeni, da tisti dol sistema, ki ga uporablja program, pravilno deluje. Z osciloskopom lahko opzaujemo tudi podatke na podatkovnem vodilu in ugotavljamo ali se naslavlja periferno vezje z nasdvom 2 311 . Prehod od testiranja osnovnih sistemskih signalov do pravilnosti delovanja jedra sistema (procesor, EPROM pomnilnik, vodila) je najtežji. Pomagamo si lahko le z osciloskopom in s čimveč rutine. Najpogostejše napake so: zrcalno zamenjane linije vodila, kakšna linija v vodilu jo v stiku z maso (premočno zategovanje žic pri ožičevanju), pozabljena povezava na krmilne vhode ojačevalnikov treh stanj, ipd. Naslednji korak je testiranje perifernih Slika 8. Zgradba taktnika in vmesnika 8284 «es- CSyNC Aenì- ■ kwi ■ pclk << ^ NNO i ot " IS-I 0 oZn -4 Ù5 Ö kBm vezij in RAM pomnilnika. To je sedaj, ko vemo, da nam del sistema pravilno deluje, že lažje. Tako npr. ugotovimo ali dela serijski kanal ali ne z naslednim programom: linicializacija USARTa MOV AL,CFH OUT 23 MOV AL,0 5H OUT 23 ZANi MOV AL,41H OUT 21 LI: IN 23 TEST AL,01H JZ LI JMP ZAN Gornji program izpisuje znak 'A' na zaslon. S^daj pa je potrebno vključiti v program samo Se delovni pomnilnik (RAM). Po teh grobih preizkugnjah smo dali v sistem originalni monitor. Vendar se je še vedno dogajalo, da sistem občasno ni deloval. Predvsem po vklopu. Tudi to pomanjkljivost smo odpravili, ko smo kvarčni signal prestavili v neposredno bližino oscilatorskega vezja (8284). 7. Sklep Članek obravnava zgradbo procesorja 8086, njegovo programiranje in določeno materialno konfiguracijo s tem procesorjem. Snov v članku je informativne in konkretne narave, saj so podana izdodišča in primer konfiguracije, ki nakazujejo pot za razvoj mikro računalniških sistemov s procesorjem 8086. Procesor 8086 lahko uporablja družinske člane procesorja 8080A, če mu nekoliko znižamo taktno frekvenco (iz 4MHz na 3.33 MHz), ko uporabimo 10 MHz kristal namesto 12 MHz. J z slike 8 je razvidna zgradba.taktnika 8284, ki daje osnovno taktno in periferno taktno frekvenco, ki sta 3- in 6- krat nižji od frekvence kristala. V našem primeru imamo taktno periferno frekvenco 1.66 MHz in lahko uporabimo periferna vezaja, ki imajo mejno periferno frekvenco 2Mllz. Pri frekvenci kristala 12MHz priporoča Intel uporabo perifernih vezij 8212, 8251A, 8253 ali 8253-5, 8255A ali 8255A-5, 8257 ali 8257-5, 8271, 8273, 8275, 8278, 8279 ali 8279-5, 8291, 8292, 8294 in 8295. Z uporabo READV signala, ki ga sproži naslovljena naprava, lahko imamo v pomnilnem modulu tudi 'počasna' pomnilniška vezja. Programiranje procesorja 8086 je nekoliko drugačno, kot smo ga vajeni iz uporabe 8-bitnih procesorjev. Tu imamo več m.ožnosti povezovanja ukazov, ko dosežemo posebne (repetitivne) učinke. Za učinkovito programiranje je seveda že v prvi fazi potreben zbirnik, ki nam avtomatično razreši nekatere dodatne probleme, ki bi jih imeli v primeru programiranja 16-bitnega procesorja 8086 v računalniškem (absolutnem) kodu. Ta članek o možnostih uporabe procesorja 8086 in z njegovo konkretno konfiguracijo je prav gotovo bistveni prispevek k iskušnjam, ki si jih z velikimi napori pridobivamo tudi na področju 16-bitnih procesorjev. Težave so tu večkratne: ni ustrezne informacije, procesorska vezja niso na razpolago brez dodatnih naporov, vrsto lastnosti in možnosti je potrebno preizkusiti s posebnimi programi, signali in instrumentacijo, potrebno je skratka trdo delo inženirja. V časopisu Informatica bomo tudi v prihodnje obravnavali projekte, povezane z najnovejšo mikro procesorsko tehnologijo. INFORMATICA 2/1979 POSTUPCI DETEKCIJE STANJA POTPUNOG ZASTOJA RAČUNARSKOG SISTEMA NA MODELU GRAFA SISTEMA N. HADJINA UDK: 681.3.02 SVEUČILIŠNI RAČUNSKI CENTAR, ZAGREB U radu je definirana situacija potpunog zastoja na modelu pridjeljivanja sredstava računskog sistema koji je definiran usmjerenim grafom, grafom sistema. Na tom modelu su istraženi nužni I dovoljni uvjeti za postojanje potpunog zastoja, te su posebno razradjeni neki specijalni slučajevi pridjeljivanja sredstava računskog sistema. Na osnovu provedenih Istraživanja dani su postupci za detekciju stanja potpunog zastoja. ALGORITHMS FOR DEADLOCK DETECTION IN COMPUTER SYSTEM BY SYSTEM GRAPH: Deadlock In system graph, computer resource allocation model, defined by directed graphs, Is presented. On that model necessary and sufficient conditions for deadlock state are given, and special situations In computer resource ,al locations are analysed. Based on performed Investigation some algorithms for deadlock detection are given. 1. UVOD Prilikom uvodjenja paralelIzma'u korištenju računarskog sistema od strane više programa III korisnika Istovremeno pojavljuje se problem sigurnog I efikasnog pridjeljivanja sredstava računarskog sistema. Paralelizam u obradi procesa (programa, transakcija) može dovesti do 'situacije potpunog zastoja koja nastupa kada su procesi tako blokirani da se zahtjev za nekim sredstvom ne može nikada zadovoljiti bez drastične akcije u računarskom sistemu (uklanjanje procesa, prisilno oslobadjanje sredstava I dr.). Tipičan primjer potpunog zastoja nastaje kada npr, proces P. zahtijeva sredstvo S„ koje Je pridjeljeno procesu P^, a taj zahtijeva sredstvo S^ koje Je pridjeljeno procesu P^ kao pa slici 1, zahtjev pridjeljen Model sa slike 2a predstavljen Je usmjerenim grafom G(P,s) gdje je sa P označen skup procesa koji predstavljaju čvorove grafa, a sa s je označena relacija preslikavanja P u P. Relacija preslikavanja odredjena Je slijedećom operacijom: strelica usmjerena od P. prema P. znači da proces P. zahtijeva sredstvo S. koje Je pri- ^ djeljeno procesu ^P. (P. čeka na oslobadjanje sredstva S. koje drži P.). ^ O (p,,; viv S3 s« a) b) Slika 1. Potpuni zastoj Sli]h u sistemu postoji višestruki zastoj (više ciklusa). Ako je vh proizlazi Iz činjenice da elementi [a^i]'^ različiti od nule odredjuju procese koji leže na ciklusu dužine h. Pošto Je v>h, a ciklus mora biti dužine h, slijedi da postoje barem dva ciklusa dužine h od kđjlh barem Jedan sadržl.'v=h procesa koji nisu uključeni u prvi ciklus. Situacija sa više ciklusa u sistemu naziva se višestruki zastoj. Dokaz tvrdnje za vh, a ne za v tada Je y.'. ukupan broj različitih sekvenci (n.,...),...,(.,nj) koje Imaju dužinu li h, što odgovara putevima u G. Ako Je A =0 za neki hm) prisotna koda za čitanja ali pisanje sekto! a. Na drugem nivoju pa so prekinitve, ki', označujejo konec operacija) pa naj bo to Ì8;inje sledi, pisanje ali čitanje sektorja, -Ja zgledu si bomo ogledali samo oba modula paprave. Struktur^ obeh modulov naprave je pr -.azana na sliki 3. 22 DEVICE MODULE disk M DEFINE transmltsectorj USE endop,buffer] CONST n=128s («buffer size«») read-ßCHjwrite-ACHjsaek^lCHJ VAR fdcstat FBCCH: bits j (»status reg.«) fdcoom FBCCH, («command register^') fdcsect FBCEH, («sector register«) fdcdata FBCFHi integer; («data reg.«) buffer: ARRAY lin OF charj dlskbu8y,rwi Boolean} diskfreei signal; 1« integerI PROCEDURE transmltsector{VAR bufi ARRAY Isn OF charj sector,tracksintegerj directionsBoolean)j VAR j J integer} BEGIN ji=l! IF dlskbusy 5HEN wait(diskfree) EKDj diskbusy !=°true J seektrack (track) j fđcsects<=sector; rwi^dlrection) IF rw=true THEN fdccom;«"raadj ELSE REPEAT buffer fjli=buf[jl5 jj-j+1 UNTIL j>n5 fdccon>s=write END)(«write sector«) wait(endop)^ dlskbusyiofelse} send(diskfree)j IF rw=true THEN RiiPEAT buf [jji=buffer[jli jj-j-i-l UNTIL jin ENDj END transmltsectorj PROCEDURE seektrack(tracksinteger)t BEGIN fdcdata8"track j fdccom;=aeekj wait(endop) END seektrackj PROCESS transmitdata [oei^s BEGIN LOOP dolo: IF rw=truQ THEN buffer i]i "fdcdata ELSE fdcdatas»buffer i] END) i^d MOD n)+l END END transmitdataj BEGIN li°lj transmitdata; ditkbus)^:« fole« END diskj DEVICE MODULE endoperatlon [2]i DEFINE endopj VAR endopj signalj PROCESS endcom [0 31^1 BEGIN LOOP doloj aend(enđop) END END endcomi BEGIN endcom END endoperatlonj 5. Preklapljanje in razvräöanje procesov Preklapljanje procesov se vräi samo v ^Bingularnih točkah. Te pa so "send", "wait" in dolo ukazi. Izjema so samo preklopi ob prekinitvah, ki prekinejo izvajanje procesa, 5e imajo dovolj visoko prioriteto. Sistem, opiaan s programom v Moduli, se sestoji iz fikanega Števila paralelnih procesov. Val procesi ao deklarirani in inicializiranl na nivoju gnezdenja O (kar pomeni, da procesi ne morejo biti deklarirani v procesih ali v procedurah). Proces poženemo (startamo, inicializiraii'o) a procesnim stavkom, ki je ime procesa z listo parametrov. Nivo gnezdenja O predstavlja glavni program in v tem so poženejo vsi procii^i sistema. Torej Modula dovoljuje dinamično ustvarjanje procefsov, vendar so možnosti ustvarjanja omejene. To omogoča, da au pomnilnlški prostor za procese dodeljuje sekvenčno, v glavnem programu. Vsak proces ima svoj oklad fiksne dolžine) ker Modula dovoljuje rekurzivne procedure, mora v tem primeru biti prisoten napotek prevajalniku, ki pove maksimalno globino rekurzije. Proces se lahko nahaja v anem od treh stanj. Laliko ao izvaja (je aktiven) , lahko ja pripravljen na Izvajanje (pogoji, na katuru je čakal so Izpolnjeni) ;l čaka na izpolnitev določenih pogojev (izpoljii Luv pogoja potrjuj« signal). Razvrščanje procesov se odvija na "prostovoljni" osnovi. Vsak proces z izvajanjem "wait" ali "aend" stavka preldo v pasivno stanje ("pripravljen na iivaj.niivi" oz."čakajoč na signal") in avtomatsko povzroči aktiviranje procesa iz vrste procccov pripravljenih na izvajanje. Pri tem velja naslednje pravilo razvrščanja. Proces, ki poSlje signal s preide v stanje '-pripravljen na izvajanje". Aktivira pa se proces, ki je prvi v čakalni vrsti na signal s. Kadar proces naprave izvede "send", se aignalizirani proces postavi iz stanja "čakajoč na signal" v stanje "pripravljen na izvajanje", procca naprave pa ncdaljuje z izvajanjem. Razlog za to izjemo je dejstvo, da proces naprave lahko signalizira le "normalne" procese, ti pa imajo nižjo prioriteto. Vidimo, da Je mogoče signale enostavno implementirati kot spremenljivke, katerih vrednosti so kazalci na opis prvoga procesa v vrsti procesov, čakajočih na signal a (slika 4), Ob operaciji send(s) je prvi proces v vrsti na s postavljen v stanje "pripravljen na izvajanje"] ob operaciji wait(s,p) pa je tekoči proces uvrščen v vrsto procesov čakajočih na s in sicer v skladu s prioriteto čakanja p. Procesi v vrsti na s , ki imajo isti prioriteto, so medsebojno razvrSčeni po FIFO zaporedju] tisti, ki je najdalje čakal, je prvi reaktiviran. Ofih procaiù i Opit proč*sa j Proces, ki čaka na signal s (wait (a,ki). K^ predstavlja čakalno prioriteto. Slika 4. s. Signal s in čakalna vrata procesov na Zunanja prekinitev lahko edina "nasilno" prekine proces, ki se izvaja. IzvrSi aa preklop in aktivira se krmilni proces naprave, ki ustreza konkretni prekinitvi. Za razvrščanje krmilnih procesov naprav skrbi torej prioritetni preklnltvenl mehanizem. Krmilni proces naprave steče do singularne točke ("dolo" ali "wait"), kjer pride do novega preklopa. Zaradi enostavna implementacije vmesniških modulov (glej naslednjo točko) jo tedaj potrebno takoj nadaljevati prekinjeni proces. fi. Vzajemna izključenost in zaSčita V multiprogramskem in multiprocesorskem okolju mora biti izpolnjen princip izključenosti hkratnih dostopov procesov do skupnih predmetov. VmesniSkl modul je struktura, ki izpolnjuje omenjeni princip. Vmesniäki modul vsebuje skupne predmete, ki so definirani kot lokalni predmeti vmesniškega modula. Dostop do njih je mogoč samo preko eksportiranih procedur .- vmesniških procedur (slika 5). VneSNISHI MODUL Slika S, VmesniSki modul zagotavlja način uporabe akupnih predmetov procesoma 1 in 2). pravilen (skupnih Med izvajanjem vmesniSke procedure ne more noben drug proces vstopiti v vmesniäki modul s klicem kakine druge vmasniäke procedura, šele, ko prvi proces konča izvajanje vmesniške procedura ali pride v njej do singularne točke, kjer pride do preklopa, lahko drugi proces vstopi v vmesniäki modul. V multiprogramskem okolju (en sam procesor) Se sani mehanizem razvrščanja v Moduli - kot je bil definiran v prejänji točki - zagotavlja vzajemno izključenost procesov pri. uporabi skupnih predmetov. V multiprocesorskih sistemih in v monoprocesorskih sistemih s poljubnim mehanizmom razvrščanja (npr. s preklopi ob izteku prekinitvenih rutin) pa je oČividno potreben za implementacijo vmesniškega modula še dodatni semafor (monitor gate semafor, glej Hoar.e (6)). Modul, naprave je tudi vipesniški modul. Tu jo vzajemna izključenost dosežena kar z o.nemogočitvijo prekinitev. V modulu naprave se izvajajo vse lokalne procedure in krmilni proces naprave na istem prioritetnem nivoju. Skupne predmete uporabljata krmilni proces naprave in "normalni" proces. Krmilni proces naprave lahko postane aktiven samo, ce so omogočene prekinitve, torej samo tedaj, ko je "normalni" proces zapustil modul naprave (medsebojno izključevanje). Kadar vmesniSke procedure vsebujejo singularne točke lahko pride v Moduli do slučaja, da pride sredi^ vmesniške procedure pl do preklopa in se nato izvaja vmesnlSka iJrocadura p2, ki operira nad istimi skupnimi predmeti (pl in p2 sta v istem vmesniškem modulu). Posledica je lahko porušitev integritete skupnih podatkov. Vzrok temu je Modullna specialna implementacija vmesniških modulov. Lep primer je vmesniška procedura "transmltsector" modula naprave "disk" iz točke 4 (kot smo že omenili, je modul naprave posebne vrste vmesniäki modul). Če iz te procedure odstranimo stavke, ki se nanašajo na "diskbusy" in "dlskfree" lahko pride do preklopa v wait(endop), nakar je vnovič lahko klicana ista vmesniška procedura, kar ima za posledico nepravilno operiranje nad skupnim predmetom "fdccom". Zaščito skupnega predmeta smo v tem primeru izvedli z dodatno sinhronizacijo ("diskbusy" Boolova spremenljivka in "dlskfree" signal), Taka sinhronizacija se normalno rešuje s semafori. V Moduli lahko implementiramo semafor s signalom in eno spremenljivko. Poglejmo si implementacija binarnega semafora (I)i INTEllFACE MODULE resourcereservationj DEFINE semaphore,p,v,ini 15 TYPE semaphore=ro::COBr> takeniBooleanj freei signalj PROCEDURE P(VAU s : semaphore)j BEGIN IF S.taken TUEN wait(s.free) ENDj , s,takeni'=true END Pj PROCEDURE V(VAR S t semaphore)! BEGIN 6.takeni'=falsej send (s. free) END Vj PROCEDURE init(VAR s I semaphore)j BEGIN s,taken>=false END initj END resouroereservation, Iz zgornjega opisa implenientacije semafora je razvidno, da smo skupni podatek "fdccom" v zgoraj navedenem primeru v bistvu zaščitili z operacijama P in V nad aomaforom a, ki ga sestavljata "diskbusy" in "dlskfree". 7. Sklep Iz nekaj primerov je razvidno, da je Modula skoraj Idealna za pisanje program.'3kih krmilnikov. To velja seveda samo v primeru, da obstoja prekinitveni mehanizem in da so naprave priključene preko prekinitvenih vhodov. Pri vedno kompleksnejših" perifernih integriranih vezjih (ki so že skoraj tako močna kot procesorji) se bodo za "dolo" skrivale vedno kompleksnojše operacije. Obstojali bodo torej dejansko paralelni hardwarski ne bo dovolj samo čakati na precej dolgi procesi. Zato prekinitev. Na primeru pogona za gibki disk smo videli, da sta bila potrebna za . eno napravo dva modula naprave. V primeru naprave z večjim številom prekinitvenih zahtev različnih prioritet moduli naprav niso več naravne celote. Med pomanjkljivosti Module lahko ätejemo sicer enostaven, vendar za določene sisteme morda neprimeren mehanizem razvrSčanja in preklapljanja procesov. Ta mehanizem je vgrajen v Modulino jedro in ga ni možno programirati v sami Moduli. Modula omogoča zelo jasno strukturiranje sistemov procesov. Sistem procesov, ki je sinhroniziran s preglednim mehanizmom signalov uporablja skupne predmete, ki so zaščiteni v vmesniäkih modulih. Problemi,, vezani na sinhronizacijo dosegov do skupnih predmetov so reženi v vmesniških procedurah vmesniških modulov (monitorjev). Na vsak način lahko Modula precej prispeva k boljši dokumentiranosti malih operacijskih sistemov mikroračunalnikov in sprotnih (real-time) procesov, ki se odvijajo na njih. Njena glavna novost pa je razširitev možnosti programiranja v visokem jeziku tudi na programske krmilnike naprav. 8. Literatura 1. H.Wirthi Modulai a Language for Modular Multiprogramming, Software-Practice and Experience, vol.7, 335 (1977). 2. N.Wirthi The Use of Modula, Software-Practice and Experience, vol.7, 37-65 (1977). 3. N.Wirthi Design and Implementation of Modula, Software- Practice and Experience, vol.7, 67-84 (1977). 4. J.Holden,I.e.Wand: An Assessment of Modula, York Computer Science Report Wo.16 (November 1978). 5. PDPll Peripherals Handbook. 6. C.A.R.Hoarei Monltors-an Operating System Structuring Concept, Com.of the ACM, vol.17, no.10 (Oct.1974). 7. Per Brinch Hansen« The Programming Language Concurrent Pascal, IEEE Trans.on Software Eng., vol.SEI, no.2 (June 1975), 8. M.Exeli Komunikacija med sekvenčnlmi procesi - pregled, del I in II, časopis Informatica, št.l in št.2 (1977). INFORMATICA 2/1979 VERI FICATION OF STORED SERIAL DATA R. MURN D. PECEK UOK: 681.327.63 : 621.3.019.3 JL STEFAN INSTITUTE, LJUBLJANA, YUGOSLAVIA The paper deals with problems and methods of verifying serial data while using contemporary magnetic storage units. We encounter these problems most especially in the transfer of information between microprocessors and digital cassettes or floppy disks. The method is based on the theory of cyclic codes. The basic properties of cyclic codes and realisation of suitable hardware circuity is given. VBHiriKAOIJA ZAPIBA ßEHIJSKIH PODATKOV. V ölanku Je opisana problematika verifikacije serijskih podatkov pri sodobnih magnetnih' pomnilniških napravah. Z omenjeno problematiko se srečujemo zlasti pri izmenjavi infoxiaacij med mikroprocesorji in digitalnimi kasetami iu gibkimi diski. Podana Je metoda za učinkovito verifikacijo zapisanih podatkov, le-ta Je osnovana na teoriji cikličnih kodov. Opisane so osnovne lastnosti cikličnih kodov in realizacija ustreznega vezja. 1. IHTBODUOTIOH Nowadays it is impossible to imagine the world of microcomputers without low cost mass storage units, for example the digital cassettes and floppy disk drives. The use of such units requesta the reliability of the data transfer as high as possible. Therefore it is necessary to define and to work out the methods for verification of the data transfer when constructing the corresponding controller. Becent developments in error-correcting codes have contributed toward achieving the high reliability required by today's digital systems^ and it is evident that the use of coding methods O for error control has become an integral part in the design of modem computers and commu-aloations systems. We encounter these problems most especially in the transfer of infonaation between microprocessors and floppy disks. The verification is based on the theory of cyclic codes and the r^alination of the necessary hardware circuitry. Cyclic codes are defined and described from a viewpoint involving polynomi- als. The potentialities of these codes for error detection and the equipment required for implementing error detection systems using cyclic codes are also described. II, DESOBIPTION OF CYCLIC CODES It is convenient to think of the binary digits as coefficients of a polynomial in the dummy vaiiable x. For example, a message 1001101 is represented by the polynomial l+x'+x^+x^. The polynomial is written low-order-to-hi^i-order because these polynomials will be transmitted serially, high order first, and it is conventional to indicate si^al flow as occuring from left to right. These polynomials will be treated according to the laws of ordinary algebra with one exception. Addition is to be done modulo two. A cyclic code is defined-in terms of a generator polynomial G(x) of degree n-k. A polynomial of degree less than n is a code poly- nomlal F(x). i.e. acceptable for transmission, if and only if it is divisible by the generator polynomial G(x). The message polTOomial is assigaed as M(x)-deKree < k. F(x) - x5.M(x)+(1+x) - l+x+x^+x^+x^^^x^*^ F(x) » 110001010010001 Code polynomials can be formed by simply multiplying any polynomial of degree les than Ts. by G(x). The method has the advantage, however, that it results in a code polynomial in the high-order coefficients are message symbols and the low-order coefficient are check symbols. To encode a message polynomial M(x), we divide x^"^. M(x) by G(x) and then add the remainder H(x) resulting from this division to x**"^. M(x) to form the code polynomial: a-k M(x) » LE6 07 EBBOH DETECTION An encoded message with errors is represented by T(x) - F(x) •»• E(x), where E(x) is polynomial which has a nonzero term in each erroneous position. The addition is modulo two, T(x) is true encoded message with the erroneous positions changed. If the received message T(x) is not divisible by G(x), then an error has occured. Since F(x) was constructed so that it is divisible by G(x), T(x) is divisible by G(x) if and only if E(x) is also. An error pattern E(x) is detectable if and only if it is not evenly divisible by G(x). To insure an effective check, the generator polynomial G(x) must be chosen so that no error pattern E(x) which we wish to detect is divisible by P(x). . To detect errors, we divide the roceivod uir » ssage T(x) by G(x) aud teat tho x-t,iiiuir«ler. If the remainder is nonzero, an erior has been detected. If the remainder is zero, either no error or an undetectable error has occured. Using our detection method, we do not require the quotient. Modulo two arithmetic has eim-plyfied the division considerably. The divide principle is shown in a given example. In 6^rery step we subtract the divisor so that the first nximber one aligns with the highest degree number one in the rest. The hardware to implement this algorithm is a shift register (Flip-Flops) and a collection of modulo two adders (EXCLOSIVE OR). The number of shift register positions is equal to the degree of the divisor, G(x), and the di-vident is shifted throu^ high order first and left to right. As the first one (the coefficient of the high-order term of the dividend) shifts off the end we subtract the divisor. Figure 1 gives a basic register that performs a division by 1+x^+x^ . (remainder) Figure 1. A shift register for dividing by l+x^+x^^. It Ì8 aecassary to devote much of the effort when selecting the polynomial generator G(x). The Bize of the S(x) must enable ©fective die-covering of the single, multiple and group faults (Burst), The cyclic codes detailed analysis (11,12,15) obtains the evaluation G(x), We shall point out the most important conclusions. a) A cyclic code generated by any polynomial G(x) with more than one term detects all single er^rs} b) Every polynomial divisible iy 1+x has an even number of terms. It follows that the code generator by G(x)"l+x detects not only My single error, but also any odd number of errors; c) A code generator by the polynomial G(x) detects all single and double errors if the length n of the code is no greater -than the exponent e to which G(x) belongs. (A polynomial G(x) is said to belong to an exponent e if e is the least positive integer such that G(x) evenly divides x®-l)i d) Any cycle code generated by a polynomial of degree n-k detects any burst-error of length n-k or less; ,e) The fraction of bursts of length b > n-k that are undetected is a'^'^'^^if b>n-k+l, 2-(n-k-l) ^^ the sectors is a constant or can be defined by the program as well /V. Let us take a short look to a standard sector format (IBM 3740). Each sector consists of ID field and data filed (fig. 2). Both fileds have additional bytes for CEO verification. Data fields involves 128 bytes and can be multiplied by 2® (N=0,l,2, ,<..). Concerning the polynomial generator theory, four term generators are found to be most economical. G(x)=l+x^-9-x -s-■i-x^^ discovers single faults, all the faults if the number of faults is odd, the double faults if the size of the data stream is lesa or equal 32767. It also discovers all the burst faults if the size is 16 or less. If the size is 17 or more the discovering probability is (1-12^^)=99.998%. The same results are obtained, by following generatoras G(x) <= ^ -ir -iV 11, h 11 IC Fig. 3 represents the realisation for a polynomial expression and the checking hardware. The check characters are generated by dividing the data by the encoding polynomial. The remainder resulting from the division ie then appended to the message stream as a check cha» racter (CHC). During reception of the data it is again divided by the same polynomial. If ts- ■ 1d fiel d data f. - sap id a.m. track no. zeros sect. no. sect. l. crc crc 6 ap data a.m. data crc crc gap By 33 / / t 17 128 I 33 Figure 2, IBM 3740 Sector Format IV. FLOPPI DISK DATA TRANSFER VEHIFICATION The hardware, that performs the data transfer verification is a.functional part of the floppy disk controller. The polynomial generator must tie adapted to a specific diskette write format. Most often, the discetto has 77 trace, each trac consists of 26 sectors. The size of no errors have occured in transmission, the result of this division should be zero sinae adding the check character (remainder) to th® message has the effect of making the receivad message evenly divisible by the code polynomial. This will be indicated by an all zeros output. 28 RlW Sel. > I'' a »r 0 / 2 3 4 « Shift Figure 3» Logic diagram 10 OR 13 H 15 V. D ry J \yAU. ZEROS In the Write operation the eequence begins with presetting the 16 registers (D flip-flop) to logical 1. The circuit generates the check characters by entering each bit of the data stream into the Write data in terminal. This process effectively divides the data stream by the polynomial. After the last data bit is entered, the check character is atoredj l,t is then added to the data stream by shift control. In the ReaU operation, eequence is the same as the Write operation except that shift is not used. V. CONCLUSION The CEO method is found most effective as the verification tool, and very simple for realisation, especially when dealing with FDD and digital casBettes. Indipendently of the CRC method we can add another method that is ca- lled a HiL (Phase Locked Loop) method. CRC and Hi form together unique and effective system for data transfer between computer and FDD or digital cassette. When dealing with professional magaetic drives, the aditional methods for detection and fault localisation are added. REFERENCES /1/ I.E. Meggitt} Error Correcting Codes for Correcting Bursts of Errors, IBM J.Res. Dev., 4. July I960. /2/ Peterson, W.Wesleyj Error^Oorreoting Codes, MIT Press, Cambridge, Mass., 1965. /3/ D.T.Tang, R.T.Chlen} Coding for Error Control, IBM, Syst. J., No. 1, 1969. /V R.Mum, D.Peček» Gibki diski, Informatica, No. 1, 1978. INFORMATICA 2/1979 A SCENARIO FOR COMPUTER NETWORK RESEARCH D. L. A. BARBER, T. KALIN EIN PROJECT, TEDDINGTON, UK. UDK: 681.324 INSTITUTE JOŽEF STEFAN, LJUBLJANA, YUGOSLAVIA SCENARIJ ZA RAZISKAVE NA PODROČJU RAČUNALNIŠKIH MREZ. Članek proučuje vpliv tehnoloških sprememb na področou mikroelektronike in predlaga novo arhitekturo računalniških mrez in protokolov primernih za prihodnost. Na koncu je shematično podan načrt raziskav, ki bi bile potrebne na področju računalniških mrež. The impact of the technological changes in microelectronics upon the networking field is examined. A new architecture for computer networks and suitable for the future are proposed, followed by an outline of a scenario for future computer network research. 1.0. Introduction Today, the pace of technological change is such that attitudes and ideas can very soon become outdated. Por example, much has been said in the past about the reactionary attitudes of some postal and Telecommunications Authorities towards new data networks. This understandably stemmed from their heavy investment in electro-mechanical telephone plant that was being rendered obsolete by new digital systems. The many public data networks azinounoed recently indicate that this situation is rapidly changing as the benefits to be gained by adopting digital eqpiipment become apparent. The major computer manufacturers who were once at the forefront of computer technology are just beginning to adopt, in their turn, similar reactionary postures now that large Hainframe systems are becoming absolescent. Por there is a strong possibility that, within five years, informed users may no longer be ordering the conventional general purpose Mainframe as we know it at the present time. Of prime concern in this paper, however is the realisation of the danger that our research programmes in Computer Science and Computer Networks may also be rendered ineffectual and misdirected by the most recent technological advances. This is particularly worrying because, by definition, research should be pointing our way into the Future. It is arguable that fiindamental research more often allows us to eliminate wrong answers than to the identify right ones, though this, perhaps, is seldom appreciated by those who pay for it. But often, a breakthrough suggests a change of direction that is clearly desireable, even if it makes past efforts seem rather wasted. Such changes must be made if we are to maximise the return on the capital invested in our research programs. The advent of micro-electronics has been a ]3reakthrou^ of such a great magnitude that it will change most aspects of human affairs. This is already appreciated at the highest political level.? in some countries. because of the profound effects on individuals and the jobs they will have to do in the world of tomorrow. Computer networks, themselves a formidable factor for shaping the future, are being radically changed by intelligent termnals, based on new microelectronics techniques. These terminals exploit cheap storage and processing power to provide each user with the power of today's small mainframe systems, at rou^ly the cost of a teletype. The impact of. this on network research programmes has so far been minimal. 2.0. Present Research Activities Some years ago, layered protocols were ri^tly seen as the solution to promoting freedom of connection in a heterogenous network of mainframes, which support many non-intelligent terminals attached through their own local networks. This, now classic, network architecture, shown in figure 1 , Sollware to match computer system to the common Ö terminals Figure 1: TZPICAL CURRENT NETWORK ARCHITECTURE 30 gave rJ.no bo Che Transport Statioli, Virtual Terminal, File Transfer and other protocols, ahown in figure 2. others? virtual terminal transport station packet level link level physical interface """""orTlERT?"^ virtual terminal transport station packet level link level physical interface figure 2 These have, or aro being, implemented in various rpsearch networks, (ref.l) eind are penerai.!y, thought of aa forming the basis of standards for 'open working' in the future. Open working is the situation where a number of computer systems connected by a Public data network are able to intercommunicate in some way. But, unfortunately, the variations between existing systems of dio fferent manufacture render it virtually impossible for them to interact meaningfully unless some modifications are introduced somewhere. At the level of the physical co= nnection to a data link, the standard interfaces introduced by CGITT for modems have forced all systems to seem similar; possibly it is this that gave birth to the idea of introduction of corresponding levels of protocols, built above the physical interface, in all of the computers attached to a network, aa shown in figure 2. The structured protocol levels are supposed to make the computer systems look sufficiently alike to allow them to usefully intercommunicate. But a niimber of difficult questions arise. Firstly, how many, and what, levels are needed; secondly, where are these levels to be located and, thirdly, is it possible that levels can be implemented independently andaccurately enough to achieve the required result? Indeed perhaps the most difficult question of all is how to agree on what is the required result; this is not mentioned at all, or is .discussed only in the most general and vaguo terms, in most papers dctjcribing protocol develop= ment. Usually these papers concern themselves with the technicalities of the particular protocol under consideration, and tend to ignore the environment within which it has to operate. We shall certainly not address these questions here, for our pui-pose is to argue that a' change of direction is required at the present timo. However, it is interesting to note the long delay between the emergonce of tlio idea of layered protocols in a research atmosphere, and its serious consideration by standards bodies. The concept was first described in papers written about a decade ago, when systems centered- on a Mainframe dominated the computing scone (ref 2). But only now, when these systems are threatened with extinction, are the same simple ideas appearing before the arganisations responsible for standardisation (ref. 3), where the levels of protocol typically under ćonsideration arc shown in figure 3. process layer process layer presentation layer presentation layer session layer session layer transport layer transport layer network layer network layer link layer link layer physical lavf.r physical LAYER figure 5 lavers of protocol being discussed by standards committees This is most uiifortanate because standaxds based on today's network architectures are likely to bo obsolete before they are published. If t.hey are to be timely, standards planned now should match the network ai'chitectu.re of the future. Of course, much o'? the experience gained in designing and implementing today's protocols can still bo ui:illscd, but in the context of the new style of architecture discussed in Section , j.-ather than in relation to the orthodox architecture hitherto accepted as the norm. 3.0. The Economics of Micro-electronica The traditional falling cost of hardware is common knowledge, but the startling reductions made possible by the latest microprocessors ai]d semiconductor stores axe less well appreciated. Existing technology has already led to the 'personal' computer (ref. 4), which is a sufficiently low price to create a volume market. This will allov; many of the existing terminal devices to be written off at a much earlier stage than was intended, when they were purchased. Karly amortisation is likely to be even more justified if the cost of maintenance and their unattractiveness to the user are taken into account. Por this reason there is no doupt that the personal computer or home I.erminal will also have a profound effect on the business world, where the replacement of olec(;ric typewriters by compotF'.ively priced intelüGunt terminals cou.li bring office automation into being ver:- quickly. Indeed, the covergence of officc automation and data processing in now pro:-Jo^li p;; a'-over-increasing rate. The high volume sales and the ensuing competition between intelligcró-terminal manufacturers will probably T-.ring enhanced features, rather than further cost reductions; these features will include mass local storage on mini discs and bubble devices, flexible I/O facilities■for connections to local equipment. The already powerful processors such as the Intel 8086 and the Zilog 8000 (ref. 5), now being designed into new equipment, are even now being overshadowed by those in prospect. Appropriate software will be provided as packages (ref G) sold competitively on the open market, so that user's preferences will determine viihich are successful. Thus, for example, a particulaz'ly effective file editor package establish a de facto standard for the user interface, through common acclaim. There will be a corresponding impact of microelectronics on Mainframe design. This will provide increased reliability by the introduction of multiprocessor architectures, ajid will allow storage and processing - , features to be more closely associated in a distx'ibuted array processing architecture. This will transform the economics of large data baše systems (ref 7). An in the case of terminals, existing general pui^oso mainframes will be written-off at' an acceloratod pace, if the economics of new systems are. realistically evaluated. The exceptions will be the bigger, newer systems at large establishments that have a high . residual value; however, these systems will need to be reprograiiuned because the widespread use of intelligent terminals will simplify the task of terminal handling, rendering many features of present mainframe architecture redundant. As a result smaller executives can be written to support the new kinds of data base services that will be required by users of intelligent tenai-nals, in the light of the new architecture described below. 4.0. A New Architecture for Networks When sufficient storage and processing power resides in each user's personal terminal, there will be a drastic change in the type of traffic and connections that have to be established throu^ a public data network. The situation will be analagous to that of private cars and public transport, where ' the convenience of the former is displacing the latter, except for long trips where rail and ait transport becomes attractive. Because all interactive data entry, preparation and editing functions will be done locally, the present character-oriented traffic will disappear and there will no longer be need for th$ PAD facility (ref 8), which is now pei'formed by some public networks and is relatively complex compared with their basic transportation functions. Frequently used data will be held locally, so the data network will be used only for access to data which is rarely consulted, or to obtain changing data that is centrally updated by a data bank scrvice. There is a strong similarity here with a typical office which has current business file's readily to hand, and obtains any other information that may be needed when the occasion arises; albeit with more or less difficulty, delay and expense. In the case of the data network too, there will be trade-offs to bo made between the cost of local storage and that of using the network, talcing into the delay and diminished value of out-of-date information. The ability for users of intelligent terminals to construct files locally allow them to exchange messages directly with other users' terminals', rather thai) communicate through a common Mainframe system. These exchanges may be interactive so that users can conduct a di.alogue, or messages may be left at an unattended terminal to be read by its owner later. Research projects have studied the intelligent terminal as an aid to network users (ref. 9) and no doubt the result of further development will be a kind of automated secretary, assisting its user in many routine tasks and cheap enough to be available to ovf>i.7,'- EIN internal paper May 1977' INFORMATICA 2/1979 PROGRAM ZA PRORAČUN POUZDANOSTI RAZLIČITIH MEMORI JSKIH L. BUDIN 2. N02ICA U. PERUŠKO D. VUKOVIC SISTEMA UDK: 621.a0ia3 : 681.3.067 ZAVOD ZA ELEKTRONIKU ELEKTROTEHNIČKI FAKULTET, ZAGREB U članku se opisuje pristup israćLi programa za proračun pouzdanosti različitih meraorijskih sistema. Posebna pažnja usmjerena je na memorijske sisteme koji su posebno projektirani da bi zadovoljili visoke zahtjeve za pouzdanošću. Program odredjuje pouzdanost raeraorijskog sistema polazeći od zadane pouzdanosti blokova memorije. Pouzdanost bloka memorije računa se u programu prema MIIr-HDBK-217B. Reliability Analysis Program for Memory Systems. Although memory elements are greatly expanded in nearly all'areas of current digital system design, these components have not yet reached the degree of reliability required in large memory systems. Therefore various schemes that improve reliability of memory systems are developed. In following text computer program, based on developed models and wodels from I1IL-HDBK-217B, that allows comparison of memory systems is described 1. UVOD Buran razvoj poluvodičkih elemenata visokog stupnja integracije te mikro računarske tehni-r ke, uvjetovao je i nagli rast proizvodnje i potrošnje poluvodičkih memorija, bilo kao operativnih bilo kao masovnih memorija. Interes korisnika da poveća memoriju svog sistema doveo je usprkos svakodnevnom tehnološkom napretku koji uzrokuje pad cijene po bitu do porasta udjela cijene memorije unutar računarskog sistema. Razvoj tehnologije istodobno je uticao da se glavni problem' projektiranja računala pomakao od centralnog procesora k drugim područjima međju kojima je memorija jedan od vrlo značajnih za oijeli sistem. S jedne strane., premda je tehnologija producirala i vrlo brze memorije, nije dala uz ekonomičan i brz procesor i ekonomične i brze memorije. S druge strane, iako su se snažno širile na sva područja projektiranja digitalnih sistema, memorijske komponente nisu dostigle zadovoljavajući nivo pouzdanosti, l'o 'posebno vrijedi za neke tehnologije B, AnB - (xeXjniti jedna jedinica ne sadrži više od s grešaka} Teorem 2.: C i D nisu disjunktni dogadjaji. Dokaz: CnD " xcXjoba sklopa za prekapčanje ravnina bita su ispravna] Teorem 3•: E i P nisu disjunktni dogadjaji. Dokaz: ErtP " (^XflX niti jedna jedinica ne sadrži grešku } Iz pretpostavke o nezavisnosti kvarova i grešaka mogu se izvesti slijedeći izrazi: P(AnB) - P(A)-P(B) P(C/\D) = P(C).P(D) P(EnP) - P(B).P(P) 3].oženi dogadjaj SI : ßklopovi za prekapčanje rezervnih ravnina bi" ta u obje jedinice su ispravni, jedna jedinioa ne sadrži više od s+1 grešaka, druga jedinica na sadrži više od ß grešaka, SI " (AuB)^n(CnD) p(si) -Sp(a)+p(b)-p(a)p(b|^.p(g)-pcd) =[2P(A)-P(A)23«.P(C)2 P(S1) ={2P*(k+s »Pg , s+1, l)P^(k+3 ,u, s ,1) -[P*(k+0,P„,u,s+l,l)- Složeni dogadjaj 32 : Sklopovi za prekapcanja rezervnih ravnina bita su neispravni bilo u prvojj drugoj ili u obje jedinice, jedna jedinica ne sadrži više od jedne greške, druga jedinica ne sadrži niti jednu grešku, S2 = P(S2) = [P(E)+P(P)-P(E)P(P)] '^Cl-PCOPdl)] P(B2) ■.{2P'^(k,Pg,u,l,l)-P^[(EuP)ri(ÖnB)] = (AL;B)n(Ei;5')o(C/iD)/l(ÖnD) Kako je XnX = 0 i Yn0 = 0, slijedi SlnS2 = (aub)f\(euf)a0 = 0 Složeni dogadjaj S3 : Memorijski sistem je operativan ako se dogodi SI ili S2, te ako su istovremeno ispravni aklop za detekciju greške i kontrolni sklop u obje jedinice i sklop za prekapčanjo izlazne sabirnice podataka. -WS =[P(Sl)•^P(S2)3.R2.R2.Rp je: R^ o ° -pouzdanost kontrolnog sklopa " "(^dl^ " -pouzdanost sklopa za detekciju greške Rp = ^(Sp) -pouzdanost sklopa za prekapčanje izlazne sabirnice podataka Supleks memorija bez rezervnih ravnina bita; Složeni dogadjaj 'S4; Hemorijski sistem je operativan ako jedna jedinica ne sadrži više od jedne greške, druga jedinica ne sadrži niti jednu grešku, te ako su istovremeno ispravni kontrolni sklop i sklop za detekciju greške u obje jedinice i sklop za prekapčanje izlazne sabirnice podataka. ĐUP P(S4) .= [P(E)+P(P)~P(E)P(F)] m d p 5 c PROGRAM ZA IM.CUNAUJE POUZDMOSTI Ma oenovu opisanih modela izradjen je pro-grain za digitalno računalo pomoću kojega se računaju pouzdanosti opisanih memorijskih sistemao Uopćeni dijagram toka programa prikazan je nà slici 9o Program je napisan u višem programskom jeziku FORTRAN V i implementiran je u sistemu UNIVAC 1110 Sveučilišnog računskog eentra (SRCE) u Zagrebu, Format podataka na ulaznim karticama je slije-dećis ABC COM XV NB A4 A2 12 Đ E P NWfi BK" WH 14- Al 15 Opis podataka po poljima ; A) Naredba ulaznog jezika-, može biti jedna od slijedećih: POUZ ~ Izračunavanje pouzdanosti memorijskog sistema sa parametrima iz polja B,C,D,E i J?. MTHF - Izračunavanje pouzdanosti memorijskog sistema (Kean Time Between Failures - srednje vrijeme izmedju pogrešaka) sa parametrima iz polja B,C,D,E i F. ALTR - Paralelni ispis u alternativnu datoteku za štampanje. Ostala polja nisu značajna, PRMS - Ulazak u rutinu za promjenu parametara pouzdanosti« PLOT - Aktiviranje potprograma za generiranje izlaznih rezultata u formatu pogodnom za' grafički prikaz. BUGS - Aktiviranje potprograma za praćenje izvodjenja programa. Namjena ovog potprograma je prvenstveno bila za kontrolu rada u toku razvoja programa, ali može poslužiti ako se žele dobiti neki rezultati koji se inače ne štampaju na izlaznoj listi« KRAJ - Završetak obrade. B) Nezavisna varijabla; može biti jedna od slijedećih: T - vrijeme U - nepouzdanost memorijske ćelije - pouzdanost kontrolnog sklopa RE - pouzdanoat sklopa za detekciju i korek« ciju greške C) Duljina memorijske riječi u bitima D) Kapacitet memorije u riječima K) Oznaka jedinice za kapacitet memorije. Ako je u ovom polju upisano K kapacitet 6e biti prihvaćen u K-rijeöiraa (K = 1024 riječi). P) drijeme za koje se računa pouzdanost. Ovo polje nema značaja ukoliko je nezavisna VEu:ijabla vrijeme« Sva polja na ulaznoj kartici su uvjetna osim polja A i B-. Program sadrži dva osnovna skupa parametaraI (1) Parametri pouzdanosti. To au.frekvencije kvara pojedinih blokova sistema te vjerojatnosti Pgo^^Sl'^e ^ (2) Parametri memorijskih sistema. To su kapacitet memorije, duljine riječi, broj rezervnih ravnina bita, broj rezervnih modula i si« Parametri pouzdanosti mogu se promijeniti naredbom PUMS, dok se parametri memorijskih sistema učitavaju uz naredbè EOUZ i HTBI". Ukoliko se polja za parametre ostave prazna, program ee izvodi sa slijedećim parametrima: duljina riječi SlIP.Nm.HOM 16 SEC-0,SEC-1 22 2EG-0 23 SS-2,DUP-0,DUP-1 17 kapacitet memorije IK l,j za SS-2 0,1 Xmemorijske ćelije 10"^ sklopa za korekciju 0.95 10' ,-6 Xsklopa za prekapčanje 0.15 10"^ Xkontrolnog sklopa (k+s)0.5 10~® ^sklopa za glasanje 0.5 10~® 0.5 1.0 P^ (ßOM,NHR) G P„ (svi ostali) e Izlazna liata prikazuje pouzdanosti pojedinih memorijskih sistema u zavisnosti od odredje-ne nezavisne varijable. Rasponi u kojima se kreću pojedine nezavisne varijable su slijedeći: T - 1 do 20000 sati U - 10"^^ ,do 10~2 RH - 0.82 do 1.0 HE - 0,82 do 1.0 Kako računarski sistema SRCE-a ne uključuje grafičku stanicu, izlazni podaci za grafički prikaz bušo se u posebnom formatu na kartice. tako da se mogu posebnim programom iscrtati na crtaču Icrivulja sistema IBM 1150 (Elektrotehnički falcultet - Zagreb). Program je predvidjen za interaktivni rad na terminalu. U slučaju da ee želi ispis rezultata na štampaču, naredbom AL'i'R postiže se paralelan ispis na terminalu i u alternativnu datoteku za štampanje. Ova datote« ka se po završetku programa upućuje na štampanje. 4. RAČUNANJE FREJCVENCIJA KVAROVA BLOKOVA NA OSNOVU PRIRUČNIKA tHL-iroBK-217B Program opisan u prethodnom poglavlju računa pouzdanost memorijskih sistema na osnovu frekvencija kvara pojedinih blokova sistema koje su zadane kao parametri. Ovi parametri se moraju ili pretpostaviti ili izračunati. Da bi se izračunala frekvencija kvara bloka koji se obično sastoji od većeg broja raznovrsnih komponenti, potrebno je: (1) Sastaviti listu komponenti bloka čiju frekvenciju Icvara odred ju jemo. (2) Generirati podatke zavisne o primjeni (radna temperatura,.okolina, naprezanja i nivo kvalitete). (5) Obezbijediti informacije o svakoj komponenti kao što su kompleksnost integrira-» nog sklopa i granice maksimalnog naprezanja, (4-) Izvršiti proračun frekvencije kvara prema tablicama iz MIL-HDBK-217B [lO]- Da bi ae ovaj naporni posao olakšao izradjen program za digitalno računalo koji zamjenjuje korak (4) ovog postupka. Ovaj program je tek u početnoj fazi, tako da zasada računa frekvencije kvara integriranih elektroničkih sklopova, a daljnji razvoj predvidja uključivanje i ostalih komponenti zastupljenih u HIL-HDBK-217B, Tako-djer je u planu uspostavljanje' datoteke sa kataloškim podacima o pojedinim komponentama. Na taj način bi ae i korak ('■}) zamijenio automatskim pretraživanjem kataloga. Model za računanje frekvencije kvara integriranog sklopa prikazem je izrazom; •gdje je ; Ap - frekvencija kvara integriranog aklopa izražena u 1/10^ sati - faktor učenja komponente (izražava tzv. početnu nepouzdanost kod komponenti u početnoj proizvodnji) - faktor kvalitete integriranog sklopa 3d 7?",J, - temperaturni .faktor, ovisi o tehnologiji proizvodnje integriranog sklopa 77-J, - faktor okoline u kojoj se integrirani, sklop primjenjuje Faktori ì^li^.'^.ì^s ^ ^e iz tablica MIL-HIIBK-21?B. Cijatjram toka programa prikazan je slikom 10, Format ulaznih podataka je slijedeći: C D E P G H I 18 A2 Al A2 m.O 13 110 A B A3 Al Značenja pojedinih polja su: A) 'J?ip integriranog sklopa: DMS - digitalni, niskog ili srednjeg stupnja integracije DLS - digitalni, visokog stupnja integracije RAM - memorija RÒH - ispisna memorija LIN - lineai-ni B) ITehnologija proizvodnje sklopai A - O'l'L i DTL B - bipolarni i KOB linearni, bipolarni EOI. i "beam lead", ostali MOS sklopovi 0) Broj logičkih sklopova D) Nivo kvalitete komponente: AO - Mil-M-38510, klasa A (JAN) BO - Mil-M-38510, klasa B (JAM) BI - MIL-Std-803, metoda 5004, klasa B B2 - Vendor ekvivalént Mil-Std-883, metoda 5004, klasa B GO - Mil-!4-36510, klasa C (JAN) DO - komercijalni sklopovi, izvan vojnih standarda E) Faktor učenja F) Radna okolina: GB - zemaljski, laboratorijski uvjeti SF - svemirski lot QF - zemaljski nepokretni AI - zrakoplovstvo, područje s posadom NS - mornarica GM - zemaljski, pokretni AU - zrakoplovstvo područja bez posade NU - mornarice:, otežani uvjeti ML - satelitske i raketne primjene G). Radna temperatura H) Broj izvoda na kućištu integriranog sklopa X) Broj komponenti u bloku Izlazna lista sadrži preglednu tabelu svih komponenti i parametara sa pojedinačnim frekvencijama k\'ara. Na kraju tabele štampa se ukupni broj komponenti i ukupna frekvencija kvara bloka. 5^ ZAKLJUČAK Dosadašnja istraživanja na području ostvarivanja pouzdanog rada memorijskih sistema rezultirala su u velikom broju različitih koncepcija Prilikom odabiranja odredjenog sistema mora se voditi računa o odnosu veličina cijene, brzino i pouzdanosti koje karakteriziraju sistem. Da bi se odabrao optimalni sistem s obzirom na pouzdanost, mora se odrediti uticaj takvih parametara memorije kao što su npr. dužina mejuo-rijske riječi, veličina memorije, pouzdanost upotrebijenih elemenata, očekivane dužine rada i si. [l ~ . Programi koji su opisani omogućuju analizu uticaja pojedinih parametara memorije na pou2>-danost cijelog sistema. Programi u računanju pouzdanosti memorijskog sistema polaze od modela koji su izvedeni iz pouzdanosti pojedinih blokova meraorijec Pouzdanost pojedinog bloka memorije računa se prema priručniku MIL-UDBK-21?B. DODATAK ; Objašnjenje pojmova i oznaka korištenih u tekstu kvar - odstupanje fizikalnih karakteristika komponente od karakteristika odredjenih početnim dizajnom greška - Lotjička varijabla čija se vrijednost razlikuje od dizajnom predvidjene vrijednosti, uslijed djelovanja kvara maskirani kvar - logička varijabla čija se vrijednost ne razlikuje od dizajnom predvidjene vrijednosti, iako je na nju djelovao kvar grupa bita - skup bita unutar kojega promatramo vjerojatnost pojave greške u datom trenutku, Kod NMR sistema to je skup bita koji se dovode na ulaze sklopa za glasanje a kod ostalih je to memorijska riječ. B-Sc-fC - (engleski: stuck-at-ei ), tip kvara kada logička varijabla zadržava trajno istu vrijednost,^(0,1^ . binm(i,p,W) Pj^^i - dio memorijskih riječi koje na poziciji i-tog bita sadrže jedinicu, k - duljina memorijske riječi w - kapacitet memorije u riječima PgQ, Pg^ - vjerojatnosti kvarova s-a-O i s-a-1 u - nepouzdanost ćelije u^- nepouzdanost sklopa za glasanje s - broj rezervnih ravnina bita X- frekvencija kvara 40 biti bit® bit (k-1) k / / / / / / / 1 / k / / / / / j / / / / / / / / / y . v njGC sklop sklop kont- za pre- za rolni kapča- korek- sklop nje ciju Slika 1.: Organizacija memorije Slika 5«! Model pouzdanosti memorijskog sistema sa rezervnim modulima (SS-W) M kontrolni sklop Slika 2^;' Model pouzdanosti simpleks memorijskog sistema (SMP) kont - M rolni sklop Slika 3o! Model pouzdanosti ispisne memorije (ROM) Slika Model pouzdanosti memorijskog sistema sa N-modularnora zalihosti (Ntll?) Slika 6„! Model pouzdanosti memorijskog sistema sa korekcijom jednostruke greške i rezervnim ravninama bita (SEC-S) kont- rolni sklop Slika 7»! Model pouzdanosti memorijskog sistema sa korekcijom M grešaka i rezervnim ravninama bita (tffiC-S) sklop ža detekciju greške r- sklop 9 za de- 1 tekciju greške sklop za pre-kapčari je kontrolni sklop Slika 8.: Model pouzdanosti dupleks memorijskog sistema (DUP-S) PROMJENA perametara pouzdanosti —rzi formiranje datoteke za iapis postavljanje parametara za kontrolu izvodjenja programa formiranje datoteke za grafički prikaz podataka I definiranje nezavisne varijable i parametara memorijskih sistema ______ J računanje pouzdanosti i M'i'BF i / štampanje rezultata i bušenje kartica Slika 5,! Dijagram toka programa za računanje pouzdanosti memorijskih sistema lista komponenti dijagnostika računanje frekvencija kvara i - sumiranje frekvencija kvara I tabela rezultata C Ki? A J 3 podaci u datoteci? ^^ pretraživanje kataloga A učitavanje podataka skraćeni katalog Slika 10,! Dijagram toka programa za računanje frekvencija kvara blokova Literetura 1 Glen WoCoxjBoD.Carroll/'Reliability Modeling and Analyaia of Fault-Tolerant Memories, "IEEE Trans.Reliability,vol R-27,1978 April,pp 2 D.ßiewiorelc,SoEllcind,"The Effect of Semiconductor memory chip failure modes on system reliability and performance,"1978 International Symposium on Fault-Tolerant ComputingjToulouse,Prance,1978 June 21-23, pp 150-155. 5 D.Siewiorek et alo,"A Case study of C.mmp, Cm,and Covmp:Part II-Predicting and calibrating reliability of multiprocessor systems,"Proceedings of the IEEE,vol.66, No<,10,1978 Ootobar,pp 1200-1220. L.Lavina,W.Meyers,"Semiconductor memory reliability with error detecting and correcting codes,"Computer,vol 9,No.10,1976 October,pp ^3-50c 5o W,T„Hartwel,CoW=Hoffner,W.N.Toy,"A fault-tolerant memory for duplex systems," IEEE Trans ..Reliability,vol R-2?,1978 April 5pp 134-1380 6„ JoGoldberg et al.,"An organization for a highly survivable memory,"IEEE Trans, on Computers,vol C-23,No„7,July 197^,PP 693705. 7. W.C.Carter,C.E.Mc Carthy,"Implementation of an experimental fault-tolerant memory system,"IEEE Trans.on Computers,vol C-25 , No„6,June 1976,pp 557-568. 8« W.O.Carter at al.,"Lookaside techniques for minimum circuit memory translators,"IEEE Trans.on Computers ,vol C-22,No.3,March 1973 pp 285-289. 9. W.G Bouricius at al,"Modeling of a bubble memory organization with self-checking translators to achieve high reliability,"IEEE Trans on Computers,vol C-22, March 1973,pp 269-275 10. Mil-Std-l{dbk-217B, Military Standardization Handbook: Reliability Prediction of Electronic Equipment, September 19740 INFORMATICA 2/1979 SOFTVERSKI SISTEMI ZA SIMULACIJU MULTI-MIKROPROCESORSKIH RACU NARA V. OTOVIC UDK: 681.3.012 : 519.682.6 SOUR „RUDI ČAJAVEC", RO PROFESIONALNE ELEKTRONIKE OOUR RAČUNARSKO RADARSKE TEHNIKE. BEOGRAD, JUGOSLAVIJA Ovaj rad izlaže probleme 1 specifičnosti vezane za softversku simulaciju multi-mikronrocesorskih računara, kap i strategiju projektovanja ovakvih sistema. Izloženi su osnovni, elementi i moduli jednog ovakvog sistema kao i funkcije i karakteristike svakog od modula. Razmatran je i oroblem medjusobne sprege modula, kako u okviru samog sistema za simulaciju tako i sa stanovišta nrocesa koji se odvijaju tokom simulacije na "host" računaru. Kao moguća rešenja dato je oar konfiguracija koje su uslovljene složenošdu sistema i mogućnošću "host" računara. SOFTWARE SYSTEMS FOR MULTI-MICROPROCESSOR COMPUTER SIMULATION: This paper presents the oroblems associated with the design of multi-microprocessor computer simulators, as well as the general modeling s.trategie for such systems. Basic elements and modules are described, as well as the characteristics and functions of each module^ A discussion of module linkage, from the ooint of view of the processes taking place on the host computer, is also given. A few configurations are presented as possible solutions, all of which are a function of the system complexity and host computer capabilities. UVOD Poslednjih nekoliko godina mogućnosti mikroprocesora su se znatno povećale, a samim tim i polje njihove primene. Medjutim, i pored znatnih poboljšanja* neke od primena su bile preambiciozne za samo jedan mikroprocesor. Da bi se zadovoljile potrebe počinje se sa ugradnjom više mikroprocesora u sisteme, a u poslednje vreme se na tržištu pojavljuju pravi multi-mikroprocesorski (MMP) računari. Očigledno da se odmah javlja problem analize -rada ovih sistema, kao i problem projektovanja ,i provere softvera za MMP računare. Sistemi za modeliranje za MMP rači:(nare još ne postoje. •Medjutim, 1 da postoje ne bi bili od veće ko. risti za detaljniju analizu rađa. Klasičan sistem za modeliranje bi možda mogao da pruži potrebnu kontrolu, ali ne i obilje statistika potrebnih da bi se dobila jasna slika o radu sisteriia. Pored toga sistém za modeliranje bi ograničio korisnika na jednu konfiguraciju. Pad je referiran na XIV. Simpoziju Informatica 79, Bled, i-6. oktobra t')?^.. U takvoj situaciji najlakši izlaz je pribeći softverskoj simulaciji sistema. Softverski sistem bi obezbedio potrebnu kontrolu, omogućio prikupljanje statistika, i ne bi vezao korisnika za samo jednu konfiguraciju. Obezbedil'o bi sé relativno lako i efikasno projektovanje sistema u koji MMP računar treba da se ugradi. KARAKTERISTIKE SISTEMA ZA SIMULACIJU Prilikom projektovanja softverskih sistema za simulaciju MMP računara moguće je voditi se nekim uopštenim strategijama, i metodama. Takav jedan sistem bi trebalo da poseduje karakte- ' ristike koje omogućuju Sto efikasniju upotrebu. Zahtevi na koje sistem treba da odgovori kao i neka pravila prilikom projektovanja, u osnovi definišu karakteristike sistema ža simulaciju. Osnovne karakteristike ovakvog sistema su; I) Sistem treba'da bude projektovan modularno sa precizno definisanlm ulazima (izlazima) 2) Sistem treba da Ima mogućnost da se što je moguće lakše prilagodjava novoj konfiguraciji MMP računara. 3). Skup komandi sistema za simulaci ju mora da pruži punu kontrolu nad simulacijom. 4) Sistem za simulaciju mora da obezbedi sve potrebne statistike o radu svih mikroprocesora kao i računara u celini. 5) Radi što veće kontrole sistem mora da bude interaktivan. (10DULI Potreba za izmenama u sistemu za simulaciju se može javiti usled rekonfiguracije MMP računara kao i usleđ nekih specifičnosti novog "host" računara na koji se sistem za simulaciju ugra-djuje.' Da bi se omogućila što lakša Izmena, sistem se projektuje modularno. Moduli se orga-nizuju u logičke celine i to tako da se veza izmedju modula svede na minimum neophodnih podataka. Ako je ovaj "interfeja" modula precizno definisan, bilo kakve izmene u okviru jednog modula ne bi imale efekta na ostale module u sistemu, pod pretpostavkom da se "in-terfejs" ne menja. U daljem tekstu su date sve karakteristike modula kao i definicije njihovih ulaza/izlaza. Osnovni moduli sistema za simulaciju su: DUlazni izlazni (U/I) modul 2)Modul (P) za obradu komandi 3)Kontrolni (K) modul 4)Modul (M) simulatora mikroprocesora 5)Statistički (S) modul 6)Modul (D) podataka Ulazno izlazni modul obezbedjuje komunikaciju izmedju korisnika i sistema. Modul P vrši prevod jen je upravljačkih komandi sistema. Kontrolni K modul sinhronizuje rad M modula,periferije i memorije u skladu sa njihovom konfiguracijom u MMP računaru i obezbedjuje simulaciju real- : nog vremenskog preklapanja dogadjaja. Simulator mikroprocesora, M modul, simulira skup instrukcija mikroprocesora. Statistički S modul prikuplja i raspolaže svim podacima o stanju računara. Modul podataka '(D) nije izvrSni modul već je modul koji sadrži sve elemente računara i njihova stanja. U/I MODUL Ulazno'izlazni modul obezbedjuje komunikaciju izmedju korisnika i sistema za simulaciju. Neposredna komunikacija sa korisnikom se odvija preko terminala "host" računara. Ulaz se koristi za unošenje upravljačkih komandi. Ovaj ulaz je relativno jednostavan jer format upravljačkih komandi može unapred da se odredi. Nakon unošenja, komanda se u izvornom formatu prosledjuje modulu za obradu komandi (P mod.). Izlaz se koristi za prikazivanje stanja elemenata u MMP računaru, i zato je znatno složeniji s obzirom na veliki broj mogućih izlaznih podataka i potrebu za njihovim reformatiranjem prilikom prikazivanja. Izlazne podatke treba grupisati u niz podmodu-la. Svaki podmodul bi sadržao informaciju o tipu i formatu podatka koji treba da prikaže, kao i sve potrebne izlazne instrukcije. Izlaz bi se jednostavno inicirao pozivanjem odredje-nog podmodula. Kako podmoduli mogu medjusobno da se pozivaju, kombinacije izlaznih podataka bi bile izuzetno velike. Grupisanje izlaznih podataka i medjusobno pozivanje podmodula se odredjuje unapred ali se isto tako može veoma brzo promeniti ako se U/I mo(^ul organizuje na ovaj način. . P MODUL Modul P vrši prevodjenje izvornih upravljačkih komandi. Upravljačke komande omogućuju uorav-Ijanje sistemom, ispitivanje i modifikaciju stanja svih elemenata u MMP računaru. Modul P prima komande od U/I modula u nekom od alfanumeričkih kodova (ASCII, EBCDIC), zavisno od "host" računara. Moguć format izvorne komande je dat u slici l.a. komanda / opi / op2 / op3 Slika l.a Izvorna komanda (80 bajta) op kod opi op2 op3 Slika l.b Prevedena komanda (4 bajta) Komanda se zatim prevodi u pogodniji format, Koji ostali moduli prepoznaju. Moguć format prevedene komande je dat u slici l.b. Za pre-vodjenje komande mogu se koristiti standardne metode upotrebijene u jezičkim prevodiocima. S obzirom da je skup komandi'relativno mali i da je format praktično isti za sve komande, te metode se mogu znatno uprostiti i svesti na najneophodnije operacije potrebne za prevodje-nje. Izlaz iz P modula je komanda u formatu datoli) u slici l.b. Komanda se prosiedjuje ka S ill K modulu, zavisno od toga da li je komanda aktivna ili pasivna. Pod pasivnom komandom se podrazumevaju komande koje ne aktiviraju simulator računara (K i M module), ved samo menjaju ili prikazuju stanje pojedinih elemenata u ra-čunaru. Ove komande se prosledjuju ka S modulu. Pod aktivnom komandom se podrazumevaju komande koje aktiviraju simulator računara. Ove komande se prosledjuju ka kontrolnom K modulu. Tipičan skup komandi za jedan ovakav sistem je dat u tabeli 1. TABELA 1 ■ Tipične konande sa prlxnerima mogućih polja operanda Komanda opl op2 pp3 Tip Opis RUN A - - A Startuj procesor A HALT B - - A Zaustavi procesor B LOAD - - - A Puni meiTOriju DISPLAY M 0100 OlOF P Prikaži sadržaj item, od OlOOjg do OlOFjg MODIFY M 05 lA EFFF P Premeni sadržaj mem. lokacije 051A u Et'l''!-' STAT — — P Prikazivćmje željenih statistika o radu Tip: A - aktivna kcnianda P - pasivna komanda K MODUL Kontrolni K modul je verovatno najvažniji modul u čitavom sistemu. Modul K objedinjuje i sinh-ronizuje rad svih simulatora mikroprocesora, odnosno M modula, kao i svih periferika. Raz-lučuje memorijske konflikte izmedju M modula onako kako bi to stvarni sistem činio. Najvažniji zadatak K modula je da sinhronlzuje procese tokom simulacije, odnosno, da daje osnovni takt i da simulira vremensko preklapanje istovremenih procesa. Kod "sinhronih" računara (računari sa istim mikroprocesorima i istim osnovnim taktom) problem se može rešiti simulaci jom osnovnog takta u K modulu. Svaki n-ti takt bi se redom dođeljivao prvom, drugom pa i-tom M modulu. Zatim bi se proces ponovio za n+1, n+2 takt i tako redom. Za "asinhrone" MMP računare(računare sa različitim mikroprocesorima i' različitim taktom) problem je neSto složeniji i može se rešiti programiranjem u realnom vremenu. K modul u tom slučaju mora da sadrži planer procesa koji će preko časovnika stvarnog vremena da Inicira procese u odgovarajuće vreme. S obzirom da će simulator verovatno biti sporiji od stvarnog sistema, sva vremena se moraju skalirati kako bi relativan odnos izmedju procesa ostao isti. K modul mora da poseduje i podmodul za prlhva-tanje komandi koje dolaze iz P modula. Ovaj podmodul treba da inicira izvršenje komande i da ustanovljava kraj izvršenja komande. M MODUL Modul M simulira Izvršenje kompletnog skupa instrukcija za dati mikroprocesor u sklopu MMP računara. U MMP računaru koji ima iste mikroprocesore poželjno je raditi ovaj modul u "reentrant" kodu kako bi se izbeglo duplicira-i nje M modula za svaki mikroprocesor u računaru. Kod MMP računara sa različitim mikroprocesorima potreban je po jedan M modul za svaki mikroprocesor u sistemu. Rinhronizovan rad svih M modula u sistemu kontrolišc K modul. S MODUL Etatistički (S) modul raspolaže svim podacima o radu računara kao i podacima o stanju svih elemenata u računaru. S modul izvršava pasivne komande, odnosno, prikazuje ili menja stanje elemenata u računaru. Ovaj modul ima pristup svim podacima u D modulu, i preko U/I modula inicira prikazivanje elemenata iz D modula. Prikazivanje se inicira time što se U/I modulu prenosi informacija o broju podmodula koji vrši izlaz,zajedno sa podatkom koji treba da se prikaže. Kombinacijom brojeva podmodula iz U/I modula, S modul može da daje i različite kombinacije izlaznih podataka. D MODUL Modul podataka (D) nije izvršni deo sistema za simulaciju već je samo blok zajedničkih podataka. Ovaj modul sadrži sve iformacije o stanju elemenata u računaru. U D modulu su podaci o stanju sadržaja memorije, registara, brojača lokacija, ulazno izlaznih registara i raznih kontrolnih signala. - KONFIGURACIJA SISTEMA ZA SIMULACIJU Slika 2 prikazuje blok-^emu sistema za simulaciju MMP računara. Isprekidanim linijama je prikazan tok podataka, a punim linijama tok kontrole. Kao što se vidi, komande sa terminala se prosledjuju P modulu na prevodjenje. U slučaju da je komanda pasivna, P modul je šalje S modulu na izvršenje. Zavisno od komande, f3 modul ili menja stanje u računaru ill poziva U/I modul radi prikazivanja podataka na terminalu. U sličaju aktivne komande P modul je prosledjuje kontrolnom. K, modulu. Slika 2 Blck-šeraa sistema K modul aktivira M module, sinhronizuje njihov rad i proverava uslove završetka tekuće komande. Po završetku komande deaktivira sve M module i öeka novu komandu. Da bi simulacija bila što realnija izuzetno je važna konfiguracija celo-kupnog sistema sa stanovišta parocesa koji se odvijaju na "host" računaru. Najjednostavnija konfiguracija je kada je kompletna šema data u slici 2 predstavljena kao jedan jedinstven proces na "host" računaru. Kontrola teče iz jednog u drugi modul i korisnik nama mogudnost da utiče na simulaciju dokle god se kontrola ne vrati u U/I modul i omogući mu da unese sledeću komandu. To bi ograničilo stepen kontrole i znatno umanjilo realnost simulacije. Pored toga moglo bi da se dodje u situaciju da vreme odziva sistema postane nedozvoljeno dugo. U slučaju da "host" računar ima mogućnost multi-programiranja i komunikacije izmedju procesa, sistem se može organizovati u daleko povoljniju konfiguraciju. Moduli K, M i D predstavljaju Bistern koji se simulira dok moduli U/I, P i s Bu na neki način upravljački moduli. Mnogo povoljnija konfiguracija bi bila kad bi se sistem organizovao u te dve logičke celine kao dva različita procesa na "host" računaru, koji se odvijaju paralelno, ali koji i komuniciraju. Stepen slobode prvog procesa (K,M i D) bi sada bio daleko veći. Mogućnost simulacije prekida i raznih drugih stohastičkih nrocesa, koji utiču na rad računara, bi bila daleko veća od mogućnosti koje pruža prva konfiguracija. Ovakva konfiguracija bi znatno iskomnlikovala PIK module zbog mehanizma izmene poruka (komandi) ali'bi se dobilo u realnosti simulacije. ("ehanizam izmene poruka (komandi) se mo?.e organizovati na više načina. Moguće je da P modul prekida K modul, nakon čega bi K modul primao poruku. Druga mogućnost je da P modul ostavlja poruku u nekoj zajedničkoj lokaciji u memoriji koju bi K modul povremeno ispitivao. Mehanizama ima raznih,ali su obično prilikom projektovanja sistema ograničeni mogućnošću računara na kojem se sistem projektuje. ZAKLJUČAK Opisana je jedna moguća strategija nrojektova-nja softverskog sistema za simulaciju MMP računara. Dati su osnovni elementi i karakteristike takvog sJstema. Projektovanje konkretnog sistema je složen posao i ontimalnost jednog takvog sistema je kompromis izmedju zahteva, ekonomičnosti, složenosti MMP računara i mogućnosti računara na kojem se sistem nrojoktuje. Modularni pristup, opisan u ovom radu, pokušava da generalizuje ovakve sisteme i da nruži odre-djenu fleksibilnost i preglednost u projektova-nju. Samostalnost modula, kao i nrecizno dJifi-nisani ulazi/izlazi modula daju sistemu odre-djenu fleksibilnost i mogućnost rekonfiguracije kako bi se zadoviljili zahtevi projektovanja konkretnog sistema. BIBLIOGRAFIJA- 1. Ens low H.P. : riultiprooessors and förallel procesing John Wiley, N.Y., 1974 2. Martin F.F. : CoiiDUter Modeling and Simulation John Wiley, N.y.,..1968 ,3. Deland C.D., Bekey G.A. : Interactive Cctrputer Simulation, Instruments and Control Systems, Oktober,1972 4. Shore J.E. : Software Simulation of an Associative Processor, N.R.L.,Washington D.C.,Deoentoer,1971 5. Mueller R.A.,Johnson G.R. : Generator for Microprocessor Assemblers and Simulators, Proc. of IEEE, vol. 64, NO. 6, June,1976 INFORMATICA 2/1979 KONVOLUCI JSKI KODIRNI IN DEKODIRN POSTOPEK PRI Ml KRORACUNALNI KU ISKRA DATA 1680 M. KAPUS G.DEVIDE B. HORVAT UDK: 681.325.3 VISOKA TEHNIŠKA ŠOLA MARIBOR POVZETEK - Brez dvoma je eden najmodernejših in atraktivnih dekodirnih postopkov v prenašanju in zavarovanju digitalne informacije Viterbijev algoritem. V naslednjem desetletju pričakujemo v komunikaciji podatkov ta algoritem realiziran v integrirani obliki s pomočjo materialne opreme. Zaradi visoke redundance se tak postopek koristi predvsem pri prenosu podatkov FEO brez povratnega komunikacijskega kanala. Pri komuniciranju med procesorji in v želji po čim večji zanesljivosti smo koristili ta kodni in dekodni postopek in ga realizirali s pomočjo programske opreme. Kodirnik je preprost pomikalni register povratno povezan s seštevalniki po m = 2. Dekodiranje je bolj zapleteno in je bistvo članka. Simulirali smo celoten prenosni sistem za ocenitev prenosa. Komunikacijski kanal smo ponazorili kot normalno porazdelitev z generatorjem naključnih števil. Rezultati so obetavni in kažejo na veliko zanesljivost prenosa kljub množici motenj v kanalu. CONVOLUTIONAL CODING AND DECODING PROCEDURE BY MICROCOMPUTER ISKRA DATA 1680 - Without doubt is in communication the Viterbi algorithm one of the up to date decoding procedure. In next decade we expect that the procedure be realized in integrated form on the chip. The procedure take more use in FEC transmission and need for deplexing the same number information as control bits. By communication between processors to achieve more transmission reliability we use this coding and decoding procedures with software suport. The coder is simple shift register feedback conected with exlcusive or elements. The decoding procedure is more complex and the mathematical structure which we take is explained in this article. We simulate the communication channel with a random number generator, to value'the transmission system. The decoding procedure has shown succesfull transmission with a great degree of reliability on channel errors. 1. Uvod Če želimo dvigniti zanesljivost prenaša nih sporočil v digitalnih sistemih, pri katerih ni povratnega kanala, se odločamo najpogosteje za popravljanje napak na sprejemni strani. Tak način prenosa zahteva dokajšno redundanco prenesenega sporočila v obliki kontrolnih bitov, ki jih privesimo informacijskim bitom. Ravno tako moramo računati s povečanim procesorskim časom in povečano pomnilniško kapaciteto. Želeli smo ustvariti poseben minimalni procesorski modul, ki bi bil kot komunikacijski procesor priključen na večji računalniški sistem in bi tako zagotavljal povečano zanesljivost vsem onim vhodno/izhodnim vodilom, kjer ni možnosti za povraten kanal, torej za prenos ARQ sistema. Takšni komunikacijski kanali so pogosto vsi prenosi podatkov na pomnil-niške medije in vse prenosne poti, kjer pogosto ponavljanje informacijskih paketov ne bi zavrlo prepustnost. informacijskega pretoka. Razumljivo je, da komunikacijska pot mora imeti določeno kvaliteto in nenavadne nepre-velike aditivne napake kanala nam dekodirni proces izloči. Sam kodirni postopek je zelo preprost in ne zahteva procesorskega časa in ga najpreprosteje rešimo v materialni'opremi. Dekodirni proces je mnogo bolj zamotan In podana je njegova programska rešitev. Izbrali, smo minimalno konfiguracijo registrov in si s tem zagotovili manjiäi čas procesiranja in manjšo rjomnllniško kapaciteto. 2. Opis kodirnega in dekodirnega algoritma Pri sinhronem prenosu sporočil nimamo povratne kontrole, ali je bil prenos pravilen. ZatS moramo uporabiti načine kodiranja, kjer bo šifra čim manj občutljiva na mot- nje. Eden takih načinov je konvolucijsko kodiranje. Odločili smo se za kodirnik z delovno besedo dolžine treh bitov. l.|2-|3.1 informacijski biti Informacijske bite vodimo skozi pomikalni register in vsakokrat izračunamo .0] in 03. Namesto sekvence informacijskih bitov oddajamo sekvenco urejenih parov (Ql, Q2) - Ta je dvakrat daljša od prvotne in implicitno vsebuje razen osnovne informacije še odnose med za]X>-redniml tremi biti. Zaradi tega je prenos zanesljivejši. Ker ne vemo, koliko se je informacija pri prenosu pokvarila, jo lahko dekodiramo le z verjetnostnim računom. Seveda ni mogoče zajeti vseh motenj, ki se lahko pojavijo, saj bi potrebovali ogromen spomin. Zato zajamemo le najverjetnejše, to je minimalne motnje. Rezultat teh motenj je zaporedje, ki se kar najmanj razlikuje od oddane sekvence. Na tem principu sloni Viterbijev algoritem. Izmed informacijskih bitov, ki so trenutno v postopku kodiranja, bosta 2. in 3. bit skupaj z naslednjim informacijskim bitom I določala vrednost Qi, Q2 v naslednjem koraku. Označimo urejeni par 2. in 3. bita z X. a = 00, b = 01, c = 10, d = 11 48 S sprejemom novc"1+1 l+l, X, Ü == X. a.b 1+1 1 ==Xj C,d 00 01 10 11 Vi 1 Vi ''l a 0 a 00 0 0 1 1 2 c 11 1 2 1 1 0 b 1 a 11 0 2 1 1 0 C 00 1 0 1 1 2 c 0 b 10 0 1 2 0 1 d 01 1 1 0 2 1 d 1 b 01 0 1 0 2 1 d 10 1 1 2 0 1 Tabela 1 Sprejeli smo sekvenco Qj parov (Qj, Q2)j i j = Iz nje lahko sklepamo, kakšna je bila sekvenca inf. bitov Sj. Sklepamo ločeno za primere, ko se Sj končuje z a, b, C oziroma d. Tako dobimo štiri sekvence a,b,c,d . Vsaka sekvenca nam da sekvenco Qj^xj» dejansko sprejete sekvence Qj razlikuje na '^l.xj mestih. i, v == Q Q, - Q. 1 i.x, 1.X, V naslednjem koraku sprejmemo par (Qi, in za vsako končnico xj+i spot^ppiščemo najverjetnejšo vhodno sekvenco Sj+i ,xi+i • Nove sekvence so seveda nastale z dodajanjem naslednjega Informacijskega bita starim vhodnim sekvencam. Odnos med x l,x 1+1' 'x že poznamo Iz tabele 1. 1+1 1+1 ,x == Q Q. = Q, i+l ^i+r^i+i.v , ' 1+1 Ker sta za vsak x^^ ^ možna dva x^, izberemo verjetnejšega, to je tistega, kjer jo ^ manjša. X. : M. , l 1+1,X 1+1 (xj = min. Izbrani x^ določa funkcijo (xjtl : i+1 ,x. 1+1 1+1 ,x. ,(x.) ' 1+1 1 Izmed štirih sekvenc S. , iH ,x tisto vzamemo kot pravilno Vr kjer je M i+l -. , (x, , ) = min. 1+1,1 + 1 Ker vse sekvence Sj težijo k isti najverjetnejši sekven-ci S, se začenjajo doloma ujemati v bitili, ki so nastali prej in so šli že večkrat skozi jiostopek preverjanja verjetnosti. S poskusi so ugotovili, da jo to dovolj pogosto že na mestu (i - 0.4), strožjo na mesti (i - 5.1)) , kjer je dolžina delovne besede kodirnika, v našem primeru je D = 3. Oelov sekvenc Sj^xj, ki so skupjil, ni več n)ogoče izboljšati, zato predstavljajo rezultat dekodiranja. Torej ' lahko predstavimo sekvence v registrih z dolžino 4.D, bit, ki vsakokrat izpade iz registra, pa je rezultat. Program smo realizirali na MC G800, ki ima 8-bitne celice, zato smo uporabili 16-bltne registre. Za Sq^xq lahko Izberemo poljubno zaporedje, prav tako za poljubne vrednosti, saj bodo te zanemarljive mj^xj vlšjili redov. Mi smo izbrali napram vsoti „16 So. M 0,xo = 0. Za naslednji korak so pomembne le relativne razlike med Mi,xi ' vsakokrat odštejemo minimalno. M. M - M. (x.) min. I Pri tem se pokaže, da so vse možne kombinacije naslednje: Ma Mb Me Md M OlOOOlOOril o D 1 2 02 1 1 o 1 2 2 001001010110021201 1 1022 00010011101 1 2001 1 02220 1 0000101111021001 12022 10 0 1 23456789 10 H1213 14 151617B19 2)2122 Tabela 2 Vsak niz M . M. . M .M Ma 02220233 Mb 2 Me 2 0 2 2 2 0 3 3 2 0 2 3 3 0 2 Mjj 22203320 M 23 24 25 26 27 28 29 39 M M a' c' *d nadomestimo z njegovo zaporedno številko M; M = O, 1,____,30 Zahteve pri programiranju: 1. Čim več rezultatov izračunamo vnaprej In jih po potrebi le pokličemo iz spomina. 2. Uporabimo čim več spomina tipa KPROM In čim manj . RAM-a. Za vsak M Izračunamo tabelo prehodov. M. M i+l M P J i+l i+l a O 0 1 d 1 J Jv M + m. , = M l+l,x. i+l.x.^, Primer za M = 19. 19 0 0 0. 0222 23 0x00 110 0 1 O 1 0010 3 0010 0 0 1 0 2 1 O 0001 4 0001 0 110 2_ Pri starem stanju M^ sprejmemo bita Q[, Q2. Dobimo minimalne razdalje - nabor Mj+i z imenom M, s tem da smo uporabili optimalne poti iz nabora Pj+i. Pj^^ = O, če smo šli po zgornji poti, n.pr. ava. = 1, če smo šli po spodnji poti, n.pr. c v a . = X, če sta poti enakovredni. Mestom Mj+i X- priredimo naslednje dvojiške vrednosti: m. , : 11 M. i+l,b 10 M. 01 J. , je oznaka minimalne M. . i+l 1+1,X. ' 1 i+1 ,c ■ , to je registra, iz 1 katerega bomo prebrali rezultat. 1. Če je Mj+i min. ena sama, pišemo njeno pozicijo v stolfjec J.Jx= 00. 2. Če sta Mi+i min. dve, se poziciji vedno razlikujeta le po enem bitu. V stolpec J^ vpišemo skupni bit z njegsvo pravo vrednostjo, bit se razlikuje, pa označimo z X.J = ob. • 3. Če so Mj^^ min. tri, dve sosednji vpišemo kot pod točko 2, tretjo pa kot pod točko 1. 4. Če.so Mj+i min. štiri, je Jx = XX in J = 00. 5. S = 1 natanko v primeru 3, ko se moramo odločati med J in Jx z verjetnostjo p(j), : p(Jx) = 1:2. 6. S = O pomeni, da smo se odločili za J. To je v primeru 1, po naši prosti izbiri pa tudi v primeru 3, ko se S posebej izračuna v UAM-u. 7. S = 1, če se odločimo zà Jy, to je v primerih 2 in 4. Vsaki kombinaciji M, Qj, Q2 priredimo tri spominske celice v liPHOM-u. Naj bo R najnižji uporabljeni naslov. Potem najdemo na naslovu r + 4.M. + (QjQ2) 2 celico t, R + 4.M. + (Q^Q^) 4.31 celico U, H + 4.M. + (QjQ^) ^+8.31 celico V. 0 M i+1 "Ö1 0 iJ 'Vi s s X(J ) X 1 ^('^i+l) Biti v X(Jx) in imajo vrednost 1 na mestih, kjer v Jj, in Pj+l nastopa X, sicer so 0. Prva celica je del naslova za naslednji cikel. R še ni upoštevan, zato je možno vse tri bloke spomina prestavljati na poljubne naslove brez sprememb. V začetku vsakega cikla se izračuna naslov celice T in se dhrani v INDEX registru. Celice U in V so dosegljive z indeksiranim naslavljanjem , Za polnjenje ,x bitov potrebujemo psevdogenerator naključnih števil GX, Glede na GX (mod 3) tudi določamo S , kadar je S = 1. Potrebne celice RAM-a: - GX, - štirje dvocelični pomikalni registri za S .S .S .S a' b' c' d' - štirje dvocelični S|)omini za spravljanje registrov S, ko jih jo treba [iromeSati, - celica za informacijske bite, ki izpadejo iz registrov, - celica za S , - celica za U, ko se izračunajo X-biti, - celica za dekodirane sekvenco informacijskih bitov. (Slan J ilprami rtgistrt S h INOX \prtbtri Oi.đj I \/HĐX~-lf/OX f »'fOi.OlJl^ \gšn9riraj GX\ iiračunaj X-bitt 0 S'—H/W X Sp—Sa St—St Si —Sc pomik r9gitlro¥S polni pravilna bit»/ gl9dt 00 / izbtri najvrj»tntj£i i i pad li informocijiki bit in ga dodaj d»kodironi s 9k vtnci Mp] pr •vajanj» informacij-iko S«k¥9nc9 V atta numtrićnt Irak» in izi CAKAJ 3. Sklep Opisani algoritem smo preizkusili na simuliranem prenosnem sistemu. Prenos sporočil je zanesljiv do določene kvalitete kanala. Pri izbiri daljših registrov, bi po pričakovanju prenosni sistem iskazal še boljšo zanesljivost. Koristili smo majhen pomnilniški prostor in razmeroma malo procesorskega časa. V vsakem primeru bomo ob uix>rabi integriranih vezij s tem dekodirnim algoritmom dvignili zanesljivost tudi nad mediji, kjer je zanesljivost zelo slaba in hkrati povečali prepustnost komunikacijskega kanala ter bo odpadla potreba po povratni Uniji. LITERATURA 1) A.J. Viterbi: Error Bounds for Convolutional Codes and a Asymptotically Optimum Decoding Algorithm; IEEE Trans, on Information Theory Nov.1970 Vol. llT-16 No 6. 2) J. Justesen: Convolutional Code Construction; IEEE Trans, on Information Theory Vol. I.T- - 1973. 3) 13.Horvat in sculojlavci: Prenos gospodarnih in vernih InformariJ II. Naloga SBK 785/762502, januar 1978. 4) M 6800 Microprocessor :Programming Manual Motorola Ine 1975. ■ INFORMATICA 2/1979 KOMUNI KACIJSKI PROTOKOLI M. KAPUS A.P.2ELEZNIKAR UDK: 681.324 VISOKA TEHNIŠKA ŠOLA, MARIBOR IJS, LJUBLJANA Članek podaja pregled najbolj razširjenih formatov za prenos informacij. Podrobno obravnava HDLC sinhrone protokole in komuniciranje z informacijskimi paketi. COMMUNICATION PROTOCOLS in the paper the most commonly used formats for the information transfer are described. Details are given about the HDLC and the packet level communications. 1. UVOD Leta 1976 je CCITT izdal nekaj novih smernic za prenos Informacij v priporočilu X25, ki podaja način komuniciranja med terminali oz. DTE (Data Terminal Equipment) In DCE (Data Circuit-terminating EquipmentOz informacijskimi paketi. Komuniciranje lahko obravnavamo na treh nivojih. Prvi nivo podaja električne karakteristike linij in fizikalne procedure za njihovo vzpostavljanje. Drugi nivo je kontrola linije z digitalnimi sekvencami, ki omogoča zanesljiv prenos informacij v realnih tokokrogih. Tretji nivo Informacijskimi logičnih kanalih obravnava manipulacijo z paketi v stalnih ali začasnih X25~ podrobno definira tretji logični nivo. Za ilustracijo drugega nivoja podaja uporabo HDLC protokola z asinhronim načinom odgovora v dupleksni Izvedbi. Prvi nivo je opisan v priporočilu X21. Članek je pregled protokolov za drugi In tretji nivo. DTK/DCE vmesnik' P L 3 L 2 L 1 li 1 L 2 L 3 T <— •DTiS 1 -Defi- -^ 1 1 I -Vmesnik Ll - fizikalni vmesnik L2 - logični vmesnik ^a nivoju nabora L3 - logični vmesnik na nivoju paketa P - uporabnikovi procesi T - transportna funkcija mreže \ X21 kontrolor linije ali V24 modem 2. SEKVENČNI NIVO 2.1. Uvod Zk prenos Informacij se uporablja vefi formatov. Asinhroni format XXXXX START r-At-l -Ht- PARITKTA _gTOP JÜC X - sekvenca prostega teka Pariteta - liha, soda ali ni prisotna N - 5,6,7 ali 8 Ustavitveni (stop) znak - 1, 1.5) ali 2 bita ainhroni format z enim alogom za sinhronizacijo SIN. Podatki -IV- CRC 1 CRC 2 I SIN. - sinhronizacijBki zlog CRC - kontrola pravilnosti prenosa 8 metodo krožečega ostatnka Siqhroni format z dvema zlogoma za sinhronizacijo IsiM. 1 I SIN, 2 I Podatki | CRC 1 1 CRC Ž] Format pri zunanji sinhronizaciji Podatki CRC 1 CRC 2 Za asinhrone formate je značilna mala dolžina Informacijskega polja po pravilu en znak - en nabor. Sinhroni formati uporabljajo nabore različne dolžine, ki vključujejo več zlogov (byte). S tera lahko prenašamo kontrolne ukaze v satnem naboru, manj je redundančnih startnih in ustavitvenih• bitov, če pošiljamo dolge sekvence. Zato so sinhroni formati idealna oblika prenosa večje količine informacij. Najbolj dovršen. format uporabljajo HDLC protokoli. Vidimo, da je pri NRM možen enakovreden pretok informacij v obeh smereh, pri ARM pa sekundär v glavnem le potrjuje pravilen sprejem. 2,2.2, Uporaba asinhronih protokolov Z ARM lahko izvedemo simpleksni prenos (simpleks), neuravnoteženi dupleksni in uravnoteženi dupleksni prenos (dupleks). Za simpleksni prenos imamo: Paket: glava podatki \ v \ \ v v ! zastava > kontrola naboja ! informacije 1 JfCS zastava J y ^ .r- / N naslov kontrolü (C) 2,2, HDLC - High Level Data Link Control je skupno ime več standardiziranih protokolov za sinhroni prenos podatkiv. Ti protokoli vzpostavljajo in prekinjajo ivezo, kontrolirajo pravilnost prenosa, sami popravljajo nekatere napake, o drugih pa obveščajo višje nadzorne strukture. Razlikujejo se po namenu za različne konfiguracije sistema. Pri vseh je osnovna prenašana enota nabor, sestavljen iz začetne in končne zastave, .naslovnega ' zloga, kontrolnega zloga, informacijskega polja spremenljive dolžine "in dveh zlogov za FCS (Frame Checking Sequence). Eden izmed bitov kontrolnega zloga je P/F bit, Ki ureja odnos hierarhije med partnerjema, in- s tem neposredno določa vrsto protokola. 2,2.1„ P/F cikel Sa vsaki liniji ima eden od partnerjev primarno, drugi pa sekundarno vlogo. Primar oddaja ukaze, sekundär odgovarja, V ožjem pomenu le primar oddaja informacije, vendar to ni nujno. Ce je terminal priključen na več linij, je lahko za nekatere primar, za druge sekundär. p/f bit imenujemo v naborih, ki jih oddaja primar, P (Poli) bit, v naborih, ki jih oddaja sekundär, pa F (Final) bit. Primar, ki zahteva od sekundarja odgovor, to označi s P = 1, Sekundär konča odgovor z naborom, ki ima F = 1. Primar lahko oddaja nabore s P', toda šele P - nabor aktivira sekundär. Ko sekundär odda F - nabor, ne sme oddati nobenega nabora več, dokler ne sprejme P - nabora. Sekundär lahko odda F - nabor takoj ali pa za nekaj F' - nabori. Prvi način imenujemo asinhroni način odgovora (ARM -Asynchronous Response Mode), drugi pa normalni ali sinhroni način odgovora (NMR - Normal Response Mode ali SDLC - Synchronous Data Link Control). asinhroni način sinhroni način Primar p '-- + P ~ + p — + Sekundär +~F +--F Primar p + p — + p '— + P-—+ P'~ + Sekundär +—F' +—F' +~F ***** A * * p . « « ***** ***** * * -+ * s * * * ***** Primar oddaja informacije, sekundär jih potrjuje (ali zavrača) a nabori brez informacijskega polja. Pretok informacij je le v eno smer. Za neuravnoteženi dupleks (Unbalanced Duplex) jen ***** * * .* s * ***** Primar oddaja informacije, sekundär odgovarja z F-nabori, ki vsebujejo informacijsko polje. Ker je število F-naborov omejeno s številom P-naborov, število P'-naborov pa ne, in ker je dolžina informacijskega polja navzgor omejena, je pretok informacij v smeri od primarja k sekundärju močnejši. Pri uravnoteženem duplcksu (Balanced Duplex ) imamo : * p * * * ***** » « * S » . * * ***** -+ * S * * * * * — * p * * * ***** Vsaka postaja na liniji ima vlogo primarja in sekundarja. Tako imamo simpleks v dveh smereh. 2.2,3. Uporaba SDLC Pri SDLC je pretok informacij zaradi narave P/F cikla lahko vselej dupleksni. Zato je SDLC uporaben tudi za bolj kompleksne konfiguracije sistema, npr. multipoint in loop. Javlja se vprašanje izbire polovičnega in polnega dupleksa. (Polovični - half - dupleks poteka po eni sami žici izmenično v obeh smereh. Polni - full - dupleks ima za vsako smer poseben vod.) Uporaba polnega dupleksa je smiselna pri sinhronih protokolih, ko sta na liniji lahko hkrati P' in F' nabor, pri ARM pa je polni dupleks uporaben le kot uravnoteženi dupleks. 52 2,3. Podroben opis nabora pri UDLC 2.3.1. Zastava (Flag) Zastava označuje začetek in konec nabora in rabi kot znak za sinhronizacijo. Njena oblika je 01111110. Da ne bi sprejemnik enakega vzorca znotraj nabora prebral kot zastavo, se avtomatično vstavi O za vsakimi zaporednimi petimi I. Pri sprejemu oe O odstrani. 2.3.2. Naslovni zlog Ne glede na smer pretoka informacij je v naslovnem zlogu vedno naslov sekundarja. Kadar vsi partnerji vsebujejo primarno in sekundarno funkcijo, je dogovorjeno, da sta v naslovih sekundarja na DTE najniZe utežena bita b O = 1, b 1 = 1, na DCE pa b O = 1, b 1 = 0. Tu je skrito nekaj redundance. 2.3.4.2, Nadzorni format S (Supervisory) ima pri ARM vlogo odgovora, pri NIU1 pa vlogo ukaza in odgovora. Ti soi UR (Rocleve Ready). Potrjuje pravilen sprejem naborov do vključno H(R) - 1 in sporoča, da je postaja pripravljena na sprejem. BNH (Recieve Hot Ready). Opozarja, da jo postaja preobremenjena In ne more sprejeti nobenega nabora, ki zahteva prostor v vmesniku. Potrjuje sprejem naborov do N{R) - 1. REJ (Reject, zavrnitev). Zahteva oddajo ali ponovno oddajo nabora s sekvenčnim številom N(R) in potrjuje sprejem naborov do M(R) - 1. Zali te va REJ se briše,- ko postaja pravilno sprejme nabor N(R)= 2.3.3. FCS zloga rabita za kontrolo pravilnosti prenosa polja med začetno zastavo in zlogoma FCS. Pri tem se uporablja metoda CRC (Cycling Redundancy Checking) v različnih oblikah. Več o tem je napisanega v (5). 2.3.4. Formati kontrolnega zloga (C) C zlog ima tri formates I (Information), S (supervisory) in NS (nonsequenced). 2 3 4 S 6 7 a Inf ormaci,i ski 0 N(S) •p/F N IR) Nadzorni ji 0 j s ■ P/F N m NpRfiVvRnf-ni 1 1 1 j M P/F 1 WS ■r-3 ■H O ■p M ■H ■P u •H OJ p 0 5) ■H h ■H ■H tH > t; a h •rl o (0 P- m 000 000 000 100 000 010 Oli 100 OUl p/i.' i' p p i.' p Jr' 1 0011 Olii Olli 0011 1111 0011 0011 Olli 0011 N(10 p/1'' H (H) p/i.' IM (H) P/J.' 0001 0101 1001 R ■H X) OJ ui t» IMSI HQI SIM ShRM ROL JJISC chujk ohP IM (K) PA'' ».(3)0 KWh hhj L đ O m ol la K (U ^ ctì ■m ^ h » o o Qh -a 2.3.4.1, Vlogo P/F bita poznamo. V I in S formatu pa se pojavljata H(R) in N(S). N(R) je sprejemno sekvenčno število (Recieve Sequence Number),' N(S) je oddajno sekvenčno število (Send Sequnce Number), Informacijski nabori (I) se štejejo po modulu 8 ločeno za obe smeri. Kadar postaja A odda postaji B informacijski nabor, je v njem N(S) zaporedno število nabora v smeri A —+ B, N(R) pa število naslednjega I-nabora, ki bo'prišel v smeri B —+ A. Vsak partner na liniji ima svojo V(R), spremenljivko sprejemnega stanja (Recieve State Variable),in V(S), spremenljivko oddajnega stanja (Send State Variable). V(R) je število naslednjega I-nabora, , ki ga . bo postaja sprejela, V(S) pa zaporedno število naslednjega oddanega nabora. Ko postaja odda I-nabor, vpiše V(S) v N(S) in V(R) v N(R). Potem se V (S) poveča za 1. V (S) +— ( V(S) +1 ) ( mod a ) Ko so sprejme I-nabor, se mora V(S) ujemati z N(R) in V(R) z N(Ö), saj je V(R) postaje A enak V(S) postaje D in obratno, če je I-nabor pravilno sprejet, se V(R) poveča za 1. V(R) +— ( V(R) +1 )( mod 8 ) Nabori NS in S formata se ne štejejo v sekvenco. N(R) v S-naboru je le kontrolna informacija. 2.3,4.3, NS (Nonsequenced) format Imenovan tudi U (Unnumbered), pozna različne ukaze pri ARM in NRM. Pri NRM so toi NSI (Nonseqenced Information). SluSi za prenos informacij v naboru zunaj redne sekvence informacijskih naborov. Sprejema ni treba potrjevati. SNRM (Set Normal Response Mode). Podredi sekundär primarju. ffekundar lahko odgovarja le na zahtevo primarja.V(R) in V(S) se resetirata (na 0). Pričakovani odgovor je NSA. Sekundär ostane v NRM do sprejema DISC ali SIM ukaza. DISC (Disconect). Postavi sekundär v stanje off-line. Sekundär ne more več oddajati I-naborov, dokler ne sprejme SNRM ali SIM ukaza. Pričakovani odgovor je NSA. NSA (Nonsequenced Acknowledgement) . je pritrdilni odgovor na SNRMp DISC ali SIM ukaz. Nadaljni prenos naborov sproži primar. RQI (Request for Initialization). S tem sporoči sekundär primarju, da želi SIM ukaz. Vsak ukaz razen SIM sproži ponovitev RQI. SIM (Set Initialization Mode). Sproži proceduro za vzpostavitev normalnih funkcij na nivoju linije. V(S) in V{R) se resetirata. ROL (Request On-Line). S tem sporoöa sekundär, da je v stanju off-line. CMDR (Command Reject). Ta odgovor odda sekundär v stanju NRM, fie sprejme napačen ukaz. To je v primerih I 1. Kontrolno polje ni definirano. 2. Informacijsko polje je predolgo vmesnike. za vhodne 3. Nabor vsebuje informacijsko polje, pri danem formatu kontrolnega prepovedano. 4. N(R) se ne ujema z V(S) sekundarja. ki je zloga 2.6. Sistemski parametri 2.6.1. Vsakokrat, ko primar aktivira sekundär s P-bitom, vključi časovnik TI. Primar ukaz ponovi, če časovnik izteče pred odgovorom sekundarja. To lahko naredi N2-krat. Kasneje je potrebna akcija na višjem logičnem nivoju. Pri tem primar ne ve, koliko njegovih informacijskih naborov je bilo potrjenih. Zato shrani svojo V(S) na notranjo spremenljivko x, V(S) pa dobi vtednost zadnje N(R), ki jo je sekundär potrdil. V primeru, da kasneje pride odgovor z N(R), ki ni v območju med vključno novo V(S) in x, to pomeni, da se je sekundär zmedel v štetju naborov in primar odda REJ. 2.6.2. Maksimalno število zlogov v naboru (NI) je določeno z maksimalno dolžino Informacijskega polja. 2.6.3. Maksimalno število informacijskih naborov (k), ki jih postaja lahko odda, preden jih sprejemnik potrdi, je manjše ali enako sedem. kontrolno polje zavrnjenega ukaza N(ü) N(R) , W X z o o o o najviše uteZeni bit napaka 1-;- napaka 5-- napaka 2 - napaka 4 - JC - 1 W - 1 W/SY - O W/\Z - O Vrsta napake je označena v informacijskem polju, kot ka2e slika. Odgovor CMDR se ponavlja do sprejema SNRM, DISC ali SIM. Protokoli za ARM poznajo ukaze» SARM (Set TVsynchronous' Response Mode), kot SNRM pri NRM protokolih, oblika 000 p mij UA (Unnumbered Acknowledgement) = NSAj CMDR in DISC. 2.4. Abortiranje (razveljavljanje) j Če želi oddajnik napol oddani nabor razveljaviti, odda osem zaporednih enio. če jih doda še sedem, linija preide v prosti tek in jo je treba ponovno ' inicializirati. Lahko pa osmim enicam doda zastavo in s tem ostane na liniji. če abortira sekundär, ne sme več oddajati, dokler ga primar ne pokliče. 2.5, Kontrola zanke (loop) pri SDLC Normalno sekundarji ponavlj zanki. Primar dobi status ORP (Optional Response skupni,,sistemsko določeni (go ahead) da pravico prioriteto, da začne informacije. Ostali ukazi ajo ukaz primarja po sekundarjev z ukazom Poli), oddanim na naslov, z ukazom GA ekundairju z najvišjo oddajati lastne so vsi prej našteti. 3. PAKETNI NIVO 3.1. Uvod Paket je zaključena logična enota, ki se prenaša v informacijskem polju naborov po logičnih kanalih. Logični kanal je kanal brez motenj, ki ga dobimo iz realnega kanala tako, da uvedemo kontrolo na drugem nivoju (na nivoju binarno sjekvoncc; ) . Paketi iio cesi t;ivl jou1. Iz kontrolno glave (honder) Lii poi.Uitl.ov v ožjcm poivienu besede. Glede na ylavo jlli üe 1 i ino v 14 tipov. VRSTA PiiKETA Od DCE k BIB Od DT£ k DCE Vzpostavljanje zveze in čiščenje IWCOMIHG CALL GALL. RBQUEST CALL COKULCTJiD CALL JLCCEPTM) CLEAR INLIGATIÜM CLE TE REC^UEST DCK CLEiK DTE CLEAR CONi'IßMATION COWflRMATIOM frenoB podatkov in prekinitev DCE DATA DTE DATA DCE INTERRUPT DTE IlyTERSUPT DCE INTERRUPT DTE IBTERHUPT CONJf'IRMATIOU CONFIRMATIOM Kontrola pretoka in reset DCE RR DCE RM RESET IMDICATION DCE RESET CONi'IHMATION Restart RESTART INDICATIOW DCE RESTART CONJ<"'IHMATIOM DTE RR DTE RUR DTE REJ. RESET REQUEST DTE RESET COtìFIRMATION RESTART REQUEST DTE RESTART COIWIHMiiTION 54 3.2. Procedure pri prenosu 3.2.1. Prenos Informacij med dvema DTE se odvija preko DCK; DTE A---+ DCE---+ DTE B Pri tem se uporabi poljuben prost (READY) logični kanal, navadno najniže oštevilčeni. Logični kanali so razporejeni v največ 15 skupin, V vsaki je največ 255 kanalov. Kanal je enolično določen s številko skupine in Številko kanala znotraj skupine"^, 3.2.2. Vzpostavljanje in prekinjanje zveze DTE A zahteva zvezo z DTE B s paketom CALL REQUEST. DCE o tem obvesti DTE D z INCOMING CALL. DTE B potrdi vezo s CALL ACCEPTED. DCE obvesti DTE A s CALL CONNECTED. Če je veza že vzpostavljena ali če takrat, ko DCE oddaja INCOMING CALL, DTE B hkrati zahteva isto zvezo na istem logičnem kanalu, DCE takoj odda CALL CONNECTED. DATA paketi se štejejo po modulu 8 ali 128 za vsako smer vsake linije. V ta namen uvedemo P(K), sprejemno sekvenčno število paketa, in P(S), oddajno sekvenčno število paketa, ki služita za kontrolo okna. Širina okna W je največje število DATA paketov, ki se lahko hkrati prenesejo brez vmesne kontrole, in ni večje od 7 oziroma 127. Določa se za vsak DTE in vsako smer posebej glede na dejansko potrebo po prenosu informacij. Prvi prenašani paket ima P(S) vedno enak P(R) sprejemne postaje. V enem oknu so paketi lahko vidno ločeni v dve skupini z bitom Q (data qualifier), vendar ne smejo biti pomešani. Prenos podatkov poteka po istih zakonitostih kot na nivoju binarnih naborov in lahko ugotovimo naslednjo ekvivalenco pojmov: DCE DATA paket - I-nabor DTE DATA paket - I-nabor DCE RR paket - RR-nabor dte a VZTOSTAVLJAUJK ZVi-Zls; poditki ČIŠČKUJi. caiil hequest -»---iiscomitìg cjìxl jČall accepted calx, cohnected data (-----i- DATA ■ijdata data data L_ data ---lÜLßAR REQUEST Ci^AH 1WDICATIÜW CLEAH COMi'DiMATION L. CLEAR CO^iflHiJATIOH dte b. DTE Wl paket DCE RNR paket VZKJSTAVLJAilJi zveze j^j P(S) P(R) W podatki čiščenje RR-nabor - RiNlR-nabor RNR-nabor - REJ-nabor - N(S) oz. V(R) ali V(S) - N(R) oz. V(S) ali V(R) - parameter k Ce DTE D noče sprejeti zveze, odda CLEAR REOUEST. DCE obvesti DTE A s CLEAR INDICATION z navedbo, da je DTE B zaposlen. DTE A potrdi z DTE CLEAR CONFIRMATION. DCE obvesti DTE B z DCE CLEAR CONFIRMATION. Če DCE ne more vzpostaviti zveze zaradi drugih vzrokov, to označi v paketu CLEAR INDICATION. Prekinitev zveze lahko zahteva kadarkoli. 3,2.3. Prenos podatkov Podatki se prenašajo v DTE in DCE DATA paketih. Če se nadaljujejo v 'naslednjem paketu, to označimo z bitom M (more data). Glede na to delimo DATA pakete v tri skupine; a) podatkovno polje krajše od maksimalnega dovoljenega, brez M, b) podatkovno polje maksimalno, brez M, o) podatkovno polje maksimalno, z M. Dolžina podatkovnega polja je omejena na 16, 32, 64, 128 (najpogosteje), 256 (255), 512 ali 1024 oktetov (8 bitov). 3.2.4. Reset in restart Z RESET in RESTART paketi odstranimo z izbranega kanala vse DATA in INTERRUPT pakete. Z RESTART paketi resetiramo vse kanale, ki so vezani na pobudnika restarts. Reset (restart) lahko sproži DCE in vsak DTE s paketom I1ESET (RESTART) INDICATION oziroma !"tESET (WCSTART) REQUEST. Potrdi Ina paketa sta DTE in DCE RESET (RESTART) CONFIWIATION. Procedura je enaka kot pri CLEAR paketih. 3.2.5. Interrupt (prekinitev) INTERRUPT paketi ' omogočajo prenos podatkov izven redne sekvence DATA paketov, po funkciji torej ustrezajo NSI-naborom na nivoju dva. Lahko jih uporabljamo, kadar v kanalu ni racSET in RESTART paketov, zveza pa je vzpostavljena. DTE pošlje podatke DCE v DTE INTEHRUPT pnketu. DCE potrdi z DCE INTERRUPT CONFIRMATIOH. DCE pošlje podatke v DCE INTERRUPT paketu, DTE potrdi z DTE interrupt CONFIRtlATION. 3.2.6. Posebni dogovori o načinu komuniciranja Vsakokrat pri vzpostavljanju zveze lahko DTE v CALL paketu zahteva določen način ■komuniciranja. Specificira npr. širino okna W ali maksimalno dolžino podatkovnega polja. Če teh specifikacij ni, dobita parametra maksimalno možno vrednost v mroži. DTE lahko zahteva Reverse Charging (povratno odgovornost). Ta dogovor mu omogoča, da lahko zahteva oddajo informacij z drugega terminala. Druga skupina dogovorov velja za določeno zvezo DTE/DCE trajno za dogovorjeni čas. Npr.: Omogočitev povratno odgovornosti (Reverse Charging Acceptance). DCE se obveže, da bo sprejela Reverse Charging Request, če se pojavi na tej liniji. Enoamorni logični kanal (One-way Logical Channel). Kanalu se pripiše ena od smeri DTE/DCE ali DCE/DTE. Ponovna oddaja paketa (Packet Retransmission). Terminal dobi pravico zahtevati od DCE ponovno oddajo paketa s paketom DTE REJ. DCE označi te dogovore v CALL INDICATION paketu. Seveda je možnih dogovorov še veliko. Za vse velja, da se kodirajo v paru oktetov, v prvem oktetu vrsta dogovora, v drugom pa pripadajoči parametri. 3.3 Formati paketov CLEAR REQUEST in CLEAR,INDICATION paketni format + 8 7 6 5 4 3 2 1 + ++++ + ++++++++++ + + + + + -! 4- + 0 0 0 + 0 0 1 +številka logičnega kanala + 0 O O 1 O O + kodirani vzrok čiščenja 1 + številka kanalne + + O + skupine + + 1 + CALL REQUEST in INCOMING CALL paketni format 1 + številka kanalne + + + skupine + +dolžina naslova +DTE, ki kliče, +v poloktetih + dolžina naslova + klicane DTE + v poloktetih +naslov DTE, ki kliče, In klicane DTE + +v BCD kodu, 4 biti - 1 cifra, ničle + +do polnega zloga + + 0 0 0 0 + Kodiranje vzroka čiščenja v Cl^EAR INDICATION paketu +DTE čiščenje +postaja je zasedena +postaja ne deluje +procedurna napaka na +drugi strani zveze +postaja noče sprejeti +povratne odgovornosti +napačen klic +dostop je blokiran +lokalna procedurna +napaka +rareža je zasedena +mreža ne deluje h++++++++++++ 87654321 + f++++++++ 00000000 + 00000001 + 00001001 + + OOOlOOOl + + 00011001 + h++++++++++ 00000011 ■ + OOOOlOIl + + 00010011 + 00000101 + 00001101 + + o + o + dolžina naslednjega polja + + v oktetih + +kodirani dogovori o načinu prenosa, +največ 62 oktetov prenašani podatki CALL ACCEPTED in CALL CONNECTED paketni format +00 0 1 + številka kanalne +++++++++++++++++++++ +0 O 1 O + skupine +številka logičnega kanala + 0 O O O 1 1 Dodatni komentarji Vse vrednosti, pri katerih nI posebej označeno, so podane binarno , tako d ; je najniže oštevilčeni bit najniže utežen. Isto pravilo velja pri BCD vrednostih tudi za razpored dacimalnih cifer. niti 8-5 prvega zloga zavzemajo zgornjo vrednost, če se DATA paketi štejejo po modulu 8, in spodnjo, se štejejo po modulu 128, DTE in DCE CLEAR CONFITMATION paketni format + 8 7 G 5 4 3 2 1 + +++++ + + •( +++ i + i 1 i + t ■( e n ■^■++++++++^ + f- ) f iH- » I I \ >++ i -n -n t I i ) + + + + 1 + O O Ù I i- Liteviü.a kanalne + + t f+ + ■( I i-f + i i -n- i -t I f f + + + Ü u 1 (i I- sl:ur'iiH- + + i H-t + ^ I + * -t -ti-*- )- f i -( ti t Ti I ( t -t -t 1 I -(--t t--I +-f + + + TitovliKu tuq 1 i::u!i(.ì Kanal"! + ++ + -* ■) t- + -i -) 1 -I-1- I I -I -I H 1 i I t i I i )-(-+ +■<-++++++ + 0 ü U I O I 1 1 + V + + + DTE in DCE DATA paketni format + 8 7 e 5. ++++++++++++++■ +++++++++++++++++++■ +0 O o 1 + številka kanalne + Q 0 1 O + skupine + številka logičnega kanala + P (R) + M + P (S ) +0 + + podatki + -i. ++ + + + + + + + + + + + + + -+ (- + +++++ + +++ + + + + + + ++ + . M = MORI; DATA O = lATA QUALIFIER + TTTOOOOO BuopsBBZ of t?50Jui+ + TOT00000 BM^dBU BUinpaooad BUx\3>iot + + TTOOODOO szsA -puBj^s Tßnap BU+ + B>{BđBU BUjnpoooad+ + TOOOOOOO bjba1(0+ + 00000000 3j;a+ + TZEfS9/.a + vfr:>a>(Bd MOIIVOiaNI laSOT a bz b>(ojza scubjtpoh + T T T 0 0 T O 0 + ++++++++++++++++++++++++++++++++++++•++++ + 0XBU05( BBSUJT&O^ B-SfXTAO^S + ++++++++++++++++++++++++++++++++++++++++ + sui;dn>(s + o t O O + + +++++++++++++++++++++ + SUXBUB5( Bl|XTA35g + T O O O + ++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++ + T z E t S 9 L 8 + HOiivwaijNOD iđnaaaiNi aoa "T 3M +++++++++++++++++++H+"+++++++++++++++++++ + Bpox eug-f^souÖBfp + + + T + BZ 5(0JZA + O T T O O O bxbubj( BßougxßoT + + 3UTdn;is +0 T O O + + +++++++++++++++++++++ + auxBUB^ B>(Xtas:»5 + T O O O + + T 9 + tVBUiaoj TU505(Bd HOiiVDiaNi lasan "T xsanorra lasM ++++++++++++++++++++++++++++++++++++++++ + T'pspođ + + T T O O O T O 0 + ++++++++++++++++++++++++++++++++++++++++ + bxbub5( Bßaujxßox e^fXTAa^S + + suxdnj(s +0 t O O + + +++++++++++++++++++++ + auxBUB^t B5(XTAa3g + x o O O + ++++++++++•<•+++++++++++++++++++++++++++++ + T Z E t 9 9 L 9 + ++++++++++++++++++++++++++++++++++++++++ :»Biuj[oj TU3a>(Bd i,đnHaaj,Ni aoa ux aM T T + + 0 T 0 0 + O +++++++++++++++++++++ + T O O O + tiBuiaoj xu^a^lBd NOiiiv/JHiJNoD iavisan asa «T KM + T O T O + (H)cl + BXBUB>I B6SU3X6OX B>(XXAai§ + + ouxdn^s +0 T O O + + +++++++++++++++++++++ + SUXBUB51 B2(XXAa45 + T O O O + + TZEt'S9t iBuiJoj xu^o'fBd TOT axa B + + TTOOOOOQ BUopasGZ oC B5a:ruj+ + TOOOOOOO bi(cdbu bu:tnpoooad buxb5(TT+ iiXÌOMed NOIJiVDiaNI A ■4a -^mt BZ Bj(OazA aCuBJXPOH cz ^iojza + +++++++++++ T T T T + + t Z Z +++++++++-(-+ + + tjBuuoj TU5a5(t?d KOiAVDiatJi iavjisan "t .Lsanoaa iav.isaa +++++++++++++++•(.++++++++++++++++++++++++ + T O T O 0+ (H) d + + aujdnus +0 T O O + + +++++++++++++++++++++ + auxBUBJt B^(XTAa55 + x O O O + + t + ^Buiaoj xu^a^Bd ami aoa ux aj.a o o o + (a)đ + BXeuBì( BßauQxßox B^XTAS^§ + + auxdn-^s +0 T 0 O + + +++++++++++++++++++++ + auxBUB5( B>lxTAa:»5 + T O O O + 5BUIJOJ XU^ffBd aa 3Da «t aia Diagnostična koda v RESET INDICATION paketih Diagnoza nI določena 00000000 Tu so odprta vrata razvoju. Kdaj bomo napolnili okvire, ki smo si jih začrtali, je odvisno od naraSčanja komunikacijskih potreb, torej od napredka človekovih dejavnosti. 5. LITERATURA DTE in DCE RESET CONFIRttATION paketni format ++++++++++++++++++++++++++++++++++++++++ + 8 7 6 5 4 3 2 1 + ++++++++++++++++++++++++++++++++++++++++ +0 O O 1 + Številka kanalne + +++++++++++++++++++++ + +0 O 1 O + skupine + ++++++++++++++++++++++++++++++++++++++++ + številka logičnega kanala . + ++++++++++++++++++++++++++++++++++++++++ + 0 O O 1 1 1 1 1 + ++++++++++++++++++++++++++++++++++++++++ 4. SKLEP Danaänji komunikacijski protokoli so le abeceda protokolov prihodnosti. že bežen pogled pokaže, da je v sekvencah Se veliko redundančnlh bitov, ki z njimi danes nimamo kaj početi. Kljub temu je smotrno, da so prisotni, tako kot so v začetku tega stoletja perspektivna mesta gradila železniške postaje za petdeset let naprej. 1.CCITTs FINAL REPORT ON THE WORK OF STUDY GROUP VII,PART III: PROPOSALS FOR NEW AND REVISED SERIES X RECOMMENDATIONS. GENEVA, 1976. 2.DR.C.SOLOMONIDES: X25 INTERFACE DEFINITION. THE NATIONAL COMPUTING MANCHESTER, APRIL 1977. CENTRE LIMITED, 3.IBM SYNCHRONOUS DATA IHFORMATION, LINK CONTROL, GENERAL 4.M0STEK TECHNICAL MANUAL FOR SERIAL I/O CONTROLLER MK3884/3885. 5.GLUŠAC D.: POUZDANOST PRENOSA PODATA IZMEDJU MAGNETNIH MEDIJUMA I CRC-KONTROLA, INFORMATICA 1977/3. INFORMATICA 2/1979 DMA PROCESORI U MIKRO RAČUNARSKIM SISTEMIMA M.KOVAČEV IC D. NOVAK B. KASTE LIC A.P. 2ELEZNIKAR UDK: 681.3-181.4 INSTITUT JOŽEF STEFAN, LJUBLJANA članak daje pregled osnovnih principa djelovanja direktnog pristupa memoriji tu pregled savremenih OMA komponenti iz nekoliko različi tih wik rop roces o rskih familija. Istaknute su prednosti komuniciranja centralnog procesora sa peri fernim jedinicama u DUA reiimu pred nekim drugim načinima. Članak, takodjor, detaljno prikazuje kako koristimo DNA procesore u konfiguracijama sa gipkim (floppy) diskom. DMA processors in Microcomputer Systems. The article gives a survey for direct memory access pronciples. An overview of some new DMA components from various microprocesor producers is also given. The advantages of communication using DMA against other methods are emphasized. The usage of DMA processors in configurations with floppy disk is described in details. J. ■ Uvod Savremena LSI tehnologija, uz brojne prednosti pred klasičnim rješenjima u pogledu cijeno, sigurnosti, male potrošnje energije i jednostavnosti pruža velike mogućnosti za širu primjenu tehnički zahtjevnijih i savršenijih metoda obrade i prenosa podataka. Sa pojavom kompletnih mikro procesorskih familija dolazimo u priliku gdje jednostavnim povezivanjem nekoliko LSI komponenti iste. familije ostvarujemo uni verzalni ili specijalizirani sistem velikih mogućnosti. Jedna od takvih LSI komponenti sa vrlo širokim spektrom aplikacija je procesor za direktni pristup memoriji (DMA). Savremuni CRT kontrolori. disk kontrolori, kontroleri za sinhroni prenos podataka visoke brzine, kao i mnogi tlruyi kontroiuri za komuniciranje sa perifernim napravama, sadrže DMA procesore. Isto tako, komunikacija izmedju dva procesora može teći preko UMA procesora pri čemu jo isključena mogućnost konfliktni!-situacija pri dijeljenju, zajedničke memorije. Razvoj sistemske p rog ramske opreme upotrebom programskih jozika visokog nivoa za sisteme sa DMA procesorima ■ još uvijek predstavlja teškoću, iako razvoj programske opremo na asemblerskom nivou predstavlja znatno olakšanje u odnosu na prog rami ran j e u sistemimi sa klasičniiQ načinom prenosa poda taka . 2, Principi UMA procesiranja Direktni pristup memori j i teče nimo centralne procesne Jedinice (CPU) tako d.^ ne utiče na njen rad, odnosno da ne prekida izvodjenje tekućeg programa. Sva što CPU mora učiniti za DMA procesor je i ni ci j a li zaci j a prenosa. Po Ind j ali zaci j i teče prenos podataka izmedju CPU jedinice i peri ferne naprave na zahtjev peri ferne naprave. Prenos moie biti organizi ran pojedinačni ili blokovno. Po pronosu odredjenog broja slogova (byte), koji predsta vijaj u blok, DMA procesor može prekidnim signalom ili statusnim bi tom obavijestiti CPU jedinicu o završenom prenosu bloka. Pri inicijali zaci j i DMA procesora potrebno je specifirati sljedeće elementei početna adresa memorijskog bloka za DMA pris tup broj slogova bloka koji treba da ae prenese smjer prenosa i vrsta operacije (čitanje, pisanje, verifikacija ..,) prioritet DMA kanala ako ih ima više izbor drugih eventualnih mogučnos ti (dek rementi ran je adrese, inkrementiranje adrese, ciklično ponavljanje prenosa bloka . i slično). Prenos sloga u DMA režimu moie biti realiziran na dva osnovna načina uz neke va ri Jaci je. Prvi način prenosa je takozvani HALT način. Ovaj način predstavlja jednostavniji oblik DMA procesiranja za kojega se moie slobodno reći da ne predstavlja striktno realizirane zahtjeve DMA procesiranja. Naime, pri HALT načinu DMA prenosa podataka izmedju memorijo i perifernih jedinica dolazi do zaustavljanja rađa CPU jedinice desto, kada je u pitanju prenos obimni j ih blokova, za nepriJi va ti ji vo dug vremenski period. J pored tog značajnog nedostatka vrlo često susrećemo HALT način DMA /1 ro ces i ran j a . Ciavne prednosti ovog načina su jednostavnost i kompatibiInoat sa većinom mikro proceso rsk ih CPU jedinica. DMA procesor , djulujuài u HALT režimu, koinunicì ra sa CPU jodiiiicom preko ^ìcjnala HALT 1 IIALTA ( ponegdje HOLD i IIOLDA). Signal HALT predstavlja ulazni signal u CPU jedinicu. Ujogov aktivni nivo zaustavlja rad CPU jedinice Bvo dotlo dok su stanje cog signala ne prolili jeni . istovremeno CPU jedinica gubi kontrolu nad adresnim, podatkovnim i kontrolnim vodilom tako da sve linije CPU jedinice prelaze u stanje visoko impedanse. Svoju spremnost za DMA djelovanje potvrdjuje CPU jedinica signalom HAL'fA Ihalt acknowledge ) prelazeći is tovremeno u halt stanje polito završi tekući inašinski ciklus, kako prikazuje slika 1. roboljäüiia metoda DMA tehnikom kradje ciklusa, pozna DMA, djeluje tako da dijeli sistoaskog kloka namjensk pol uperiode . U prvoj pol upe riodi vrii DMA, a u drugoj regularno jedinice. Ovaj iwiOin UMA jirocos u onim mikro računa rskim sistemi sistemskim klakom, odnosno tamo sistumsJioy Jtioka s iis t a vJ j (.;na aktivne poluperiode. Diagram pokazuje vremenski tok dogadjaj procesiranju. procesi ranjei ta kao skriveni cijelu periodu na d vi j e sa na zahtjev djelovanje CPU iranja jo mncjuć ma sa dvofaznim gdje je perioda iz neaktivne i na sliki 3 a pri skrivenom z DUO. OGUANT AH-AfS' ■ Ù0-Ù7 . rLj~L j—i 1—c Slika 2 t p rocca i ran j a, Toh ni ka kradje ci k 1 Važ.no jo näpomonoti još i problem is tovrovionocj ćjolovanja DMA procesora kradje ciklusa sa kon c rolo rom za os vj eža van j e dinamičnih moworija^ Naime ì DMA procesor i kontrolor za osvjozavanj e di namičnih memorija upotrebljavaju tohniku kradje ciklusa šco stvara mogućnost konflikta. Ovaj problem rj OŠ a vamo uk 1 j uč i va n j e m arb-i t ra nog logičnog kola , kao što je opisano u ( 1) . 3. Mikro računarsko DMA komponento Većina modernih mikro računarskih familija sadrži i DMA procesor kao samosteilno integrirano kolo, koje 30 uz minimalnu dodatnu materijalnu opremu uključuje u mikro računarske konfiguracije. Pogle dajmo 1 r u;^ t ur u DMA procesora iz mikro računarskih fai7iilija Intel 8080, MC6800 te Z80. DMA procesor fami li j e tWSO noy.i oznaku 825 7, To je čo t ve rok an a In i DMA proaysor, speci j alno pro jek ti ran za j e duos ta vn i j i p re no,'i podataka velikom J)rzino?n u In te lovirii mikro p roces orski m sistemima. /V j ego v.j pri ma rn a funkci j a je generiranje we m o ri j k i h a d r o is a , š C o omogućava po ri fern im jedinicama čitanja ill pisanje podataka direktno iz odnosno u memoriju. Zahtjev za sistemsko vodilo se ostvaruje putem HOLD funkcije rnikro procoiiora 8080, Procesor 8257 ima logiku za rješavanje problema prioriteta, pri čomu generi r-'i komponiran ilOLD zahtjev CPU jedinici, isto tako ovaj procesor vrši brojanje DMA ciklusa za svaki kanal sa ♦ mogućnošć u generiranja kontrolnog signala koji obavještava perifernu napravu o završenom prenosu programiranog broja DMA ciklusa. Drugi izlazni kon t rolni signali pojodnos tavi j u j u prenos sek to ri ranih poda. t^ka te širenje na druge 825 7 proceso rc u sistemima koji zahtijevaju više od četiri DMA kanala. Za djelovanje procesora 825 7 je noopliodno integrirano kolo 8212 iz iste familijo, Naimo, četrdeset nogica kola 825.7 ne omogućava paralo Inu prisutnost svih 16 adresnih linija to svili poda tkovnih linija. Zbog toga upotrebljavamo ulazna/ izlazna paralelna vrata 6212 pon^oću kojih iz podatkovnih linija , upotrebom specijalnih kontrolnih signala AKiJ i ADS TD, p ro.'; 1 i j e di mo viših osam bitova adrese na adresno vodilo kako prikazuje slika 4, i) AoomtiButiiii i \ ( -, •H UTA tut« -----------1-1 MMO mu t ...... \ ti SN N • mi MM ML» HiO* »CLK «(ADV NiUI DACa 0«Q OAOt OftO OACR IMO 0«£K 1—r OM*CH>MNiL NlOuEtTI AND MRNOMlEDail Slika 4i Priključenje DMA prociisorn 825 7 na vodilo mikro procesora 8080* Procesor 825 7 poznaje tri rđzji<5ita načina djolovanja, To jo DMA čitanja iz momorije, DMA pisanja u memoriju i DMA verifikacija pri kojoj ne dolazi do prenosa podataka. u trenutku kada je 825,7 u stanju "slave" njegova posoina logika za ćitanje i pisanja prihvata I/On- ili J/OH-signal iz sistemskog vodila, dekodira najniia četiri bita adresa (A0-A3Ì te, nato', piče sadržaj podatkovnog vodila u adresirani registar ili postavlja sadriaj adresiranog registra na podatkovno vodilo. U toku DMA ciklusa logika za čitanje i pisanje generira I/O signala za čitanja i pisanje (I/0R-,I/On-) ta signale za tfi tanje iz memorije (HfMR-l ako je u pitanju DMA read ciklus ili signal za pisanja u memoriju (MEMW-) ako ja u pitanju DMA write, ciklus. Poseban blok kontrolne logike procesora 8257 generira 16-bithu adresu to odgovaraj uća kontrolne signale. Signal READY sinhronizira djelovanje DMA procesora 'u sistemima sa sporim memorijama. URQ i liLDA predstavljaju komunokacijske signale izmedju DMA procesora i CPU jedinice. ADSTB je signal koji omogučava upis viših osam bitova podatkovnog vodila u ulazni/ izlazni port 8212, AEN upotrebljavamo za Isključenje CPU jedinice sa sistemskog vodila kao i za pros li j e djenje sadriaja porta 8212 na linije adresnog vodila AS-MS. Procesor 8257 ima kontrolni registar, statusni registar te četiri para 16-bitnih registara za DMA adresu i za brojanje DMA ciklusa. Pri tome bit 15 brojačkog registra svojom aktivnom vrednošču inicijalizi ra DMA read operaci j u, dok bit 14 ini cl j ali zira DMA write operaci j u. Bitovi kontrolnog registra imaju sljedeče značenjei ibit 0 do bit 3 -izbor aktivnog DUA kanala bit 4 - izbor rotacijskog prioriteta pri kojem so poslije svakog DMA ciklusa promijeni prioritet svakog DMA kanala, bit 5 - aktivna vrijednost omoguiava djelovanje u sistemu sa sporom memorijom, bit 6 - aktivna vrijednost ovog bita onemoguči DMA zahtjeve, pošto je programirani broj DMA ciklusa izvršen, bit 7.- omogučava cikliično ponavljanje prenosa odredjenog blpka DMA ciklusa u Jcanaiu 2 Statusni registar daje Informacijo o izvršenom prenosu bloka podataka za svaki kanal te pomočne informacije pri djelovanj u procesora u režimu cikličnog ponavljanja. Sljedeći program ini ci j ali zi ra četvrti kanal DUA procesora tako da poslije 256 DMA ciklusa generira TC signal, odnosno prestaje da prihvata DMA zahtjeve od strane peri ferne jedinice. U profjramu je predvidjeno DMA čitanje iz momorije s.i početnom adresom 0000. HVIA 0 our DMAA DD our DMA A DD M VI A FFH our DMATC HVIA 8011 ouv DMATC M VI A 4 8H OUT DMA CNT upis IC-bitne adrese (0) u DMA adresni regis tar upis i>roja DMA ciklusa u brojački registar operacija čitanja aktiviramo kanal 4 te i zberemo način u kojom se izvrši samo odabran broj DMA ciklusa Dma procesor familije MC6800 sa oznakom HCG844 pruža vodo morfućnosti za DMA procesiranje pošto poznaje dva načina djelovanj a i to IIALT i kradja ciklusa. Osim toga znatno je jadnos tavnija ugradnja ovog elementa u sistem pošto ne zahtijeva dodatne elemente za regularno djelovanje. Kao kod 825 7 procesora i u ovom s lučaj u imamo četvero kanalni sistem sa mogućnošč u programi ran j a priori teta. Logika za komuniciranje ovog elementa sa sistamskim vodilom uključuje logiku za selektiranje , čitanje i pisanje, prekidnu logiku, prenosnu logiku zahtjeva i odobrenja te logiku koja omogučava pronos podataka preko dvosmjernog podatkovnog vodila. Funkcionalna konfiguracij a ovog procesora je programi rana preko podatkovnog vodila. svaki od četiri kanala mof.e, za razliku od procesoora 8257, is tovremeno djelovati u posebno programiranoj funkcionalnoj konfiguraciji . Programi rl j i vi kontrolni registri omogućavaj u kontrolu nad lokacijom pronosa i dubinom, načinom pronosa, prioritetom servisiranja DNA zahtjeva, cikličnim ponavljanjem pronosa to prekidnim signalima. Statusne i kontrolne linije omogućavaj u kontrolu nad perifernim napravama. Trocesor NCC844 uklj učuje sljedeće osobinct četiri DMA kanala, od kojih svaki ima 16-bitni adresni registar , IC-bitni registar za brojanje DMA ciklusa te kontrolni i statusni registar IM s log/sec maksimalna brzina prenosa selekcija fiksnog ili rotacijskog sistema priori teta servisiranja DMA zahtjeva odvojeni kontrolni hiti za svaJci kanal mogućnost djelovanja sa inkrementiranjem ■ili dek remen ti ran jem adrese fi rog rami rij i vi prekidni te DMA-end signali. Svih 15 regis tara koje' sadrf.i procesor HC6844 su tipa ćitanjo/ pisanje pri čemu su samo neki statusni biti tipa samo čitanje. Pored adresnih, broj ačkih i kontrolnih registara ruža inoi/ućiios t izbora izmodju statičnog prioritetnog sistema fkanali su razvrstani po sljedećem priori tetu: 0,1,2,3) i rotiraj ućeg prioritetnog sistema, gdje sc poslije svakog UMA ciklusa mijenja priori tetna lista. - Kontrolni prekidni registar. Diti 0-3 svojom aktivnom vrijednošću omogućavaju generiranje piekidnag signala iz pojedinog kanala. Bit 7 ju tipa samo čitanje, a označava to da je UHA procesor poslao prekidni' signal CPU jedinici pošto je obavio svoj zadatak. - Kontrolni registar cikličnog ponavljanja. ■Preko ovog registra je omogućeno ciklično ponavljanje prenosa programiranog bloka u kanali ma 0,1 i- 2.. Kanal 3 nomože djelovati u ovom režimu.■■ flit 0 registra za ciklično ponavljanje omocjućaya djelovanje procesora u režimu cikličnog ponavljanj a. Biti 112 acirusiraju kanal koji djeluje u ovom režimu. Pri cikličnom ponavljanju se sadržaj adresnog i broj aćkog .regis tra kanala 3 prenosi u odgovarajuće registre selektiranog kanala prije svakog ponavljanja. Očito '.je da DMA procesor MCC844 predstavlja jednu od najsposobnijih DMA komponen.ti koje se danas mogu naći na tržištu. Posebnost u svijetu tnikro računarskih , DMA procesora predstavlja Z80DMA procesor iz mikro računarske familije 280. Ovaj procesor je jadnokanalna naprava koja generira sve potrebne adresne, kontrolne i vremenske signale za prenos podataka izmedju dva porta u sistemu sa procesorom Z80. Oba porta mogu biti ili glavna memorija ili periferna ulazna/ izlazna jedinica što se programsko odredj uje. To je osobina po kojoj so 280DMA procesor bitno razlokuje od drugih, koji većinom imaju sposobnos t prenosa samo izmedju memorije i neke od ulaznih/ izlaznih perifernih naprava. Ovaj procesor poznaje tri načina djelovanja i to nac'in pri kojem imamo samo pronos podataka, način u ^cojem se podatci samo traže te kombinirani način. U toku DMA coki usa se t/eneriraju dvije adrese, jedna za izvorni port i druga za ponorni. Prenos je moguć na četiri načina i to slog po slog, neprekidno sve dok su oba porta spremna za prenos, neprekidno tako da se CPU jedinica isključi dok se prenos no završi to t rans paron tni način pri kojem se kradu ciklusi os vj e iavanj a . Vremenske osobino svih signala mogu biti programirane tako da se OMA procesor prilagodjava vremenskim zaììtjevima svakog porta (izvora ili ponora). Procesor može biti programiran tako da generira prekide po prenesenom programiranom bloku, po uspješnom traženju ili po iden ti fi kaci j i stanja "spremen ". Cijeli prethodni ciklus operacija može biti jednostavno ponovljen. Procesor može si gnali zi ra ti trenutak kada je odred jeni broj slogova prenesen bez potrebe zaustavljanja DMA prenosa. Kanal može biti aktiviran, ■deaktiviran ili resutiran pod programskom kontrolom. Status kanala je uvi j ek - dos tupan za CPU jedinicu. Procesor omogućava maksimalnu brzinu prenosa od 1,2 M sloga u sekundi. Procesor ZBODUA jo sas tavi jen iz nekoliko logičnih podsklopova od kojih svaki ima posebnu funkciju. To su medjuspoj za vodilo koje obezbjodjuje potrebna ulazna/ izlazna linijska pojačala, kontrolna logika i registri pomoću kojih se realizira programirana operacija, podsklop za generiranje adresa brojanje slogova i generiranje drugih signala koji ima zadatak da održava odgovarajuće adrese za oba porta uz mogućnost dek remen ti ran j a i i nk remen ti ran j a . ^'u je još i podsk lop ob likovanj e vremenskih osobina 'signala čitanje i pisanje za oba porta, podsklop traženje te podsklop za kontrolu prekida i DMA zah t je va . Programer ima na raspolaganju sljedeća regis tre : - Kontrolni registar: drži DMA kontrolne informacije o operaciji i načinu izvršenja te o zahtjevima za gone ri ran je prekidnih i drugih signala. - Registar za odredj i vanje oblika signala za čitanje i pisanje za oba porta. - Registar prekidnog vektora: drži osam bitni prekidni vektor čiji se sadržaj ispisuje na podatkovno vodilo pri generiranju prekida. - Regis tar za specifikaciju dužine bloka: sadrži broj slogova koji treba da i>uiie pretražen ili prenesen. - Brojač slogova: sadrži broj već prenesenih ili pretraženih slogova pri prenosu ili pretraživan j u Lloka. - Uporedj ivački registar: sadrži slog koji treba da se traži ii programiranom bloku. ^ - Maski rnJ fù g i .n I .i r : sadrži osam bitnu masku koja Oli j w i i: i'itove u uporedj i vačkom registru Ktiji £rr;..i => operacija DMA čitanje operacija DMA pisanje Pri tome se predpostavlja harduareska veza izmedju disk kontrolera '8271 i kanala Ü DMA procesora (u DMA modo registar je upisana vrijednost 4111). U programu je izvršeno upisivanje adrese DMA memori jskog bloka te broja slogova koji trebaju da se prenesu, pošto smo to izračunali (množenjem NOSEC sa 12B). Ovakav segncnt se mora uklj uči ti u podprogram za čitanje ili pisanje više zaporednih sektora sa odnosno na disk. Dodatne ascmblersko naredbo tog podprograma se odnose na upis pa rame tara i kontrolnih slogova u registre disk kontrolera, našto započinje prenos podataka izmedju diska i memorije pod kontrolom DMA procesora. Kraj prenosa označava prekidni signal kojega može gene ri ra ti disk kontrolor ili DMA procesor. Posebno zanimljiv problem so pojavljuje pri programiranju u sis temima sa DMA procesorom u multiprogramskom ili multi procesorskem reiimu. Najnoviji jezici, konstruirani za multlprogramske i multi procesorske aplikacije, te aplikacije programiranja u realnom vremenu ne sadrio potrebne konstrukte za rješavanje problema sinhronizacijo i uzajamne isk 1 j učenosti u sistemima sa DMA procesorima. Naime, takvi jezici kao na primjer Modula (2) u velikoj mjeri zasnivaju rješenja tih problema na pojmovima prekida, prekidnih programa te prioriteta prekida. u sis temima sa DMA procesorima no postoji mogućnost realizacije operacija u vezi sa signalom (3,4) (send, wait) pošto DMA prenos jednog sloga izmedju memorije i pari ferne jedinice nije vozan na prekidni ■program niti na bilo kakav program izuzev inicijalizacijskog. Osjeća sc nedostatak mogućnosti definiranja hardwareskih objekata (npr. registri) kao objekata koji su po prirodi sposobni vršiti operacije u vezi sa signalima^ 5. zaključak DMA procesori su predstavljali toiak proiilem za projektante i proievodjaie mikro procesorskih LSI komponenti, što dokazuje njihova dosta kasnija pojava na tržištu. To ujedno moie da dočara kompleksnost, a Isto tako i sposobnost DMA procesora koji su već na raspolaganju. Veću primjenu DMA procesora možemo u budućnosti očekivati u naj različiti jim aplikacijama. Literatura (2) N, Hirthi Modulai A language for modular multlprograming, Software- Practice and Expereience, 7, I (Jan. 1977), 3-35. (3) B. Hansent Operating System Principles, Prentice Hall, Englevood Cliffs, N.J. 1973. (4) D, Novak, K. Exel, M. Kovačević, B. Kastelic t Modulai jezik, prihodnosti za mikro računalniške aplikacije. Informatica 2, 19 79. (1) D.Novaki Uporaba taktnega generatorja MC6S75 v sistemih z dinamičnim pomnilnikom in DMA prenosom. Informatica 4, 197S. PRB-1 DIGITHL LOGIC PROBE ^ Compatible v/ith DTL, TTL, CMOS, MOS and Microprocessors using a 4 lo 15V power supply. Thresholds automatically programmed. Automatic resetting memory. No adjustment required. Visual indication of logic levels, using LEO'S to show high, low, bad level or open circuit logic and pulses. Highly sophisticated, shirt pocket portable (protective tip cap and removable coil cord). DC to > 50 MHZ 10 Nsec. pulse response 120 K impedance Automatic pulse stretching to 50 Msec. Automatic resetting memory Open circuit detection Automatic threshold resetting Compatible with ail logic tamilies 4-15 VDC Range extended to 15-25 VDC with optional PA-1 adapter Supply O.V.P. to± 70 VDC No switches/no calibration OK MACHINE & TOOL CORPORATION 3455 Conner St., Bronx, N.Y. 10475 (212) 994-6600 / Telex 125091 LITERATURA IN SREČANJA ;)-5 (loc. San Uiecjo, C;iliior.iia . ZDA 1974 WINTKK S1MUI.ATION CONKEHENCf: Informaciju: Mitchell G. , FEDSIM/NA, Washiny- toii, DC 20;)30, USA 10-12 doc. Pacific Grove, California, ZDA 7T1I SYMPOSIUM ON OPERATING SYSTEM HHINCIPI.ES Informacije: Conf.clim. Michael D. Schroeder, Xerox Palo Alto lfesoarc:li 0:;ritre, 3333 Coyote Hill Road, Palo Alto, CA 91304, USA . 12-11 maree, Versailles, Kram ija INTEIINATIONAL SY^IVSIUM ON DISTÜ'^JUTED DATA liASES Orijaiiizalor : IRIA Informacije: IRIA, Doinaine cU' Voliicean, Ro(^l, l)-23()l) Kiel, (ieiniany 10-12 dec. Loudon, Velika Uritanija LONG-LIFE SOFTVARE PLUS STATE OF THE ART I'U I'ORIAL USER PARTICIPATIVE SYSTEMS Orcjani/ator: INFOTECH Infoi niacije: Spix ial Events Division, Infof.ech International Litnited, Nicholson House, Maidenhead, Berkshire SL6 ILD, England 17-21 marec Dunaj, Avstrija fiTII INTERNATIONAL CONGRESS ON DATA PROCESSINfi IN EUROPE Organizator; ArbcMltiemeinsehafl für DaU^nverbeitnn<| Informacije: Seki'elariat, 6 Internaliorialer Konijress D:»t<;nvei bc.'itiwKi im Europ.'iischen Ranin, c/o inter'conveii-tion, P.O.itox 35, A-1Ü95 Vienna, Anstria LETO l'>8() ■>-11 jan. Oxford, Velika Britanija 1980 CONFERENCE ON PATl'ERN RECOGNITION Informacije: Josef Kittler, Nuclear Physics Lafiorator.y, Kel.Ie Road, Oxford OXl 3HH, England 28 jan.- 1 feb. Caracas, Venezuela PANEL 80 EXPODATA Informacijo: Secretarla General PANEL 80, Coordinacion De Computacion, Universidad Simon Bolivar, Sartanija, Baruta, Edo. Miranda, Apnrtado Postal No. 80659, Caracas 108, Venezuela 30 jan.-1. feb. Monterey, California, ZDA INTERNATIONAL SYMPOSIUM ON MICROCOMPU TERS AND THEIR APPLICATION Informacijo: Secretary, MlMI-80 (Monterey), Box 2181, Anahaini, CA 92801. 12-14 feb. Kansas City, ZDA ACM COMPUTER SCIENCE SONFERENCE Informacije: Conf. ehm. Earl J. Schweppe, Dept. of Computer Science, University of Kansas, Lawrence, KS 66044 4-6 marec Zurich, Švica 19H0 INTERNATIONAL ZURICH SEMINAR ON DIGITAL COMMUNICATIONS Informacije: Secretariat 1980 Internationa Zurich Seminar, D. Hug, Dept. ENF, BllC Brown, Boveri and Co. Ltd., C.H-5401 Baden, Switzerland 24-28 maree .lahorina, Jugoslavija IV. BOSANSKOHERCEGOVAČKl SIMPOZIJUM IZ INFORMATIKE "JAHORINA 80" Organizator: Eli'ktr itc4iiu( ki fakultet Sai ajevo Informacijo: Elektrotehnički fakulti>l Sarajevo, Odsjek za informatiku, za simpozijum, 71000 Sarajevo, To|ilička cesta bb, lelef. 071 521-677/132 31 marec-2 april Brighton, Velika Britanija CAD 80 - 4lh INTERNA nONAL CONFERENCE ON COMPU-■TERS IN ENGINEERING. ANO BUILDING DESIGN Informacije: Conf. ehm. (iarelh Jones, IPC Science and Technolo()y Press Ltil., 32 High si., Guildford, Surrey, England GUI :1EW 8-11 a|iril Dunaj, Avstrija 5I'H EUROPEAN MEETING ON CYBERNETICS AND SYSTEMS RESEARCH Orgatiizator: Austrian Soc:iety for Cyberii<;tic Studic^s Informacije: Austrian Scxuety for Cybern<^lic Studies, Schottengasso 3, A-lOlO Vienna, Austria 16-20 april Skopje, Jugoslavija BIOMEDICINSKA KIBEUNETIKA 1980 Organizator: Društvo za biokibernetiko Informacije: M. Kon-Popovska, Matematički fakultet, pp 504, 91000 Sko|ije 30 a|)ril-2 maj Pittsburgh, ZDA li ni ANUAL PITTSBURGH CONFERENCE ON MODELING AND SIMULATION Organizator: School of Engineering, University of Pittsburgh Informacije: William G. Vof|t or Marlin II. Mickle,Modeling and Simulation Conference, 348 Menodum Engineering Hall University of Pittsburgh, Pittsburgh, Pennsylvania 15269, USA 28-30 maj Shiraz, Iran IFAC/IFIP CONFERENCE ON SYSTEM APPROACH AND COMPUTER APPLICATIONS FOR DEVELOPMENT Organizator: Iran Society of Automatic Control Engineers Informacije: Secretary of IFAC/IFIP Conference, Iran ö 1980, PO Box 737, Shiraz, Iran 16-19 jun, Warsaw, Poljska 3RD IFAC/IFORS CONFERENCE ON MODELLING AND CONTROL OF NATIONAL ECONOMIES ■Organizator: Systems Research Institute -Polish Academy of Sc iences Informacije: Dr. M. Lipiec, Systems Research Institute Polish Academy of Sciences, 6 Newelska st., 01-477 Warsaw, Poland . 1-3 okt. Kyoto, Japonska lOTH INTERNATIONAL SYMPOSIUM-^N FAULT-TOLERANT COMPUTING Organizator: The Technical Committee on Fault-Tolerant Computing of the IEEE Computer Society Informacije: Secretariat of FTCS-10, Dept. of Applied Mathematics and Physics, Faculty of Engineering, Kyoto University, Kyoto 606, Japan f i^-12 okt. Bled, Jugoslavija INFORMATICA 80, 15. JUGOSLOVANSKI MEDNARODNI SIMPOZIJ O OBRAVNAVANJU PODATKOV Organizator: Slovensko društvo Informatika Informacije: Slovensko društvo Informatika, Jamova 39 61000 Ljubljana , 23-27 jun. Brussels, Belgija WOBLO FORUM OF INTERNATIONAL TRANSNATIONAL ASSOCIATIONS Organizator: Union of International Associations (UAI) Informacije: UAI, rue aux Laines 1, 1000 Brussels, Belgium 23-27 jun, Roma, Italija IBI WORLD CONFERENCE ON TRANSBORDER DATA FLOW POLICIES ' Organizator : Intergovernmental Bureau for Informatics Informacije: IBI, Viale Civiltà del Lavoro 23, POB 10253, 00144 R6me, Italy 14-17 okt, Dusseldorf, ZRN 6TH IFAC/IFIP INTERNATIONAL CONFERENCE ON DIGITAL COMPUTER APPLICATIONS TO PROCESS CONTROL Organizator: VDI/VDE-Gesellschaft Mess-und Regelungstechnik Informacije? VDI/VDE, Postfach 1139, D-4000 Düsseldorf 1 Germany. VABILO K SODELOVANJU 30 jun.-4 jul. Bratislava, ČSSR INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELIGENCE AND INFORMATION CONTROL SYSTEMS OF ROBOTS Organizator: The Scientific Board for Artificial Inteligence of the Systems Analysis Committee of the Presidium of the Academy of Sciences of the USSR and the Institute of Tecnhnical Cybernetic of the Slovak Academy of Sciences Informacije: Institute of Technical Cybernetic of the Slovak Academy of Sceinces, 80931 Bratislava, Dubrav-ska 9, ČSSR 16-19 sept. Lausanne, Švica E'USIPCO 80 Organizator: Swiss Federal Institut of Technology .Informacije : Mrs Stehle EUSIPCO-80, Swiss Federal Institut of Technology, 16, Chemain de Bellerive, CH-.1007 Lausanne, Switzerland- 29 sept.-4 okt, Tokyo, Japonska M'EDINFO 80: 3RD WORLD CONFERENCE ON MEDICAL INFORMATICS Organizator: IFIP TC4 Informacije: IFIP Foundation, 40 Paulus Potterstraat, 1071 DB Amsterdam, Nethérlands oktober, Kyoto, Japan CONFERENCE ON MAN-MAPHINE COMMUNICATIONS IN CAD AND CAM Organizator: IFIP WG5.2, 5.3 Informacije: IFIP Secretariat, 3 rue du Marché, CH-1204, Genéva, Switzerland Iduće godine tj. 16.-20.4. 1980, za vreme održavanja V. Medžunarodne izložbe "SAVREMENA MEDICINA 1980" u Skopju u organizaciji Društva za biokibernetiku SR Makedonije održat će se: Simpozii BIOMEDICINSKA KIBERNET1KA 1980-Teme simpozija 1. Modeli bioloških i medicinskih sistema 2. Biomedicinska instrumentacija 3. Računari i mikroprocesori u biologiji i medicini 4. Veštačka inteligencija i robotika Ovim vas pozivamo da svojim radovima doprinesete uspjehu simpozija. Predvid eno je da se radovi štampaju u posebnom Zborniku simpozija. Molimo vas da obratite pažnju na slijedeće rokove; 1 .1:2 ,1979 Rok za dostavu kratkog sadržaja na jednom od jugoslovanskih jezika 30.12,1979 Rok do kojeg će autori biti obavešteni o prih-vatanju radova 15,2,1980 Rok za dostavu radova Za detaljnije informacije obratite se na adresu: mgr, Margita Kon Popovska Matematički fakultet poštanski pret. 504 91000 Skopje 25. JUBILARNI GODIŠNJI SKUP JUREMA Održat će se 14. do 17. travnja/aprila 1980. u Zarjrebu pod mottom MJERENJE I AUTOMATIZACIJA = ŠTEDNJA ENERGIJE I SIROVINA, POVEČANJE PROIZVODNOSTI Zamišljeno je da se ovim skupom predoči dvadeselpet godina intenzivnog rada ne prijenosu znanja i tehnologije i is^kne doprinos JUREMA razvoju mjerenja, automati-ke, teorije sistema i kibernetike i njihovoj primjeni. Pozivamo stručnjake da do 15 .listopada/oktobra 1979. prijave referat. Sažetak mora biti dužine najviše 200 riječi na jednom od jezika jugoslovanskih naroda i na engleskom jeziku. Prvi izbor radova provest će se na temelju sažetaka, pa će do 1. studenoga/novembra 1979. autori biti izvješeteni o prihvaćanju i zamoljeni da pripreme referat u skladu s uputama. Pripremljeni rad treba dostaviti najkasnije do 10. veljače/februara 1980. 25, jubilarni godišnji skup JUREMA obuhvatit će: SAVJETOVANJE; STANJE I PERSPEKTIVE RAZVOJA AUTOMATIZACIJE Predmet rasprava na ovom savjetovanju bit će teme iz ovih područja: PRIRODNA VRELA I OKOLIŠ - pridobivanje nafte i plina - rudarstvo - opskrba vodom - zaštita okoline IZVORI I PRIJENOS ENERGIJE PROIZVODNI PROCESI I OPERACIJE - kemijska i farmaceutska industrija - industrija nafte i petrokemija - prehrambena industrija - metalurgija - industrija papira, gume, plastike - industrija cementa, gradjevnog materijala - tekstilna industrija EKONOMSKI I SOCIJALNI ASPEKTI - optimiranje - odnos čovjek - stroj - transfer znanja i telinologije. Naglasak je dakle na primjeni automatizacijo, ali se očekuju i prilozi koji ćo obraditi pitanja proizvodnje elemenata i ur8000 AMERIŠKO PODJETJE ZILOG JE 3 SVOJIMI KOOPERANTI (AMERICAN MICRO DEVICES, SGS/ATES) PRIPRAVILO PROIZVODNJO NOVE 16-BITNE PROCESORSKE DRUŽINE Z-8000 Z NASLEDNJIMI ČLANI: Z-CPU CENTRAL PROCESSING UNIT Z-MMU MEMORY MANAGEMENT UNIT Z-MBU MICROPROCESSOR BUFFER UNIT Z-FIFO BUFFER MEMORY Z-CIO COUNTER AND PARALLEL I/O DEVICE Z-SIO SERIAL I/O DEVICE Z-UPC UNIVERSAL PERIPHERAL CONTROLLER Z-BUS RAM OGLEJMO SI PODROBNEJE POSAMEZNA INTEGRIRANA VEZJA. O Z-8000-CPU SMO V ČASOPISU INFORMATICA ŽE POROČALI. TA MIKRO PROCESOR IMA NOVO ARHITEKTURO, UKAZE, KI SO ENAKI ALI MOČNEJŠI OD ONIH V MINI RAČUNALNIKIH, NASLOVI 8 M ZLOGOV V LOČENIH POMNILNIH SEKTORJIH ZA UKAZNI KOD, PODATKE IN SKLADE, PODPIRA PROGRAMIRANJE ZA SEDEM PODATKOVNIH TIPOV OD BITOV DO BESEDNIH NIZOV, IMA MOŽNOST RAZDELJEVANJA VIROV V MULTIWIKROPROCESORSKIH SISTEMIH TER IMA NOVO PREKINITVENO STRUKTURO. Z-CPU NUDI POSEBNO PODPORO ZA PARALELNE PROCESORSKE SISTEME, OPERACIJSKE SISTEME IN KOMPILATORJE. IMA ŠESTNAJST 16-BITNIH SPLOŠNIH REGISTROV, OSEM UPORABNIŠKIH NAČINOV NASLAVLJANJA, SEDEM GLAVNIH PODATKOVNIH TIPOV (BITI, BCD ŠTEVILKE, ZLOGI, BESEDE, DOLGE BESEDE, BESEDNI NIZI) IN 110 RAZLIČNIH UKAZNIH TIPOV. REGULARNOST REGISTRSKE ORGANIZACIJE, PODATKOVNIH TIPOV, UKAZOV IN NAČINOV NASLAVLJANJA POENOSTAVI PROGRAMIRANJE IN SKRAJŠA DOLŽINO PROGRAMOV. Tako se i6-bitni registri lahko uporabljajo kot AKUMULATORJI IN KOT INDEKSNI REGISTRI. Z NEKAJ IZJEMAMI SE LAHKO ZLOGI, BESEDE IN 32-BITNE BESEDE UPORABIJO V VSEH UKAZIH. PODOBNO VELJA ZA UPORABO NAČINOV NASLAVLJANJA. POMNILNIŠKE ZAHTEVE SE ZMANJŠAJO ZARADI KOMPAKTNEGA UKAZNEGA FORMATA IN ZARADI ARHITEKTONSKE REGULARNOSTI. Z-CPU JEDO DESETKRAT HITREJŠI OD 8-BITNIH MIKRO PROCESORJEV PA TUDI PETKRAT HITREJŠI OD VRSTE 16-BITNIH MIKRO PROCESORJEV IN MINI RAČUNALNIKOV. PROCESOR j MA 4 MHZ TAKTNI K IN OMOGOČA UPORABO CENENIH POMNILNIKOV. KOMPILATORJI, OPERACIJSKI SISTEMI IN DRUGA SISTEMSKA PROGRAMSKA OPREMA SE UČINKOVITO IZVAJA NA Z-CPU. KOMPILATORJI SE NPR. PODPIRAJO Z VEČKRATNIMI SKLADI, VELIKIM POMNILNIM PROSTOROM, S KONSISTENTNO UKAZNO ZALOGO TER S KOMPILATORSKO PRIREJENIMI UKAZI. ZA OPERACIJSKE SISTEME SO NA VOLJO POSEBNI UKAZI S KOMPLEKSNO STRUKTURO PREKINITEV IN PASTI, ZA SISTEMSKE IN NORMALNE NAČINE TER ŠE POSEBNI SISTEMSKI IN NORMALNI PODPROSTORI ZA SKLADE. Z SISTEMSKIMI IN NORMALNIMI NAČINI SE DOSEŽE LOČITEV VODILNIH IN UPORABNIŠKIH PROGRAMOV IN S TEM IMPLEMENTACIJA BOLJ KVALITETNEGA IN ZANESLJIVEGA OPERACIJSKEGA sistema, prekinitvena struktura nudi visoko STOPNJO AVTOMATIZACIJE, KOT SO AVTOMATIČNA REŠITEV prograi16kega STATUSA, HITRA REŠITEV REGISTROV IN HITER ZAČETEK IZVAJANJA PREKINITVENEGA PROGRAMA. ŠTIRI PASTI PODPIRAJO DELOVANJE OPERACIJSKEGA SISTEMA. GLEDE NA POMNILNIŠKE ZAHTEVE STA NA VOLJA DVE RAZLIČICI Z-CPU. , ŠTIRIDESET- NOŽICNA NESEGMENTIRANA RAZLI C ICA NASLOVI DIREKTNO 64K ZLOGOV NASLOVNEGA PROSTORA, A8-N0ZICNA SEGMENTIRANA RAZLICICA PA NASLOVI NEPOSREDNO 8 M ZLOGOV NASLOVNEGA PROSTORA. NA SLIKI 1 IMAMO IMENA SIGNALOV IN NJIHOVO FUNKCIJO NA PODNOŽJU Z-CPU. Z-MMU JE INTEGRIRANO VEZJE ZA. UPRAVLJANJE POMNILNIKA. TO VEZJE IZVAJA DINAMIČNO SEGMENTNO PREMEŠČANJE, 3 ČEMER POSTANEJO PROGRAMSKI NASLOVI NEODVISNI OD NASLOVOV FIZIČNEGA POIyNINLNIKA. VEZJE IZVAJA SEGMENTNO UPRAVLJANJE IN ZAŠČITO, PODPIRA ORGANIZACIJO SPREMENLJIVE 3EGMENTNE DOLŽINE IN VEČ VEZIJ Z-MMU LAHKO f=ODPIRA več PREVAJALNISKIH TABEL V POLJUBNEM DELU NASLOVNEGA PROSTORA Z-CPU. S KOMPONENTO Z-MMU SE UVAJAJO V SISTEM Z-8000 LASTNOSTI, KI JIH IMAJO LE NAJBOLJ RAZVITI RAČUNALNIŠKI S ISTEMt Z-MMU PODPIRA DINAMIČNO SEGMENTNO PREMEŠČANJE KOT TUDI SEGMENTNO ZASCITO IN DRUGE SEGMENTNE UPRAVNE FUNKCIJE. SEGMENTNO PREMEŠČANJE NAREDI UPORABNIŠKE PROGRAMSKE NASLOVE NEODVISNE OD NASLOVOV FIZIČNEGA P0»4>IILNIKA IN TAKO RAZBREMENI UPORABNIKA, KI MU NI POTREBNO NAVAJATI LOKACIJSKIH INFORMACIJ ZA. FIZIČNI POMNILNIK. SEGMENTNA ZAŠČITA ONEMOGOČA ILEGALNO UPORABO LOGIČNIH SEGMENTOV IN PISANJE V ZAŠČITENE CONE NI MOGOČE. Z-MMU UPRAVLJA SEGMENTNO PREMEŠČANJE ZA UPORABNIKA S POMOČJO NASLOVNEGA PREVAJALNEGA MEHANIZMA, KI JE TRANSPARENTEN GLEDE NA UPORABNIŠKE PROGRAME. TA MEHANIZEM PREVEDE 23-BITNE LOGIČNE NASLOVE V PROGRAMIH V 24-BITNE NASLOVE FIZIČNEGA POMNILNIKA. VSAK 2>BnNI LOGIČNI NASLOV JE SESTAVLJEN IZ 7-BITNE ŠTEVILKE SEGMENTA IN IZ 16-BITNEGA ODMIKA. S POI^ČJO PREVAJALNE TABELE V Z-MMU SE 7-BITNI ŠTEVILKI LOGIČNEGA SEGMENTA PRIDRUŽI BAZNI NASLOV SEGMENTA FIZIČNEGA POMNILNIKA. NATO SE 16-BITNI ODMIK PRISTEJE K BAZNEMU NASLOVU IN SE DOBI 24-BITNI FIZIČNI NASLOV. SISTEM DINAMIČNO PRENAŠA PREVAJALNE TABELE V ODVISNOSTI OD NALOG, KI NASTAJAJO, SE UKINJAJO IN MENJAJO. . VSAKEMU SEGMENTU JE PRIREJENO DOLOČENO ŠTEVILO PRIDEVKOV, KO SE NA ZAČETKU SEGMENT VSTAVI V Z-MMU. KO SE POJAVI POMNINLNISKA NAVEDBA, PREIZKUSI PREKINITVENI MEHANIZEM PRIDEVKE GLEDE NA INFORMACIJSKI STATUS IZ Z-CPU. PRI NEUJEMANJU PRIDEVKOV SE GENERIRA PAST, KI PREKINE DELOVANJE Z-CPU. POTEM LAHKO Z-CPU PREIZKUSI STATUSNE REGISTRE Z-MMU IN UGOTOVI VZROKE. SEGMENTNI PRIDEVKI SO MED DRUGIMI TUDI OBSEG SEGMENTA IN TIP SEGMENTA (NPR. čl TALNI, SISTEI^KI, IZVRŠILNI, Z NEVELJAVNIMI NAVEDBAMI ITN.). DRUGE SEGMENTNE UPRAVNE FUNKCIJE SO NPR. OPOZORILNI SIGNAL ZA PISALNO CONO PRI OPERACIJAH S SKLADI, STATUSNI REGISTER Z ZGODOVINSKO INFORMACIJO O SPREMEMBI IN NAVEDBI SEGMEf4TA. VSAKO VEZJE Z-MMU LAHKO SHRANI 64 SEGMENTNIH VSTOPOV, VSAK VSTOP PA JE SESTAVLJEN IZ SEGMENTNEGA BAZNEGA NASLOVA, NJEGOVIH Z AùDRESS/ data bus seqMENV NUMBER Z 80-10 MMU FRA? BUS CONrUOL STATUS CHIP SELECT PHYSICAL AbbüESS cowtRol O UJ t> o v „ I/, lo 2 -1 o UJ + U" u m öf SLIKA 2. Z8000-MMU JE VEZJE ZA UPRAVLJANJE POIkWILNIKA, IN SICER: DINAMIČNO SEGMENTNO PREMEŠČANJE, SEGMENTNA ZAŠČITA ITN. BOS riMINQ" 5TATU5- M. ^8 30 32 20 2.-I 20. INTERRUPrS- JÄ -/3 AÙIS AD-(3 Ab il REAblwRirE- ADH NORMfiiL/sysTen-Ab'lo woßti/Byre- ad'3 Aßa AÙ7 Ab6 AD 5 AD4 AD 3 Ad2 AT>^ AD0 AS-DS-MREa- sr3 sr2. srl sr0 3 o. vvAir- (j srop- MULTl-MICRO CONTROL G JI Bus y- CONTROU ZI IVMI- VI- /Wl- o o Oo N ßuSRQ- iU a. 3 O u m A lü i;; uj co y -t- «J- m oc. swe SW5 SWf SN3 SW2 srJ^ SM0 SEf^r 43 39 38 ADbRESS/ "DATA BUS SEGMENTED VERSION SE(,ME(Or "wumber A. SECiMENV ■ trap Ž. SLIKA 1. CENTRALNA PROCESNA ENOTA Z8000-CPU, KI IMA OZNAKO ZeOOl. TO JE T.I. SEGMENTIRANI TIP PROCESORJA, KI NASLOVI A8M ZLOGOV. NESEGMENTIRANA RAZLI CI CA IMA OZNAKO Z8002 IN LAHKO NASLOVI LE 6AK ZLOGOV. VEZJI IMATA 48 IN 40N0ŽIC. IZ SLIKE JE JASNO RAZVIDEN SEGMENTIRANI DODATEK: TO SO SPONKE SN0 DO 3N6 IN SPONKA SEGT. PROCESOR ZeOOO PREDSTAVLJA S SVOJO DRUŽINO VEZIJ TRENUTNO NAJMOČNEJŠI 16-BITNI MIKRORACUNALNISKI SISTEM. PRIDEVKOV, IZ OBSEGA IN STATUSA. SEGMENTNI OBSEG JE SPREMENLJIV OD 256 ZLOGOV DO 64K ZLOGOV V INKREMENTIH PO 256 ZLOGOV. V OKVIRU MASOVNEGA PROSTORA SE LAHKO UPORABI TUDI VECJE ŠTEVILO VEZIJ Z-MMU Z VEC PREVAJALNIMI TABELAMI. NA SLIKI 2 JE PRIKAZANO PODNOZjE VEZJA Z-MMU Z IMENI SIGNALOV. Z-MBU JE MIKROPROCESORSKA VMESNA ENOTA,KI IMA ASINHRONI, DVOSMERNI FIFO, Z ORGANIZACIJO 256 KRAT 8 BITOV. TA ENOTA JE RAZSiRLJiVA NA 16-BITNE BESEDE IN JO JE MOČ KASKADI RATI DO POLJUBNE GLOBINE. Z-MBU IZOLIRA CENTRALNO PROCESNO ENOTO V PARALELNI PROCESORSKI KONFIGURACIJI IN SE LAHKO UPORABI V RAZLICNIH MIKROPROCESORSKIH SISTEMIH. VEZJE IMA LOGIKO ZA RAZPOZNAVANJE VZORCEV IN LAHKO USTAVI PRENOS PODATKOV TER SPR02l PREKINITVE. Z-MBU PREDSTAVLJA SPLOŠNO UPORABEN ELASTIČEN VMESNIK MED A3 INHRONO DELUJOCI Ml CENTRALNIMI PROCESNIMI ENOTAMI V PARALELNI PROCESORSKI MREŽI ALI PA TUDI VMESNIK MED CPU IN PERIFERNIMI VEZJI (KRMILNIKI ZA DISK). Z-MBU POVEZE Z-VODILO Z DRUGIM MIKRO PROCESORJEM ALI PERIFERNIM VEZJEM. TA ENOTA PREDSTAVLJA ■ KLJUČNI ELEMENT ZA PARALELNO DELOVANJE PROCESORJEV V SISTEMIH Z-3000, SAJ POVEZUJE KOMPONENTE „ IN PODSISTEME, KI OBRATUJEJO Z RAZLIČNIMI HITROSTMI. TA DVOSMERNA NAPRAVA SPREJEMA PODATKE IN JIH HRANI DOTLEJ, KO JIH DRUGA NAPRAVA V SISTEMU LAHKO SPREJME. NA TA NAČIN SE NE ZMANJSA .HITROST DELOVANJA SISTEMA, KO SE SPREJEMNA NAPRAVA PRIPRAVLJA ZA SPREJEM PODATKOV. Z-MBU ZNATNO POVEČUJE PRETOČNOST SISTEMA, KO OPRAVLJA PRENOSE . SPREMENLJIVIH BLOKOV PODATKOV V REŽIMU DIREKTNEGA POkM I LN ISKEGA DOSTOPA (DMA) ALI V REŽIMU PREKINITVE, KO SE POVEZUJEJO HITRO DELUJOČA PERIFERNA VEZJA. Z-MBU DAJE TUOI POPOLNO STATUSNO INFORMACIJO PRI UPORABI V REŽIMIH ODTI PAV ANJA PROCESNE OKOLICE. NA SLIKI 3 VIDIMO PODNOŽJE VEZJA Z-MBU Z IMENI SIGNALOV. DArA BUS 2)ArA BUS CPU CPU OR t/o /MrefjFAce int^RFAC^ inre/^rupr or, r/o CONTROL Z-MPAJ NAI^b S HA K B 4- er T" SLIKA 3. Z-MBU: ASINHRONI, DVOSMERNI FIFO ZA MULTI PROCESORSKO KONFIGURACIJO. Z-FIFO JE KLASIČNI POMNILNIK TIPA "VRSTA" (FIFO), KI RAZSiRJA ENOTO Z-MBU DO POLJUBNE GLOBINE, IMA ORGANIZACIJO 256 KRAT 8 BITOV, INDIKACIJSKI NOZICI ZA STANJI "VRSTA JE POLNA" IN "VRSTA JE PRAZNA" IN IZHODE PREKO OJAČEVALNIKOV 3 TREMI. STANJ I , SEVEDA SE Z-FIFO LAHKO UPORABI TUDI KOT SPLOŠNI POM^ ILNIK FIFO KJERKOLI. S KASKADIRANJEM IN V POVEZAVI Z Z-MBU SE DOSEŽEJO ŠTEVILA LOKACIJ Z INKREMENTI PO 256 CELIC. ČEPRAV Z-FIFO NI POVEZLJIV Z Z-VODILOM PA IMA MOŽNOSTI ROKOVANJA Z VSEMI KOMPONENTAMI, PRIKLJUČENIMI NA Z-VODILO. UPORABLJA SE LAHKO KOT VMESNIK MED V/I VRATI (PORTI) VEZIJ Z-UPC, Z-CIO ALI Z-MBU IN UPORABNIŠKIMI NAPRAVAMI. Z-FIFO JE KASKADNO RAZSlRLJlV, ŠIRIMO PA GA LAGKO TUDI DO POLJUBNE DOLŽINE BESEDE. NJEGOVI IZHODNI SPONKI ZA INDIKACIJO STANJ "POLN" IN »PRAZEN" OMOGOČATA UGOTAVLJANJE POLNOSTI IN PRAZNOSTI SISTEMA KOMPONENT Z-FIFO. PRI TEM IMA Z-FIFO MOŽNOST DVOSMERNEGA PRENOSA PODATKOV 3 KRMILJENJEM NA SPONKI B/A, KOT KAŽE SLIKA 4. 74 DATA DATA BUS B A Z soeo F/ FO I-IAND SHAK:£ OUTPUr ENABLE a/A blRECnoN y> /a UJ — PULL EHpry Jr.i. address/ Control oata bus wrERRuprs Z 2006 ■ CIO 3LIKA 4, Z8060-FIF0 JE KLASICEN FIFO 3 STANJI "POLN" IN "PRAZEN". suka 6o z8036-ci0 ima vrata, stevnike in ČASOVNIKE. paralelna v/l Z-SlO JE VEZJE ZA SERIJSKI V/l Z OVEMA NEODVISNIMA POLNODUPLEKSNI MA KANALOMAS KRMILJENJEM MODEMA. HITROST SERIJSKIH KANALOV JE OD 0 DO 800K BITOV NA SEKUNDO, ZA ASINHRONE NAČINE PRENOSA JE MOGOČE PROGRAMIRATI PET DO OSEM PODATKOVNIH BITOV Z ENIM, ENIM IN POL ALI DVEMA USTAVITVENIMA BITOMA. MOGOČE JE PROGRAMIRATI TUDI DELILNI TAKTNI FAKTOR (ZA HITROST SERIJSKIH KANALOV), DETEKTIRATI PREKINITEV IN JO GENERIRATI. NADALJNE LASTNOSTI OZIROMA MOŽNOSTI VEZJA SO SE: DETEKCIJA PARNOSTI, PRESTOPA IN NAPAKE, DI3YNC NAČIN Z NOTRANJO ALI ZUNANJO SINHRONIZACIJO ZNAKOV, EDEN ALI „DVA . SYNC ZNAKA, CRC GENERIRANJE IN PREIZKUŠANJE. VEZJE GENERIRA„IN SPREJEMA FORMATA SDLC IN HDLC (AVTOMATIČNO VSTAVLJANJE NIČEL IN NJIHOVO BRISANJE ITN.). NAŠTETE FUNKCIJE TEGA VEZJA IZPOLNJUJEJO VRSTO ZAHTEV, POVEZANIH 3 SERIJSKIM PRENOSOM PODATKOV. VEZJE OPRAVLJA' SERIJSKOPARALELNO IN OBRATNO PRETVORBO Z VRSTO PROGRAMIRLJIV IH FUNKCIJ, KI SO POTREBNE PRI PODATKOVNEM KOMUNICIRANJU. Z-3I0 OBDELA ASINHRONE FORMATE, 3INHR0N0 IN ZLOGOVNO SESTAVLJENE PROTOKOLE, KOT 30 IBM BISYNC IN 3INHR0NE PROTOKOLE, KOT STA HDLC IN IBM SDLC. SEVEDA PA TO VEZJE LAHKO PODPIRA KATERIKOLI DRUGI PROTOKOL, NPR. V PRIMERU UPORABE KASETNE NAPRAVE, GIBKEGA DISKA ITN. Z-SlO GENERIRA IN„ PREISKUSA CRC-KODE V VSAKEM SINHR0NEM NAČINU IN GA JE MOČ PROGRAMIRATI ZA PREIZKUŠANJE PODATKOV PRI RAZLIČNIH NAČINIH. KADAR KRMILJENJA MODEMOV NE Z 8030 5/0 CHANI\JEL A Cowr/?ols/ :>ata DATA BUS CONTIZOL iNreRUvpT CHANNELB CONTUOLi/ > A y m 2 J + ero POTREBUJEMO, SE LAHKO USTREZNI VHOOt IN IZHOD! UPORABIJO ZA DRUGE V/l FUNKCIJE, PODNOŽJE VEZJA Z-SlO JE PRIKAZANO NA SLIKI 5 Z IMENI SIGNALOV. TO VEZJE MOČNO SPOMINJA NA Z-80-3I0, KI SE UPORABLJA V SISTEMIH Z Z-80 ZA ENAKE NAMENE. Z-CIO JE KOMBINIRANO INTEGRIRANO VEZJE S STEVNIKI, ČASOVNIKI IN PARALELNIMI v/l VRATI, IMA DVOJE NEODVISNIH 8-BITNIH OJAČEVALNIH DVOSMERNIH V/l VRAT IN §E ENA A-BITNAV/I vrata, Stiri načine rokovanja vključno z IEEE-4a8, ČAKALNOPRENOSNI VMESNIK ZA HITRI PRENOS PODATKOV, TRI NEODVISNE 16-BITNE ŠTEVNIKE, LOGIKO ZA RAZPOZNAVANJE VZORCEV IN PREDNOSTNI KRMILNIK PREKINITEV. TO UNIVERZALNO PERIFERNO VEZJE LAHKO ZADOSTI VRSTI ZAHTEV ZA PARALELNI PRENOS PODATKOV IN POTREB, POVEZANIH S ŠTETJEM IN MERJENJEM ČASA. TO VEZJE ZDRUŽUJE TAKO FUNKCIJE DVEH VEZIJ, IN SICER Z~80-PI0 IN Z-80-CTC« BREZ ZUNANJIH POVEZAV JE MOGOČE OBLIKOVATI TUDI 52-BITNI STEVNIK/ČASOVNIK. NA SLIKI 6 JE PRIKAZANO PODNOŽJE TEGA VEZJA. Z-UPC JE UNIVERZALNI PERIFERNI KRMILNIK, KI IMA STRUKTURO IN UKAZE MIKRO RAČUNALNIKA V ENEM VEZJU Z OZNAKO Zc8, TO vEZjE VSEBUJE 2K-ZL0ŽNI ROM, 144-ZLOŽNO REGISTRSKO ZBIRKO, UART ZA POLNI DUPLEKS, DVA STEVNIKA/ČASOVNIKA TER 24 BITOV ZA V/I Z ROKOVANJEM ALI BREZ ROKOVANJA, Z-UPC JE RAZLIČICA MIKRO RAČUNALNIKA V ENEM VEZJU Z-S ZA UPORABO NA Z-VODILU. TOREJ JE NEKE VRSTE INTELIGENČNI V/l ZA POVEZAVO Z UPORABNIŠKO PERIFERIJO. IMA 47 UKAZNIH TIPOV IN 9 NAČINOV NASLAVLJANJA. PREKINITVENI MEHANIZEM VSEBUJE ŠEST VEKTORIRANIH PREKINITEV Z MASKAMI IN PREDNOSTJO. 144-REGISTRSKA ZBIRKA VSEBUJE 124 SPLOŠNIH REGISTROV, 4 V/l REGI3THE VRAT IN 16 KRMILNIH IN STATUSNIH REGISTROV. TUDI UART V VEZJU IMA VSE STANDARDNE LASTNOSTI IN GA LAHKO POVEŽEMO S ČASOVNIKI VEZJA Z-UPC. ŠTEVNIŠKI/dfASOVNIŠKI KANALI IMAJO PO 14 BITOV (6 PLUS 8;. VEZJE JE SHEMATIČNO PRIKAZANO NA SLIKI 7. SLIKA 5. Z8030-SIO JE DVOKANALNI ZNANE PODATKOVNE FORMATE. V/1 ZA Z-BU3 RAMI 30 4K KRAT 8-BITNI PS EV DO STATIČNI POWWILNIKI TIPA RAM, 2K KRAT 8-BITNl TAKTNI STATIČNI RAMI BREZ DODATNIH TTL VEZIJ ZA NJIHOVO UPORABO NA Z-VODILU. TI POWNILNIKI IMAJO NEKATERE PREDNOSTI NA Z-VODILU IN 30 NAMENJENI KOT DODATEK PORAZDELJENIM INTELIGENČNIM SISTEMOM V OBLIKI LOKALNIH POk*^ILNI KOV, GRE / BISTVU ZA DINAMIČNE 8. Z UPC I/o PORTS Jr.Z. AOÙRESS/ Mfa Bus COfjrROL u Ul A v l/l (o 5 -4 ÜJ + isr 6K-ZLp;'NE MfHUKCNt rtiWl I INE ENOTE. "TI" 80 V NAJKRAJŠEM ČASU POWJILNE ENOTE Z PiiOl i'VAJAL MILIJON /'LOGI. TUDI MEHURCNE a.p.2ele7nikar ló-BllNI l'ii.0CI.3CH MC 68000 DOLGOPRIČAKOVANI Kf-.-BITNI MIKRO PROCESOR mOROLA MC 66000 JE končal DRUC, I SILICIJEV PREHOD IN TA DRUGA I ILRACIJA SO 5E VEDNO VZORČNI PRIMERKI IZ SERIJSKE PROIZVODNJE. KI SE POŠILJAJO UPORABNIKOM NA OSNOVI POSEBNEGA SPORAZUMA. VZORCI NOSIJO OZNAKO XC 68000 IN SISTEM /38: PRVA ZAKASNMTEV PODJETJA'i"BM" PODJETJA IBM PRf DOBAVI SISTtlX)V /38 ZARADI PROBLEMOV S PROGRA®KO OPREMO POMENI, DA NASTOPAJO NOVI ELEMENTI T^DI V TRŽNEM SISTEMU IZDELEK/RAZVOJ. SISTEM /36 JE MALI POSLOVNI SISTEM IN ZAKASNITEV NJEGOVE DOBAVE POMENI NEKAJ NOVEGA, KER SE JF TO ZGODILO TUDI PKI PODJETJU IBM. RAÌVOJ SISTE>;SKE PROGRA.VSKE OPREME ZA OPERACIJE. KOMUNIKACIJE IN PODATKOVNO UPRAVLJANJE PREDSTAVLJA VEČJI IN TEŽJI DEL V PRIMERJAVI Z MATERIALNO OPREMO SISTEMA. RAZVOJ TAKE OPREME POSTAJA VSE BOLJ KOMPLEKSEN IN NAPOREN IN KOT SPREMINJA TUDI TRŽNA STRATEG I vA V POVEZAVI Z ELFf.ENTOM IZDELEK/RAZVOJ. IBW-OVO OPRAVIČILO z" ZAKASNITEV NAVAJA POSEBEN ČAS, KI JE POTREBEN ZA INTEGRACIJO IN PREIZKUS "5 i i-i PROGRAMSKIH ELEMENTOV, DA BI SE S A NAČRTOVANA ZMOGLJIVOST SISTEMA. ''''' RAZVOJU SISTEMA /38 SE POJAVLJAJO PRI NOVEM KRMILNEM PROGRAMU SISTEMA V MEHANIZMIH INTERAKTIVNIH PODATKOVNIH BAZ TER POPOLNOMA NOVO ARHITEKTURO IN OPERACIJSKI SISTEM. KI PO'.'FNl VPSÀL """LF^^ V^'tLJAL LETA 1964. TA S ISTEM OBL.IURI IA ENORAVNINSKO SHEMO PO/.N I LN IŠKEG A NASLAVLJANJA Z PONJ^ILNIŠKlIn NAVEDBAMI? fS 'JONOV ZLOGOV VIRTUALNEGA POlvlNILNIKA PROGRAMpl'lr OPERSE^ rS'^t/e AMBI JE NIHČE DOSLEJ NI POSKUSIL PODOBNEcfNA PO^ROČ n ARHITEKTURE IN OPERACIJSKIH 3 ISTMv? PODROČJU DANAŠNJE RAČUNALNIŠKO TRŽiSČE SFvFriA N;P ZÄ?^ ilov'^n^'^n^'^ SISTeÄ° v'uPO^Ab/IO ^HTEVALA NOVE DIMENZIJE PRI VZDRŽEVANJU DOPOLNJEVANJU IN POVEZOVANJU SISTEMOV^ ' A.P.ŽELEZNIKAR 76 poslovanja, vprašanje pa je v kaksni meri in na katerih področjih. v/l problemi bodo odlocilni za prihodnost vrste tržišč. že sedaj predstavljajo senzorji, aktuatorji in periferne naprave bistveni izdatkovni delež . v inteligenčnih elektronskih izdelkih in v prihodnosti bo ta delež se narastel. tržišče inteligenčne elektronike je mogoče razdeliti na štiri dele: avtomotivno pos lov no/komun i k ac ijs ko potrošniško industrijsko vsako od teh podrocij je ^ razdeljeno na podpodročja s svojimi tržišči, življenskimi cikli in razlikami med ameriškim in evropskim tržiščem. avtomotivno področje avtomotivno tržišče 80 v zapadni evropi in v zda doseglo produkt 7 milijard dolarjev v letu 1987. to stanje bodo podpirali ekonomija v porabi goriva in predpisi o onesnaževanju. večina teh predpisov bo začela veljati ze prihodnje leto (1980). evropsko tržišče 80 doseglo polovicni produkt ameriškega na tem področju v letu 1987. faktor rasti v znašal na tem naslednjih devetih letih naj bi področju od 20 do 40. področje poslovanja in komunikacij v letu 1987 naj bi produkt na tem področju dosegel že 13 milijard dolarjev. to podrocje naj bi povečalo predvsem učinkovitost menažerskega dela in skrajšalo čas za upravne odločitve, skrajšalo naj bi čas prenosa informacij od zbiralnikov do uporabnikov in povečalo izredno aktualno produktivnost v zda. uvedba tako imenovanega integriranega urada naj bi se začela v letu 1985, ko bodo na voljo multimedijska komunikacijska sredstva, sistemi za procesiranje tekstov, faksimilni in kopip>ji sistemi, elektronski telefoni, medsebojna menjava poslov, zasebni komunikacijski sistemi, mikrograf i.čne naprave in kalkulatorji. perspektiva tega področja je izredno široka in zahtevna in porast produkta 00 leta 1987 bo dosegel 250 procentov. potrošniško področje v letu 1987 naj bi bilo prodanih več kot aoo milijonov inteligenčnih elektronskih modulov na področje široke porabe. pri povprečni ceni $ 50 za modul bo dosežen produkt 20 milijard oziroma povečanje za 1000 procentov. določena potrošniška tržišča se bodo hitro pojavljala in izginjala. vendar 80 täko dinamično tržišče še vedno primerno za majhna podjetja, ki bodo realizirala nove zamisli in ne bo moglo biti kontrolirano s strani velikih podjetij. pri tem velja omeniti, da bo izredno narasla potrošnja mik.ro procesorjev, prav tako za 1000 procentov .do leta 1987. industrijsko področje J računalniškega načrtovanja izdelkov in diagnostika v proizvodnji. študijo, ki vse to napoveduje,^ so izdelovali dve leti, cena zanjo pa je znažala 1.5 milijona dolarjev. naslov študije je : strategic impact of intelligent electronics in the united states and europe - 1977 to 1987. a.p.železnikar delilni k za takt v mikroračunalniških vezjih večkrat potrebujemo delilnike takta (ure), npr. pri nastavljanju hitrosti serijskega kanala. čeprav obstajajo posebna delilna vezja (npr. mc 14411) pa si lahko večkrat pomagamo tudi z ustrezno povezavo ttl ali cmos vezij. slika 1 prikazuje delilni k za razmerja 1,2.....16. vezje 74161 jesinhroni binarni števnik, ki ima možnost paralelne naložitve (vhodi a, b, c, d s signalom l-). vsebino tega stevnika korakoma povečujemo s signalom fin (na vhodu clk). izhodi qa, ob, oc in qd so povezani z vhodi a, b, c, 0„ kodirnika 4-v-16, tj. z vezjem 74154, kot kaze slika 1. vezje 74154 je uporabljeno kot heksadecimalni dekodirnik in na izhodih tega vezja se pojavljajo ničle na vsakih n vhodnih impulzov (n = 2, 3, ... ,16). s pretikal0m3 izberemo določeno delilno razmerje, to je n in očitno velja f P > 1 + (V er "'v ^ KO ^B B T C ^ ÖD ur l'i- > IT) 423 -13 22 at H 20 + O a. 3 ik ž« C Ì5: H \±- A s 1 -.2 t ii. -/g -.iK slika^ 1. binarni števnik 74161 in kodirnik "št i ri-v-šestnajst» 741 54 sestavljata delilni k s spremenljivim modulom. delilno razmerje od 1 do 16 je nastavljivo s pretikalom s. industrijski izdelki, ki bodo uporabljali inteligenčno elektroniko bodo na tržišču v letu 1987' dosegli produkt '10 milijard dolarjev. področje je moč razdeliti v procesov. avtomatizirano analitične instrumente, preizkusevalne naprave in v avtomatične sisteme. od teh industrijsko krmiljenje proizvodnjo, avtomatične konstrukcijske sektorjev ima največ možnosti krmiljenje procesov. inteligenca stroja^ bo pomenila za uporabnika več kot znižanje proizvodnih stroškov in napočil bo Cas krmiljenih obdelovalnih strojev, robotov in drvugih naprav za obdelavo materiala. ker je avtomatizacija kapitalno intenzivna, bo odločilno število funkcij na enoto cene. narasel bo obseg fout = fin/n namesto kodirnika 74154 tudi kodirnik 4-v-10 z oznako razmerja 1, 2, ..., 10. lahko uporabimo 7442 in dobijo a.p.železnikar ^^BÜS/AJBSS G^A^HS fAò THE S^ST^ foR^ MMJAGAM-^^ OF CofOSn^V 8oSo AJoUl uL M.jiryv é, 81352 Ce)73) CENIK OGLASOV Ovitek - notranja stran (za letnik 1979) 2 stran ----'------------------------- 20.000 din 3 stran--------------------------- 15 .000 din Vmesne strani (za letnik 1979) 1/1 stran--------------;---------- 9.600 din 1/2 strani------------------------ 6.000 din Vmesne strani za posamezno številko 1/1 stran------------------------- 3.600 din 1/2 strani----------------------- 2.400 din Oglasi o potrebah po kadrih (za posamezno številko) 1.200 din Razen oglasov v klasični obliki so zaželjene tudi krajše poslovne, strokovne in propagandne informacije in članki. Cena objave tovrstnéga materiala se bó določala sporazumno . ADVERTIZING RATES Cover page (for all issues of 1979) 2nd page-----------------------------------1100 2 3rd page------------------:------------------880 $ Inside pages (for all issues of 1979) 1/1 page--------------------------------660 Ü 1/2 page-----------------------------------------440 2 Inside pages (individual issues) 1/.1 page -------------:-------------------220 g 1/2 page------------------------------165 2 Rates for classified advertizing: each ad-----------------------;----------55 jS In addition to advertisment, we wellcome short business or product news, notes and articles . The. related charges are negotiable. • eüaÄfiJK®, đagffraraiSK? I&IÜIS ulaifilkOTiK) «axMS mm (ScaiesCTo WgUUölM omao^raiKii ßB® m-m 'MM GEffll EWKS© ewTOs ■REBWeBMENiEi KWRÖ.W ram®? ßWßWj) C5iiaie®(?iro o ^iìte (Miceli IVI'AWSi Ö i!« ««M » «C® m.. MCflSXo ßfloV, gllfß »«i^iltlEX ÌM^ NAVODILO ZA PR I PRAVO C LAN KA Avtorje pi osiiiio, dn |)ošljejo uredništvu naslov in t^i'atek |iov/.i;luk članka ter navedejo približen obseg članka (število strani A 4 loi inatn) . Uredništvo l)0 nato poslalo avtorjem iistre/.no število forniularjev z ncivixlilorn. Clani.'k tipkajt«? na prilo/.one dvokolonsko i'(jrinulai'j(?. C"e l.iotrebujete dtKlatne txt of the second and succeeding pages in the left upper corner. Format of the subjoot (leafliiigs : Headings are separatwl from text by double spacing. If some characters are not available on your typwriter write them legibly in black ink or with a pencil. Do not use blue ink, because it shows poorly. Illustrations must be black and white, sharp and clear. If you incorporate your illustrations into the text keep the proposed format. Illustration can also be placed at the end of all text material provided, however, that they are kept within the margin lines of the full size two-column format. All illustrations must be placed into appropriate positons in the text by the author. Typing errors may be corrected by using white correction paint or by retyping the word, sentence or paragraph on a piece of Spaque , white paper and pasting it nearly over errors Use pencil to number each p;ige on the upper-right-hand corner of the manuscript, outside the blue margin lines so that the numbers may be erased. deha sistemi ELEKTROTEMNA UUBLJANA, TOZD za računalništvo Digital proizvaja in prodaja naslednje standardne računalniške konfiguracije: DELTA 700/60 . „ - DELTA 700 centralna procesna enofca - 512 KByte centralni pomnilnik s paritetno kontrolo,ki se lahko razširi do <4 MBytov - 2 KByte vmesni pomnilnik spomina (cache) - ura realnega časa - konzolni terminal s kontrolno enoto - dve diskovni enoti s kapaciteto po 80 MByte s kontrolno enoto - dve magnetni tračni enoti 800/1600 b/i, ^IS i/.. , 9 kanalni zapis s kontrolno enoto - asinhroni komunikacijski vmesnik ( 8 linij: EIA/CCITT modemski izhod ) ( 8 linij: 20 mA tokovna zanka ) ■ - 600 linijski tiskalnik - KOPA 1000 alfanumerični video display terminal (2 koral DELTA 3tO/80 - DELTA S'io centralna procesna enota - 256 KByte centralni pomnilnik 3 paritetno kontrolo - 2 KByte vmesni pomnilnik (cache) - ura realnega časa - konzòlni terminal s kontrolno enoto - enota za baterijsko napajanje pomnilnika - procesor s plavajočo vejico (floating point processor) - dve diskovni enoti s kapaciteto po 80 MByte s kontrolno enoto dve magnetni tračni enoti (1600 b/i, 75 i/š, 9 kanalni zapis), s kontrolno enoto I - asinhroni komunikacijski vmesnik ( 8 linij EIA/CCITT modemski izhod-.,) ( 8 linij 20 mA tokovne zanke ) - 600 liniJaki tiskalnik - KOPA 1000 alafanumerični video display terminal ( 2 kom.) DELTA 3'I0/5 - DEl.TA 310 centralna procesna enota - 128 KByte centralni pomnilnik s paritetno kontrolo, ki se lahko razširi do 256 KBytov - ure realnega časa - konzolni terminal s kontrolno enoto - dve diskovni enoti s kapaciteto po 5 t-Byte s kontrolno enoto - asinhroni komunikacijski vmesnik ( 8 linij: 20 mA tokovne zanke ) DELTA 310/10 - DELTA 310 centralna procesna enota - 160 KByte centralni pomnilnik s paritetno kontrolo do 256 KBytov - ure realnega časa - konzolni terminal s kontrolno enoto - enota za baterijsko napajanje pomnilnika - dve diskovni enoti s kapaciteto po 10 MByte s kontrolno enoto - ena magnetna tračna enota (1600 b/1, 75 i/^, 9 kanalni zapis ) s kontrolno enoto - asinhroni kumunikacijski vmesnik ( 8 linij: 20 mA tokovne zanke ) - 300 linijski tiskalnik NASTETE STANDARDNE KONFIGURACIJE LAHKO RAZŠIRITE S PRIKUUČEVANJEM NOVIH VHODNO-IZHODNO ENOT, POVEČANJEM POMNILNIKA IPD. SISTEMSKI PAKETI DELTA 700/80, 310/80, 310/10 IN 310/5 VKLJUČUJEJO TUDI: OPERACIJSKI SISTEM DELTA/M S PREVAJALNIKI IN APLIKATIVNIMI PROGRAMI, SOLANJE V LASTNEM IZOBRAŽEVALNEM CENTRU, POMOČ PRI UVAJANJU PROGRAMSKE OPREME, INSTALACIJO RAČUNALNIŠKEGA SISTEMA IN ENOLETNO GARANCIJO ZA STROJNO IN PROGRAMSKO OPREMO. U n i v'e'r za I n o komunikacijsko vodilo Centralna Centralni procesna pomnilnik enota 128 kbyte DELTA 3W delta sistemi : 340/5 Ura realnega časa Programska konzola Konzolni terminal Kontrolna enota Diskovna enota S Mbyte Diskovna enota TTT linij -Asinhroni komunikacijski vmesnik (20mA tokovne zanke) Centralna procesna enota DELTA 3iO Univerzalno komunikacijsko vodilo Centralni pomnilnik 160 Kbyte Baterijsko napajanje Ura realnega casa Programska konzola 'Konzolni Karmina I Kontrolna enota Diskovna enota iO Mbyte Diskovna enota iO Mbyte Kontrolna enota Linijski tiskalnik X)OI/hin Asinhroni komunikacijski vroesnik(20mA tokovne zanke) deha sistemi : 340/40 Centralna procesna enota delta 340 Vmesni pomnilnik fpp Univerzalno komunikacijsko vodilo Centralni pomnilnik 265 Kbyte Baterijsko napajanje Ura realnega časa Programska konzola Konzolni terminal dehB sistemi : 340/80 Kontrolna enota Diskovna enota 80Mbyte Diskovna enota SO Mbyte L inijski tiskalnik 8 linij KOPA r- \ '000 d / kopa mo Asinhroni' komunikacijski vmesnik (20mA tokovne zanko) — 8 linij Asinhroni komunikacijski vmesnik (EIa/CCITT mod uhodi) Centralna procesna enota DELTA 700 Univerzalno komunikacijsko vodilo Kontrola l Kontrolna enota Diskovna enota 80Mb/te delta sistemi : 700/bo Diskovna enota 80 Mbyte Linijski tiskalnik ( kopa 1000 kopa mo Asinhroni l