Lab4 Procesory graficzne

background image

Grafika komputerowa - ćwicz. 3
Temat: Procesory graficzne

1. Sterowniki graficzne:
Funkcje:
- odczyt zawartości pamięci graficznej i generowanie szeregowego
strumienia informacji obrazowej do urządzenia zobrazowania (pikseli);
- generacja sygnałów synchronizacji H, V i Blank.

Sterownik graficzny firmy Motorola: MC6845


2. Akceleratory graficzne:
Funkcje:
- wykonywanie specjalizowanych zadań graficznych: cieniowanie,
wypełnianie obszarów, triangulacja, depth cueing, (efekt głębi
przestrzennej), antyaliasing, operacje HLHSR itp.
- funkcje sterownika graficznego.

background image

3. Koprocesory graficzne:
Funkcje:
- procesor graficzny – GP (Graphics Processor)
Wykonuje rozkazy graficzne z dostępnej listy rozkazów graficznych
(rozkazy sterujące, rozkazy kreślenia, rozkazy transmisji blokowych),
składuje wytworzone mapy bitowe w pamięci dostępnej przez procesor
obrazu
- procesor obrazu – DP (Display Processor)

Generuje sygnały synchronizacji i szeregowy strumień informacji
obrazowej, jednocześnie może wyświetlać wiele okien na ekranie z
różnych obszarów map bitowych pamięci graficznej.
- jednostka sterująca interfejsem – BIU (Bus Interface Unit)

.

Steruje wszelką komunikacją pomiędzy koprocesorem a zewnętrznym
procesorem i pamięcią graficzną. Zawiera zintegrowany sterownik
pamięci DRAM/VRAM umożliwiający realizację różnych trybów dostępu

przy transmisjach blokowych. Wykorzystywany przez DP i GP w

operacjach dostępu do map bitowych w pamięci graficznej.

Koprocesory graficzne firmy Intel: I82720, I82786.

background image

4. Procesory graficzne:

Funkcje:

- funkcje koprocesora graficznego;

- jednostka obliczeniowa wykonująca rozkazy z listy rozkazów
uniwersalnych (rozkazy arytmetyczne, logiczne, warunki, skoki itp.)

Procesory firmy Teksas Instruments:

- TMS34010 – 16-bitowy procesor graficzny

- TMS34020 – 32-bitowy procesor graficzny współpracujący
z koprocesorem zmiennoprzecinkowym TMS34082

Procesory firmy Intel:

- I860 – 64-bitowy procesor graficzny z 2 jednostkami obliczeń
stałopozycyjnych i zmiennoprzecinkowych, z układem MERGE
(mnożenie macierzy 4x4)

background image

5. Systemy wieloprocesorowe z przetwarzaniem potokowym:

Chipsety GeForce: Vertex Shader, Pixel Shader, Unified Shader
- przetwarzanie potokowe: potok – strumień informacji opisujących
pojedynczą klatkę animacji;
- obliczenia na danych opisujących wierzchołki (współrzędne, wektory
normalne) wykonywane przez układ Vertex Shader;
- obliczenia na wartościach pikselowych (składowe R, G, B, A)
wykonywane przez układ Pixel Shader;

- obliczenia implementowane w postaci programów niskopoziomowych

składających się od kilku do kilkudziesięciu rozkazów.


background image

Procesor obrazu – DP (Display Processor) generuje sygnały
synchronizacji i szeregowy strumień informacji obrazowej

Sygnały synchronizacji urządzeń rastrowych:

- synchronizacja pozioma (ang. Horizontal)
- synchronizacja pionowa (ang. Vertical)
- sygnał wygaszania: Blank (HBlank, VBlank)

background image

Parametry sygnałów synchronizacji

Synchronizacja pozioma

1. Horizontal Line Rate:

HFreq

[kHz]

2. Horizontal Synchronization Width:

HSync

[µs]

3. Horizontal Back:

HBack

[µs]

4. Horizontal Front:

HFront

[µs]

HFront HSync HBack

HActive (K pixeli)

HBlank

1/HFreq

background image

