||| Natrag: Uvod | Gore: Računarska grafika | Naprijed: Interaktivna računarska grafika |

 

2.2 Arhitekture grafičkih sustava

Tehnologija prikaznih uređaja bitno utječe na arhitekturu grafičkih sustava. U tom smislu razlikujemo dvije osnovne skupine grafičkih sustava:

2.2.1 Vektorski grafički sustavi

Vektorski grafički sustavi razvijani su od sredine 60-ih godina i u standardnoj uporabi bili su do sredine 80-ih godina. Pojam “vektor” ovdje označava crtu. Crta koja povezuje dvije (proizvoljno) odabrane točke na zaslonu osnovni je element grafičkog prikaza. Putanja zrake određena je slijedom naredbi iz prikazne liste ili prikaznog programa i povezuje krajnje točke pojedinih crta.

Dijelovi vektorskog grafičkog sustava su:

Arhitektura grafičkog sustava s vektorskim prikaznim uređajem prikazana je na slici 2.1:

Slika 2.1  Arhitektura grafičkog sustava s vektorskim prikaznim uređajem.

Prikazna lista ili prikazni program sadrži niz grafičkih naredbi (npr. za crtanje točaka, crta, znakova). Na kraju je naredba JMP (skok) koja upućuje procesor na početak liste. Procesor ciklički ponavlja naredbe iz prikazne liste frekvencijom od najmanje 30 puta u sekundi i na taj način stvara privid mirne slike jednolikog intenziteta na fosfornom zaslonu koji zadržava osvijetljenost u desetcima ili stotinama mikrosekundi.

 

 

Slika 2.2  Arhitektura vektorskog grafičkog sustava.

Glavni procesor izvodi aplikacijski program i grafički paket koji su pohranjeni u memoriji sustava. Grafički paket kreira prikaznu listu i ukazuje na početnu naredbu. Memoriji sustava pristupaju glavni procesor i grafički prikazni procesor (prikazna procesorska jedinica, grafički kontroler). Grafički prikazni procesor dohvaća, dekodira i izvodi naredbe iz prikazne liste. Procesor u pravilu ima X i Y registre i brojač naredbi. Naredbe su definirane kao 16-bitovne riječi. Tipična je naredba LD s inačicama M, P, L (load and move; load and point; load and line) za pomak, crtanje točke i crtanje ravne crte. Parametar R/A određuje da li se radi o relativnoj ili apsolutnoj adresi.

 

LD {X/Y} {R/A} M    [ 0 0 0 X/Y R/A (X/Y/dX/dY) ]

LD {X/Y} {R/A} P      [ 0 0 1 X/Y R/A (X/Y/dX/dY) ]

LD {X/Y} {R/A} L      [ 0 1 0 X/Y R/A (X/Y/dX/dY) ]

{X/Y}: 0 => X , 1 => Y

{R/A} : 0 => dX/dY , 1 => X/Y

Slika 2.3  Struktura naredbi LD i značenje vrijednosti parametara {X/Y} i {R/A}.

 

POCETAK:                LDXA 100

                                 LDYAM         100     Pomak na (100,100)

                                 LDXRL          400     crta do (500,100)

                                 LDYRL           400     crta do (500,500)

                                 LDXRL          -400     crta do (100,500)

                                 LDYRL           -400     crta do (100,100)

                                 JUMPR          POCETAK

Slika 2.4  Primjer prikazne liste koja prikazuje kvadrat stranice duljine 400 s lijevim donjim vrhom u točci (100,100).

Vektorski grafički sustavi nemaju mogućnost prikaza ispunjenih površina, manipulaciju bitovima i tablicama, ali mogu ostvariti veće rezolucije od rasterskih sustava i prikazivati glatke kose crte. 

2.2.2 Rasterski grafički sustavi

