Skocz do zawartości

Pomocna odpowiedź

7 godzin temu, FlyingDutch napisał:

Cześć,

trafiłem na kolejny wart polecenia kompletny kurs języka Verilog (w języku angielskim). Tutaj link do całej serii na Youtube:

https://www.youtube.com/watch?v=33PAoJGm2Fo&list=PL_3xKnVkfI2itQhCyfnamNYSCHd2KHi4k&index=1

Pozdrawiam

Dużo materiałów na necie opisuje układy właśnie tym językiem. Język vhdl jest moim zdaniem pod względem informacji dostępnych mniej popularny. Takie mam zdanie. 

W związku z tym mam pytanie czy język vhdl jest gorszy pod nieznanymi mi względami od języka verilog? Czy są to tylko moje subiektywne odczucia?

Kursy są wielką pomocą w zrozumieniu tematów i doceniam pracę ludzi którzy dzielą się bezinteresownie swoją wiedzą.

Pozdrawiam

NK

  • Lubię! 1
56 minut temu, FlyingDutch napisał:

Jeżeli mam rozpocząć nowy projekt i mam wybór to zawsze wybieram VHDL, niestety w sieci (Github) jest dużo więcej kodu dostepnego w Verilogu. Tak wiec moim zdaniem należy znać oba języki.

Dziękuję za wyjaśnienia.

Opisuję układy w vhdl ponieważ nauczyłem się podstawowych składni z książki i samouczków. Stąd moje pytania.

Pozdrawiam

  • Lubię! 1

O ile wiem Verilog nie jest już rozwijany i został niejako zastąpiony przez SystemVerilog - który nie jest aż tak popularny, ale posiada wiele cech, których w oryginale brakowało.

Natomiast jak chodzi o popularność VHDL vs. Verilog w dziedzinach wymienionych przez kolegę @FlyingDutch, to na pewno Verilog jest używany w przemyśle kosmicznym i obronnym.

  • Lubię! 2
21 minut temu, Elvis napisał:

Natomiast jak chodzi o popularność VHDL vs. Verilog w dziedzinach wymienionych przez kolegę @FlyingDutch, to na pewno Verilog jest używany w przemyśle kosmicznym i obronnym.

Kolega napisał, że vhdl jest częściej używany w przemyśle.

Z odpowiedzi wnioskuję, że kod vhdl opisuje w bardziej złożony sposób syntezę układu. Co za tym idzie, wynik syntezy musi być dokładniejszy lub inaczej mówiąc bardziej zbliżony do zamysłu projektanta.

Nie jestem programistą więc nie będę się wymadrząć. Próbuję logicznym tokiem rozumowania ogarnąć temat.

Pozdrawiam

 

  • Lubię! 1

@kroszkanorber W obu językach można uzyskać efekt założony przez projektanta. Różnica jest taka, że vhdl oferuje nieco wyższy poziom abstrakcji, ale podobne mechanizmy są dostępne w SystemVerilogu.

Z tego co wiem wszystko co można zrobić w Verilogu da się napisać w VHDL-u i odwrotnie. Wiele narzędzi, jak chociażby Vivado Xilinx-a pozwala na mieszanie w projekcie obu języków.

Nie wiem który język jest częściej używany w przemyśle, ale jak napisałem wcześniej - znam co najmniej jedną firmę zajmującą się przemysłem kosmicznym i obronnym, gdzie używany jest Verilog zmiast VHDL 🙂

  • Lubię! 2
(edytowany)
2 godziny temu, Elvis napisał:

@kroszkanorber

Nie wiem który język jest częściej używany w przemyśle, ale jak napisałem wcześniej - znam co najmniej jedną firmę zajmującą się przemysłem kosmicznym i obronnym, gdzie używany jest Verilog zmiast VHDL 🙂

Cześć  @Elvis,

mógłbyś podać nazwę tej firmy. Pytam z czystej ciekawości (oczywiście jeśli nie jest to tajemnica).

Z tego co wiem NASA uzywa VHDL nie Verilog. Patrz ten dokument:

https://standards.nasa.gov/sites/default/files/standards/NASA/Baseline/0/2022-06-06-NASA-HDBK-4011-Approved.pdf

VHDL jest jednym z zatwierdzonych standardów dla NASA.

Także ESA (Europejska Agencja Kosmiczna) uzywa VHDL'a jako standardu.

http://microelectronics.esa.int/vhdl/doc/UseOfVHDL.pdf

http://microelectronics.esa.int/vhdl/doc/BoardSim.pdf

Także Indyjski  łazik marsjański jest programowany w VHDL (i dodatkowo w ADA).

https://www.quora.com/What-programming-language-was-used-for-the-Indian-Mars-Orbiter-Mission-MOM-satellite

Natomiast z pewnością Verilog (i Sytem Verilog) jest uzywany dużo częściej w narzędziach EDA do projektowania i weryfikacji układów scaloncyh cyfrowych.

Pozdrawiam

Edytowano przez FlyingDutch
  • Lubię! 2

Analizując odpowiedzi domyślam się że verilog i vhdl są różniącymi się językami opisu sprzętu. Różnice polegają na tym że w procesie kontrukcji prototypu kolejnego rdzenia verilog jest właściwszy dla zastosowań syntezy "niskopoziomowej". Dla użytkownika vhdl może okazać się bardziej przyjazny w połączeniu bardziej złożonych struktur wewnątrz układu. Ogólnie bardzo ciekawy temat do nauki...

Pozdrawiam

 

  • Lubię! 1
56 minut temu, kroszkanorber napisał:

Analizując odpowiedzi domyślam się że verilog i vhdl są różniącymi się językami opisu sprzętu. Różnice polegają na tym że w procesie kontrukcji prototypu kolejnego rdzenia verilog jest właściwszy dla zastosowań syntezy "niskopoziomowej". Dla użytkownika vhdl może okazać się bardziej przyjazny w połączeniu bardziej złożonych struktur wewnątrz układu. Ogólnie bardzo ciekawy temat do nauki...

Pozdrawiam

 

to co powiedział @Elvis jest prawdą: oba języki są szeroko stosowane i wzajemnie wymienne (to co można zrobić w jednym z nich jest osiagalne w drugim). Niemniej róznią się i często wybór języka jest sprawą indywidualnych preferencji projektanta.

Pozdrawiam

  • Lubię! 1
(edytowany)

@FlyingDutch Firma mała i raczej mało znana, więc chyba nie ma sensu pisać nazwy. I może coś w tym być że używają Verilog-a bo mają własne układy ASIC, a nie tylko FPGA.

Z ciekawostek mogę natomiast dodać, że obecnie stosuje również programowanie w językach wysokiego poziomu. Przykładowo kod w C++ może być "skompilowany" do Veriloga, a następnie zsyntetyzowany. Nieco podobne podejście jest w przypadku Scali i tutaj również unika się pisania kodu w VHDL/Verilogu.

Nie pamiętam nazwy firmy, ale jakiś czas temu widziałem ogłoszenie o pracę firmy, chyba z segmentu "defense" i właśnie w wymaganiach była znajomość bibliotek opartych na Scali. Więc takie podejście też jest pewnie używane w przemyśle.

Edytowano przez Elvis
  • Lubię! 1
14 minut temu, Elvis napisał:

@FlyingDutch

Z ciekawostek mogę natomiast dodać, że obecnie stosuje również programowanie w językach wysokiego poziomu. Przykładowo kod w C++ może być "skompilowany" do Veriloga, a następnie zsyntetyzowany. Nieco podobne podejście jest w przypadku Scali i tutaj również unika się pisania kodu w VHDL/Verilogu.

@Elvis,

język oparty na Scali to Chisel:

https://en.wikipedia.org/wiki/Chisel_(programming_language)

Miałem raz do czynienia z projektem w tym języku, ale nie poradziłem sobie z nim bo za mało znam Scalę. Dlateo jesli mogę to wolę wybrać projekt w Verilogu, lub VHDL'u. Bardziej przypadło mi do gustu "Vivado HLS" (High Level Synthesiis) i programy w C++ - jest to jak najbardziej używalne.

Pozdrawiam

Dnia 8.10.2023 o 18:00, FlyingDutch napisał:

to co powiedział @Elvis jest prawdą: oba języki są szeroko stosowane i wzajemnie wymienne (to co można zrobić w jednym z nich jest osiagalne w drugim). Niemniej róznią się i często wybór języka jest sprawą indywidualnych preferencji projektanta.

Pozdrawiam

A jednak moje subiektywne odczucia nie są błędne. Poszperałem w necie i znalazłem podobne odpowiedzi do mojej. Języki vhdl i verilog się różnią i zastosowanie jednego z nich jest uzasadnione strukturą którą opisujemy wewnątrz układu a nie swoim widzi mi się... Dlatego warto znać oba języki... Niemniej można używać verilog i vhdl ponieważ kod wynikowy jest ten sam, ale czy na pewno? To jest jeszcze do sprawdzenia dla bardziej ambitnych.

Pozdrawiam

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...