Restinstage 0 Posted April 4 · Report post Есть старый проект в виде block diagram. Нужно было добавить функционала и кое-что поменять, сделал проект на верилоге, проверил его отдельно на этой же пустой ПЛИС. В проекте глубина вложения - 2. Всего 4 файла *.v. Для преобразования кода в символ есть всего одна функция - Create a Symbol File for Current File. И она по идее должна создавать символ только из единичного файла. Но для проверки сделал простенький проект с делителем во вложенном инстансе, преобразовал в схематик и он работал. А вот мой проект работать отказывается. Только если весь код накидать в один файл. Что-то можно с этим сделать? Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
slkhome 0 Posted April 5 · Report post Попробуйте все исходные файлы добавить в проект. Возможно у Вас не получается, из-за того, что проект не находит исходники. Какие ошибки вываливаются? Опиши подробнее что происходит. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 5 · Report post Так ошибок нет, проект в виде block diagram компилируется с добавленным сгенеренным символом, просто на выходе именно этого нового блока ничего нет. Я делаю Create a Symbol File for Current File в проекте на верилоге и добавляю получившийся символ в библиотеку квартуса, а потом подключаю его на общей схеме. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 6 · Report post Да, все файлы проекта на verilog добавлены в библиотеку проекта block diagram. Technology map viewer показывает примерно одно и то же для обоих скомпилированных проектов. Но этот символ не работает. Только если запихать весь код в один файл, сгенерить символ схематик и воткнуть в bdf. Тогда работает. Меня интересует вопрос - принципиально нельзя создать рабочий символ файл из verilog проекта с множеством файлов и уровней вложений? Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
_sda 0 Posted April 7 · Report post 15 часов назад, Restinstage сказал: Да, все файлы проекта на verilog добавлены в библиотеку проекта block diagram. Technology map viewer показывает примерно одно и то же для обоих скомпилированных проектов. Но этот символ не работает. Только если запихать весь код в один файл, сгенерить символ схематик и воткнуть в bdf. Тогда работает. Меня интересует вопрос - принципиально нельзя создать рабочий символ файл из verilog проекта с множеством файлов и уровней вложений? Для своих файлов вы должны написать обёртку и уже для неё формировать графический символ. Неясно, так ли вы делали. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 7 · Report post 8 hours ago, _sda said: Для своих файлов вы должны написать обёртку и уже для неё формировать графический символ. Неясно, так ли вы делали. Смотря что вы понимаете под оберткой. Есть топ модуль на том же верилоге, почти без функционала кроме пары счетчиков, к нему подключены остальные. Я писал, что компилировал отдельно этот проект и заливал в рабочую ПЛИС чтоб проверить. Из него создавал символ, да. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
sazh 0 Posted April 7 · Report post 06.04.2022 в 17:02, Restinstage сказал: Да, все файлы проекта на verilog добавлены в библиотеку проекта block diagram. Technology map viewer показывает примерно одно и то же для обоих скомпилированных проектов. Но этот символ не работает. Только если запихать весь код в один файл, сгенерить символ схематик и воткнуть в bdf. Тогда работает. Меня интересует вопрос - принципиально нельзя создать рабочий символ файл из verilog проекта с множеством файлов и уровней вложений? Все должно работать. 1 создаете *.bsf символ из *.v верхнего уровня. 2 в проекте схематик создает папку project с этим символом, вытаскиваем из нее этот символ в схематик. 3. все множество файлов *.v прописываем в проекте assignments setting files. В RTL просмотрщике смотрим все вложения. В схематике виден только файл верхнего уровня. Нет надобности класть созданный символ в библиотеку. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 7 · Report post 20 minutes ago, sazh said: 2 в проекте схематик создает папку project с этим символом, вытаскиваем из нее этот символ в схематик. 3. все множество файлов *.v прописываем в проекте assignments setting files. Спасибо, попробую так Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AnatolySh 0 Posted April 11 · Report post On 4/6/2022 at 5:02 PM, Restinstage said: Technology map viewer показывает примерно одно и то же для обоих скомпилированных проектов. Но этот символ не работает. Что такое "не работает"? Вы функциональное моделирование проводили? Для полноты картины дайте ваш проект в виде что было и что стало. Можете оригинал, а можете оскоплённый клон, но демонстрирующий ту же задачу, что решаете. На слух воспринимается гораздо хуже, чем один раз увидеть. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 12 (edited) · Report post On 4/11/2022 at 7:11 AM, AnatolySh said: Что такое "не работает"? Если бы вы прочитали что я писал выше, было бы понятно. On 4/4/2022 at 6:14 PM, Restinstage said: Нужно было добавить функционала и кое-что поменять, сделал проект на верилоге, проверил его отдельно на этой же пустой ПЛИС. То есть та часть, которую нужно добавить работает в железе(выполняет необходимые функции), да и функциональное моделирование разумеется проводил. Проблема только в том, чтобы сгенерить и добавить в старый проект символ. Повторюсь, проект на верилоге многофайловый, если весь код пихнуть в один файл и сгенерить символ, все работает. Проект выложить не могу, но суть ясна и без него, проблема не в коде и не в функционале. Edited April 12 by Restinstage Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AnatolySh 0 Posted April 12 · Report post 31 minutes ago, Restinstage said: Если бы вы прочитали что я писал выше, было бы понятно. Вы так пишете, что мне, например, не понятно. Особенно про "эту же пустую ПЛИС". А вы можете проверить проект на этой же на треть заполненной ПЛИС? Если задают вам вопрос, то это не от нечего делать, а от того, что непонятно, а своими отписками вы только отбиваете желание с вами разговаривать. Были ещё наводящие вопросы, но раз вам всё понятно, то прошу меня извинить... Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 12 · Report post On 4/7/2022 at 7:16 PM, sazh said: Все должно работать. 1 создаете *.bsf символ из *.v верхнего уровня. 2 в проекте схематик создает папку project с этим символом, вытаскиваем из нее этот символ в схематик. 3. все множество файлов *.v прописываем в проекте assignments setting files. В RTL просмотрщике смотрим все вложения. В схематике виден только файл верхнего уровня. Нет надобности класть созданный символ в библиотеку. Вообще я в первый раз сделал то же самое, за исключением пункта 2. Я просто скидывал файл *.bsf непосредственно в папку проекта. Сделал по вашей инструкции, результат тот же. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Restinstage 0 Posted April 12 · Report post 13 minutes ago, AnatolySh said: Вы так пишете, что мне, например, не понятно. Особенно про "эту же пустую ПЛИС". А вы можете проверить проект на этой же на треть заполненной ПЛИС? - Есть ПЛИС в которой зашит старый проект, выполненный в схематике ( не мной). - Доработка для этого проекта выполнена в виде отдельного многофайлового Верилог проекта. - Проект на верилоге отмоделирован, зашит в ту же ПЛИС для проверки работы в железе. Занимаемый объем как старым проектом, так и новым, так и обоими, сильно меньше 50%. ПЛИС - аналог древнего FLEX10K, никаких умножителей, PLL, никаких IP ядер, тупая логика. Используется Quartus II 9.0 - Генерируется символ из верилог проекта, добавляется в схему старого проекта-схемы способом, описанным выше. Добавленная часть проекта не работает(нет изменений сигналов на выходах). - Весь код верилог проекта скидывается в один файл, генерируется символ вышеописанным способом, добавляется в старый проект - все работает. Вопрос: Почему получается генерить рабочий символ из проета на верилог с одним файлом и не получается из проекта с многими? Точнее не описать. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
des00 0 Posted April 12 · Report post qar файл проекта выложите. Кто-то может и посмотрит. Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
AnatolySh 0 Posted April 18 · Report post On 4/12/2022 at 6:00 PM, des00 said: может Я собирался с ним этот путь до упора шагать, но, видать, человек не знает, как поступить. Как раз готовлю пост, чтобы показать, как я ставлю похожие задачи. И, если он ещё здесь читает, может, возьмёт за пример. Наша общая задача - помогать друг другу, и учиться друг у друга, а не вот это всё... Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...