Rasterski grafički sustavi razvili su se ranih 70-ih godina na temelju jeftine televizijske tehnologije. Relativno niska cijena rasterskih prikaznih uređaja u odnosu na dotada razvijenu vektorsku prikaznu tehnologiju učinila je računarsku grafiku široko dostupnom te omogućila njen nagli razvitak. Rasterski prikazni uređaji pohranjuju primitivne oblike (kao što su crte, alfanumerički znakovi, ispunjene površine) u memoriju u obliku njihovih osnovnih sastavnih slikovnih elemenata - piksela. Cjelovita slika prikazuje se na rasteru koji predstavlja niz paralelnih horizontalnih redova slikovnih elemenata, (ili pravokutnu matricu slikovnih elemenata) koji prekrivaju čitavu površinu zaslona. Pri kreiranju prikaza zraka prolazi preko svih piksela uvijek istim slijedom po svim horizontalnim redovima piksela s lijeva na desno od gornjeg do donjeg horizontalnog reda piksela. Arhitektura grafičkog sustava s rasterskim prikaznim uređajem prikazana je na slici 2.5. Putanja zrake (raster scan) pri kreiranju grafičkog prikaza prikazana je na slici 2.6. U dvorazinskim sustavim intenzitet zrake pri prolasku preko pojedinog piksela određuje njegovu svjetloću odnosno boju (jednu od dvije moguće. U sustavima s prikazom u boji koriste se tri zrake (crvena, zelena i plava), a kombinacija njihovih intenziteta određuje boju piksela. Pri povratku na početak sljedećeg reda piksela zraka se zatamnjuje (ne izaziva vidljivu promjenu intenziteta ili boje piksela).

 

Slika 2.5  Arhitektura grafičkog sustava s rasterskim prikaznim uređajem.

 

Slika 2.6  Putanja zrake (raster scan) pri kreiranju prikaza na rasterskom prikaznom uređaju.

Osnovni dijelovi rasterskih grafičkih sustava su:

U dvorazinskim sustavim s 1024x1024 piksela čitava bitovna matrica zauzima 220 bitova odnosno 128 kB. Jednostavniji sustavi imaju 8 bit/piksel što odgovara 256 razina sivog ili boja, dok složeniji sustavi imaju 24 bit/piksel što odgovara 16 milijuna boja i zahtijeva 3.75MB memorije za pohranu.

Da bi se ubrzao proces pretvorbe modela slike u rasterski prikaz često se koriste posebni namjenski procesori (raster image processor) koji imaju ulogu koprocesora ili ubrzivača (accelerator).

Prednosti rasterskih grafičkih sustava u odnosu na vektorske grafičke sustave:

Nedostatci rasterskih grafičkih sustava u odnosu na vektorske grafičke sustave:

Usporedba načina kreiranja grafičkog prikaza na rasterskom i vektorskom prikaznom uređaju prikazana je na slici 2.7.

Slika 2.7  Usporedba načina kreiranja grafičkog prikaza na rasterskom i vektorskom prikaznom uređaju: a) idealna slika, b) slika generirana na vektorskom uređaju, c) slika generirana na rasterskom prikaznom uređaju, d) rasterski prikaz s ispunjenjem slike.

Arhitekture rasterskih prikaznih sustava

U rasterskim prikaznim sustavima grafički prikazni procesor (grafički kontroler, prikazni koprocesor) pretvara izlazne primitivne oblike u bitovnu matricu, te izvodi transformacije i izmjene. Sustavi se razlikuju s obzirom na raspodjelu poslova između glavnog procesora i grafičkog prikaznog procesora te na način pohrane bitovne matrice.

Jednostavni rasterski prikazni sustav

Arhitektura jednostavnog rasterskog prikaznog sustava prikazana je na slici 2.8. Osnovna svojstva ove arhitekture su:

 

Slika 2.8  Arhitektura jednostavnog rasterskog prikaznog sustava.  

Video kontroler ima zadaću stalnog osvježavanja prikaza. Da bi se izbjegao efekt treperenja osvježavanje se treba obavljati frekvencijom od minimalno 60 Hz. Ako se svi retci piksela u rasteru osvježavaju istovremeno radi se o sustavu bez prepletanja (noninterlaced). Ako se izmjenično osvježavaju parni i neparni retci u rasteru (u pravilu upola manjom frekvencijom) radi se o  sustavu s prepletanjem (interlaced). Na slici 2.9 je prikazana logicka organizacija videokontrolera. Generator horizontalnih i vertikalnih otklonskih signala usmjerava zraku na odredeni slikovni element na zaslovu. Istovremeno generira i horizontalnu i vertikalnu adresu piksela u koordinatnom sustavu zaslona. Na temelju tih koordinata izračunava se linearna adresa (adresa pripadajuće memorijske lokacije) na kojoj se nalaze podaci o svjetloći ili boji slikovnog elementa. Na temelju tih podataka postavljaju se parametri svjetlosnih izvora koji odreduju svjetloću ili boju slikovnog elementa.

 

