PIC vs ATMEL #2
VFX
info at vfx.hu
Wed Feb 11 23:31:15 CET 2004
Hali!
> Megneztem hogy a C fordito milyen kodot generalt, ha mar benne vagyok
> nyakig.
> Elsirtam magam. Ugy trukkozik a delayed branch utasitasokkal, meg a
> cimzesekkel,hogy orulet.
> Teljesen C-re van optimalizalva a proci.
????
Es C nyelven is hajtja vegre :) Mitol van egy proci C-re, fortranra,
cobolra, asmre, javara optimalizlva?
> A masik a VLIW (jellemzoen DSP)procik. Azokat meg nem is lehet hatekonyan
> asm-ben
> programozni.
Miert is nem?
> Volt egy Digitalis jelfeldolgozo processzorok targyam a suliban, es az
> eloado mutatott peldat.
> Elkepeszto, miket meg lehet csinalni vele.Parhuzamos utasitasok, olyan
> utasitas egymasrahatasok, aminek
> a kovetkezmenye elkepesztoen hatekony kod.
Parhuzamos utasitasok, egymasra hataso stb:
(es meg csak egy alut hasznaltunk, a masodikat meg sem piszkaltuk, mert
hogy tobb is lehet egy procinak :)
[...]
lcntr=N/4, do fstage until lce; /* do N/4 simple radix-4
butterflies */
f12=f2+f7, f13=f2-f7, f0=dm(i0,m0), f1=pm(i8,m8);
f14=f3+f6, f15=f3-f6, f2=dm(i2,m0), f3=pm(i10,m8);
f0=f0+f2, f2=f0-f2, f4=dm(i1,m0), f5=pm(i9,m8);
f1=f1+f3, f3=f1-f3, f6=dm(i3,m0), f7=pm(i11,m8);
f4=f6+f4, f6=f6-f4, dm(i4,m0)=f8, pm(i12,m8)=f10;
f5=f5+f7, f7=f5-f7, dm(i5,m0)=f9, pm(i13,m8)=f11;
f8=f0+f4, f9=f0-f4, dm(i6,m0)=f12, pm(i14,m8)=f14;
fstage:
f10=f1+f5, f11=f1-f5, dm(i7,m0)=f13, pm(i15,m8)=f15;
[...]
Mint latszik szepen lehet a parhuzamos utsitasokat is asm-ben kezelni.
Szoval nem csak a C tudja, es szerintem a C fordito elso nekifutasra nem
is generalna ilyen kodot (kiprobalni nem tudom, nincs C forditom es nem
is ertek hozza).
UDV. VFX.
htttp://www.vfx.hu
More information about the Elektro
mailing list