Язык Verilog

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Язык Verilog

Post by Shaos »

Lavr wrote:Ну, джентльмены, не ругайтесь! :lol: Да, я собираюсь порисовать схемы... Потому что мне это просто еще и нравится! :kruto:

Вы же сначала тоже порисовали схемы? Вот и я сначала немного порисую... :ewink:

Как там говорила КПСС? 8) - Все нации придут к коммунизму, но каждая - своим путём... :wink:


P.S. Хотя, если быть честным, я всё же начал с Verilog HDL...
Поглядел я тут повнимательнее на этот ваш Вырвиглотк - фигня ещё та :roll:
В VHDL хотя бы есть возможность просто тупо расставлять "корпуса" в тексте "программы", а тут ты только как программу и можешь писать
Потом все говорят что это типа как на Сях писать - ага щас - теже бегины и энды как в этих ваших паскалях/модулах
Присвоения - пиши "assign" будто это бейсик (там хотя бы короче было - просто LET)
Триггеры-регистры задаются через ключевое слово always (почему то всегда с собакой) и переменные типа reg - и писать надо какие-то длинные ключевые слова - типа "posedge"
Короче нафик-нафик - я лучше схемки порисую и сделаю конвертер в VHDL из того же логисима :mrgreen:
Ну или свой HDL/RTL язык изобрету более похожий на Си :eugeek:
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
fifan
Devil
Posts: 912
Joined: 06 Oct 2006 03:17
Location: г.Лянтор,Сургутского р-на,ХМАО

Re: Starting with FPGA

Post by fifan »

Да я тоже не очень хорошо к верилогу отношусь. На vhdl как-то более понятно. Хотя уже готовые блоки на верилоге использую, например PS/2 адаптер клавиатуры в Специалисте на u10 Reverse.
azesmbog
Novelist
Posts: 28
Joined: 15 Jun 2018 16:58

Re: Starting with FPGA

Post by azesmbog »

Ну да, нуда, сколько человек -столько же мнений. (Л.?)
Точно так же есть разработчики, которые не приемлят VHDL, и даже чужие блоки переписывают на Verilog, или да жи на System Verilog и ругают VHDL и их адептов, добрыми словами конечно. В идеале надо и то и другое знать и понимать, всюду свои плюсы и большие плюсы. Как впрочем иногда бывают и обратные случАи - из System Verilog сделать самый обычный Verilog :(
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Starting with FPGA

Post by Shaos »

Я видел проект на SystemVerilog (который был затем синтезирован в чип), где люди написали на верилоге свои примитивы - типа MUX и т.д. :)

Code: Select all

module mux2 #(parameter WIDTH = 8)
             (input  logic [WIDTH-1:0] d0, d1, 
              input  logic             s, 
              output logic [WIDTH-1:0] y);

  assign y = s ? d1 : d0; 
endmodule
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Starting with FPGA

Post by Shaos »

По ходу копания в верилоговском наследии всё больше и больше убеждаюсь, что выдумывали верилог сильно обкуренные люди ибо там всё через задницу...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Icer
Senior
Posts: 163
Joined: 21 Aug 2018 07:39
Location: Кемеровская обл.

Re: Starting with FPGA

Post by Icer »

Shaos wrote:По ходу копания в верилоговском наследии всё больше и больше убеждаюсь, что выдумывали верилог сильно обкуренные люди ибо там всё через задницу...
Можно хотя бы пару укуренных примеров?
Только начал изучать Verilog и нахожусь под впечатлением от мощи плисин. Какого либо отторжения не чувствую.
Sorgelig
Writer
Posts: 11
Joined: 22 Aug 2018 14:37

Re: Язык Verilog

Post by Sorgelig »

Интересно, каким де образом в VHDL расставляются корпуса микросхем? И что мешает их так же расставлять в Verilog?
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Starting with FPGA

Post by Shaos »

Icer wrote:
Shaos wrote:По ходу копания в верилоговском наследии всё больше и больше убеждаюсь, что выдумывали верилог сильно обкуренные люди ибо там всё через задницу...
Можно хотя бы пару укуренных примеров?
Только начал изучать Verilog и нахожусь под впечатлением от мощи плисин. Какого либо отторжения не чувствую.
Самая укурка имеет место быть с case/casez/casex :idea:

см.https://www.verilogpro.com/verilog-case-casez-casex/
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Язык Verilog

Post by Shaos »

Sorgelig wrote:Интересно, каким де образом в VHDL расставляются корпуса микросхем? И что мешает их так же расставлять в Verilog?
Ну вот как-то так:

Code: Select all

clk1: ternary_clock port map( B_C => tmp_clk, T_C => ss0 );
mux1: ternary_mux port map( T_S => ss0, T_N => O, T_O => O, T_P => P, T_C => pclk );
mux2: ternary_mux port map( T_S => res1, T_N => pclk, T_O => N, T_P => N, T_C => pclk1 );
mux3: ternary_mux port map( T_S => ss0, T_N => N, T_O => O, T_P => O, T_C => nclk );
mux4: ternary_mux port map( T_S => res1, T_N => nclk, T_O => P, T_P => P, T_C => nclk1 );
в верилоге вроде тоже чото подобное можно:

Code: Select all

half_adder u1_half_adder
(
.in_x(in_x),
.in_y(in_y),
.out_sum(w_sum1),
.out_carry(w_carry1)
);                    
half_adder u2_half_adder
(
.in_x(w_sum1),
.in_y(carry_in),
.out_sum(sum_out),
.out_carry(w_carry2)
);  
Но там нету подтяжек...
Я тут за главного - если что шлите мыло на me собака shaos точка net
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: Язык Verilog

Post by IgorR76 »

Я "нарисовал" на верилоге немаленькую схему старого устройства, к тому же асинхронную. Мне оказалось вполне удобно. И модули есть, и логические элементы можно сделать. Casex и casez не использовал-для обычной логики 155й серии не пригодилось вовсе.
А какие подтяжки нужны? :)
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Язык Verilog

Post by Shaos »

weak pull-ups/pull-downs

и потом хоть там и есть Z, но внутри оно в реальности не сработает - только по выходам прошиваемой микросхемы (и то, если тулзы поддерживают)

короче полный обман народонаселения :)

P.S. асинхронные схемы для FPGA противопоказаны - мне это рассказали на одном симпозиуме индустриальных железячников...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Язык Verilog

Post by Lavr »

Shaos wrote:асинхронные схемы для FPGA противопоказаны - мне это рассказали на одном симпозиуме индустриальных железячников...
Но, как показывает практика - вполне работают асинхронные схемы в FPGA... :roll:
iLavr
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: Язык Verilog

Post by IgorR76 »

Вообще типы сигналов (wire) в языке описываются. Раздел 3 ieee standard verilog. Drive strength.
Если говорить об Альтере, то к физ. выводам подтяжка назначается, если есть возможность в плисе, а к внутренним логическим неприменимо, в схеме LE не предусмотрено.
Last edited by IgorR76 on 25 Aug 2021 17:43, edited 1 time in total.
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Язык Вырвиглотк

Post by Shaos »

Ну внутри FPGA общие шины интерконнекта - к ним может цепляться, может нет - почему бы и не поддержать Z внутри? Да и подтяжки тоже скорее всего есть...

P.S. "signal strength" как-то не по электронному звучит - это вообще в тулзах поддержано в каких-то?...
Simplified Syntax
(Strength1, Strength0)
(Strength0, Strength1)
Strength1:
supply1, strong1, pull1, large1, weak1, medium1, small1, highz1
Strength0:
supply0, strong0, pull0, large0, weak0, medium0, small0, highz0
они были все укуренные это точно...
Я тут за главного - если что шлите мыло на me собака shaos точка net
IgorR76
Senior
Posts: 102
Joined: 27 Jul 2015 15:20

Re: Язык Вырвиглотк

Post by IgorR76 »

Ну потому что подтяжек то к этим шинам нет... Это получится как использование неинициализированных переменных в C. Надо чтоб производители железа такое поддержали в плисах. Но и без них (подтяжек) прекрасно обходятся.