Maverick_ 15 27 апреля Опубликовано 27 апреля · Жалоба 37 minutes ago, Beby said: Обязательно ещё раз гляну - с прошлого раза (лет 20 назад) запомнилось только, что оно не IEEE, теперь же гляну чьё именно. И Xilinx, и Pango функцию 'conv_integer' просто принужнает исользовать: см. эталонные описния RAM в xst.pdf и ADS_Synthesis_User_Guide.pdf. используй library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; тогда все будет ок) (я использую vhdl2008) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Beby 8 27 апреля Опубликовано 27 апреля · Жалоба 1 hour ago, Maverick_ said: используй library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; тогда все будет ок) (я использую vhdl2008) Да я бы тоже использовал VHDL'2008... Но у Pango ADS 2023-2-SP1 заявлена только Beta поддержка VHDL'93 - в итоге частично пришлось переписывать код на VHDL'93. Кстати этот мультиплексор - тоже. В оригинальном описании (VHDL'2008) 'A' был 2-х мерным массивом, и мультиплексор был по одному измерению, а элементы - по второму. Но т.к. на VHDL'93 не получилось описать тип 2-х мерного массива (чтобы оба параметра варьировались, и в одном проекте этот мультиплексор применялся бы несколько раз с разными параметрами, да ещё и в качестве входных/выходных портов entity), то пришлось переходить на одномерный массив. Собственно об этом и тема: на языке можно много чего написать, только ADS это не будет воспринимать. Первоначально была в виде ответа на вопрос про "подводные камни на пути" применения VHDL в Pango ADS 2023-2-SP1. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
cdg 4 28 апреля Опубликовано 28 апреля · Жалоба On 4/27/2024 at 4:27 PM, Beby said: Собственно об этом и тема: на языке можно много чего написать, только ADS это не будет воспринимать. Поддержу - тема о текущих проблемах синтеза в первую очередь ибо синтезатор PDS подкидывает ворох проблем. Если есть примеры того, что не работает и как обойти просьба делиться, передадим разработчику. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Koluchiy 0 2 июля Опубликовано 2 июля · Жалоба Всем привет. Проблема с поддержкой SystemVerilog. PDS проверяет файлы на "хорошие" и "плохие". "плохие" заносит в список "Syntax Error files" и отказывается их отправлять на синтез в Synplify. При этом, насколько я понял, PDS проверяет файлы согласно представления о прекрасном синтезатора ADS. И те конструкции, которые 100% поддерживаются Synplify, но не поддерживаются ADS, кидаются в "плохие". Пример: {<<{i}} В моем понимании, нужно как-то отключить чекер файлов, чтобы все файлы до синтеза считались "хорошими". Кто-нибудь знает, как это сделать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Beby 8 3 июля Опубликовано 3 июля · Жалоба 18 hours ago, Koluchiy said: Проблема с поддержкой SystemVerilog. PDS проверяет файлы на "хорошие" и "плохие". "плохие" заносит в список "Syntax Error files" и отказывается их отправлять на синтез в Synplify. При этом, насколько я понял, PDS проверяет файлы согласно представления о прекрасном синтезатора ADS. И те конструкции, которые 100% поддерживаются Synplify, но не поддерживаются ADS, кидаются в "плохие". Пример: {<<{i}} В моем понимании, нужно как-то отключить чекер файлов, чтобы все файлы до синтеза считались "хорошими". Кто-нибудь знает, как это сделать? Как отключить проверку на "хорошие" и "плохие" файлы - не знаю, но можно зайти сбоку: т.к. для синтеза вы используете Synplify, то рекомендую сделать проект в Synplify, а выходной "хороший" Verilog-файл уже подключить в PDS и в синтезе выставить ADS. Таким образом, всё "нехорошее" вы прогоняете через Synplify, а потом в ADS объединяете результат работы Synplify и то, что должно проходить только ADS. Я так делал в PDS 2023-1, в котором ещё не было поддержи у ADS VHDL+Verigol Synthesis, а мне необходимо было использовать PDS IP-Core (Verilog) + мои исходные файлы на VHDL. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться