PIC elado
Miko Imre
imre.miko at siemens.com
Wed Apr 30 15:07:33 CEST 2003
Hello Endre,
Nagy Endre wrote:
> > incf valtozo,f
> >
> > AVR-nel visszont egy memoriaban levo ertek megnovelese mindig megkoveteli
> > a regiszterbe toltest, majd mentest.
>
> RISC-en memoriaban levo erteken nem dolgozunk! Van eleg regiszter, hogy
> a szamlalok abban legyenek.
Mint irtam ez egy pelda 1 operandusos muveletre. lehetet volna
bcf, comf, rrf vagy akarmi mas 1 operandusos muvelet.
> Ha megsem lenne eleg, akkor kipakoljuk a verembe. De 1 kipakolasra juthat
> tobb millio vegrehajtott ciklus.
A verembe pakolas, es kivetel szintugy mint az osszes memorimuvelet AVR-en
2 ciklus, es a sima sts, lds 2 Word hosszuak!
Mindez a PIC-en egy ciklus egy word (ugras az 2 ciklus ha ugrik), persze azt se felejtsuk,
hogy a PIC-en lapozas is van, ami ami miatt itt sem mindig 1 az 1.
(Az ugras is ketto AVR-en es PIC-en is, ezert a 16MIPS @ 16Mhz AVR-en egy kicsit
persze santit, de azert osszehasonlitasnak jo)
> > > Ugyanaz. A PIC-ben nem toltod fel a regisztereket, az AVR-ben igen.
> > Dehogyisnem toltom.
> > Az elso utasitas a "b" valtozom betoltese, az utolso pedig az eredmeny ("a") elmentese.
>
> Gyakorlatilag regiszterbol az akkumulatorba. De AVR-en ez elmarad, minden
> regiszteren vegezhetunk muveletet. Nem kell sem oda, sem vissza tolteni.
> Ezert nem jo a pelda. Helyesen:
>
> mov c,a
> add c,b
>
> Ez 2 utasitas, osszesen 2 orajel.
Es minden input adat, meg output is a regiszterben keletkezik es marad?
Akkor minek van az SRAM, nem is kell bele. (meg a port-ok sem ;-)
> A PIC register file az AVR regisztereivel merheto ossze. Az csak extra,
> hogy az AVR-en nem eddig tart a vilag.
A file regiszter inkabb atmenet a regiszter es a mem kozott. Nagyon gyorsan tudod kezelni,
mint egy regisztert, de korlatozott a darabszama, de lenyegesen tobb mint az AVR regisztereinek
szama.
> Az algoritmus nem azonos, ezert nem osszemerheto. Az AVR eseten ezt
> valoszinuleg meretre optimalizaltak. De lehetett volna sebessegre is, es
> akkor a PIC csunyan lemaradna. (Csak a BCD konverzio tipikusan az az eset,
> ahol nem szamit a sebesseg.)
Lehet, hogy nem az az eset, de lassuk az azonos algoritmust, es a kulonbseget,
kuld el! Akkor tudunk csak osszehasonlitani, es nem a levegobe beszelni!
Mindannyian azzal dobaloztok, hogy csunyan lemarad. Ez elozo levelemben
a mul32-es peldanal peldaul nem maradt le csunyan. Lassabb volt ugyan
mint az AVR, de max 1,2 a szorzo, es nem az emlegettet 100 es 1000.
Udv.
Imre
More information about the Elektro
mailing list