mttphreak 0 28 января, 2012 Опубликовано 28 января, 2012 · Жалоба Сейчас подумываем об инвестициях в HW/SW Co-Verification and Co-Simulation Tool Нужно реализовать систему, в очень общих чертах представленную на рисунке. Задача - иметь возможность начинать разработку/отладку Firmware на ранних стадиях разработки и интеграции RTL для довольно больших проектов SOC 1. Есть варианты купить Seamless CVE (Mentor Graphics), пользоваться старым Eaglei (Eagle Design Automation, Который Synopsys выкупил и похоронил лет 10 назад уже) или еще тулзы, о которых мы не знаем 2. Можно попробовать самим сделать такой In-House Tool, но тут видится много проблем с InterProcess Communication (IPC) between Instruction Set Simulator and Event Driven Simulator (IUS, VCS...) 3. Если кто-то делал такие тулзы для себя, как реализовывали оный IPC: sockets, shared memory , memory mapped files, pipes, message queues... ??? Мы также готовы нанять специалистов, которые имеют опыт в таких делах и реально смогут сделать что-то подобное Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vetal 0 28 января, 2012 Опубликовано 28 января, 2012 · Жалоба Правильная картинка - "Программный одладчик - ipc - iss+api+bfm ". Первые 2 компонента - стандартные элементы, а последняя часть "легко" реализуется на SystemC/VHPI/PLI/VPI Предложенный вами вариант очень медленный, т.к. для более-менее адекватной реализации нужен механизм запрос-подтверждение. IPC - самая медленная составляющая. Если ресурсов(время, люди) мало - лучше заказать полный комплект(решение) для вашей платформы на базе Seamless CVE или аналогичного продукта. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Джеймс 4 28 января, 2012 Опубликовано 28 января, 2012 · Жалоба Так а процессор какой? Он тоже в составе SOC? В каком виде он у Вас? RTL? Или связь с instruction set simulator только через Verilog PLI? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mttphreak 0 29 января, 2012 Опубликовано 29 января, 2012 · Жалоба Правильная картинка - "Программный одладчик - ipc - iss+api+bfm ". Первые 2 компонента - стандартные элементы, а последняя часть "легко" реализуется на SystemC/VHPI/PLI/VPI Предложенный вами вариант очень медленный, т.к. для более-менее адекватной реализации нужен механизм запрос-подтверждение. IPC - самая медленная составляющая. Если ресурсов(время, люди) мало - лучше заказать полный комплект(решение) для вашей платформы на базе Seamless CVE или аналогичного продукта. День добрый, спасибо за ответ 1. Мы сейчас на стадии Research&Evaluation, поэтому рассматриваем разные варианты. Мне нужно оценить затраты по деньгам и времени Доводом в вашу пользу можно сделать такую прикидку: SPEED = MIN IPS {EVD, IPC}, где IPS = Instructions per Second , EVD = Event Driv Simulator, IPC = Inter Process Communication Если взять программу в 100k инструкций и предположить, что IPC SPEED ( ISS < = > EVD ) = 200..500 IPS, а скорость симуляции SOC в цифровом симуляторе 200...1000 IPS ( данные вполне реальны! ), то выходит, что таки да, IPС будет Bottle Neck. :cranky: 2. (ГЛАВНОЕ) Мне нужно оценить SPEED vs Simulation Details. Понятно, что если, например, сделать overall bypass for memory (См. Картинку 1), то скорость увеличится, но вот (например) тайминги по BUS Transactions (AXI4) vs DDR2 пропадут и нужно будет думать о дальнейшем пути для system-level verification Тоесть мне нужно понимать что можно выкинуть из симуляции, а что нет :laughing: 3. Насчет IPC, то в articles говорят, что Threads является самым предпочтительным по скорости, но не самым легким в реализации.... А то, что вы говорили, наверное имеется ввиду - делать через VPI and Callbacks, это и есть "традиционная" имплементация 4. Кроме того, мы планируем использовать FPGA для эмуляции synthesizable subset (понятно, для увеличения скорости симуляции самой цифры) и тут IPС видется одинаковым с точки зрения имплементации 5. Хотел бы услышать людей, которые такое делали реально, а еще лучше разрабатывали такие Environments. Есть ли какие-то примеры в Open Source на этот счет? Где можно было бы посмотреть примерчики реализаций с разными видами IPC ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xvr 12 31 января, 2012 Опубликовано 31 января, 2012 · Жалоба Смотрите в сторону SCE-MI. У нас был проект, где использовались совместно софтверная часть и FPGA (соединялись через PCIe). Был реализован свой framework (ViCo) для собственно соединения и взят другой framework (LEAP, старое название HAsim) для написания модели процессора в FPGA http://www.cs.washington.edu/education/cou...shar10_LEAP.pdf Старая версия PCIe framework'а лежит в https://asim.csail.mit.edu/svn/vico/trunk/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mttphreak 0 31 января, 2012 Опубликовано 31 января, 2012 · Жалоба Смотрите в сторону SCE-MI. У нас был проект, где использовались совместно софтверная часть и FPGA (соединялись через PCIe). Был реализован свой framework (ViCo) для собственно соединения и взят другой framework (LEAP, старое название HAsim) для написания модели процессора в FPGA http://www.cs.washington.edu/education/cou...shar10_LEAP.pdf Старая версия PCIe framework'а лежит в https://asim.csail.mit.edu/svn/vico/trunk/ Очень хороший пост, информация достойная! Благодарю за feedback :a14: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Postoroniy_V 0 31 января, 2012 Опубликовано 31 января, 2012 · Жалоба 5..... Есть ли какие-то примеры в Open Source на этот счет? ... хотя это не совсем то что вам нужно, но может пригодится http://www.embecosm.com/articles/ear6/dvc-...erification.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
warrior-2001 0 2 февраля, 2012 Опубликовано 2 февраля, 2012 · Жалоба То, что вы хотите получить, у Ментора называется теперь Questa Codelink. Однако начинать работы на этом уровне нужно после освоения и прохождения этапов расширенной верификации при помощи OVM/UVM, ну или просто тестовых окружений на SystemV. С этим неплохо справляется и QuestaSim . К тому же возможность подключения С моделей есть и тут. Попытки создать такое самому были, но успехом не увенчались. Проще уж купить стенд с целевой ПЛИС и работать с ним. Можно покурить ЭТО если вдруг требуется описание на языке Пушкина и Лермонтова для руководства(нашел в гугле). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mttphreak 0 13 февраля, 2012 Опубликовано 13 февраля, 2012 · Жалоба То, что вы хотите получить, у Ментора называется теперь Questa Codelink. Однако начинать работы на этом уровне нужно после освоения и прохождения этапов расширенной верификации при помощи OVM/UVM Это давно уже внедрено. We Perform SOC Verification in UVM TLM2.0 environment and perform Formal Verification. Сейчас разрабатываем Spec for ISS - Simulator TLM Interface... У вас есть примерчики таких проектов? Как вы понимаете, у всех таких симуляторов проблема в Simulation RunTime and ISS-Digital Simulator-Emulation Board communication. Should you have articles/boox/examples which address this issue, please share links. Пока что лучший ответ был получен от XVR, видно, что человек работает в серьезной организации и реально работал с этим. Таких и ищем :a14: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться