eGospodarka.pl
wiadomość od św. Mikołaja

eGospodarka.plGrupypl.misc.elektronika › [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
Ilość wypowiedzi w tym wątku: 23

  • 1. Data: 2018-03-07 23:46:24
    Temat: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: g...@s...invalid (Adam Wysocki)

    Hej,

    Przymierzając się do zabawy z CPLD zacząłem uczyć się VHDLa z książki "The
    Designer's Guide To VHDL" (trzecia edycja).

    W ćwiczeniach na końcu pierwszego rozdziału każą napisać "entity
    declaration and a behavioral architecture body" (polskie tłumaczenie,
    które przychodzi mi na myśl, brzmi idiotycznie) prostego multipleksera.
    Dwa wejścia ('a' i 'b'), sygnał wybierający ('sel') i wyjście 'z'. Wyjście
    ma przyjąć wartość wejścia 'b' dla sel=1 lub 'a' dla sel=0.

    Napisałem:

    #v+
    entity mux2 is
    port (a, b, sel: in bit; z: out bit);
    end entity mux2;

    architecture mux2_behav of mux2 is begin
    mux2: process is begin
    if sel then
    z <= b after 5ns;
    else
    z <= a after 5ns;
    end if;
    end process mux2;
    end architecture mux2_behav;
    #v-

    i jest problem, bo teraz chcę to zasymulować.

    Debianowe apt-cache znajduje mi m.in.:

    fauhdlc - experimental VHDL compiler and interpreter
    freehdl - VHDL simulator for Linux

    gvhdl (frontend do freehdl) niestety twierdzi, że:

    #v+
    $ gvhdl ch1-10.vhdl
    gvhdl: FreeHDL root path is '/usr'.
    gvhdl: executing '/usr/bin/freehdl-v2cc -m ch1-10._main_.cc -L
    /usr/share/freehdl/lib -o ch1-10.cc ch1-10.vhdl'
    ch1-10.vhdl: in mux2(mux2_behav):
    ch1-10.vhdl:7: sel does not match required type BOOLEAN, its type could be:
    /usr/share/freehdl/lib/std/standard.vhdl:6: BIT
    v2cc: ch1-10.vhdl: 1 errors
    gvhdl: Compilation failed!
    Died at /usr/bin/gvhdl line 211.
    #v-

    fauhdlc nie rozpoznaje symbolu 5ns:

    #v+
    $ fauhdlc ch1-10.vhdl
    ERROR> ch1-10.vhdl:8: Symbol '5ns' undefined.
    ERROR> ch1-10.vhdl:10: Symbol '5ns' undefined.
    #v-

    a po wykomentowaniu go twierdzi mniej więcej to samo, co freehdl:

    #v+
    $ fauhdlc ch1-10.vhdl
    ERROR> ch1-10.vhdl:7: Type error for <sel>.
    #v-

    Rozumiem że nie pasuje im "if sel then", bo sel jest typu 'bit', a nie
    boolean.

    Stąd pytania:

    1. Czy robię coś nie tak? Czy nie można w ten sposób porównywać bitów, lub
    można tylko od określonej wersji języka (np. 2008)? Książka twierdzi, że
    można, zresztą przykłady z niej wykładają się w analogiczny sposób.

    2. Nie wiem, czy te dwa symulatory w ogóle obsługują VHDL-2008. Próbowałem
    zrobić komentarz /* ... */, a nie --, bo to podobno cecha VHDL-2008
    (poniżej można tylko --). Nie rozpoznały, wyłożyły się na tym. Nie widzę
    też nigdzie opcji wyboru wersji języka.

    3. Jaki symulator polecacie? Niekoniecznie dla Linuksa, choć to byłoby
    duże ułatwienie. Chodzi o naukę, ale ukierunkowaną na to, żeby prędzej czy
    później stworzyć model, który da się zsyntetyzować do postaci, którą da
    się wrzucić do CPLD.

    --
    [ Email: a@b a=grp b=chmurka.net ]
    [ Web: http://www.chmurka.net/ ]


  • 2. Data: 2018-03-08 22:05:42
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: Sebastian Biały <h...@p...onet.pl>

    On 3/7/2018 11:46 PM, Adam Wysocki wrote:
    > [ciach]

    Ogolnie nie ma darmowych w takim sensie jak kompilatory software. Te co
    są, są żałosne.

    Sprawdź jednak taką drogę przez mękę:

    https://www.xilinx.com/products/design-tools/isim.ht
    ml

    Wiele narzędzi do projektowania FPGA zawiera jakieś symulatory więc
    szukaj tam, nie spodziewaj się jednak że znajdziesz tam wszystko za
    friko. W EDA nawet wersje demo mają imienną licencje.


  • 3. Data: 2018-03-08 22:56:21
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: s...@g...com

    W dniu środa, 7 marca 2018 23:46:27 UTC+1 użytkownik Adam Wysocki napisał:

    [ciach]

    1. Wywal te książkę do hasioka.
    2. Wejdź na www.xilinx.com i zassaj sobie ISE-14.7. Darmowy Webpack, wersja pod Win i
    Linux, jak Ci pasuje. Jest to zintegrowane środowisko projektowe. Masz tam całkiem
    sensowny symulator iSim. Można się tam do paru rzeczy przyczepić, ale nie jest źle.
    3. W ISE jest też taka podpowiadaczka językowa. Podstawy powinieneś intuicyjnie
    załapać. Poza tym w sieci jest od cholery tutoriali.
    4. Multiplekser napisz najpierw w wersji syntezowalnej:
    entity mux is
    Port ( A : in STD_LOGIC;
    B : in STD_LOGIC;
    SEL : in STD_LOGIC;
    Q : out STD_LOGIC);
    end mux;

    architecture Behavioral of mux is

    begin
    process(A,B,SEL)
    begin
    case SEL is
    when '0' => Q<=A;
    when '1' => Q<=B;
    when others => null;
    end case;

    end process;


    end Behavioral;

    Prawda że intuicyjne?

    4. Potem napisz sobie testbencha. Jak czegoś nie będziesz wiedział, to pytaj tutaj.


  • 4. Data: 2018-03-09 14:41:19
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: s...@g...com

    W dniu czwartek, 8 marca 2018 22:05:52 UTC+1 użytkownik Sebastian Biały napisał:
    > On 3/7/2018 11:46 PM, Adam Wysocki wrote:
    > > [ciach]
    >
    > Ogolnie nie ma darmowych w takim sensie jak kompilatory software. Te co
    > są, są żałosne.

    BZDURA !!

    >
    > Sprawdź jednak taką drogę przez mękę:
    >
    > https://www.xilinx.com/products/design-tools/isim.ht
    ml

    Gdzie tu widzisz "mękę"? Minusem istotnie jest brak "analogowego", tzn. graficznego
    obrazowanie szyny, ot takiego graficznego, "oscyloskopowego" wyświetlania zawartości
    szyny.

    >
    > Wiele narzędzi do projektowania FPGA zawiera jakieś symulatory więc
    > szukaj tam, nie spodziewaj się jednak że znajdziesz tam wszystko za
    > friko.

    Darmowy Webpack Xilinx'a wystarcza do naprawdę bardzo rozbudowanych projektów. W
    darmówce są ograniczenia co do układów z najwyższej półki i "wyuzdanych" IP.

    > W EDA nawet wersje demo mają imienną licencje.

    Jakie EDA?


  • 5. Data: 2018-03-09 23:24:28
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: Sebastian Biały <h...@p...onet.pl>

    On 3/9/2018 2:41 PM, s...@g...com wrote:
    >> Ogolnie nie ma darmowych w takim sensie jak kompilatory software. Te co
    >> są, są żałosne.
    > BZDURA !!
    Wszystkie kompilatory/symulatory HDL dostępne w srodowiskach "darmowych"
    posiadają solidne ograniczenia: od rozmiaru, przez dostepne peryferia po
    szybkośc symulacji i zakres stosowanych standardów języka. Nie istnieje
    nic darmowego i pełnego (jak clang/gcc w software) co nadąża za
    standardem języków HDL, dostajesz bardziej coś na kształt wersji demo.
    Prawda tez taka że za standardem SystemVeriloga nikt nie nadąża bo
    robiony po pijaku ale przynajmniej komercyjni się starają kiedy świat
    free software nie jest w stanie zrobić sensownego parsera
    średniowiecznych wersji VHDLa czy Veriloga.

    >> Sprawdź jednak taką drogę przez mękę:
    >> https://www.xilinx.com/products/design-tools/isim.ht
    ml
    > Gdzie tu widzisz "mękę"?
    Ogromne środowisko pełne śmieci zbędnych do odpalenia prostych
    przykładów do nauki. Vivado zaczyna przekraczać zdrowy rozsadek nawet w
    standardzie duzych programów na PC i ściga się z najnowszymi grami pod
    kątem zjadania zasobów wszelakich.

    > Minusem istotnie jest brak "analogowego", tzn. graficznego
    obrazowanie szyny, ot takiego graficznego, "oscyloskopowego"
    wyświetlania zawartości szyny.
    To jest nic w porownaniu z zasobożernością tych środowisk.

    > Darmowy Webpack Xilinx'a wystarcza do naprawdę bardzo rozbudowanych
    projektów. W darmówce są ograniczenia co do układów z najwyższej półki i
    "wyuzdanych" IP.
    Co całkowicie usprawiedliwia moje twierdzenie że nie ma darmowych
    środowisk w sensie jak sa darmowe kompilatory software. Te ograniczenia
    w symulatorach HDL bywają bolesne kiedy jednoczesnie rynek software jest
    zawalony setkami kompialtorów nie dośc że bez ograniczen to i często z
    otwartym źródłem.

    >> W EDA nawet wersje demo mają imienną licencje.
    > Jakie EDA?
    https://en.wikipedia.org/wiki/Electronic_design_auto
    mation


  • 6. Data: 2018-03-12 11:58:32
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: g...@s...invalid (Adam Wysocki)

    Sebastian Biały <h...@p...onet.pl> wrote:

    >> [ciach]
    >
    > Ogolnie nie ma darmowych w takim sensie jak kompilatory software. Te co
    > są, są żałosne.

    A ghdl? Ktoś mi polecił, ale nadal nie mogę zmusić go do działania (tzn.
    coś odpala, chyba nie to, co chcę, i wisi ze 100% użycia CPU).

    https://groups.google.com/forum/#!topic/comp.lang.vh
    dl/1Xgjo8CkxmA

    > https://www.xilinx.com/products/design-tools/isim.ht
    ml

    Na pierwszy rzut oka wydaje się kobylaste... ale jak trzeba, to trzeba.

    Toole Xilinxa bardzo różnią się od tooli Lattice?

    Jeszcze sobie to zgrałem na czytnik (jeszcze nie czytałem):
    https://tams.informatik.uni-hamburg.de/vhdl/doc/faq/
    FAQ1.html

    > Wiele narzędzi do projektowania FPGA zawiera jakieś symulatory więc
    > szukaj tam, nie spodziewaj się jednak że znajdziesz tam wszystko za
    > friko. W EDA nawet wersje demo mają imienną licencje.

    Pytanie ile to "nie-friko". Czy da się kupić układ CPLD i po prostu go
    skonfigurować jakimiś darmowymi narzędziami, czy można o tym zapomnieć?

    --
    [ Email: a@b a=grp b=chmurka.net ]
    [ Web: http://www.chmurka.net/ ]


  • 7. Data: 2018-03-12 12:00:43
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: g...@s...invalid (Adam Wysocki)

    Sebastian Biały <h...@p...onet.pl> wrote:

    > Wszystkie kompilatory/symulatory HDL dostępne w srodowiskach "darmowych"
    > posiadają solidne ograniczenia: od rozmiaru, przez dostepne peryferia po
    > szybkośc symulacji i zakres stosowanych standardów języka. Nie istnieje
    > nic darmowego i pełnego (jak clang/gcc w software) co nadąża za
    > standardem języków HDL, dostajesz bardziej coś na kształt wersji demo.

    Pytanie czy to demo nie wystarczy do amatorskich zastosowań...

    > To jest nic w porownaniu z zasobożernością tych środowisk.

    A ja miałem cichą nadzieję, że odpalę to na swoim raspi... ghdl nie chciał
    się skompilować, bo z jakiegoś powodu ma jakieś wstawki assemblerowe, ale
    na x86 poszedł.

    --
    [ Email: a@b a=grp b=chmurka.net ]
    [ Web: http://www.chmurka.net/ ]


  • 8. Data: 2018-03-12 12:07:49
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: g...@s...invalid (Adam Wysocki)

    s...@g...com wrote:

    > 1. Wywal te książkę do hasioka.

    Ludzie ją polecali... z drugiej strony po pierwszym rozdziale mam
    wrażenie, że zbytnio komplikuje proste sprawy. Ale może tak musi.

    Jest jakaś książka albo tutorial, które polecasz do nauki zamiast tej?

    > 2. Wejdź na www.xilinx.com i zassaj sobie ISE-14.7. Darmowy Webpack,
    > wersja pod Win i Linux, jak Ci pasuje. Jest to zintegrowane środowisko
    > projektowe. Masz tam całkiem sensowny symulator iSim. Można się tam do
    > paru rzeczy przyczepić, ale nie jest źle.

    2 GB... straszna kobyła... naprawdę nie ma nic mniejszego?

    > 4. Multiplekser napisz najpierw w wersji syntezowalnej:
    > entity mux is
    > Port ( A : in STD_LOGIC;
    > B : in STD_LOGIC;
    > SEL : in STD_LOGIC;
    > Q : out STD_LOGIC);
    > end mux;
    >
    > architecture Behavioral of mux is
    >
    > begin
    > process(A,B,SEL)
    > begin
    > case SEL is
    > when '0' => Q<=A;
    > when '1' => Q<=B;
    > when others => null;
    > end case;
    >
    > end process;
    >
    >
    > end Behavioral;
    >
    > Prawda że intuicyjne?

    Tak... trochę inaczej, niż w książce, ale intuicyjne. W sensie rozumiem,
    co tu jest napisane, ale chyba jeszcze nie napisałbym tego od podstaw.

    > 4. Potem napisz sobie testbencha. Jak czegoś nie będziesz wiedział, to
    > pytaj tutaj.

    Na razie mam problem z odpaleniem testbencha w ghdlu... mam wrażenie, że
    odpala się nie to, co bym chciał. Pisałem o tym na comp.lang.vhdl:

    https://groups.google.com/forum/#!topic/comp.lang.vh
    dl/1Xgjo8CkxmA

    --
    [ Email: a@b a=grp b=chmurka.net ]
    [ Web: http://www.chmurka.net/ ]


  • 9. Data: 2018-03-12 20:21:18
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: Sebastian Biały <h...@p...onet.pl>

    On 3/12/2018 12:00 PM, Adam Wysocki wrote:
    >> Wszystkie kompilatory/symulatory HDL dostępne w srodowiskach "darmowych"
    >> posiadają solidne ograniczenia: od rozmiaru, przez dostepne peryferia po
    >> szybkośc symulacji i zakres stosowanych standardów języka. Nie istnieje
    >> nic darmowego i pełnego (jak clang/gcc w software) co nadąża za
    >> standardem języków HDL, dostajesz bardziej coś na kształt wersji demo.
    > Pytanie czy to demo nie wystarczy do amatorskich zastosowań...

    Wystarczy, ale jak mówie to droga przez mekę. Szczególnie dla osób
    przyzwyczajonych do rynku software gdzie można znaleźć dobre kompilatory
    w paczkach z repo i nikt nie robi łaski z jakąs licencją i dziesiątkami
    gigabajtów bloatdata.


  • 10. Data: 2018-03-12 20:33:34
    Temat: Re: [VHDL] Pierwsze kroki, jaki symulator VHDL-2008 dla Linuksa (lub niekoniecznie)?
    Od: Sebastian Biały <h...@p...onet.pl>

    On 3/12/2018 11:58 AM, Adam Wysocki wrote:
    >> Ogolnie nie ma darmowych w takim sensie jak kompilatory software. Te co
    >> są, są żałosne.
    > A ghdl? Ktoś mi polecił, ale nadal nie mogę zmusić go do działania (tzn.
    > coś odpala, chyba nie to, co chcę, i wisi ze 100% użycia CPU).

    Nie ma Veriloga, nie ma mixed. Jestes ograniczony do VHDLa i jego starej
    wersji. Do hello gate się nadaje, ale jak przyjdzie ochota korzystania z
    gotowca to okaże się że ten co chcesz napisali w Verilogu i dupa.

    Możesz obejrzec jeszcze Verilator:

    https://www.veripool.org/wiki/verilator

    i Icarus:

    http://iverilog.icarus.com/

    Wszystkie one maja się nijak do komercyjnych symulatorów z uwagi na brak
    wsparcia nowych konstrukcji i brak cholerne ważnych i poważnych ficzerów
    (jak asercje np).

    > Toole Xilinxa bardzo różnią się od tooli Lattice?

    Prawde mówić nie wiem co miało by być dla Ciebie istotne, ale wiem co
    jest istotne ogólnie: wybierasz taki jaki masz hardware docelowy. I tyle
    wolnego wyboru.

    >> Wiele narzędzi do projektowania FPGA zawiera jakieś symulatory więc
    >> szukaj tam, nie spodziewaj się jednak że znajdziesz tam wszystko za
    >> friko. W EDA nawet wersje demo mają imienną licencje.
    > Pytanie ile to "nie-friko".

    Nie ma górnego pulapu dla zastosowan komercyjnych, dodatkowo licencje są
    czasowe. Spodziewaj się kilku tyś $ za rok na jedno stanowisko za
    porzadny symulator (synteze kupujesz osobno, i jeszcze kilka innych
    tooli, razem wychodzi za dużo żeby to sobie wyobrazić).

    > Czy da się kupić układ CPLD i po prostu go
    > skonfigurować jakimiś darmowymi narzędziami, czy można o tym zapomnieć?

    Można. Ale nie spodziewaj się czegokolwiek, budowa wewnatrzna jest
    niejawna i każda nowa rodzina, ba, pojedyncza kostka to hacking i
    reverse engeneering. Nie masz szans na to aby kiedykowiek jakiś open
    source zrobił poprawna syntezę i place&route generując poprawny
    bitstream poza pojedynczymi glitchami jak ten:

    http://www.clifford.at/icestorm/

    Zerknij ogolnie tutaj:

    http://www.fpga-site.com/lowcost.shtml

strony : [ 1 ] . 2 . 3



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:

Ok, rozumiem Strona wykorzystuje pliki cookies w celu prawidłowego jej działania oraz korzystania z narzędzi analitycznych, reklamowych, marketingowych i społecznościowych. Szczegóły znajdują się w Polityce Prywatności. Dalsze korzystanie ze strony oznacza, że zgadzasz się na ich użycie. Jeśli nie chcesz, aby pliki cookies były zapisywane w pamięci Twojego urządzenia, możesz to zmienić za pomocą ustawień przeglądarki.