REFERENTNI STANDARDI

Benchmarking je vrlo zbunjujuca tema gdje netko specificira vrlo specificne vrijednosti cija stvarna povezanost sa stvarima koja ta osoba zeli znati nije ništa više od aproksimacije.

Ima više oznaka ovog pojma,kao ono što cini  "benchmarking" (dobro utvrdjene cinjenice),i što ga razlikuje od loše izvedenice tog pojma.

U slucaju HPIB-a postoji mnogo takvih standarda.Korisnici zele procjenu o perfomancama (u kbp/s), tako da znaju mogu li iskoristiti HPIB aplikaciju sa specificnom HPIB karticom.

Dva su tipa ispitivanja potrebna:tipicni "benchmarking",i ispitivanje maksimuma perfomanci.To se obicno radi  korištenjem racunala i jednostavnih instrumenata(HP 34401 "Alf"  DMM je trenutno popularan),i tada se ispituju svojstva na tipicnim korisnickim aplikacijama.

Svojstva sistema ovise o 4 stvari:

§  Brzini PC racunala: najjednostavnije prosudbe daje brzina njegovog procesora,ali to ne mora puno znaciti,jer treba uzeti u obzir koliko su podaci koje on obradjuje veliki,npr. 16 ili 32 bita,razlicite velicine RAM memorije i njezine brzine,brzina graficke kartice,hard diska,da li se rade ispitivanja u DOS ili Windows okruzenju

§  odabiru u kojem cemo jeziku pisati program s kojim cemo raditi testJednostavni pokazni program poslao bi  samo naredbu i procitao izlazne vrijednosti.Bolji programi ce uzeti u obzir svojstva grafickih kartica,spremaju povratne podatke u datoteku,rade provjeru statusa i grešaka,emuliraju jednostavne aplikacije za biljezene podataka.

§  Tipu HPIB kartice upotrijebljene u racunalu,no to najmanje utjece na rezultate

§     Brzina kojom instrument moze komunicirati sa okolinom.Ovo je jako bitna znacajka.HPIB je dizajniran tako da ostali uređaji ne mogu "govoriti" brze nego što ostali uređaji mogu "slušati" i naravno jedan uređaj ne moze "slušati" brze nego što drugi mogu govoriti

 

Mnogi benchmark programi traze specificne instrumente za provedbu  testiranja.

Tipicni programi također ne uzimaju u obzir svojstva HPIB kartica ,zato što bi svaka takva kartica trebala raditi na gotovo svakom sistemu.Brzina ce u prvom redu biti određena brzinom racunala i test programa,zato što je u udio prijenosa podataka preko HPIB malen u odnosu na ukupni prijenos podataka

 

Ispitivanja koja ispituju maksimum svojstava su optimizirana da se dobiju maksimalni rezultati kod operacija na HPIB karticama.

Sljedece cetiri stvari cine ovakvu vrst ispitivanja:

§  Brzina PC-a je optimizirana,tj.u njemu se eliminira sve ono što bi pogoršalo rezultate ispitivanja,i poboljšanje svega onog što je u racunalu ostalo,oslobađanje što je više moguce memorije.Hard diskovi  ce se defragmentirati,velicine disk-cachea ce biti uvecane,a kompresirani diskovi nece se koristiti (zato što algoritmi za kompresiju podataka usporavaju spremanje podataka).

PC konfiguracije,iako npr.neke potpuno iste mogu dati iznenađujuće razlicite rezultate

§     Program ce biti optimiziran da mu se poveca sirova brzina.Bit ce pisan tako da omoguci što brzi prijenos podataka od instrumenta-kao i da se koriste veliki blokovi podataka.

 

 

Treba voditi racuna  o tome da li cemo uredaj koristiti u zahtjevnim operacijama.To obicno nema puno utjecaja ukoliko imamo dobru ispitnu opremu

 

·    brzina HPIB kartice postaje vazna u zahtjevnim operacijama, i to je u danasnje vrujeme postalo usko grlo svakog mjerenja.Takodjer su vazni i sami konektori ,zato sto dolazi do problema u prijenosu ukoliko je dodano još kabela mjernom sistemu.Zato je potrebno duzine prikljucnih kabela svesti na minimum.To je dobro i iz razloga što je moguce reprogramirati HPIB za brzu komunikaciju preko sabirnica

·    brzina instrumenta je takodjer vrlo znacajan faktor za zahtjevna ispitivanja.Ima relativno malo instrumenata koji us sposobni za komunikaciju na brzinama iznad 250 kbp/s,vecina ih operira na brzinama ispod 100 kbp/s.

 

Na kraju treba vidjeti što nam ustvari treba.Skuplja oprema dat ce nam i bolje perfomanse.U stvari,perfomanse su stvar sistema i u  tome kako korisnik zna izvuci ono najbolje iz opreme.

 

 

 

KONTROLA PROLAZA I  NEUPRAVLJACKE OPERACIJE

 

 

 

Ovdje je bitno poznavati HPIB protokoleVrlo je tesko napraviti programe za uredjaje koji bi bili potpuno upravljivi..Ovdje se sve oslanja na HPIB BASIC .Ponekad nije sve standardizirano pa se moraju pronalaziti solucije i ekvivalenti nekih upravljackih naredbi.

Ukoliko imamo vise upravljackih programa vezanih na isti HPIB ,jedan ce biti sistemski kontroler,a svi ostali ne-sistemski kontroleri.Na uobicajenoj HPIB BASIC radnoj stanici to se namjesta sa DIP prekidacem.

Razlika izmedju takvih kontrolere vidljiva je u prvom redu u ovom:kad se kontroleri ukljuce u napajanje,sistemski kontroler ce postati aktivan,i bit cemo u mogucnosti komunicirati sa instrumentima,dok ce ostali kontroleri biti u slave modu,i nece biti u mogucnosti adresirati bilo koji instrument prikljucen na HPIB.

 

Ako izvrsimo naredbu :

 

OUTPUT 705;”*IDN?”

 

 na sistemskom kontroleru,sve radi  (prepoznat ce uredjaj na adresi 705 na HPIB),ali ako to napravimo sa nesistemskim kontrolerom dobit cemo poruku o gresci:

 

ERROR 173 Active/system controller req ‘d

 

Ako stavimo do dva kontrolera na jedan HPIB i zelimo osigurati protok podataka medju njima, treba prvo zapamtiti da svaki kontoler ima svoju HPIB adresu kao i uredjaj(po defaultu ta adresa je 21),i mozemo imati 2  uredjaja na istoj sabirnici, i sa istim adresama.

Nasrecu,upravljackom uredjaju mozemo dati drugu adresu pomocu upisivanja u HPIB status registar 3.

 

  CONTROL 7,3;1   ! Set interface 7 to HPIB address 1.

 

Ovdje se pretpostavilo da je kod za izbor sucelja 7. 

 

Sljedeca naredba osigurava tok signala izmedju sistemskih i  nesistemskih kontolera

 

   PASS CONTROL 701    ! Sends TCT (Take ConTrol) byte.

 

Ne-sistemski kontroler se tada odaziva sa:

 

  PASS CONTROL 721

 

No,prije svega treba znati kako programu reci na kojem upravljackom uredjaju on radi,da li na sistemskom ili nesistemskom,i koji je trenutno aktivni.Bez ovog dolazi do konfuzije u komunikaciji.

To se osigurava pomocu status registra .7. bit kaze da li je to sistemski kontroler (1),nesistemski (0),a 6.bit daje informaciju je li  aktivni (1) ili neaktivni kontroler (0).

 

   STATUS 7,2;Sts

   IF BIT(Sts,7)=1 THEN

     PRINT "System controller."

   ELSE

     PRINT "Non-system controller."

   END IF

   IF BIT(Sts,6)=1 THEN

     PRINT "Active controller."

   ELSE

     PRINT "Inactive controller."

   END IF

 

 

5 najnizih bitova tog registra  takodjer daju HPIB adresu kontrolera :

 

 PRINT "HPIB Address =";BINAND(Sts,31)  ! Print lowest five bits.

 

 

Sljedeci detalj je trenutni protokol koji se koristi u komunikaciji.Ako jedan kontroler proslijedi kontrolu drugom,on postaje aktivni,ali obicno neaktivni kontroler upravlja procesom,ukoliko on zeli nesto raditi,a aktivni nije u mogucnosti da to izvrsi.

 

