Hirdetés

Keresés

Új hozzászólás Aktív témák

  • tvamos

    nagyúr

    válasz Teasüti #2972 üzenetére

    Érdemes akkor ránézned az NUCLEO-F411RE / NUCLEO-F401RE kitekre. Van arduino uno kompatibilis csatlakozója.

    Szerintem legolcsóbban Teensy 3.2-höz lehet jutni az ebay-en. Legalábbis amikor én kerestem az volt a legolcsóbb. És frankó kicsi.

  • fpeter84

    senior tag

    válasz Teasüti #2972 üzenetére

    szép mondhatom, elültetted a bogarat a fülemben és alvás helyett benchmarkolásra adtam a fejem, pedig 2 óra múlva szól az ébresztő :W :DDD

    uint32_t pre = 0;
    uint32_t now = 0;
    uint32_t cnt = 1;

    uint32_t cnt2 = 0;

    uint32_t a = 0;
    uint32_t c = 0;

    //float a = 0;
    //float c = 0;

    void setup() {
    Serial.begin(115200);
    Serial.println("Hello World!");
    }

    void loop()
    {
    a = 1;

    for (cnt=0; cnt<10000; cnt++)
    for (cnt2=0; cnt2<250; cnt2++)
    c = a+cnt2;

    now = millis();
    Serial.println( 2500000/(now-pre) );
    pre = now;
    }

    (a cnt2, a és c változók típusát írtam át uint8..32_t illetve az a és c-t float-ra)

    Remélem szarvas hibát nem követtem el a programban... 2.5M-szor kiszámolja ugyanazt a műveletet, majd visszaosztja másodpercre viszonyítva. Azért dupla a ciklus mert ha csak 2 fix értéket adtam össze ennyiszer akkor nagyon úgytűnik hogy arra rájött a fordító és leegyszerűsítette és nem adott különbséget sehol... Az eredményt Kcycle/sec-ben dobja ki vagyis hogy másodpercenként hány ezerszer tudta végrehajtani az adott műveletet. A harmadik oszlop hármas pedig azt mutatja hogy a Due hányszoros értéket tudott a Nano-hoz képest, és így szépen látszik a Due 5.25-szörös órajel előnye, valamint az hogy minél nagyobb számmal dolgozik a 8 bites Nano, annál jobban megküzd vele, a hardveres osztásnak köszönhetően pedig egészen elképesztőre nő a 32 bites Cortex M3 mag előnye - hardveres FPU az M3-ban nincsen, a nagyobbakban is csak opcionális [link]

  • zka67

    őstag

    válasz Teasüti #2972 üzenetére

    Szia, sebességben ég és föld a 32 és a 8 bites proci. A Cortex-M procik 1 órajel alatt elvégeznek egy 32 bites szorzást, az osztáshoz viszont 2-12 órajel szükséges (ha a bemenő adatok megengedik, akkor előbb megszakítja a végrehajtást, ha az eredmény független a fennmaradó nulla bitektől). A Cortex-M4-es procikban már van beépített lebegőpontos egység is, ami ugyan így 1 órajel alatt elvégez egy szorzást, de az osztáshoz itt is több órajelre van szükség.

    5V-os 32 bites proci nem létezik, hiszen minél nagyobb órajelről járnak, annál kisebb feszültségről kénytelenek működni, hogy ne termeljenek sok hőt. Viszont az NXP és az STM procik legtöbb lába 5V toleráns, így nyugodtan használhatod őket level hifter nélkül bármilyen perifériához. Egy 1117/3.3V-os stab ic kell az 5V-ról a 3.3V előállítására.

    Én épp most csinálok egy C64 emulátort egy STM32F407VET6 procival, amiről egy rövid videót is megnézhettek.

    A prociban van egy nagyon jó DMA, ezzel mint láthatjátok, simán lehet videójelet is csinálni. A proci csinál mindent, és egy PAL encoder IC van még az áramkörben a tápegységen kívül.

Új hozzászólás Aktív témák