universidade federal de santa catarina programa de póe-graduação ...

universidade federal de santa catarina programa de póe-graduação ... universidade federal de santa catarina programa de póe-graduação ...

repositorio.ufsc.br
from repositorio.ufsc.br More from this publisher
28.02.2014 Views

_ Procedure Clear; (* Zera todos os conteudos dos vetores utilizados = RESET ') Var I,J,K : Longint; 79 Begin Check :=0; For i := 1 to Tam do Begin A[i]:=0; B[i]:=0; BOC[i]:=O; B1C[í]:=0; B2CÍi]:=O; B3CÍí]:=0; A1Íi]:=0; A2[i]:=0; A3Íí]:=O; A4[i1:=0; B1[1]:=0; B2[í]:=0; B3[i]:=0; BC[i]:=0; End; (* For *) For J:=1 to 20 do For K:=1 to 4 do 0ut[J,K]:=O; End; (* Clear *) (§ ______________________________________________________________________ __‹l›) Procedure . Geracao; (* Inicializa os vetores de entrada A e B*) Var I, Prod : Longlnt; Sum : Real; Begin Sum := 0.0; Prod := 0; For I:=1 to Trunc(Tam/4) do ' Begin BÍ1]:=i*fact; A[i]:=-i*fact; PPOd:= A[i]*B[í]; Sum := Sum + prod; if (A[i]>Masc12) or (B[i]>Masc16) Or (Sum>Masc32) Or (Prod>Masc28) Then Begin A[11z=o; Bl11z=o; End; (' If ') End; (* For *) '

End; (* Geracao *) ‹- ---------------------------------------------------------------------- --*› Procedure Process(T:Longint); . (* Processamento de todas as celulas simulando um arranjo sístolico *) Begin C(20,boc[t],0,out[20.2],out[19,11,0); c(1s,b1¢lt1,°utl1o,11,óutl19,2l,øut[1s,11,0); C(18,out[10,2],out[11,1],out[18,2],out[17,11,0); C(17,out[11,2].out[12,1],out[17,2],outÍ16,11,0); C(16,0utÍ12,2],OutÍ15,1];Out[1S,2],0,0); C(15,out[9,2],out[14,1},out[15,2],0,0); C(14,0ut[6,2],0ut[13,1],OutÍ14,2],0,0); C(13,outÍ3}2],0,out[13,2],0,0); C(12,out[9,3],outl11,4],out[8,2],out[9,11,0); C(11,out[8,3],out[10,4];out[7,2],outI8,1],0); C(9,out[6,3],out[8,4],out[5,2],out[6,11,0); C(10,0ut[7,3],A1[t],B2C[t],OutÍ7,1],0); C(8,0ut[5,3],Out[7,4],0ut[4,2],0ut[5,11,0); C(6,0ut[3,3],out[5,4],out[2,2],out[3,11,0); C(7,out[4,3],A2[t],B3c[t],outÍ4,1],Bc[t])¡ C(5,out[2,3],0ut[4,4],out[1,2],out[2,1],0); C(3,B3[t],0utÍ2,4],0,0,0); C(4,0ut[1,31,A3[t],0,out[1.11.0); C(2,B2[t],out{1,4],0,0,0); C(1,B1Ít].À4[t],0,0,0)¡ End; (* Process *) ‹*----------------------------------------------------------------------- --*› Procedure Checkpro(T:Longint); (* Calcula o resultado da equacao de otimizacao *) Begin ~ Check:=CheCk + A4[t]*B3[T+2]+((A4[t]*B2[t+1]+A3[t+1]*B3[t+2]) Shl 4); Check:=Check + ((A4[t]'B1[T]+B2[t+1]*A3[t+1]+A2[t+2]*B3[t+2]) Shl 8); Check:=Check + ((A3[t+1]*B1[T]+A2[t+2]*B2[t+1]+A1[t+3]*B3[t+2]) Shl 12); check =check + ((A2lt+21*B1[T1+A1[t+31*B2lt+11) sh1 16); Check:=CheCk + ((A1[t+3]*B1[T]) Shl 20); If Alt] < 0 Then (* Valor de Am eh negativo ') 80

_<br />

Procedure Clear;<br />

(* Zera todos os conteudos dos vetores utilizados = RESET ')<br />

Var<br />

I,J,K : Longint;<br />

79<br />

Begin<br />

Check :=0;<br />

For i := 1 to Tam do<br />

Begin<br />

A[i]:=0; B[i]:=0;<br />

BOC[i]:=O; B1C[í]:=0; B2CÍi]:=O; B3CÍí]:=0;<br />

A1Íi]:=0; A2[i]:=0; A3Íí]:=O; A4[i1:=0;<br />

B1[1]:=0; B2[í]:=0; B3[i]:=0; BC[i]:=0;<br />

End; (* For *)<br />

For J:=1 to 20 do<br />

For K:=1 to 4 do<br />

0ut[J,K]:=O;<br />

End; (* Clear *)<br />

(§ ______________________________________________________________________ __‹l›)<br />

Procedure<br />

.<br />

Geracao;<br />

(* Inicializa os vetores <strong>de</strong> entrada A e B*)<br />

Var<br />

I, Prod : Longlnt;<br />

Sum : Real;<br />

Begin<br />

Sum := 0.0;<br />

Prod := 0;<br />

For I:=1 to Trunc(Tam/4) do<br />

'<br />

Begin<br />

BÍ1]:=i*fact;<br />

A[i]:=-i*fact;<br />

PPOd:= A[i]*B[í];<br />

Sum := Sum + prod;<br />

if (A[i]>Masc12) or (B[i]>Masc16) Or (Sum>Masc32) Or (Prod>Masc28) Then<br />

Begin<br />

A[11z=o; Bl11z=o;<br />

End; (' If ')<br />

End; (* For *)<br />

'

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!