addi II 0 31 октября, 2023 Опубликовано 31 октября, 2023 (изменено) · Жалоба Здравствуйте! Пробую реализовать в Libero проект https://github.com/openrisc/or1200/tree/master И в тестбенче есть некоторые записи, которые ни я ни компилятор не понимает https://github.com/openrisc/or1200/blob/master/bench/or1200_monitor.v А именно: gpr = `OR1200_TOP.`CPU_cpu.`CPU_rf.rf_a.get_gpr(gpr_no); `OR1200_TOP.`CPU_cpu.`CPU_except.ex_pc, `OR1200_TOP.`CPU_cpu.`CPU_ctrl.ex_insn); r = `OR1200_TOP.`CPU_cpu.`CPU_sprs.sr; always @(posedge `OR1200_TOP.iwb_clk_i) И тому подобное, тоесть реализуеться структурный доступ, который не понимает компилятор У меня версия Libero SoC 11.5 и конструкции SystemVerilog непонятно поддерживаеться или нет, формально об этом нигде не написано, но это уже 15 год и поидее должно. И компилятор пишет подобные жуткие вещи: ex_pc is not declared under prefix or1200_except; ex_insn is not declared under prefix or1200_ctrl; sr is not declared under prefix or1200_sprs; iwb_clk_i is not declared under prefix or1200_top0 итд по всем подобным случаям При этом orpsoc_tb нигде не описываеться структурой Изменено 31 октября, 2023 пользователем addi II Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zversky 16 31 октября, 2023 Опубликовано 31 октября, 2023 · Жалоба 46 минут назад, addi II сказал: И в тестбенче есть некоторые записи, которые ни я ни компилятор не понимает А зачем вам компилить тестбенч в либеро? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
addi II 0 31 октября, 2023 Опубликовано 31 октября, 2023 · Жалоба Just now, Zversky said: А зачем вам компилить тестбенч в либеро? как минимум для проверки ошибок при подключении топового инстанса Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zversky 16 31 октября, 2023 Опубликовано 31 октября, 2023 · Жалоба 30 минут назад, addi II сказал: как минимум для проверки ошибок при подключении топового инстанса чем классика жанра, например от ментора, не устраивает? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kirill70674 5 31 октября, 2023 Опубликовано 31 октября, 2023 · Жалоба 1 час назад, addi II сказал: как минимум для проверки ошибок при подключении топового инстанса Попробуйте QuestaSim. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 31 октября, 2023 Опубликовано 31 октября, 2023 · Жалоба 4 hours ago, addi II said: gpr = `OR1200_TOP.`CPU_cpu.`CPU_rf.rf_a.get_gpr(gpr_no); Иерархический доступ возможен только при компиляции в симуляторе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 25 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 2 hours ago, RobFPGA said: Иерархический доступ возможен только при компиляции в симуляторе. Про структуры не знаю, а просто wire из субмодуля доставался и в Modelsim и имплементировался в GoWin на verilog. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 43 minutes ago, _4afc_ said: Про структуры не знаю, а просто wire из субмодуля доставался и в Modelsim и имплементировался в GoWin на verilog. Это не структуры, это доступ по иерархии к сигналам, таскам и функциям внутри дизайна в симе. Причем `OR1200_TOP, `CPU_cpu, `CPU_rf, это макросы которые задают актуальное имя инстанса top в TB и cоответвенно модулей внутри топа. В синтезе раньше поддерживался доступ по иерархии в пределах модуля. Например доступ к сигналам внутри именованного блока begin end в generate. В последнее время ряд синтезаторов начали ограниченно поддерживать и кросс-модульный доступ по иерархии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 5 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 5 hours ago, RobFPGA said: В последнее время ряд синтезаторов начали ограниченно поддерживать и кросс-модульный доступ по иерархии. а какие конкретно? я не одобряю этого, но хотелось бы знать... ну и по поводу макросов - можно добавить, что эти макросы необязательно задаются в исходниках (хотя какойнибудь grep -R по исходникам можно попробовать), а могут передаваться в командной строке симулятора +define+CPU_cpu=la-la Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 1 hour ago, yes said: а какие конкретно? я не одобряю этого, но хотелось бы знать... Последние Vivado вроде как. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_4afc_ 25 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 7 hours ago, RobFPGA said: Это не структуры, это доступ по иерархии к сигналам, таскам и функциям внутри дизайна в симе. Я говорю, что не только в симе. Можно где угодно. В generate не пробовал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
addi II 0 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 14 hours ago, kirill70674 said: Попробуйте QuestaSim. У меня же Libero это же неделимый фарнкенштейн, у него один дизайн-флоу и втсроенный modelsim-симулятор Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
addi II 0 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба On 10/31/2023 at 9:11 PM, Zversky said: А зачем вам компилить тестбенч в либеро? а что разве в отношении него не надо проводить проверку синтаксиса? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zversky 16 1 ноября, 2023 Опубликовано 1 ноября, 2023 · Жалоба 9 часов назад, addi II сказал: У меня же Libero это же неделимый фарнкенштейн Он для вас по каким соображениям неделим: партия в лице фирмы приказала, или лень - матушка? В Quartus-е тоже встроенный, но никто не запрещает использовать внешний. Был бы смысл. 1 час назад, addi II сказал: а что разве в отношении него не надо проводить проверку синтаксиса? у вас тестбенч всё-таки кто компилит: либеро или моделсим? Отберите весь ваш проект вместе с тестбенчем у франкенштейна и скормите его просто моделсиму, чтобы отделить мух от котлет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
another_one 0 2 ноября, 2023 Опубликовано 2 ноября, 2023 · Жалоба 😶 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться