Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pomoc, brzinski testovi

[es] :: Elektronika :: Mikrokontroleri :: Pomoc, brzinski testovi

Strane: 1 2

[ Pregleda: 4463 | Odgovora: 26 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

korak
Nis

Član broj: 125522
Poruke: 622
*.dynamic.sbb.rs.



+7 Profil

icon Pomoc, brzinski testovi26.06.2011. u 17:16 - pre 151 meseci
Pomazem komsijinom sinu da napise diplomski. Decko je vredan ali mu je potrebna pomoc.
Traeba da napravi bryinske testove za nekoliko mikrokontrolera, da ih analizira i komentarise sa zakljuckom. Moram priznati da je interesantno.

Nasli smo na internetu statistiku o zastupljenosti pojedinih operacija u programu, poziva podprograma, globalnih i lokalnih varijabli i raspodelu varijabli po tipovima.
Profesor mu je dao da obradi: ATmega, AT89Sxx i PIC18Fxx.

Pomoc nam treba u sledecem:

Obimne su familije ovih mikrokontrolera pa je veliki posao pregledati svu tehnicku pdf dokumentaciju da bi smo odredili dominantnu periodu jednog ciklusa izvrsenja naredbe.

Dakle, ako na primer neka familija mikrokontrolera ima 80% tipova koji rade sa nekim taktom izvrsenja naredbi onda je to ono sto nam treba. Treba odbaciti onaj manji broj koji radi na nizem ili visem taktu.

Kako nemam mnogo iskustava sa ovim mikrokontrolerima, bio bih vrlo zahvalan na svakoj informaciji.

Za testiranje ce mo uzeti kompajlere od Mikroelektronike ne ulazeci u to koliko su oni efikasni, ali je vazno da im je efikasnost priblizno ista. Da li se ne varam u ovoj konstataciji?

Unapred zahvalan.

Pozdrav svima.
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi26.06.2011. u 18:58 - pre 151 meseci
I jedan i drugi proizvođač imaju Product Selector Tool. Mislim da vam može pomoći oko određivanja perioda jednog izvršenja naredbe za tipičnog predstavnika familije. Za testiranje bih koristio asembler pre nego bilo čiji kompajler.
gorankg
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.dynamic.sbb.rs.



+7 Profil

icon Re: Pomoc, brzinski testovi26.06.2011. u 20:27 - pre 151 meseci
Da, imaju.
Ali problem mi je da ustanovim koji su to dominantni tipovi. Ja ne radim sa ovim MCU-ovima već sa MC9S08, i tamo postoji nekoliko tipova koji rade na 25MHz, ali to su oni koji imaju USB, dakle oni su za specifičnu namenu, ali sam siguran da se najviše koriste oni opšte namene.

Za ATmega vidim da je dominantno trajanje ciklusa 100ns, dok mi je za PIC18Fxx mnogo teže da nađem taj podatak. Znam da je nekada 8031 delio frekvenciju oscilatora sa 12, ne znam kako je sada.

Koliko sam skapirao PIC deli generisanu frekvenciju sa 4, ali to nije jasno razlučeno u dokumentima šta je frkvencija, a šta frekvencija izvršenja naredbi.

Na forumu ima mnogo onih koji rade sa ovim MCU-ovima, pa sam očekivao odgovor iz ruke.

U svakom slučaju hvala.

Pozdrav.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15861
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2366 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 02:17 - pre 151 meseci
pic ima konstantan broj taktova za svaku naredbu, i svi 18fxxxx imaju to identicno, razlikuju se po maximalnoj frekvenciji na kojoj rade i po perfierijama ali sto se "brzine" tice

Citat:

All instructions are single cycle, except for any program branches. These take two cycles since the fetch instruction is “flushed” from the pipeline while the new instruction is being fetched and then executed.


to vazi za svaki pic18F

e sad ono sto ti je bitno je veza izmedju "single cycle" i frekvencije na kojoj radi mcu. To je tipicno za ovu arhitekturu 1/4 posto

Citat:

The microcontroller clock input, whether from an internal or external source, is internally divided by four to generate four non-overlapping quadrature clocks (Q1, Q2, Q3 and Q4). Internally, the Program Counter (PC) is incremented on every Q1; the instruction is fetched from the program memory and latched into the Instruction Register (IR) during Q4. The instruction is decoded and executed during the following Q1 through Q4.


dakle ako ti 18Fxxxx trci na 48MHz to znaci da to svaki asm statement traje 1/12000000 sec osim brancheva koji traju duplo duze.

ista prica vazi i za 10F, 12F, 16F, 24f .. 32mx je malo drugaciji posto je to mips core no obzirom da te zanima 18F ..


sto se tice kompajlera - ne znam sta bih rekao, koliko ja znam mikroe ima ok kompajlere mada nisu idealni. razliciti ljudi rade na kompajleru za pic i za avr tako da ne mora da znaci da ako su od iste firme da su isto optimalni

meni nije jasno brzinu cega meri? ako meri brzinu izvrsavanja nekog koda, pic je tu uvek 1 cycle po komandi .. atmega i motorola su koliko ja znam druga arhitektura pa idu od 1 do 15 ali njima je 1 frekventni takt == 1 cycle (dok je na 18f 1/4) ... u cemu ce da racuna tu brzinu? u mips? flops? u broju operacija za dolar?


 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 08:06 - pre 151 meseci
Najviše PIC18 ima MaxCPUSpeed 40MHz. Za jedan instrukcioni ciklus frekvencija se deli sa 4.
Najviše ATMega se vrti na 16Mhz i oni ne dele takt.
Mislim da AT89 ne deli frekvenciju sa 12 kao stari dobri 8031 ali bih to morao kasnije da proverim.
Imam i fajlove sa sajtova, mogu ti poslati. Sem clock-a jedna od brzinskih prednosti AVR nad PIC-om je i u tri Z registra koji se mogu koristiti kao pokazivači i odvojenim prekidnim vektorima za svaku vrstu prekida.
E sad, ja sam malo zastareo po pitanju korišćenja novijih kontrolera pa možda negde grešim i voleo bih da se još neko ukljuši sa zapažanjima.
Pozdrav.

gorankg
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8369 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 10:20 - pre 151 meseci
Citat:
korak:
Nasli smo na internetu statistiku o zastupljenosti pojedinih operacija u programu, poziva podprograma, globalnih i lokalnih varijabli i raspodelu varijabli po tipovima..

Na osnovu toga napravite benchmark-test i uporedite rezultate. Zasto se bakcati sa iznutricama kad na kraju - da bi rezultati razlicitih arhitektura bili uporedivi - sve mora da se svede na istu mjeru, a to jedino moze biti vreme.
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.dynamic.sbb.rs.



+7 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 11:32 - pre 151 meseci
Hvala svima na odgovorima.

Čini mi se da mogu da uzmem za ATmega i PIC18Fxx da je trajanje jednog ciklusa naredbe 100ns da je to preovlađujuća vrednost. Da li sam u pravu?

Koristio bih C kompajler da se ne bih mlatio sa asemblerom. Primeri bi bili jednostavni, a kako imam naviku da pogledam prevod, ako mi se učini da je nešto moglo efikasnije da se prevede to ću ispraviti.

Dakle, izmerio bih trajanje izvršenja pojedinih iskaza, i prema statistici pojavljivanja takvih iskaza sračunao bih brzinu izvršenja netrivijalnih programa.

Ostaje mi da pogledam za AT89, i što je još važnije nešto vezano za PIC: koliko se u procentima koriste u istom iskazu varijable sa različitih banaka za netrivijalni program. Zapravo koliko će puta biti potrebno da se preklapaju banke. Nemam predstavu o tome.

Naslućujem teškoću kod AT89 i PIC-a jer nemaju mogućnost da lokalne varijable stavljaju na stek, pa zato moram da proučim njihove kompajlere kako bih ukapirao mehanizam koji koriste za to. Ovo mi je potrebno radi komentarisanja brzine rada sa lokalnim varijablama.

Pozdrav svima.

 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15861
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2366 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 12:40 - pre 151 meseci
@goran, nije max 40MHz nego 48MHz (12MIPS) (na primer 18F4550 ili 18F2550)


Citat:
korak
Čini mi se da mogu da uzmem za ATmega i PIC18Fxx da je trajanje jednog ciklusa naredbe 100ns da je to preovlađujuća vrednost. Da li sam u pravu?


to je vrlo "opusteno" posmatranje, ako sve osim branch traje jedan ciklus na 18F onda je ako uzmemo da 18F trci na 48MHz taj ciklus traje 83ns dok ATMEGA koji trci na 16MHz (recimo ATmega640/1280/1281/2560/2561 koji na tih 16MHz mogu teoretski da imaju i 16MIPS doduse i mnogo manje zavisi sta rade - u poredjenju sa 12MIPS konstantno na picu) taj ciklus traje 62ns "mostly" preko gomile koji traju 4 ciklusa pa sve do nekih koji traju 6 ... uvatiti 100ns kao prosek za te dve mcu familije je prilicno "opusteno" posmatranje ... ako je cilj merenje brzine, po meni previse opusteno


Citat:
Ostaje mi da pogledam za AT89, i što je još važnije nešto vezano za PIC: koliko se u procentima koriste u istom iskazu varijable sa različitih banaka za netrivijalni program. Zapravo koliko će puta biti potrebno da se preklapaju banke. Nemam predstavu o tome.


za 18F - sa dobrim kompajlerom - beznacajno


Ja licno mislim da treba da napravis desetak jednostavnih programa u c-u i da probas sve kompajlere koje mozes da nadjes "za dz" za svaki mcu koji testiras i da napravis comparison chart ... tu vidis i poredjenje kompajlera i mcu-a, uopste ne gubis vreme na "koliko prosecno xyz .." ... teoretski maximum imas u datasheet-u .. 12MIPS je 18Fxxx 16MIPS je ATMEGA, koliko je realno moras da probas sa realnim programom
 
Odgovor na temu

rsinisa
Siniša Radanočević
Smederevo

Član broj: 2716
Poruke: 1586
*.dynamic.isp.telekom.rs.



+321 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 13:21 - pre 151 meseci
Mislim da je jedino ispravno poredjenje ako se porede ASM programi - iazberu se 2, 3 rutine, recimo množenje dva 8-bitna broja, ispis na 2 displeja u multipleksu ili tako nešto, zatim se za svaku familiju izabere oscilator tako da za svaki MCU instrukcija koja traje najkraće, ima isto vreme izvršenja.
Pošto se kod PIC-a jedna instrukcija izvršava za 4 takta oscilatora, a kod ATMEL-a za 1, onda treba računati za npr. PIC na 48 MHz i ATMEL na 12 MHz. I, kao što reče Bogdan, kod PIC-a se sve instrukcije izvršavaju za 4 takta oscilatora (iliti 1 mašinski ciklus) sem onih koje menjaju PC (program counter) registar.
Što se tiče banaka kod PIC-a, najčešće jednostavni programi koriste malo korisničkih varijabli pa nema potrebe za preklapanjem, sem ako se radi sa sistemskim registrima koji su u drugoj banci. PIC ima samo jedan akumulator, tj. radni registrar (w od "working register") tako da je potrebno jedan operand smestiti u njega, a onda se radi operacija koja rezultat može da smesti ili u w ili u korisničku varijablu.

Pozdrav.
Sinisha
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15861
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2366 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 16:29 - pre 151 meseci
nema sta da poredis sa asm programima zato sto za asm programe imas vec brzinu prikazanu u data sheet-u, atmega je 16 mipsa, 18f je 12 mipsa i to je to, nema sta da "meris" ljudi izmerili ... ako meris "realnu" brzinu onda tu nema asm-a, ni jedan ni drugi mcu nisu dizajnirani sa idejom da se programiraju u asm-u vec u c-u. imas za svaki po 2-3 kompajlera, uzmes realan problem napises ga u c-u i iskompajlras na svih 10 kompajlera i izmeris im vremena. "realna" brzina je bas to - veza kontrolera i kompajlera i koliiko ce brzo da radi taj realan problem, a ne koliko ti mozes da optimalno napises asm koda koji sa realnim uslovima rada nema veze sa vezom - posto kao sto rekoh, za to vec imas izmereno, atmega je za 4 mipsa brzi.
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8369 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 19:40 - pre 151 meseci
Jedino sto ima prakticnog smisla mjeriti kod ovih mikrokontrolera je maksimum koji od sebe mogu dati u realnim uslovima.
Dakle, nikakvo tandrljanje sa oscilatorima i sl. - uzeti najbrzi koji moze i sa time mjeriti.
Sta mjeriti:
- aritmeticke operacije,
- protok podataka: mem/mem, mem/per, per/mem,
- odziv na interrupt,
- skakutanje na potprograme,
- nesto drugo sto moze biti od prakticnog interesa...

Broj mipsa takodje ne znaci nista, jer je u nekom procesoru za sabiranje dva broja potrebno 4 operacije (dovuci A iz memorije, dovuci B iz memorije, saberi i smjesti u akumulator, smandrljaj iz akumulatora nazad u memoriju), a na drugoj se sve to obavi u npr. jednoj operaciji, u zavisnosti od arhitekture.
Pa tako iako ovaj potonji procesor moze imati dva puta manji mips, sabirace brojeve dva puta brze od onog prvog.
Mips ima smisla samo ako se asemblerske operacije izvrsavaju na isti nacin (dakle ako je arhitektura ista ili bar priblizno slicna).

@korak
Pomazes li ti komsijinom malom, ili komsijin mali pomaze tebi :)
Sudeci po tvom poslednjem postu, jedino ti je jos ostalo da otkucas i ukoricis taj diplomski :)
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.dynamic.sbb.rs.



+7 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 20:39 - pre 151 meseci
A, ne Odin. Odavno sam ja završio sve škole.

Ja sam pre petnaestak godina radio ovo isto, samo su tada u igri bili drugi mikrokontroleri. Mogu da ti kažem da je to za mene interesantna zanimacija.

Prošle godine sam negde na internetu našao neki rad, čovek je napravio statistiku za netrivijalni program. Dao je u procentima zastupljenost svih aritmetičko logičkih operacija, poziva procedura, korišćenja globalnih i lokalnih varijabli kao i različitih tipova varijabli. E sad, za svaki napišem primer dobijem vreme izvršenja i pomnožim sa težinskim koeficijentom koji se dobija iz procenta zastupljenosti. Kada sve to saberem dobijem rezultat. To uradim za sve MCU-ove i to je to.

Kada sam to prvi put radio, početkom devedesetih, koristio sam brzinske testove koje su dale firme, proizvođači, ali su u njima favorizovali osobine svojih MCU-ova. Zato to nije bilo dobro.

Nego vidim u teh. dokumentaciji za PIC18Fxx2 da je deklarisan za 10MIPS-a, a ovde mi se navodi 12MIPS-a. Meni je važno šta je od ova dva zastupljenije. Na primer, ja ne računam na 25MHz takt CPU za MC9S08JM i još neke, jer 90% ove familije ima takt CPU-a 20MHz, pa ne želim da računam sa PIC-om ili AVR-om koji je manji deo familije.

