Blitter
Blitter' je specijalizirano sklopovlje sklop namijenjen brzom premještanju, kopiranju i logičkoj obradi blokova podataka u memoriji. Najčešće se koristi za manipulaciju bitmapama, što uključuje crtanje prozora, ikona, pozadina i grafičkih elemenata u 2D sustavima. Za razliku od CPU‑a, blitter može izvoditi jednostavne, ali masovno ponavljajuće operacije paralelno i uz znatno manju potrošnju ciklusa.
Naziv potječe od operacije bit blit (bit‑block transfer), razvijene na sustavu Xerox Alto 1973.[1] godine.
Namjena i funkcija
Blitter je dizajniran da preuzme zadatke koji bi inače opteretili CPU, osobito u sustavima gdje se grafika crta izravnim upisom u frame buffer. Njegove osnovne funkcije uključuju:
- kopiranje pravokutnih područja memorije
- kombiniranje izvora i odredišta logičkim operacijama
- rukovanje transparentnim pikselima
- rad s neporavnatim bitnim poljima
- popunjavanje područja (fill operacije)
Time se ubrzava prikaz grafike, animacija i korisničkih sučelja.
Povijesni razvoj
Rani sustavi (1970-e – početak 1980-ih)
- Xerox Alto (1973.) — prvi sustav s implementiranom bit‑blit operacijom u mikro‑kodu, što je omogućilo znatno brže grafičke operacije od softverskih rješenja
- Bally Astrocade (1978.) — rani kućni sustav s primitivnim blitterom.
- NEC μPD7220 (1982.) — napredni grafički kontroler sposoban za prijenos i popunjavanje bitmapi putem DMA.
=Zlatno doba blittera (1980-e – 1990-e)
Blitteri postaju ključni dio kućnih računala i igraćih konzola:
- Amiga (1985.) — jedan od najpoznatijih blittera, sposoban za 16‑bitne logičke operacije nad tri izvora i odredištem.
- Atari ST (1987.) — BLiTTER čip s 16 načina kombiniranja podataka.
- Atari Lynx (1989.) — blitter s mogućnošću skaliranja i distorzije grafike.
- Atari Jaguar (1993.) — blitter integriran u čip Tom, dio napredne grafičke arhitekture konzole
Postupni nestanak
S pojavom programabilnih GPU‑ova, blitteri gube važnost kao samostalni sklopovi. Njihove funkcije postaju dio šire grafičke arhitekture.
Način rada
Blitter obično radi tako da CPU:
- upiše parametre operacije u posebne registre (izvor, odredište, dimenzije, način kombiniranja),
- pokrene blitter,
- nastavi s drugim zadacima dok blitter autonomno obrađuje memoriju.
Blitter može koristiti:
- transparentne piksele (npr. boja 0 se preskače),
- maske za selektivno kopiranje,
- logičke operacije (AND, OR, XOR, NOT) za kombiniranje slojeva.
Blitter i sprites sustavi
Blitteri i sprites rješavaju slične probleme, ali na različite načine:
- Sprites se renderiraju „u letu“ bez izmjene frame buffera.
- Blitter izravno mijenja sadržaj memorije.
Sprites sustavi imaju ograničenja po broju objekata po liniji, dok blitter omogućuje slobodnije crtanje, ali troši memorijsku propusnost.
Značaj
Blitter je bio ključan za razvoj:
- ranih grafičkih sučelja
- 2D videoigara
- animacija i efekata
- kućnih računala 1980‑ih i 1990‑ih
Njegov koncept i danas živi u GPU‑ovima, gdje se slične operacije izvode u znatno naprednijem obliku.
Izvori
- ↑ BitBlt function. Windows Dev Network 0. Pristupljeno 2 October 2016.