Slika 2.9  Logička organizacija video kontrolera.

Zbog uštede memorijskog prostora video kontroler često sadrži pretvorbenu tablicu (look-up table, LUT). Pretvorbena tablica ima onoliko elemenata koliko ima različitih vrijednosti piksela. Vrijednost piksela ne koristi se izravno za upravljanje bojom piksela nego predstavlja pokazivač u pretvorbenu tablicu. Pokazana vrijednost iz pretvorbene tablice upravlja zrakama koje određuju boju piksela na zaslonu. Na slici 2.10 je prikazana logička organizacija pretvorbene tablice s 256 elemenata koja je povezana s međuspremnikom s 8 bit/piksel. 

Slika 2.10  Logička organizacija pretvorbene tablice.

Rasterski prikazni sustav sa zasebnim prikaznim procesorom

Uvođenjem zasebnog prikaznog procesora koji preuzima grafičke funkcije kao što je pretvorba modela u rasterski prikaz mogu se poboljšati svojstva sustava u odnosu na jednostavni rasterski prikazni sustav. U tom slučaju u sustavu će procesorske funkcije biti raspodijeljene izmedu dva procesora: glavnog procesora opće namjene i specijalizirano grafičkog prikaznog procesora. Pored toga u sustavu su definirana tri odvojena memorijska područja: glavna memorija sustava, memorija prikaznog procesora i zasebni međuspremnik okvira. Memorija sustava sadrži aplikacijski program, grafički paket i operacijski sustav. Memorija prikaznog procesora sadrži podatke i programe za stvaranje slike. Slika se pohranjuje u okvirni međuspremnik. Ovakvom organizacijom memorije omogućava se istovremeni pristup odgovarajućim dijelovima memorije od strane dvaju procesora i video kontrolera. Arhitektura rasterskog prikaznog sustava sa zasebnim procesorom prikazana je na slici 2.11.

Slika 2.11  Arhitektura rasterskog prikaznog sustava sa zasebnim prikaznim procesorom.

Primjeri naredbi za prikazni procesor su:

Move (x,y) - pomak na lokaciju određenu koordinatama (x,y)
MoveR (dx,dy) - relativni pomak u odnosu na trenutnu lokaciju za (dx,dy)
PixelValue (indeks) - vrijednost indeksa upisuje se u registar INDEX. Ova vrijednost se upisuje u memorijske lokacije u bitovnoj matrici kad im se pristupi prilikom izvođenja naredbi za crtanje primitivnih oblika npr. Line (x,y)
Line (x,y) - crtanje crte od trenutne lokacije do lokacije (x,y)
LineR (dx,dy) - crtanje crte od trenutne lokacije do lokacije udaljene za (dx,dy)
AreaFill(a) - ispunjavanje površne definirane naredbama za crtanje zatvorenih likova (parametar a označava aktivnost ili neaktivnost naredbe)
LuT (indeks, r, g, b) - lokacija određena parametrom indeks popunjava se vrijednostima parametara r, g i b

Raspodjela funkcija između procesora opće namjene i specijaliziranog grafičkog procesora može se obaviti na različite načine. Prednosti i ograničenja različitih pristupa slijede iz činjenica da su specijalizirani procesori u pravilu brži u izvođenju namjenskih funkcija, ali su istovremeno i skuplji od procesora opće namjene.

Nedostatci ove arhitekture proizlaze iz potrebe za međusobnom komunikacijom dvaju procesora i prijenosom sadržaja između različitih memorijskih prostora npr. jedan memorijski sadržaj priprema se i mijenja u jednom memorijskom prostoru, a isčitava se iz drugog memorijskog prostora. Ove komunikacije i prijenosi sadržaja mogu predstavljati značajno opterećenje za sustav u cijelosti.

Rasterski prikazni sustav s jedinstvenim memorijskim prostorom *

Nedostatci arhitekture rasterskog sustava sa zasebnim prikaznim procesorom mogu se izbjeći objedinjavanjem memorijskog adresnog prostora. U tom slučaju moguća je fleksibilna dodjela memorijskih prostora i pristupa što pojednostavnjuje i programiranje. Arhitektura rasterskog prikaznog sustava s integriranim procesorom prikazana je na slici 2.12.

Slika 2.12  Arhitektura rasterskog prikaznog sustava s integriranim prikaznim procesorom.  

Nedostatci ove arhitekture proizlaze iz potrebe za istovremenim pristupom memoriji od strane dvaju procesora. Jedno rješenje je u korištenju priručne memorije u samom procesoru opće namjene (cache memorija). Time se smanjuje broj i učestalost pristupa memoriji od strane glavnog procesora. Jedan način poboljšanja sustva je i korištenje posebne vrste memorije kao što je video RAM (VRAM) koja u jednom instrukcijskom ciklusu omogućava pristup odabranoj skupini piksela i promjenu njihove vrijednosti.

2.2.3 Vektorska i rasterska grafika

Vektorska grafika (vector graphics) predstavlja način stvaranja grafičkog prikaza temeljen na primjeni primitivnih oblika (primitives) koji se opisuju odgovarajućim podatcima i matematičkim izrazima. Primitivni oblici obuhvaćaju točke, ravne crte, krivulje i druge oblike. Pojam vektora odnosi se u ovom kontekstu na oblike i putanje (ponekad se koristi i izraz objektno-orijentirana grafika). Može im se pridružiti i informacije o boji, obliku i debljini crte i načinu ispunjavanja oblika. Primjerice vektorski prikaz kružnice treba sadržavati podatke o položaju središta, polumjeru, debljini crte te informaciju da se radi o obliku kružnice odnosno da se koristi algoritam za izračunavanje položaja pojedinih točaka kružnice.

Vektorska grafika prikladna je za kreiranje prikaza koji trebaju biti neovisni o prikaznim uređajima i koji ne trebaju biti fotografski realistični. Primjerice, jezici za opis izgleda stranica za prikaz na prikaz na zaslonu ili tiskanje PostSrript i PDF koriste vektorske modele.

Prednost vektorske grafike je mala količina informacije koja je potrebna za pohranu u odnosu na rastersku grafiku. Veličina datoteke ne ovisi o dimenzijama slike. Vektorski format omogućava neograničeno povećavanje detalja.

Rasterska grafika (raster graphics) predstavlja način stvaranja grafičkog prikaza temeljen na prikazu cjelovite slike pomoću osnovnih slikovnih elemenata - piksela (picture elements - pixel). Suvremeni prikazni uređaji, tiskači, kamere i skeneri su rasterski uređaji. Rasterski prikaz prikladan je za slike koje trebaju biti fotografski realistične i ne sastoje se od objekata koje je prikladno matematički modelirati. Primjeri su slike u formatima BMP, GIF i JPEG.

Složeni grafički alati kombiniraju slike iz vektorskih i rasterskih izvora, te obično sadrže funkcionalnosti za obradu obje vrste slika.

U nizu primjena potrebne su pretvorbe iz vektorskog u rasterski prikaz ili obrnuto. Za potrebe prikaza na zaslonu ili tiskanje slike iz vektorskog formata potrebno je pretvoriti u rasterski prikaz (rasterizacija) jer se radi o rasterskim uređajima. Veličina zapisa u vektorskom formatu je uvijek ista, dok veličina datoteke u rasterskom formatu ovisi o rezoluciji (odnosno o broju piksela). Rasterska slika može se učiniti neovisnom o rasterskom uređaju pretvorbom u vektorski format (vektorizacija) prikladnom za prikaz ili tiskanje na različitim uređajima uz različite rezolucije.

 


Povratak na: Početak stranice | Sadržaj

        ||| Natrag: Uvod | Gore: Računarska grafika | Naprijed: Interaktivna računarska grafika |