Biće muke sa izborom kompajlera za testiranje. Primetio sam da neki profesionalno urađeni kompajleri vrlo efikasno prevode najviše zastupljene iskaze, tako da ih i u asembleru nije moguće efikasnije napisati. Međutim za retko korišćene iskaze forsiraju što kraći kod bez obzira što je izvršenje i 5 puta sporije nego kada bi se to napisalo na asembleru. E sad, da stvar bude još komplikovanija postoji mogućnost izbora različitih strategija prevođenja, pa i ta da se dobije najbrži kod. Onda se dobija sasvim drugačiji prevod.

Uostalom, što komplikujem kada njegov profesor ionako o ovoj materiji manje zna od prosečnog forumaša, nekako ću uprostiti stvari.

Pozdrav.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15861
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2366 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 21:05 - pre 151 meseci
18F ima sa max 40MHz i sa max 48MHz ovi koji su max 40MHz su 10 a ovi sa 48MHz su 12 mips. pogledaj 18f2550 i ekipu (najpopularniji usb enabled pic)

btw ja bi brzinu definisao u zavisnosti od "MHz" ili X jedinica brzine u 1MHz. a onda bi spomenuo frekvencije na kojima rade odredjeni mcu-i
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 21:26 - pre 151 meseci
Komšijin mali treba da nađe ne najbržeg već tipičnog predstavnika familije u pogledu brzine jer ATMEL možda sutra izbaci ATMegaxx na 200MHz. Za PIC18 seriju to je neki mcu sa 40Mhz clock-om (PIC18F4520npr.). Inače se PIC18 maksimalno serija vrti na 64MHz (PIC18F23K20 recimo). Kod AVR je to 16MHz i ATMega16. Mislim da su ATMega16 i PIC18F4520 po svim pitanjima dva porediva kontrolera ovih proizvođača. Testovi koje Odin predlaže su OK i treba ih pisati u asembleru da bi poređenje imalo svrhu. Način na koji neki C kompajler optimizuje kod za jednu ili drugu vrstu kontrolera moze napraviti značajnu razliku i zašto te dileme ne eliminisati odmah u startu izborom asemblera.
AVR je u prednosti jer ima 32 registra opšte namene a naredbe nad promenljivima smeštenim u te registre se izvršavaju u jednom instrukcionom ciklusu. Pogedajte npr:

ADD Rd,Rr ili AND RD,Rr

Registri R26 do R31 se koriste kod indirektnog adresiranja (pointeri - to beše C!?) i još jedna su prednost AVR. Pogledajte sledeći primer preuzet sa:
http://www.myplace.nu/avr/minidds/minidds.asm

ldi r29,0x00 ; clear accumulator
ldi r28,0x00 ; clear accumulator
; setup adder registers
ldi r24,0x55 ; setup adder value
ldi r25,0x35 ; to 1 kHz
ldi r26,0x00 ;
; main loop
;
; r28,r29,r30 is the phase accumulator
; r24,r25,r26 is the adder value determining frequency
; add value to accumulator
; load byte from current table in ROM
; output byte to port
; repeat
;
LOOP1:
add r28,r24 ; 1
adc r29,r25 ; 1
adc r30,r26 ; 1
lpm ; 3
out PORTB,r0 ; 1
rjmp LOOP1 ; 2 => 9 cycles

Main loop se izvršava u samo 9 ciklusa!!! To PIC ne može za ovakvu aplikaciju (DDS). Dakle, u matematici i radu sa tabelama, u interaptima, arhitektura i skup naredbi daju brzinsku prednost AVR. To komšijin mali treba da dokaže.
Prednost PIC je kad gazda kaže da ćemo za sledeći projekat koristiti PICxxx i što ga možeš kupiti kod nas na trafici. Vremenom me mrzelo da prelazim na nešto drugo pa ga koristim i za svoje stvari.
gorankg
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8369 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 21:31 - pre 151 meseci
Citat:
korak: A, ne Odin. Odavno sam ja završio sve škole.

