Форум программистов, компьютерный форум, киберфорум
Программируемая логика: ПЛИС, ПАИС
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176

Отключить оптимизацию модуля

01.05.2025, 14:00. Показов 1992. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть такая беда - навязчивая оптимизация.
Нужно её отключить. Что только не пробовал. Документация о синтезе - по сути ни о чём, всё только о оптимизации в каждой дырке, даже в BlackBox, но по сути тот просто не определяет модуль, а не запрещает его оптимизацию, и видимо служит для отладки в симуляторе, но я отлаживаю проект в стороннем сиумляторе и оптимизация навязчивая мне эта - не нужна.
Как её отключить?
Среда разработки Gowin 1.9.11

Создаю файл gsc, пишу в нём
Code
1
INS registrT /*synthesis syn_preserve=1*/;
получаю
ERROR (SC0006) : Syntax error near token "registrT"("/home/andrei-y/Documents/Gowin1.9.11/Gowin_V1.9.11_linux/IDE/bin/new/BlackBox/AsyncCounter/src/mgsc2.gsc":1)
Сам модуль
Code
1
2
3
4
5
6
7
8
9
10
11
module registrT 
(input data_in, direct,reset2, 
 output outputw);
wire n=0;
bufif1 bf1(D1,data_in,direct);
buf b1(outputw, D1);
nor n1(interrupt,direct, reset2);
bufif1 bf2(outputw,outputw,interrupt);
buf b2(reset21, reset2);
bufif1 bf3(outputw,n,reset21);
endmodule
Если сделать буквально как в документации
INS "registrT" /*synthesis syn_preserve=1*/;
, то ошибка сменится на
ERROR (SC0006) : Syntax error near token "/"("/home/andrei-y/Documents/Gowin1.9.11/Gowin_V1.9.11_linux/IDE/bin/new/BlackBox/AsyncCounter/src/mgsc2.gsc":1)
Вложения
Тип файла: zip AsyncCounter.zip (81.1 Кб, 4 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.05.2025, 14:00
Ответы с готовыми решениями:

Нужен микроконтроллер с поддержкой USB -slave, и можно было подключить модуль wifi и модуль 3g
Нужен микроконтроллер с поддержкой USB -slave, и можно было подключить модуль wifi и модуль 3g......

Как можно отключить Интернет на свитче, не отключая LAN-кабель?
просто сосед по комнате отключает инет и не говорит как а кабель был на месте на ноуте тоже ничего...

Как отключить в Атмел Студио проверку Device Signature?
Добрый день!Как отключить в Атмел Студио проверку Device Signature?

8
 Аватар для abit
870 / 529 / 149
Регистрация: 03.02.2013
Сообщений: 1,859
01.05.2025, 16:18
Цитата Сообщение от Hrethgir Посмотреть сообщение
INS "registrT" /*synthesis syn_preserve=1*/
а там разве так атрибут задаётся? что за документация? первый раз такое вижу...

Code
1
registrT -type module -attribute syn_preserve=1
0
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
01.05.2025, 21:25  [ТС]
Цитата Сообщение от abit Посмотреть сообщение
а там разве так атрибут задаётся? что за документация? первый раз такое вижу...
нет, так ошибка.
Вот дока их
https://cdn.gowinsemi.com.cn/SUG550E.pdf

5 Synthesis Constraints Support

в доке вроде так
INS "object" attributeName=value;
, но по факту там хоть что делай, хоть чёрный ящик, хоть что - компилятор только "материться" будет.

А Вы с какой платой работаете?

Добавлено через 2 часа 47 минут
если в gsc написать INS "registrT" syn_preserve=1;
, то ошибка сменится на следующую
ERROR (SC0004) : "registrT" is not declared("/home/andrei-y/Documents/Gowin1.9.11/Gowin_V1.9.11_linux/IDE/bin/new/BlackBox/AsyncCounter/src/mgsc2.gsc":2)
0
 Аватар для abit
870 / 529 / 149
Регистрация: 03.02.2013
Сообщений: 1,859
02.05.2025, 00:52
вот мля не поленился, полистал даташит...
в 5.12 от вас хотят полный путь к экземпляру registrT, а не просто имя модуля и имя должно быть в кавычках
должно это выглядеть примерно так:
Code
1
INS "проект/папка с модулем/registrT" syn_preserve=1;
сейчас мне сложно без Gowin под рукой оценить путь точно... я с ноута

второй вариант, смотрите в файле что вы дали MCounter.v

Code
1
2
3
4
module registrT
(input data_in, direct,reset2, 
 output outputw);
..
вот перед этим куском отключите оптимизацию прям для этого модуля:

Code
1
2
3
4
5
(* syn_preserve = 1 *)
module registrT (
    input data_in, direct, reset2,
    output outputw);
...
А Вы с какой платой работаете?
да тут наша локальная плата, она местной разработки, - ККМ, корректор коэффициента мощности, плиска GW1N-UV4

Добавлено через 2 минуты
но если прям интересно могу попробовать с компа на работе посмотреть что там с путём
1
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
02.05.2025, 08:37  [ТС]
Спасибо за помощь. Попробую. Я английский знаю очень плохо, поэтому читал только через переводчика, и если -бы они давали синтаксис в правильном синтаксисе, а не в их абстрактном выдуманном - то проблемы может и не возникло -бы. А про путь компилятор пишет часто, поэтому я как-то не сильно вникал, просто думал что это подробности, которые можно было и упустить. Тем более, что читаю его через переводчика.

Добавлено через 3 часа 32 минуты
Цитата Сообщение от abit Посмотреть сообщение
должно это выглядеть примерно так
пока нет, сделал как Вы предполагали, создал отдельный файл для модуля и так
Code
1
INS module  "/Gowin1.9.11/Gowin_V1.9.11_linux/IDE/bin/new/BlackBox/AsyncCounter/src/registrT"  syn_preserve=1;
и так
Code
1
INS module  "registrT"  syn_preserve=1;
ошибка одна и та-же
ERROR (SC0006) : Syntax error near token "module"("/home/andrei-y/Documents/Gowin1.9.11/Gowin_V1.9.11_linux/IDE/bin/new/BlackBox/AsyncCounter/src/mgsc2.gsc":2)
.
Проект в зиппапке
Вложения
Тип файла: zip AsyncCounter.zip (5.5 Кб, 0 просмотров)
0
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
02.05.2025, 09:39  [ТС]
Вообще этот модуль рабочий, версия gowin eda 1.9.9.03 не могла его оптимизировать и оставляла таким как он есть. Это выпустили версию с более лютой оптимизацией, видимо подсказал кто-то или сами "нарыли" в сети. А у них правило очевидно у всех - правило рынка: засунуть свою оптимизацию в каждую дырку, даже если дырки нет - "наковырять" дырку.
0
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
03.05.2025, 07:00  [ТС]
Говорят что я не желаю проходить ликбез. На самом деле кто-то не желает чтобы по цифровым продуктам была нормальная документация. Её нет и это и есть правда. Можно перечитать всю документацию, в случае с gowin точно, и найти или её противоречия или недостаточность, причем в ней нет информации даже чтобы сделать вывод первое это или второе. Берём случай с BlackBox, где то пишут что это просто для тестов, где то вскользь упоминают о блокировке оптимизации ей, но полного нет ничего. Приобрести лицензию - не вопрос. Вопрос - на что? На ничего? На ничего они пусть сами приобретают лицензии.
0
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
06.05.2025, 07:31  [ТС]
Хотя нет, я всё же приобрету лицензию, чтобы убедиться лично, что она ничиего не стоит. Это будет правильный шаг. Ломаная версия - точно ничего не стоит, даже установки на компьютер и отнятого времени. Осталось проверить лицензионную с документацией их - проделать все шаги по новой.
0
 Аватар для Hrethgir
421 / 143 / 3
Регистрация: 25.01.2012
Сообщений: 6,206
Записей в блоге: 176
08.05.2025, 19:10  [ТС]
впрочем, с такой документацией - не куплю. Гораздо проще купить уже устаревшее оборудование и делать на нём свои FPGA, пусть
это будут громоздкие платы, или какие-то ещё, возможно появится технология какая-то, но такие консервативные производители или будут продавать заявляемое ими, или уйдут с рынка сами. А именно - технология FPGA описывается как нечто для создания собственных схем, но оказывается - вовсе не собственных, а отключить оптимизацию компилятора в необходимой мере - не всегда возможно: компилятор будет вырезать из схемы всё что ему вздумается. Этого я прочитал в сети более чем достаточно, и начинаю просто думать о производестве самих железок, пусть старых, не навороченных, но которые позволят создавать свои схемы и архитектуры. Если-бы у меня одного не получалось - я бы может и купил бы лицензию, но проблема достаточно распространённая, и идти поперёк просто выкидывая средства на ветер - не метод. Gowin доствидания, здравствуй схемотехника.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.05.2025, 19:10
Помогаю со студенческими работами здесь

Отключить управление с пульта Samsung Smart-TV
Привет всем! Есть ЖК ТВ Samsung 2014 г.в. Нужно сделать так, чтобы при нажатии на кнопку пульта не...

Как отключить RTC_AF1(PC13) от входа.(решено)
Использую вывод как GPIO Одновременно использую внутреннее прерывание от RTC . А по умолчанию при...

Как отключить JTAG в STM32 ?
Всем привет, В последнее время начал ковыряться с STM32, и ВНЕЗАПНО столкнулся с небольшой...

Прошивка Marlin, как отключить прерывание для смены филамента?
Прерывает печать и выскакивает Change filament. Я думал, что это из-за корявой работы датчика...

Power bank на tp4333 отключить step-up
Купил повербанки на этой схеме, хотелось бы чтобы на выходе было просто напряжение батарее, без...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru