User Tag List

Страница 5 из 6 ПерваяПервая 123456 ПоследняяПоследняя
Показано с 41 по 50 из 52

Тема: Выбор языка описания электронных схем (Verilog, VHDL и другие)

  1. #41

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Естественно, тот который сделал синтезатор. Согласно описанию на языке

    - - - Добавлено - - -

    Смотри RTL

  2. #42

    Регистрация
    20.01.2010
    Адрес
    г. Зеленоград
    Сообщений
    600
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    231
    Поблагодарили
    123 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от mastermind Посмотреть сообщение
    Как все сложно. Освойте уже Clash.
    Что? Этот убогий псевдоязык, у которого нет даже собственного компилятора? Средств верификации? Синтаксис которого более многословен, чем у VHDL, и более уродлив, чем у Verilog?

    На котором, прошу прощения, нельзя описать даже простейший RS-триггер?

    Цитата Сообщение от mastermind Посмотреть сообщение
    Он вам из простого функционального исходника сгенерирует хоть VHDL, хоть Verilog: https://clash-lang.org/
    Он из сложного, многословного и путаного исходника сгенерируtт write-only непонятный VHDL или Verilog, про который нельзя будет даже проверить, была ли генерация корректной.

    Элементарнейший пример уродства Clash:

    Код:
    adc :: Byte -> Byte -> Byte -> (Byte, Byte)
    adc flags a b = adcSbc A.AluADD flags a b
    Вот зачем отдельно указывать сигнатуру функции и отдельно её список аргументов? Чтобы ошибок насажать на ровном месте? Сравним с нормальным языком:

    Код:
    function adc(flags : byte; a : byte; b : byte) return alu_result is
    begin
    	adc <= adc_sbc(ALU_ADD, flags, a, b);
    end;
    Да, конкретно в случае однострочных обёрток над универсальной функцией VHDL более многословен. Но и то -- шансов накосячить из-за опечатки значительно меньше.

    Кстати, код вверху взят из реального проекта, написанного на Clash: https://github.com/polygonhell/Clash6502

    Это попытка реализовать знаменитый процессор nMOS 6502 на Clash. Конкретно -- реализация АЛУ: https://github.com/polygonhell/Clash.../master/Alu.hs

    В нём строк кода больше, чем в АЛУ оригинального процессора имеется транзисторов. Оцените компактность и выразительность этого языка.

    И заодно уровень интеллекта автора: там для каждой команды имеется своя реализация -- ну вот как для adc выше -- и выходной мультиплексор на 50+1 вход. То есть, там 50 специализированных экземпляров АЛУ.

    И ссылка на ЭТО висит на официальном сайте Clash! https://clash-lang.org/documentation/ , вторая в последнем блоке.

    Я полагаю, больше примеров приводить не надо, масштабы катастрофы уже ясны и так.

  3. #43

    Регистрация
    11.01.2008
    Адрес
    Ладошкино
    Сообщений
    1,811
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    386
    Спасибо Благодарностей получено 
    339
    Поблагодарили
    244 сообщений
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот да, попадались и мне проекты на Clash, но видимо не для моего интеллекта, и как их развернуть во что то привычное - я так и не понял.
    Profi v3.2 -=- Speccy2010,r2

  4. #44

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от s_kosorev Посмотреть сообщение
    Естественно, тот который сделал синтезатор. Согласно описанию на языке

    - - - Добавлено - - -

    Смотри RTL
    Посмотрел

    меня глючит или оно таки синхронное?

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

  5. #45

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Serg6845 Посмотреть сообщение
    меня глючит или оно таки синхронное?
    Синхронное, мне повылазило, думал буфер это отдельный кусок схемы, еще бы посмотреть на rtl сгенеренный по VHDL

    Но вот к примеру на verilog
    Код:
    module Test1(
    	input		wire		clk,
    	input		wire		oe_n,
    	input		wire		ud,
    	output	wire[7:0]q
    );
    
    reg [7:0]	        qreg = 0;
    assign		q = !oe_n ? qreg : 8'hzz;
    
    always @ (posedge clk)  qreg += ud ? 1 : -1;
    
    endmodule
    На выходе дает 10LUT / 8триггеров
    https://prnt.sc/12sop9a
    Последний раз редактировалось s_kosorev; 11.05.2021 в 11:47.

  6. #46

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от s_kosorev Посмотреть сообщение
    Синхронное, мне повылазило, думал буфер это отдельный кусок схемы, еще бы посмотреть на rtl сгенеренный по VHDL
    так оно и есть по VHDL. по схематику генерит то что нарисовано с заменой Т триггеров на D + XOR с выхода на вход. но то квартус, в максплюсе RTL или нет совсем или я не знаю как его посмотреть.

    Но вот к примеру на verilog

    Скрытый текст

    Код:
    module Test1(
    	input		wire		clk,
    	input		wire		oe_n,
    	input		wire		ud,
    	output	wire[7:0]q
    );
    
    reg [7:0]	        qreg = 0;
    assign		q = !oe_n ? qreg : 8'hzz;
    
    always @ (posedge clk)  qreg += ud ? 1 : -1;
    
    endmodule
    [свернуть]


    На выходе дает 10LUT / 8триггеров
    https://prnt.sc/12sop9a
    по сути тот же принцип - регистр и сумматор с выхода на вход. зачем правда он 32-разрядный - непонятно...

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

  7. #46
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #47

    Регистрация
    19.06.2014
    Адрес
    г. Харьков, Украина
    Сообщений
    731
    Спасибо Благодарностей отдано 
    6
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Serg6845 Посмотреть сообщение
    по сути тот же принцип - регистр и сумматор с выхода на вход. зачем правда он 32-разрядный - непонятно...
    Это по умолчанию, если не указывать размерность. Но это не важно, синтезатор подрежет цепи которые никуда не имеют выхода
    Последний раз редактировалось s_kosorev; 11.05.2021 в 17:21.

  9. #48

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от krotan Посмотреть сообщение
    Чтобы что-то советовать, надо знать задачи, которые вы собрались решать.
    К примеру, на VHDL можно описывать аналоговую электронику, а на Verilog только цифровую...
    Классная шутка!

    - - - Добавлено - - -

    Цитата Сообщение от hobot Посмотреть сообщение
    Ребята, повторю свой вопрос (ссылка на пост https://zx-pk.ru/threads/23978-tsifr...=1#post1106160) для ваших мнений что бы услышать?
    Сам ничего не знаю, но тебе ВСЁ объясню!
    Если будешь работать с железками ALTERA, то замечательно бы выучить AHDL.
    Если на Xilinx или всём вместе - Verilog/SystemVerilog.
    Вообще, лучше попробовать все эти языки и остановиться на том, на котором ЛИЧНО ТЕБЕ писать комфортнее всего.

    - - - Добавлено - - -

    Цитата Сообщение от krotan Посмотреть сообщение
    На Абеле то же самое не пробовал? Интересно, будет как в vhdl или как в схематике?
    Вангую, что AHDL даст близко к схематике, если не то же самое.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

    Этот пользователь поблагодарил Sergey за это полезное сообщение:

    hobot(12.05.2021)

  10. #49

    Регистрация
    20.01.2010
    Адрес
    г. Зеленоград
    Сообщений
    600
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    231
    Поблагодарили
    123 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zebest Посмотреть сообщение
    Вот да, попадались и мне проекты на Clash, но видимо не для моего интеллекта, и как их развернуть во что то привычное - я так и не понял.
    Естественно, поскольку это вообще не самостоятельный язык, а библиотека на языке Haskell, позволяющая описывать на нём синхронные схемы. (Надо полагать, Хаскелла ты не знаешь, поэтому и непонятно.) Потом схему можно либо симулировать либо сгенерировать на её основе VHDL/Verilog. Больше никакого инструментария нет и не будет.

    На кой хрен такое чудо нужно -- я не пойму. Разве что потешить ЧСВ секты хаскеллистов.

    PS: "Попадались проекты" -- это просто так, или по службе?

  11. #50

    Регистрация
    30.08.2010
    Адрес
    Санкт-Петербург
    Сообщений
    1,263
    Спасибо Благодарностей отдано 
    53
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    163 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sergey Посмотреть сообщение
    Вангую, что AHDL даст близко к схематике, если не то же самое.
    AHDL уже перешёл в категорию забытых языков. Никто практически им не пользуется и фирма-изготовитель его давно не поддерживает...

Страница 5 из 6 ПерваяПервая 123456 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. micro-CPU на vhdl, verilog
    от bigral в разделе Для начинающих
    Ответов: 14
    Последнее: 16.04.2015, 23:39
  2. Программы симуляции электронных схем
    от Viktor2312 в разделе Для начинающих
    Ответов: 3
    Последнее: 07.01.2015, 17:39
  3. Техническая литература: Языки описания аппаратуры "AHDL, VHDL и Verilog"
    от Viktor2312 в разделе Техническая литература
    Ответов: 1
    Последнее: 14.09.2014, 22:29

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •