Controler de afișare video
Această intrare sau secțiune de pe periferice nu menționează sursele necesare sau cei prezenți sunt insuficienți . |
Un controler de afișare video sau VDC este principalul circuit integrat al componentei care gestionează generarea semnalului video , un dispozitiv capabil să producă un semnal video compozit TV într-un computer . Unele VDC pot genera, de asemenea, semnale audio analogice , care oricum nu este funcția lor principală.
VDC-urile au fost utilizate pe scară largă atât în jocurile arcade timpurii, cât și în computerele de 8 biți de acasă din anii 1980 .
Un VDC este întotdeauna componenta principală a circuitelor dedicate generării semnalului video chiar dacă există adesea alte cipuri de susținere, cum ar fi RAM pentru a stoca datele referitoare la pixelii imaginii, ROM pentru a păstra fonturile caracterelor sau circuite discrete , cum ar fi registrele de schimbare , necesare pentru ca sistemul să funcționeze. În unele cazuri, VDC este responsabil pentru generarea semnalelor de sincronizare pentru semnalele video, cum ar fi semnalele de sincronizare verticale și orizontale.
Uneori cipurile VDC sunt complet integrate în logica sistemului de bază (cu VRAM-ul său care apare în harta de memorie a procesorului ), în timp ce altele funcționează ca coprocesoare care funcționează independent în VRAM.
VDC versus VDP / GPU
Diferența dintre VDC-uri și cele mai moderne procesoare de afișare video , VDP , înlocuită acum de unitatea de procesare grafică , GPU , constă în faptul că primii nu au nicio formă de accelerație hardware pentru crearea de imagini 2D și 3D . Cu toate acestea, este posibil ca VDC-urile să fi integrat logica pentru gestionarea hardware a sprite-urilor , o funcție care în cele mai recente VDP-uri este realizată de bit blitter , care poate muta rapid cantități mari de date în memoria video.
Exemple de VDP-uri tipice sunt date de cipurile video ale consolei Sega Saturn , de cipul AGA ( Advanced Graphics Architecture ) prezent în ultimele modele de computere Amiga , de TIA de la Atari 2600 .
Nu există delimitator pentru „cipuri video” care să indice în mod clar când trebuie considerate VDC-uri și când VDP-uri. De exemplu, TMS9918 a fost indicat atât ca „Video Display Controller”, cât și ca „Video Display Processor”: acesta din urmă este de obicei capabil să „proceseze” conținutul VRAM (de exemplu prin umplerea unei porțiuni din acesta cu o valoare) în timp ce primul „controlează” doar momentul semnalelor de sincronizare și accesul la VRAM.
Un GPU , pe de altă parte, face un pas mai departe decât un VDP și, în mod normal, acceptă și capacități de accelerare 3D. GPU-urile sunt cipurile utilizate în computerele personale moderne.
Tipuri de controlere de afișare video
VDC-urile pot fi împărțite în mod arbitrar în câteva tipuri (enumerate mai jos de la mai puțin la mai complexe):
- Comutatoarele video sau „Sistemul bazat pe înregistrarea schimbărilor video” (deși nu există un nume recunoscut universal pentru acestea), sunt cel mai simplu tip de VDC. Aceștia sunt responsabili, direct sau indirect, de semnalele de sincronizare video, dar, de obicei, nu accesează direct VRAM: primesc datele video de la CPU și le convertesc într-un flux de date seriale (de unde și numele de „schimbător”, „schimbător”). Acest flux de date seriale este apoi utilizat, împreună cu semnalele de sincronizare, pentru a genera semnalul de ieșire video. Procesorul principal efectuează toate calculele necesare. În mod normal, aceste cipuri acceptă doar un mod raster cu rezoluție mică.
- Un CRTC sau „Controler de tuburi cu raze catodice” generează semnalele de sincronizare video și citește datele video dintr-o memorie RAM conectată la CRTC și transmite date sau printr-un ROM care conține fonturile de caractere în cazul unui afișaj numai text mod sau direct în cazul unui mod grafic, la un Video Shifter. Având în vedere că capacitățile grafice ale acestor tipuri de generatoare video depind în mare măsură de logica externă, cipurile CRTC pot avea o gamă largă de caracteristici, de la cele mai simple pentru sistemele numai text până la cele mai complexe pentru sistemele grafice de înaltă rezoluție. număr mare de culori. Spritele nu sunt, în general, acceptate de aceste sisteme.
- Controlerele de interfață video sunt sisteme mai complexe decât CRTC-urile, care conțin în mod normal circuitele externe necesare pentru acestea din urmă. Adesea suportă și sprite, precum și integrează un generator de caractere în RAM și un VRAM dedicat atributelor de culoare și registrelor de palete pentru text și / sau moduri de rezoluție înaltă.
- Coprocesoarele video au propriul CPU intern dedicat citirii (și scrierii) lor VRAM și convertesc conținutul acestei memorii într-un semnal video. CPU de sistem poate trimite comenzi către coprocesorul video, de exemplu, pentru a schimba modul video sau pentru a manipula conținutul memoriei video. Coprocesorul video controlează, de asemenea, generatorul de caractere (în general pe RAM), atributele de culoare și logica de gestionare a spritei (dacă, desigur, acestea sunt acceptate).
Lista unor VDC-uri
Următoarea listă reunește câteva controlere de afișare video:
Comutatoare video
- RCA CDP1861 a fost un cip foarte simplu încorporat în tehnologia CMOS (o raritate pentru anii șaptezeci ) ca o completare a microprocesorului RCA 1802 ; a fost utilizat în principal în minicomputerul COSMAC VIP . Suporta doar un mod grafic monocrom cu rezoluție mică.
- Adaptorul de interfață pentru televiziune (TIA) este cipul video utilizat în consolele Atari 2600 . Era un cip foarte primitiv care depindea de microprocesorul MOS 6507 ; a fost folosit și pentru a genera sunet.
Controlere CRT
- Intel 8275 a fost un CRTC care nu a fost utilizat în niciun sistem popular, dar a fost utilizat în principal în unele sisteme bazate pe magistrala S-100 .
- Motorola 6845 a fost un generator video introdus de Motorola și utilizat în Amstrad CPC și BBC Micro . Ulterior, a fost folosit pentru unele dintre adaptoarele grafice pentru computer, cum ar fi cardurile MDA , CGA și EGA . În cardurile VGA ulterioare, funcționalitatea 6845 a fost reprodusă în cipul video, deci, teoretic, orice placă video compatibilă VGA încorporează funcționalitatea 6845.
Controlere de interfață video
- Signetics 2636 și 2637 sunt controlere video despre care se știe că au fost utilizate în sistemele Interton VC4000 și, respectiv, Emerson Arcadia 2001 .
- Motorola 6847 este un generator video produs de Motorola și este utilizat în computerul TRS-80 Color , Dragon 32/64 , VTech Laser 200 , Acorn Atom și altele.
- MOS VIC (Video Interface Chip), semnat MOS 6560 pentru standardul NTSC și MOS 6561 pentru cel PAL, este cunoscutul chip grafic al Commodore VIC-20 .
- MOS VIC-II , semnat MOS 6567/8562/8564 pentru standardul NTSC și 6569/8565/8566 pentru cel PAL, este cunoscutul chip grafic al Commodore 64 .
- MOS VDC (Video Display Controller) sau MOS 8563 este cipul video al Commodore 128 : în comparație cu VIC-II este capabil să gestioneze 80 de coloane de text.
- MOS TED (Text Editing Device) sau MOS 7360 este cipul utilizat în Commodore Plus / 4 , Commodore 16 și Commodore 116 . De asemenea, a generat audio și a gestionat intrarea / ieșirea.
- Unitatea de procesare a imaginii (PPU), semnată RP2C02 pentru sistemele NTSC și RP2C07 pentru sistemele PAL, este un coprocesor video proiectat de Ricoh pe care Nintendo l-a folosit în sistemul de divertisment Famicom / Nintendo : avea 2048 octeți de VRAM dedicat și avea un autobuz suplimentar cu care ar putea accesa alte RAM / ROM. Suporta derularea unei imagini de 256 × 240 pixeli și putea afișa 64 de sprite (numite OBJ-uri în NES), dintre care 8 se pot încadra pe aceeași linie video.
- TMS9918 este cunoscut sub numele de Video Display Processor (VDP): a fost proiectat pentru Texas Instruments TI-99/4, dar a fost folosit ulterior în sistemele MSX1 , în ColecoVision , în Memotech MTX și în SEGA SG-1000 și Sisteme SC-3000 .
- NEC D7220 a fost utilizat în unele plăci grafice PC de ultimă generație de la mijlocul anilor 1980, cum ar fi cele realizate de Number Nine .
Coprocesoare video
- ANTIC (Alfa-Numeric Television Interface Circuit) a fost cipul video utilizat în Atari pe 8 biți . Avea un procesor integrat care putea rula o listă de afișare pentru a genera un semnal video complex.
- Yamaha V9938 a fost o versiune îmbunătățită a TMS9918; a fost folosit mai ales în calculatoarele MSX2 .
- Yamaha V9958 a fost un VDP utilizat în principal pe computerele MSX 2+ și MSX turbo R.
Alternative la utilizarea unui cip VDC
Multe computere vechi nu au folosit un cip VDC, dar au avut întreaga logică de gestionare video construită cu cipuri discrete : exemple ale acestei alegeri constructive sunt Apple II , PET și TRS-80 ). Deoarece această metodă este foarte flexibilă, VDC-urile ar putea fi foarte capabile (sau extrem de primitive, în funcție de calitatea proiectării), chiar dacă au necesitat un număr bun de componente.
Unii producători au folosit primele forme de PLA , cum ar fi calculatoarele Sinclair ZX80 / ZX81 / ZX Spectrum : aceste controlere video ar putea reprezenta o soluție interesantă pentru a reduce costurile, deoarece au folosit puține componente, dar numărul redus de tranzistoare din aceste prime logici programabile a avut repercusiuni pe capacitățile oferite, de multe ori mai mici decât cele ale VDC-urilor sau coprocesoarelor video.
Succesorii VDC-urilor
Urmând legea lui Moore , circuitele integrate au devenit din ce în ce mai complexe de-a lungul anilor: simpla VDC a fost apoi înlocuită încet de cipuri care aveau logică integrată pentru a procesa imagini precum blitere și alte circuite care manipulează conținutul din VRAM pentru a efectua operațiuni precum desenarea linii, zone de umplere sau desenarea fonturilor. Au urmat cipuri care au prezentat o logică specială pentru desenarea triunghiurilor, au inclus un tampon Z în hardware și multe alte metode pentru accelerarea desenului imaginilor 3D.
VDP-urile actuale sunt GPU-uri atât de obișnuite încât sunt acum integrate în chipset - urile plăcii de bază ale computerului, rezervând o parte din memoria sistemului ca VRAM pentru aceste VDP-uri. Performanța unor astfel de sisteme grafice nu este comparabilă cu cea a hardware-ului dedicat, cum ar fi GPU-urile montate pe plăci grafice.