Ma znam ja da nije za tebe, nego sam se nasalio posto mi iz svega sto si napisao ne izgleda da ti njemu pomazes - nego da sve radis umjesto njega.

Citat:
korak: Nego vidim u teh. dokumentaciji za PIC18Fxx2 da je deklarisan za 10MIPS-a, a ovde mi se navodi 12MIPS-a. Meni je važno šta je od ova dva zastupljenije. Na primer, ja ne računam na 25MHz takt CPU za MC9S08JM i još neke, jer 90% ove familije ima takt CPU-a 20MHz, pa ne želim da računam sa PIC-om ili AVR-om koji je manji deo familije.

A cemu uopste koriste tako "usrednjeni" rezultati?
Mislim, ako ikad ikog bude zanimala brzina mikrokontrolera onda ce ga vjerovatno zanimati neki konkretan mikrokontroler, a ne neki nepostojeci "uopsteni"?!

Najlakse je da sastavite tri "jednake" seme sa ta tri mikrokontrolera - tipicna predstavnika svoje sorte. Napisete program koji testira one stvari koje sam naveo u prethodnoj poruci (broj MIPS-ova ne znaci ama bas nista - iz razloga koje sam gore objasnio. To je cisto marketinski podatak, a ne tehnicki i razlicite arhitekture se prema MIPS-ovima uopste ne mogu uporedjivati. Nesto smisleniji je broj FLOPS-ova, ali to je vise za DSP nego za uC, posto ovi uC o kojima se ovdje radi i ne znaju sta je to :)

Elem, za neki info na prvu loptu nije zgoreg malo se informisati na npr. Embedded Microprocessor Benchmark Consortium kako se to radi i o cemu se tu radi:
http://www.eembc.org/home.php

Tamo se moze downloadovati i CoreMark benchmark, pa licno probati, mada vec postoje i gotovi rezultati za uporedjivanje, npr.:
http://www.coremark.org/benchmark/index.php

Pozdrav!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15861
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2366 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 21:40 - pre 151 meseci
u vreme dzaba cortex m3 jezgra advocacy o 8bitnom avr vs pic je besmislena ... mozemo da diskutujemo o nacinu merenja, ali o tome sta je bolje, kvalitet jednog mcu-a se meri daleko drugacije od toga koji se hardware nalazi u njemu, no ovde korak prica o brzini

ako ces da gledas "sta je najbrze na kom mcu-u" - to uzmes iz data sheet-a, napravis kompilaciju segmenata odatle i prezentujes kao rad, ako ces prosek (prosecno 18F ide na 40-48MHz 2550 je najprodavaniji 18F a on ide na 48mhz, mchip je celu novu seriju pravio zbog potraznje, presisali su i 16f84 sa tim 18f-om, atmege sve koje sam ja video su na 16, nisam video ni vise ni manje, motorole ne znam) .. ako je rec o "prosecnom" merenju, onda moras da izbacis "sebe" iz racunice ... ako ja uzmem da pisem asm kod za avr i pic i msp430 pic ce garant da bude najbrzi, dok ako ti uzmes da pises kod najbrzi ce biti avr, a ako moja zena uzme da ga pise bice msp430 .. uzmes lepo C koji je de fakto standard za programiranje mikrokontrolera vec mnogo godina ma koliko se neki tome opirali ... i napises test app koji ima i racunicu i kopiranje memorije i ad konverziju ... iskompajliras ga lepo sa svim kompajlerima koje nadjes izmeris trajanje svakog segmenta i kazes mcu X, n / mhz, mcu Y, m / mhz, mcu Z, p /mhz. Pustis dva tri grafikona i to je to ...
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 22:36 - pre 151 meseci
Korak, baš me zanimaju rezultati pa te molim da zaključak okačiš ovde. Može i ceo rad ukoliko to nije problem.
Bogdane, ako ti, korak, neko treći i ja napišemo asemblerski kod za sabiranje dve 4-bajtne promenljive za sve tri vrste kontrolera rezultat MORA da bude isti. U ciklus... ili neko nije dobro uradio posao.
gorankg
 
Odgovor na temu

Odin D.
Mlađi referent za automatizaciju
samoupravljanja

Član broj: 37292
Poruke: 2549



+8369 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 22:48 - pre 151 meseci
Citat:
goran_68:asemblerski kod za sabiranje dve 4-bajtne promenljive za sve tri vrste kontrolera

Poenta je u tome da za taj slucaj vreme izvrsavanja mozes za 38 sekundi da saberes iz datasheet-a, uopste ne moras da pises program.

Za bilo kakav slucaj od prakticnog interese - a to su netrivijalni programi - dobijena vremena ce sigurno da se razlikuju, osim ako sva cetvorica nemate 4 godine na raspolaganju za poliranje vasih asemblerskih ceda.
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 23:15 - pre 151 meseci
Koliko sam razumeo, korak želi da nađe vreme izvršenja upravo za takve stvari: aritmetičko-logičke operacije, pozive procedura i sl. pa da osnovu toga i statistike njihove zastupljenosti u netrivijalnom programu računa rezultat. Da li će za to da piše program ili da gleda u datasheet sasvim je svejedno.
gorankg
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 930
*.dynamic.isp.telekom.rs.



+80 Profil

icon Re: Pomoc, brzinski testovi27.06.2011. u 23:36 - pre 151 meseci
Za AT89S, da ne ostanem dužan, clock ide do 24MHz ali u datasheetu za AT89S51 stoji 33MHz. Ne znam šta je korektan podatak , možda može da se overclock-uje.
gorankg
 
Odgovor na temu

[es] :: Elektronika :: Mikrokontroleri :: Pomoc, brzinski testovi

Strane: 1 2

[ Pregleda: 4463 | Odgovora: 26 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.