Synchronizacja pionowa

1. Vertical Line Rate:

VFreq

[Hz]

2. Vertical Synchronization Width:

VSync

[ms]

3. Vertical Back:

VBack

[ms]

4. Vertical Front:

VFront

[ms]

VFront VSync VBack

VActive (L linii video)

VBlank

1/VFreq

background image

Przykład 1.

Sprawdzić czy monitor o dopuszczalnej częstotliwości odchylania poziomego
HFreq=33 kHz może współpracować z kartą graficzną SVGA w trybie rozdzielczości
800x600 z częstotliwością odświeżania VFreq=60Hz.

Wymagania techniczne monitora:

min. czas HBlank=5µs

min. czas VBlank=0.67ms

VFront VSync VBack

600 linii video (VActive)

VBlank

1/VFreq

1. VFreq=60Hz

VActive =1/VFreq - VBlank= 1/60Hz-0.67ms=16.67-0.67=16.0ms

HFreq=1/(VActive/L)=1/(16.0ms/600)=1/26.67

µ

s=37.5kHz

2. VFreq=50Hz

VActive =1/VFreq- VBlank= 1/50Hz-067ms=20.0-0.67=19.33ms

HFreq=1/(VActive/L)=1/(19.330ms/600)=1/32.22

µ

s=31.0kHz

background image

Przykład 2.

Wyznaczyć pasmo przenoszenia sygnału video (VBW) dla karty j.w. dla:

L=600 linii

K=800 pixeli

HFreq=37.5KHz

VBWVideo Band Width

HFront HSync HBack

HActive (800 pixeli)

HBlank

1/HFreq

HActive=1/HFreq-HBlank=26.67

µ

s-5

µ

s=21.67

µ

s

VBW=1(HActive/K)=1/(21.67

µ

s/800)=1/27.09ns=36.9MHz

background image

Zadanie 1:

Obraz wyświetlany na monitorze w sposób kolejnoliniowy odświeżany jest z
częstotliwością

VFreq=60Hz

. Zakładając, że układy sterujące monitora wymagają

minimalnych czasów wygaszania

HBlank=2µs

i

VBlank=2ms

wyznaczyć

częstotliwość sygnału synchronizacji poziomej

HFreq

i szerokość pasma sygnału

video VBW dla kart graficznych generujących obraz w standardzie:

Hercules

720x348

EGA

640x350

VGA

640x480

SVGA

800x600

*

1024x768

TIGA 1280x1024

* 1600x1280


Lp.

Standard

KxL

HFreq [kHz] VBW [MHz]

1.

Hercules

720x348

2.

EGA

640x350

3.

VGA

640x480

4.

SVGA

800x600

5.

1024x768

6.

TIGA

1280x1024

7.

1600x1280

background image

Zadanie 2:

Wyznaczyć częstotliwość sygnału synchronizacji poziomej

HFreq

i szerokość pasma

sygnału video VBW dla obrazu generowanego z przeplotem o rozdzielczości:

800x600

1024x768

1280x1024

1600x1280

Zakładamy (jak w Zadaniu 1), że układy sterujące monitora wymagają minimalnych

czasów wygaszania

HBlank

=2µs

i

VBlank=2ms

oraz odświeżanie z

częstotliwością

VFreq=60Hz


Lp.

Standard

KxL

HFreq [kHz] VBW [MHz]

1.

SVGA

800x600

2.

1024x768

3.

TIGA

1280x1024

4.

1600x1280

background image

Przebiegi synchronizacji pionowej i poziomej w trybie z przeplotem

VFront VSync VBack

VActive L/2 linii video

VBlank

1/VFreq

HBlank

p

HFront HSync HBack HSync HBack

HActive (K pixeli)

HBlank

1/HFreq

Założenia: (

tak się przyjmuje

):

HFront = HBack

10

÷

20 %

HBlank

dla 20%:HBlank :

HFront = HBack

=

0,2*

HBlank

HBlank

p

=

1,8*

HBlank

Rozwiązanie:

VFreq=60Hz