Stoga neaktivni kontroler moze ubaciti SRQ-service request koristeci REQUEST naredbu da pita aktivni kontroler da proslijedi naredbu

 

REQUEST 7,64

 

Aktivni kontroler ce tada serijskom komunikacijom provjeriti tko je dao SRQ.Ako je to neaktivni kontroler,kontrola ce biti proslijedjena.

 

    STATUS 7,7;Sts               

   IF BIT(Sts,10)=1 THEN    ! SRQ bit is bit 10 of HPIB status 7.

     Sts=SPOLL(701)         ! Serial poll inactive controller.

     IF BIT(Sts,6)=1 THEN   ! If SRQ bit set, then pass control.

       PASS CONTROL 701

     END IF

   END IF

 

 

Treci detalj je da sistemski kontroler moze,za razliku od svih stalih na HPIB ,moze povratiti kontrolu u bilo koje vrijeme,komandom ABORT ,koja daje IFC (interface clear)  i resetira sve medjusklopove u normalno stanje.

 

Aktivni kontroler moze postajati bilo koji kontroler kako se kontrola prenosi preko sabirnice.

 

Znacaj svega ovog je u tome sto us takvi instrumenti npr.sposobni poslati crtez na ploter koji je prikljucen na isti HPIB.Program salje komandu za stampanje,prosljedjuje se kontrola i zatim se ceka da se kontrola vrati natrag.

 

Logicno je da instrument “govori” printeru sto da radi ,no kontroler moze postaviti jedan uredjaj koji “govori”,te drugi koji “slusa”.,postavljajuci talker-listener konfiguraciju.(DATA “” na kraju oslobadja ATN linju,dopuštajuci prolaz transakciji) .

 

Ukoliko instrument zna operirati sa 488.2OPC? (operation complete ) upitima,program takodjer moze ubaciti SRQ kad je gotov sa print operacijom.

 

Ovdje je dan program u nekontroler modu,upravljan direktno sa kontrolerom.

Mora se postaviti prekid u neaktivni kontroler tako da se on moze odazvati kad je to potrebno.Najbolja za to je TLAC(talk-kistener addres change) zastavica ,koja se postavlja uvijek kad je adresirani upravljani sklop.Ovo se moze uciniti na ovaj nacin:

 

 

   ON INTR 7 GOSUB Tlacintr

   ENABLE INTR 7;256

 

Kad slave sklop primi TLAC zahtjev za prekid,onda on provjerava da li je postavljena adresa za “slusanje” ili “govor” tako da se pravilno odazove:

 

Tlacintr: !

   STATUS 7,6;Sts

   IF BIT(Sts,10)=1 THEN       ! Addressed to listen (LADS).

     ENTER 7;S$                ! Get a command (I/O is from interface).

     ELSE

     IF BIT(Sts,9)=1 THEN      ! Addressed to talk (TADS)

       SELECT S$

       CASE "*IDN?"

          OUTPUT 7;Addrstr$    

         ...

       END SELECT

     END IF

   END IF

 

 

 

Primjetiti da Status registar 6 sadrzi listen-adresni (LADS) bit (bit 10),  talk-adresni (TADS) bit (bit 9), te da i izlazi moraju biti izmedju sklopova.

 

Slave sklop se odaziva sa serijom CASE linija.Protokol kojim se ovo odvija mora biti dogovoren izmedju upravljackog kontrolera i slave-a.

 

Kontroler salje komandu i slave se odaziva.Slave operacija moze izgledati nesto poput ovog

 

   get TLAC interrupt

   slave is listen addressed

   get and check command

   go back to wait on TLAC interrupt

 

   get TLAC interrupt

   slave is talk addressed

   provide proper output for command

   go back and wait on TLAC interrupt

 

Slave uredjaj mora izvrsiti mnoge provjere gresaka..Ukoliko se one jave salje se signal kontoleru i ceka nova naredba.

 

Ovo postaje vrlo skakljivo ukoliko zelimo poslati datoteku .Ukoliko se zeli poslati datoteka ,salje se linija po linija datoteke.Na posljednoj liniji,slave mora dati EOI sa zadnjim byteom da se kaze kontroleru da je prijenos gotov.Isto vrijedi za prijenos datoteka od kontrolera prema slave-u.Ponekad RS-232 radi umnogome bolje nego HPIB.