21.07.2013 Aufrufe

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Technische Universität <strong>Berlin</strong><br />

Institut für <strong>Mikroelektronik</strong><br />

Lukas Bauer<br />

RL_CALC<br />

Diplomarbeit<br />

Hochleistungs-Grafikprozessor in Speedchart-VHDL<br />

T5<br />

entry S1<br />

Subdiag Actions of <br />

A: -- determine number of VClk cycles<br />

-- per memory word of video data<br />

LD_XZ:=0 when XZ="000"<br />

else 1 when XZ="001"<br />

else 2 when XZ="010"<br />

else 3 when XZ="011"<br />

else 4 when XZ="100"<br />

else 5 when XZ="101"<br />

else 6 when XZ="110"<br />

else 7;<br />

LD_MBW:=5 when MBW(1)=’1’<br />

else 4 when MBW="01"<br />

else 3;<br />

LD_PSIZE:=5 when R_PSIZE(5)=’1’<br />

else 4 when R_PSIZE(5 downto 4)="01"<br />

else 3 when R_PSIZE(5 downto 3)="001"<br />

else 2 when R_PSIZE(5 downto 2)="0001"<br />

else 1 when R_PSIZE(5 downto 1)="00001"<br />

else 0;<br />

CALC_RLL:=((HSBLNK-HEBLNK) + 65535) mod 65536;<br />

-- (Register Line Length) -1<br />

SUM_TE_V:=SUM_TAP_ELL mod 4096;<br />

case SRL is<br />

when "00" => -- SRL: 256 bits<br />

SUM_TE_A:=SUM_TE_V(8);<br />

SUM_TE_B:=SUM_TE_V(7);<br />

CALC_ELL_SFT:=(CALC_ELL shr 8) mod 256;<br />

when "01" => -- SRL: 512 bits<br />

SUM_TE_A:=SUM_TE_V(9);<br />

SUM_TE_B:=SUM_TE_V(8);<br />

CALC_ELL_SFT:=(CALC_ELL shr 9) mod 256;<br />

when "10" => -- SRL: 1024 bits<br />

SUM_TE_A:=SUM_TE_V(10);<br />

SUM_TE_B:=SUM_TE_V(9);<br />

CALC_ELL_SFT:=(CALC_ELL shr 10) mod 256;<br />

when "11" => -- SRL: 2048 bits<br />

SUM_TE_A:=SUM_TE_V(11);<br />

SUM_TE_B:=SUM_TE_V(10);<br />

CALC_ELL_SFT:=(CALC_ELL shr 11) mod 256;<br />

end case;<br />

-- test output<br />

MSCSFT_ot :=MSC_SFT mod 16;<br />

Abbildung 66: Speedchart-Diagramm VIDEO/RELOAD/RL CALC<br />

T1<br />

A: -- determine number of VClk cycles<br />

-- per memory word of video data<br />

MSC_SFT:=(LD_XZ + LD_MBW) - LD_PSIZE;<br />

Anhang C.2<br />

Seite 99<br />

case MSC_SFT is<br />

when 0 => CALC_ELL:=CALC_RLL;<br />

when 1 => CALC_ELL:=CALC_RLL shr 1;<br />

when 2 => CALC_ELL:=CALC_RLL shr 2;<br />

when 3 => CALC_ELL:=CALC_RLL shr 3;<br />

when 4 => CALC_ELL:=CALC_RLL shr 4;<br />

when 5 => CALC_ELL:=CALC_RLL shr 5;<br />

when 6 => CALC_ELL:=CALC_RLL shr 6;<br />

when 7 => CALC_ELL:=CALC_RLL shr 7;<br />

when 8 => CALC_ELL:=CALC_RLL shr 8;<br />

when 9 => CALC_ELL:=CALC_RLL shr 9;<br />

when 10 => CALC_ELL:=CALC_RLL shr 10;<br />

when 11 => CALC_ELL:=CALC_RLL shr 11;<br />

when others => CALC_ELL:=CALC_RLL shr 12;<br />

-- (Effective Line Length in mem words) -1<br />

end case;

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!