1. VActive = 1/VFreq - VBlank= 1/60Hz-2ms=16.67-2=14,67ms
2. HFreq=1/(VActive/(L/2))=1/(14,67ms/300)=1/0,0489ms=20,45kHz
3. HBlank

p

= 1,8*HBlank= 1,8*2

µ

s =3.6

µ

s

4. HActive = 1/HFreq - HBlank

p

= 1/(20,45kHz)- 3.6

µ

s=48,9-3,6=45,3

µ

s

5. VBW=1/( HActive/K)=1/(45,3

µ

s/800)=17,66 MHz

background image

Zadanie 3:

Wyznaczyć maksymalną częstotliwość odświeżania obrazu dla karty graficznej
generującej obraz:

a) bez przeplotu
b) z przeplotem

o rozdzielczości 1600x1280 taktowanej zegarem VCLK=100MHz zakładając, że
minimalne czasy wygaszania pionowego i poziomego wynoszą odpowiednio
HBlank=1µs i VBlank=1ms

background image

Rozwiązanie:

******************Synchronizacja pozioma***************************************************

HActive = K * 1/VCLK = 1600* 1/100 MHz = 16

µ

s

a)

1/

HFreq = HActive + HBlank = 16

µ

s + 1

µ

s = 17

µ

s

b) 1/

HFreq = HActive + HBlank

p

= 16

µ

s + 1,8

µ

s = 17,8

µ

s

HBlank

p

= 1,8*HBlank





******************Synchronizacja pionowa***************************************************

a) VActive = L *

1/

HFreq = 1280* 17

µ

s = 21,76 ms

b) VActive = L/2 *

1/

HFreq = 640* 17,8

µ

s = 11,39 ms

a) 1/ VFreq = VActive + VBlank = 21,76 ms + 1 ms = 22,76 ms
b) 1/ VFreq = VActive + VBlank = 11,39 ms + 1 ms = 12,39 ms

a) VFreq = 1/ 22,76 ms = 43,9 Hz
b) VFreq = 1/ 12,39 ms = 80,7 Hz

Uwagi:

a)

zbyt mała częstotliwość VFreq w trybie bez przeplotu /migotanie

obrazu/


background image

Procesor TMS34010 – blok współpracy z monitorem

Rejestry środowiskowe bloku współpracy z monitorem TMS34010

Przebiegi sygnałów w czasie wyświetlania jednej linii obrazu

background image

Rejestry środowiskowe bloku współpracy z monitorem TMS34010


Przebiegi sygnałów w czasie wyświetlania jednego obrazu

background image

Wyświetlanie obrazu - charakterystyka czasowa

background image

Zadanie 4

Wyznaczyć wartości rejestrów środowiskowych bloku współpracy z monitorem procesora
graficznego TMS34010 określających parametry czasowe sygnałów synchronizacji dla
obrazu generowanego w trybie:
- rozdzielczość KxL=1152x870
- częstotliwość odświeżania VFreq=75 Hz

- pasmo przenoszenia VBW=100 MHz. - {VCLK}

Zweryfikować parametry czasowe obliczone z rzeczywistymi.




Rejestry

Macintosh

1152x870

HESYNC

HEBLNK

HSBLNK

HTOTAL

VESYNC

VEBLNK

VSBLNK

VTOTAL

Macintosh

1152x870

HFreq [kHz]

A [ µs ]

12.98

B [ µs ]

1.0

C [ µs ]

0.23

D [ µs ]

11.52

E [ µs ]

0.23

VFreq [Hz]

75.0

O [ms]

13.33

P [ ms ]

1.6

Q [ ms ]

0.2

R [ ms ]

11.33

S [ ms ]

0.2

VideoClock [MHz]

100,0

background image

ROZWIĄZANIE:

DANE:

Rozdzielczość 1152 x 870
VFreq = 75 Hz
VCLK = 100 MHz

************OBLICZENIA WSTĘPNE*****************



O =1/VFreq = 1/(75 Hz) = 13.33 ms



HActive = D =11521/VCLK =1152*10 ns = 11.52

µ

s

**********************************************************

*********VERTICAL**********************************

Dobieramy VBlank



VBlank =1/VFreq

(HActive+HBlank)L

VBlank ma wartość maksymalną dla HBlank=0 stąd:

VBlank << 1/VFreq

(HActive+0) 870 = 13.33

10.02 =3.31 ms

:

Przyjmujemy

VBlank = 2 ms



VBlank = P + Q + S

Q = S =

(10÷20%) VBlank

przyjmujemy10% stąd:

Q = S = 0.2 ms

P = 1.6 ms



R = VActive = 1/VFreq

VBlank = 13.33

2 =11.33 ms



A = 1/HFreq = VActive/ 870 =11.33 ms / 870 =12.98

µ

s



HBlank = A

D = 1/HFreq

HActive =12.98

11.52 =1.46

µ

s

HBlank = B + C + E

C = E =

(10÷20%) HBlank

przyjmujemy C=E=0.23

µ

s (

15% ) stąd:

C = E = 0.23

µ

s


B = HBlank - C - E = 1.46 -0.23-0.23 = 1

µ

s

*********************************************************

background image


*********HORIZONTAL******************************

Dobieramy HBlank



HBlank + HActive =(1/VFreq-VBlank) / 870

HBlank ma wartość maksymalną dla VBlank=0 stąd:

HBlank + HActive << (1/VFreq-0) / 870= 13.33 ms / 870 = 15.32

µ

s

HBlank << 15.32

µ

s

HActive = 15.32

11.52 = 3.8

µ

s

Przyjmujemy

HBlank = 1.46

µ

s



HBlank = B + C + E

C = E =

(10÷20%) HBlank

przyjmujemy

C = E = 0.23

µ

s

stąd

B =1.46

0.23

0.23 = 1

µ

s



A = 1/HFreq = HActive + HBlank =11.52+1.46 = 12.98

µ

s



R = VActive = 1/HFeq 870 = 11.33



-s



VBlank = O

R = 1/VFreq

VActive =13.3

11.3 =2 ms

VBlank = P + Q + S

Q = S = 0.2 ms

(10÷20%) VBlank

P = 1.6 ms

*********************************************************


background image

Dla HSync jednostka taktu

1/VCLK= 10 ns

Przeliczenie

na takty

Dla VSync jednostka taktu

1/HFreq= A= 12.98 µs

Przeliczenie na takty

A

12.98 µs

1298

O

13.3 ms

13.3 ms/(12.98 µs)=

1024

B

1.00 µs

100

P

1.6 ms

1.6 ms/(12.98 µs)=

123

C

0.23 µs

23

Q

0.2 ms

0.2 ms/(12.98 µs)=

15

D

11.52 µs

1152

R

11.3 ms

11.3 ms/(12.98 µs)=

870

E

0.23 µs

23

S

0.2 ms

0.2 ms/(12.98 µs)=

15

background image




Rejestry H (

uwzględniona numeracja taktów od 0)


HESYNC+1 B = 100

HEBLNK+1 B + C = 100 + 23 = 123

HSBLNK+1 B + C + D = 123 + 1152 = 1275

HTOTAL+1 B + C + D + E =A = 1275 + 23= 1298

background image




Rejestry V
(

uwzględniona numeracja taktów od 0)






VESYNC+1 P = 123

VEBLNK+1 P + Q = 123 + 15 = 138

VSBLNK+1 P + Q + R = 138 + 870 = 1008

VTOTAL+1 P + Q + R + S =O = 1008 + 15= 1023

background image

Zweryfikować parametry czasowe obliczone z rzeczywistymi

Literatura: Grafika Komputerowa – metody i narzędzia.

Jan Zabrodzki

Rozdz. 9

9.22 Procesory graficzne

TMS 34010
TMS 34020

Układ współpracy z urządzeniami zobrazowania

Rejestry wewnętrzne:
HESYNC+1

Wartości obliczone

Wartości rzeczywiste

1/VCLK= 10 ns

A

12.98 µs

1298•10 ns=12.98 µs

B

1.00 µs

100•10 ns=1.00 µs

C

0.23 µs

23•10 ns=0.23 µs

D

11.52 µs

1152•10 ns=11.52 µs

E

0.23 µs

23•10 ns=0.23 µs

Wartości obliczone

Wartości rzeczywiste

1/HFreq= A= 12.98 µs

O

13.3 ms

1024•12.98 µs = 13.291 ms

P

1.6 ms

123•12.98 µs = 1.596 ms

Q

0.2 ms

15•12.98 µs = 0.195 ms

R

11.3 ms

870•12.98 µs = 11.293 ms

S

0.2 ms

15•12.98 µs = 0.195 ms

background image

WYNIKI

Zadanie 1


DANE

WYNIK

VFreq

60 [Hz]

VActive

[ms]

14,67

VBlank

2 [ms]

HBlank

2 [µ

s]

DANE

WYNIK

K

L

HFreq

[kHz] HActive [µs] VBW [MHz]

Hercules

720

348

23,73

40,15

17,93


EGA

640

350

23,86

39,90

16,04

VGA

640

480

32,73

28,56

22,41

SVGA

800

600

40,91

22,44

35,64

1024

768

52,36

17,10

59,89

TIGA

1280

1024

69,82

12,32

103,87

1600

1280

87,27

9,46

169,16


Zadanie 2

z przeplotem


DANE

WYNIK

VFreq

60 [Hz]

VActive

[ms]

14,67

VBlank

1 [ms]

HBlank

2 [µ

s]

HBlank

p

3,6 [µ

s]

DANE

WYNIK

K

L

HFreq

[kHz] HActive [µs] VBW [MHz]

SVGA

800

600

20,45

45,29

17,66

1024

768

26,18

34,59

29,60

TIGA

1280

1024

34,91

25,05

51,11

1600

1280

43,64

19,32

82,83

Zadanie 3

DANE

WYNIK

VCLK

100 [MHz]

HActive

[µs]

16,00

VBlank

1 [ms]

HBlank

1 [µ

s]

HBlank

p

1,8[µ

s]

K

L

1600

1280

WYNIK

(a)

bez przeplotu

(b)

z przeplotem

1/HFreq

s]

17

17,8

VActive

[ms]

21,76

11,39

1/VFreq

[ms]

22,76

12,39

VFreq

[Hz]

43,9

80,7

o

HFreq=1/(VActive/L)

o

HActive=1/HFreq-HBlank

o

VBW=1/(HActive/K)

o

VActive=1/VFreq - VBlank

o

HFreq=1/(VActive/(L/2))

o

HBlank

p

=1,8*HBlank

o

HActive=1/HFreq-HBlank

p

o

VBW=1/(HActive/K)

o

VActive=1/VFreq - VBlank

(a)
1/HFreq=HActive+HBlank

VActive=L*1/HFreq

1/VFreq=VActive+Vblank

VFreq=

o

HBlank

p

=1,8*HBlank

o

HActive=K*1/VCLK

(b)
1/HFreq=HActive+HBlank

p

VActive=L/2*1/HFreq

1/VFreq=VActive+Vblank

VFreq=

background image


Wyszukiwarka

Podobne podstrony:
Lab4 Procesory sygnałowe sprawozdanie PWR, PWr, sprawozdania
Lab procesory graficzne (2)
t cyfrowych procesow graficznych 132 03 wsk
t cyfrowych procesow graficznych 132 02 wsk
t cyfrowych procesow graficznych 132 04 kpe
t cyfrowych procesow graficznych 122 04 wsk
programowanie procesorow graficznych GPU denkowski
Lab procesory graficzne
Program nauczaniaTECHNIK CYFROWYCH PROCESOW GRAFICZNYCH 311[51]
311[51] technik cyfrowych procesow graficznych
TECHNIKI POLIGRAFICZNE procesy graficzne
Graficzne p rzedstawienie procesu wedzenia
INSTRUKCJE, lab4, Wykorzystanie interfejsu graficznego
Autocad, Klasyfikacja rysunkow schematycznych- przy opracowaniu graficznym dowolnego procesu technol

więcej podobnych podstron