eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingFPGA z punktu widzenia programistyRe: FPGA z punktu widzenia programisty
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!.POSTED!not-for-mail
    From: Sebastian Biały <h...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: FPGA z punktu widzenia programisty
    Date: Fri, 19 Feb 2016 10:16:36 +0100
    Organization: ATMAN - ATM S.A.
    Lines: 40
    Message-ID: <na6mjp$7ct$1@node2.news.atman.pl>
    References: <3...@g...com>
    <n9ms9k$mhq$1@node2.news.atman.pl>
    <c...@g...com>
    <na51pg$ig7$1@node2.news.atman.pl>
    <e...@g...com>
    NNTP-Posting-Host: 176-115-85-233.via.zamek.net.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: node2.news.atman.pl 1455873465 7581 176.115.85.233 (19 Feb 2016 09:17:45
    GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Fri, 19 Feb 2016 09:17:45 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:38.0) Gecko/20100101 Thunderbird/38.6.0
    In-Reply-To: <e...@g...com>
    Xref: news-archive.icm.edu.pl pl.comp.programming:209143
    [ ukryj nagłówki ]

    On 2016-02-18 22:13, M.M. wrote:
    >> Ponadto OpenCL to jednak jezyk szeregowy, tyle że odpalany w dużej
    >> ilości instancji. Programowanie FPGA/ASIC polega jednak na pozbyciu się
    >> szeregowości w najmniejszych detalach.
    > Na jakim najniższym poziomie to się programuje? Na poziomie bramki logicznej,
    > tranzysotra, czy jeszcze niżej?

    To zabawne pytanie bo odpowiedź nie istnieje ;)

    Ogolnie ten sam jezyk (verilog/vhdl) pozwala na pisanie:

    a) na poziomie testowania kodu (pi x drzwi odpowiednik unit testów).
    Przypomina to "normalne programowanie", w verilogu jest to nawet obiektowe.

    b) na poziomie bardzo rozbudowanych asercji i nie tylko (nie ma
    sensownej analogii, może coverage kodu jest najbliżej ale to dalej kilometr)

    c) na pozimie gruboskalowanego zachowania algorytmiki gdzie istnieją
    resztki normalnego programowania z pętlami, funckjami, zmiennymi
    lokalnymi itd.

    d) na poziomie składania hardware z funkcjonalnych bloków tylko zamiast
    interfejsów zazwyczaj będą tam druty.

    e) na poziomie pojedynczych bramek i przerzutników.

    f) na poziomie modelowania zjawisk w tranzystorach (acz mocno z grubsza).

    g) na poziomie zdarzeń (de facto każdy hdl jest językiem zorientowanym
    zdarzeniowo, troche jak erlang, ale tylko trochę).

    Szczególnie elastyczny stał się tutaj verilog który załatwia wszystkie
    tematy, ale to głównie dlatego że jest chaotycznie rozwijany we
    wszystkie strony :D

    Wielu ludzi z "normalnego programowania" przeżyje szok po wejściu w
    świat HDLa z uwagi na wiele idiotyzmów i workaroundów. Ale ciekawostką
    jest że np. w punkcie a) można wejśc z marszu, a w punkcie e)-g) studia
    z elektroniki to często za mało.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: