eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
Ilość wypowiedzi w tym wątku: 81

  • 21. Data: 2012-04-30 23:40:37
    Temat: Re: [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: Sebastian Biały <h...@p...onet.pl>

    On 2012-04-30 23:35, John Smith wrote:
    >>> Kolega też chyba nie widzi różnicy w sygnałach na końcówkach uP i uC.
    >> Przy odpowiednio duzej szybkości uC właśnie nie widać żadnej rożnicy.
    > Zrobienie *dokładnej* emulacji sprzętowo-programowej Z80 na ARM-ie,
    > wydaje się być mocno nieopłacalne.

    Ładowanie się w Z80 wydaje się mocno bez sensu. Dlatego ciągnę ten
    absurd, skoro i watek absurdalny u podstaw :)

    > Emulacja sprawniej by się mogła udać
    > na FPGA. Tylko po co?

    Po co robić ethernet na Z80 :) Chyba nawet gotowe rozwiązanie sprzetowe
    nie jest wystarczającym argumentem żeby reanimować trupy. *Wszystko* na
    rynku jest lepsze od Z80 pod dowolnym względem.


  • 22. Data: 2012-04-30 23:41:38
    Temat: Re: [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: BartekK <s...@d...org>

    W dniu 2012-04-30 23:35, John Smith pisze:
    > W dniu 2012-04-30 21:53, Sebastian Biały pisze:
    >> On 2012-04-29 23:48, John Smith wrote:
    >>> Kolega też chyba nie widzi różnicy w sygnałach na końcówkach uP i uC.
    >>
    >> Przy odpowiednio duzej szybkości uC właśnie nie widać żadnej rożnicy.
    >
    > Zrobienie *dokładnej* emulacji sprzętowo-programowej Z80 na ARM-ie,
    > wydaje się być mocno nieopłacalne. Emulacja sprawniej by się mogła udać
    > na FPGA. Tylko po co?
    Nie ma sensu emulować Z80 w pełni. W tym przypadku autor chce i tak
    pisania nowego softu na Z80 (w asemblerze). Więc softu nie ma, a skoro
    nie ma i trzeba go stworzyć, to łatwiej go stworzyć wprost na ARMa, z
    wbudowanym w ten soft tcp/ip i całym ethernetem jaki się wymyśli, a nie
    tworzyć soft na zabytek, w zabytkowym asmeblrze, i jeszcze modzić jak tu
    do ethernetu to podłączyć, i robić soft na interfejs z80<>eth.
    Jeśli chodziło mi o emulacje, to o zewnętrzne udawanie Z80 przy pomocy
    lini i/o ARMa, tak by dostawać się do istniejącego hardware (czyli
    realnie tylko i/o w przestrzeni adresowej Z80, bo ram i rom jego jest
    nam niepotrzebny)


    --
    | Bartłomiej Kuźniewski
    | s...@d...org GG:23319 tel +48 696455098 http://drut.org/
    | http://www.allegro.pl/show_user_auctions.php?uid=338
    173


  • 23. Data: 2012-05-01 00:00:04
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: "Andrzej Ekiert" <d...@t...pl>

    Dnia 30-04-2012 o 23:38:13 Sebastian Biały <h...@p...onet.pl>
    napisał(a):

    > On 2012-04-30 23:19, Andrzej Ekiert wrote:
    >>>>> Jak zgodność tego produktu z dowolnym standardem C++?
    >>>> Dość trudno mówić o zgodności z C++, skoro Microchip ma tylko
    >>>> kompilatory C.
    >>> No właśnie. Bida aż piszczy.
    >> Tylko w przypadku PIC32 kompilator C++ miałby trochę sensu.
    >
    > Ma sens na AVR. Dlaczego na PIC nie miałby? Bo sprzetowy stos? Zonk ...

    Ma? Na 8-bitowe AVRy też?

    Wydaje mi się, że pisanie w C++ na mały mikrokontroler sprowadzałoby się
    do ciągłego uważania, żeby przypadkiem nie użyć zbyt zaawansowanych
    funkcji języka. Tu coś podziedziczysz, tam dodasz parę trywialnych metod,
    bo enkapsulacja obiektu będzie wtedy lepsza (ale kompilator włoży funkcje,
    zamiast odwołać się bezpośrednio do pamięci), gdzieś tam zrzutujesz
    wskaźnik i nawet nie zauważysz, że użyłeś identyfikacji typu run-time, i
    po chwili używasz 2 razy więcej Flasha lub RAMu, niż użyłbyś w C.

    Jak już koniecznie programować obiektowo, to od C++ wolałbym język ADA -
    przynajmniej wtedy otworzyłby się rynek safety-critical.

    BTW, sprzętowy stos dotyczy tylko 8-bitowych PICów. I do C++ ma się nijak.

    ae


  • 24. Data: 2012-05-01 00:10:53
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: Sebastian Biały <h...@p...onet.pl>

    On 2012-05-01 00:00, Andrzej Ekiert wrote:
    >> Ma sens na AVR. Dlaczego na PIC nie miałby? Bo sprzetowy stos? Zonk ...
    > Ma? Na 8-bitowe AVRy też?

    Here we go again ... Reszta grupy niech zamknie oczy.

    Ależ oczywiście że ma sens na 8 bit.

    > Tu coś podziedziczysz

    [cut crap]

    Kto tu mówi o pisaniu obiektowym?

    > run-time, i po chwili używasz 2 razy więcej Flasha lub RAMu, niż użyłbyś
    > w C.

    Urban legend. Najczęsciej rozpowiadane przez ludzi którzy nie rozumieją
    C++, nie pisali bądź doczytali że coś tam gdzieś tam komuśtam zjadło
    więcej flasha. A potem okazało się że to był pierwszy eksperyment z C++
    w życiu jakiegoś nerda od pisania w asm.

    > Jak już koniecznie programować obiektowo

    Kto mówi o pisaniu obiektowym?

    >, to od C++ wolałbym język ADA -
    > przynajmniej wtedy otworzyłby się rynek safety-critical.

    Tak, ada już pokazała że jest cafe-critical-full-wypas że ojej.

    http://en.wikipedia.org/wiki/Ariane_5_Flight_501


  • 25. Data: 2012-05-01 10:21:21
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: "Andrzej Ekiert" <d...@t...pl>

    Dnia 01-05-2012 o 00:10:53 Sebastian Biały <h...@p...onet.pl>
    napisał(a):

    >
    >> Tu coś podziedziczysz
    >
    > [cut crap]
    >
    > Kto tu mówi o pisaniu obiektowym?
    >

    Bardzo dziękuję za nazwanie mojej wypowiedzi "gównem". Normalnie,
    potrzebowałem tego.

    Poza tym wyciąłeś tam zdanie: "Wydaje mi się, że pisanie w C++ na mały
    mikrokontroler sprowadzałoby się do ciągłego uważania, żeby przypadkiem
    nie użyć zbyt zaawansowanych funkcji języka." Jeśli wytniesz pisanie
    obiektowe, to robisz dokładnie to, co napisałem - sprowadzasz C++ do
    proceduralnego C.

    >> run-time, i po chwili używasz 2 razy więcej Flasha lub RAMu, niż użyłbyś
    >> w C.
    >
    > Urban legend. Najczęsciej rozpowiadane przez ludzi którzy nie rozumieją
    > C++, nie pisali bądź doczytali że coś tam gdzieś tam komuśtam zjadło
    > więcej flasha. A potem okazało się że to był pierwszy eksperyment z C++
    > w życiu jakiegoś nerda od pisania w asm.

    Jeśli koniecznie musi być ad personam, to tak się składa, że zawodowo
    programuję w C, C++ i asm. Od ponad 10 lat. Ale wolałbym trzymać się
    argumentów merytorycznych, a nie uzasadniać że mam rację, bo mam większego
    eksperta. Dałem konkretne przykłady rzeczy, na które trzeba uważać
    programując w C++, bo brak uwagi będzie skutkować wygenerowaniem
    niepotrzebnego kodu. A ty mi się do nich nie odnosisz, wycinasz i
    próbujesz sugerować doborem cytatu, że uważam że w C++ kod zawsze musi być
    większy.

    > Tak, ada już pokazała że jest cafe-critical-full-wypas że ojej.
    >
    > http://en.wikipedia.org/wiki/Ariane_5_Flight_501

    Ada to de facto standard w safety-critical, więc posiadanie kompilatora
    otworzyłoby mi (jako sprzedającemu procesory) nowy rynek. I tyle. A kod,
    który zawiera błędy, można napisać w każdym języku. W Adzie podobno
    trudniej (podobno, bo tu jestem tylko na poziomie "hello world").

    ae


  • 26. Data: 2012-05-01 15:01:17
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: Sebastian Biały <h...@p...onet.pl>

    On 2012-05-01 10:21, Andrzej Ekiert wrote:
    >> [cut crap]
    >> Kto tu mówi o pisaniu obiektowym?
    > Bardzo dziękuję za nazwanie mojej wypowiedzi "gównem". Normalnie,
    > potrzebowałem tego.

    crap to beznadzieja. Jesli zaczynasz atakowanie C++ na uC od dyskusji o
    obiektowości to jest to beznadziejne.

    > Jeśli wytniesz pisanie
    > obiektowe, to robisz dokładnie to, co napisałem - sprowadzasz C++ do
    > proceduralnego C.

    Nie. C++ to znacznie więcej niż obiektowość. *Właśnie* w uC te inne niż
    obiektowość rzeczy są przydatne. Takie jak destruktory, silne typy,
    traits i ogólnie szablony w metaprogramowaniu. I nie, te szablony nie
    muszą generować *ANI* grama kodu. Dostajesz darmowe ciastko. Microchip
    jednak slusznie zauwazył, że środowisko klepaczy w C nijak nie pojmuje
    ze jest to smaczne ciastko i jest darmowe. Więc go nie daje i lemmingi C
    nie widzą różnicy dalej klepiąc kiepskie makra.

    > Dałem konkretne przykłady rzeczy, na które trzeba
    > uważać programując w C++, bo brak uwagi będzie skutkować wygenerowaniem
    > niepotrzebnego kodu.

    Daleś przykład obiektów. To nagorszy pustak jaki mogłeś mieć w tej dyskusji.

    > A ty mi się do nich nie odnosisz, wycinasz i
    > próbujesz sugerować doborem cytatu, że uważam że w C++ kod zawsze musi
    > być większy.

    Uważam że taki jest urban legend. Twoje wypowiedzi tylko to potwierdzają.

    > W Adzie podobno
    > trudniej (podobno, bo tu jestem tylko na poziomie "hello world").

    Całe szczeście że na 8-bit nikt nie pisuje w Adzie.


  • 27. Data: 2012-05-01 23:35:22
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: "Andrzej Ekiert" <d...@t...pl>

    Dnia 01-05-2012 o 15:01:17 Sebastian Biały <h...@p...onet.pl>
    napisał(a):

    > crap to beznadzieja.

    To by raczej było "hopelessness". A wulgaryzm pozostaje wulgaryzmem.
    Odniesiony do czyjejś wypowiedzi, jest... mało elegancki.

    > Jesli zaczynasz atakowanie C++ na uC od dyskusji o obiektowości to jest
    > to beznadziejne.

    No cóż - główna cecha różnicująca języki, o których mowa. Faktycznie, nie
    ma czego wspominać.

    > Nie. C++ to znacznie więcej niż obiektowość. *Właśnie* w uC te inne niż
    > obiektowość rzeczy są przydatne. Takie jak destruktory, silne typy,
    > traits i ogólnie szablony w metaprogramowaniu.

    Szablony to się właśnie przydają przy dużych programach, gdzie jest
    potrzeba wykonywania tych samych operacji na różnych typach danych. Przy
    programowaniu na mikrokontrolery? - może czasem się mogłyby przydać, ale
    na pewno nie *właśnie* tam.

    Destruktory to cecha obiektowa, której zalety wychodzą szczególnie w
    przypadku typów polimorficznych, ale sam twierdzisz, że prawdziwie
    obiektowo, to nie chcesz pisać. Przy "zwykłych" typach, nie wnoszą jakiejś
    jakościowej różnicy, za to przez swoje "samoczynne" uruchamianie się
    stanowią niezłą okazję do implementacji subtelnych bugów, szczególnie u
    niezbyt doświadczonych programistów (a piszemy o mikrokontrolerach, które
    w praktyce, szczególnie w mniejszych firmach, najczęściej programują
    elektronicy).

    Silna typizacja, to kwestia gustu i konwencji, poza tym oba języki mają to
    na podobnym poziomie - tu i tu jest "static typing", tylko w C łatwiej to
    obejść bokiem, za to w C++ trzeba zrozumieć 4 różne operatory rzutowania
    wskaźników, a konwersje "kompatybilnych" typów i tak zachodzą
    automatycznie i gryzą tak samo jak w C. A jeśli chodzi o traits, to w C++
    to nie cecha języka, a jedynie idiom, poza tym chyba żartujesz podając to
    jako coś ponadmarginalnie przydatnego przy programowaniu mikrokontrolerów
    8-bit.

    > środowisko klepaczy w C [...] i lemmingi C nie widzą różnicy dalej
    > klepiąc kiepskie makra.

    Po co epitety? Dowartościowujesz się obrażając programistów C?

    >> próbujesz sugerować doborem cytatu, że uważam że w C++ kod zawsze musi
    >> być większy.
    >
    > Uważam że taki jest urban legend. Twoje wypowiedzi tylko to potwierdzają.

    Bardzo dziwną logikę stosujesz, skoro z moich wypowiedzi ma wynikać
    istnienie jakichś legend.

    Na moje stwierdzenie, że aby nie generować nadmiaru kodu, język trzeba by
    okroić przez samoograniczenie programisty, gwałtownie protestujesz, po
    czym stwierdzasz, że okroisz go z całego programowania obiektowego. No
    weź...

    >> W Adzie podobno
    >> trudniej (podobno, bo tu jestem tylko na poziomie "hello world").
    >
    > Całe szczeście że na 8-bit nikt nie pisuje w Adzie.

    Bardzo ciekawe. Akurat na twoje ulubione AVRy jest kompilator - powstał
    pewnie tylko dla zabawy. Poza tym, tego twojego nagłego czepienia się Ady
    nie rozumiem już zupełnie. To dlatego, że ja o niej napisałem, to już
    musisz być koniecznie przeciw?

    ae


  • 28. Data: 2012-05-02 01:28:30
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: Sebastian Biały <h...@p...onet.pl>

    On 2012-05-01 23:35, Andrzej Ekiert wrote:
    > Szablony to się właśnie przydają przy dużych programach, gdzie jest
    > potrzeba wykonywania tych samych operacji na różnych typach danych.

    Nie. Podstawowym zastosowaniem szablonów w małej skali beda traitsy i
    metaprogramowanie. Nijak nie ma tu mowy o powielaniu kodu w sensie
    std::vector< T >. To zupełnie inne zastosowanie niż to o którym piszesz.
    Ja rozumiem to jako podejście w stylu boost::mpl.

    > Destruktory to cecha obiektowa, której zalety wychodzą szczególnie w
    > przypadku typów polimorficznych

    Destruktory to cecha która nie wymaga podejścia obiektowego do
    programowania. Najprościej:

    struct CriticalSection {
    CriticalSection{ cli(); }
    ~CriticalSection{ sei(); }
    };

    To żadne programowanie obiektowe. A destruktor przydatny.

    > za to przez swoje "samoczynne" uruchamianie
    > się stanowią niezłą okazję do implementacji subtelnych bugów,
    > szczególnie u niezbyt doświadczonych programistów

    Odwrotnie: dzieki swojemu samoczynnemu dzialaniu *ochraniają* przed
    wieloma subtelnymi bugami w stylu "a mi się tu zapomniało zdjąć flagę
    przerwania".

    > podając to jako coś ponadmarginalnie przydatnego przy programowaniu
    > mikrokontrolerów 8-bit.

    Mi się przydaje. Przyznaje, idę pod prąd.

    >> środowisko klepaczy w C [...] i lemmingi C nie widzą różnicy dalej
    >> klepiąc kiepskie makra.

    > Po co epitety? Dowartościowujesz się obrażając programistów C?

    Ja juz nie musze się dowartościowywać od czasu kiedy usłyszałem od
    pewnego programisty uC że najlepszy kompilator to jakieś barachło pod
    DOSa w którym wszelakie optymalizacje należy i tak robić ręcznie w asm.
    Dziwnym trafem najczęsciej wlasnie takie teksty słyszę od tzw lemmingów.
    Ludzi którzy nie mają ochoty na zmiany, a na pewno nie w lepszym
    kierunku. Microchip doskonale wyczuł sytuacje dostarczając technologie
    wprost z lat 80. Malo tego, jest cała masa ludzi którzy preparują
    pseudo-merytoryczne argumenty dlaczego C jest lepsze niz C++ bo przeciez
    MC nie jest głupi.

    A MC nie jest głupi, ale tylko marketoidalnie...

    Moje marzenie to PIC w sensie peryferiów i AVR w sensie rdzenia. Ale sie
    nie doczekalem bo przyszły ARMy i pozamiatały.

    > Na moje stwierdzenie, że aby nie generować nadmiaru kodu, język trzeba
    > by okroić przez samoograniczenie programisty, gwałtownie protestujesz,
    > po czym stwierdzasz, że okroisz go z całego programowania obiektowego.

    Bo po co mi programownie obiektowe na 8-bit z 1k pamięci? C++ dostarcza
    masę innych narzędzi, obiekty to najmniej ważny element w uC.

    > Bardzo ciekawe. Akurat na twoje ulubione AVRy jest kompilator - powstał
    > pewnie tylko dla zabawy. Poza tym, tego twojego nagłego czepienia się
    > Ady nie rozumiem już zupełnie. To dlatego, że ja o niej napisałem, to
    > już musisz być koniecznie przeciw?

    Nie muszę. Ada to zacny język, choć obrośnięty legendą jakości która jak
    widać musi walczyć z faktami. Ale stawianie go obok C++ w kontekscie tej
    rozmowy uważam za niepoważne. *Nikt* nie pisze w Ada poza szumem
    statystycznym. Nie zmuszajmy MC żeby pisał kompilator Ady dla 0.01%
    programistow uC. Ale C++ mógłby. Wystarczylo sportować gcc. No chyba, że
    architektura PICów nie da się wmontować w backed gcc. Co za pech ...,
    znaczy design ...


  • 29. Data: 2012-05-02 10:44:46
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: Zbych <a...@o...pl>

    W dniu 2012-05-02 01:28, Sebastian Biały pisze:

    > Moje marzenie to PIC w sensie peryferiów i AVR w sensie rdzenia.

    To chyba raczej koszmar. Peryferia w PIC to sprytny księgowy projektuje.
    Jeden port ma podciąganie, inny nie; porty potrafią się różnić
    obciążalnością. Kanały ADC można włączać tylko zakresami (np.15..7 a nie
    pojedynczo). Najbardziej podoba mi się ADC w PICach z ethernetem. Jak
    się przekroczy napięcie zasilania na wejściu ADC to zaczyna płynąć prąd
    nie do linii Vcc, tylko do kanału aktualnie mierzonego :-). Jakiś
    humorysta to projektował.



  • 30. Data: 2012-05-02 14:52:02
    Temat: Re: [OT] [Zlecę] wykonanie interface'u Ethernetowego do architektury Z80
    Od: "Andrzej Ekiert" <d...@t...pl>

    Dnia 02-05-2012 o 01:28:30 Sebastian Biały <h...@p...onet.pl>
    napisał(a):

    > Ja rozumiem to jako podejście w stylu boost::mpl.
    >

    Ładne. Ale szczerze mówiąc to nie bardzo widzę, jaki problem to rozwiązuje
    w przypadku programowania naszego 8-bitowca z 1kB kodu.

    > Destruktory to cecha która nie wymaga podejścia obiektowego do
    > programowania. Najprościej:
    >
    > struct CriticalSection {
    > CriticalSection{ cli(); }
    > ~CriticalSection{ sei(); }
    > };

    Sprytne i fajnie pokazuje, jak działa destruktor. Ale ja bym po prostu
    napisał:

    cli();
    ... kod krytyczny
    sei();

    Lepiej widać w jednym miejscu co się dzieje, bez szukania definicji klasy
    CriticalSection, bez zastanawiania się gdzie jej obiekt wychodzi z
    zasięgu, no i bez ryzyka, że osoba, która nie jest autorem kodu nie
    zauważy, że wsród paru zmiennych lokalnych jest jakiś dziwny pozornie
    nieużywany obiekt.

    > Odwrotnie: dzieki swojemu samoczynnemu dzialaniu *ochraniają* przed
    > wieloma subtelnymi bugami w stylu "a mi się tu zapomniało zdjąć flagę
    > przerwania".

    Ja tam wolę widzieć przebieg programu, a nie musieć ciągle pamiętać, że
    między ostatnią instrukcją funkcji, a '}' uruchomi się jeszcze seria
    niewidzialnych funkcji. Zresztą, akurat w mojej praktyce programowania
    małych uC potrzeba nietrywialnej destrukcji "obiektu" zachodzi bardzo
    rzadko.

    >> podając to jako coś ponadmarginalnie przydatnego przy programowaniu
    >> mikrokontrolerów 8-bit.
    >
    > Mi się przydaje. Przyznaje, idę pod prąd.

    Skoro ci się przydaje i masz nawyk ciągłego stosowania takich konstrukcji,
    to rozumiem że koniecznie chcesz mieć C++.

    > Moje marzenie to PIC w sensie peryferiów i AVR w sensie rdzenia. Ale sie
    > nie doczekalem bo przyszły ARMy i pozamiatały.

    Architektura 16-bit Microchipa (PIC24, dsPIC33) to właśnie coś takiego.
    Bardzo elegancko zaprojektowana, przyjemnie się z tym pracuje - moim
    zdaniem dużo ładniejsza niż MIPS, którego użyli w PIC32, oraz niż ARM.

    > Nie zmuszajmy MC żeby pisał kompilator Ady dla 0.01% programistow uC.
    > Ale C++ mógłby. Wystarczylo sportować gcc.

    Nie zmusimy ich do niczego, bo tam kalkulacja jest prosta: zrobienie
    kompilatora kosztuje tyle, a zyskamy na tym tyle. Jeśli nierówność zaczyna
    wychodzić zdecydowanie na korzyść, to robią.

    > No chyba, że architektura PICów nie da się wmontować w backed gcc.

    gcc zostało przeniesione na architektury 16 i 32 bit. Jeśli chodzi o te 32
    bit (rdzeń MIPS) to spodziewam się, że prędzej czy później kompilator C++
    się pojawi. Do 16-bit też pewnie mogliby to w miarę tanio zrobić - mi
    zupełnie jednak na tym nie zależy.

    ae

strony : 1 . 2 . [ 3 ] . 4 ... 9


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: