Перейти к содержанию
    

VCS vs NCSIM, сравнение производительности

Время компиляции (+элаборация +компиляция SDF) приблизительно одинаковое

10мин. VCS

15мин NC

но иногда VCS компилирует медленнее, чем NCSIM

-------------------------------------

Время исполнения значительно отличается:: VCS вдвое быстрее

200мин VCS

400мин NC

-------------------------------------

потребляемая память значительно отличается: VCS в три+ раза меньше

1.2GB VCS

4.7GB NC

==========================================

измерение проводилось для 64х разрядных версий на ~10MGate ASIC (нетлист 400МB, SDF 2.5GB)

 

vcs -full64 +compsdf -hopt +rad

(но влияние опций оптимизации не особенно заметно - мой опыт пользования маленький, поэтому не уверен в оптимальности)

---------

ncvlog -64bit

ncelab -64bit -work work -cdslib ./cds.lib -status -messages -timescale "1ns/1ps"

(nc по умолчанию оптимизирует)

 

VCS:

compile

CPU time: 523.009 seconds to compile + 55.587 seconds to elab + 5.908 seconds to link

----------

run

CPU Time: 12441.980 seconds; Data structure size: 870.9Mb

 

==================

 

NC:

compile

real 1m51.972s

user 1m41.034s

sys 0m7.028s

-----------

elab

real 13m54.305s

user 12m13.938s

sys 0m29.990s

 

run

ncsim: Memory Usage - 16.0M program + 4677.4M data = 4693.4M total

ncsim: CPU Usage - 20.9s system + 24985.6s user = 25006.5s total (25033.8s, 99.9% cpu)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крута. Большой респект за такие научно-ценные результаты. Значит и вправду говорят что VCS fastest verilog simulator. Правда про VHDL такого, помоему, уже не утверждают :)

 

а как интересно по удобству работы (чисто субъективно) симуляторный gui от Synopsys (DVE) и от Cadence (что у них не знаю)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крута. Большой респект за такие научно-ценные результаты. Значит и вправду говорят что VCS fastest verilog simulator. Правда про VHDL такого, помоему, уже не утверждают :)

 

а как интересно по удобству работы (чисто субъективно) симуляторный gui от Synopsys (DVE) и от Cadence (что у них не знаю)?

 

ну DVE выглядит достаточно аскетично (например нету редактора - нужно использовать внешний)

по дизайну очень похоже на GTKWave :)

 

но на верилоге не глючит - хорошо показывает текст (всяческие крослинки), достаточно удобно сделан поиск конфликтующих драйверов (в NC я так и не понял, как этот поиск работает - вернее как им чего нибудь найти, и, имхо, понятнее чем quest-овское датафлоу)

 

скриншоты не могу приклеить...

 

ну вобщем за красотой они не гнались

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

yes

 

спасибо за проведённое исследование. результаты конечно интересны и неожиданны..

а можно попросить для полноты картины озвучить версии тузлов и конфигурацию железа.

 

PS: да. еще было бы интересно узнать саму организацию тестбенча: были ли в коде файловые операции или все стимулы генерировались внутри?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

yes

 

спасибо за проведённое исследование. результаты конечно интересны и неожиданны..

а можно попросить для полноты картины озвучить версии тузлов и конфигурацию железа.

 

PS: да. еще было бы интересно узнать саму организацию тестбенча: были ли в коде файловые операции или все стимулы генерировались внутри?

 

тестбенч - работа производственных тестов при проверке чипа (модель тестера) - то есть сгенеренный файл строк со всеми ножками и сгенеренный верилог для приложения/считывания

просто это было проще всего перенести

 

железо 4 х Intel Xeon 5160 @ 3000 MHz (6000 bogomips), 32GB RAM

ncsim 5.81-p002 (но и 6.1 и 8.2 имеют абсолютно такую же скорость)

vcs A-2008.9

 

-------------------------

 

но в sv vcs есть странный глюк - если есть программа и модуль тактового генератора (с инициализацией clk в декларации), чиста, как описано в книжках - не уходит со старта - время стоит в 0 и крутится в always #5 clk=~clk; в верилоге или при инициализации через initial такого нет

 

но и nc часто вылазят глюки в тестбенчах при синхронизации событий - то исчезает такт, то добавляется - приходится разбираться (то есть попытку это решить в sv я считаю своевременной)

 

UPD:

 

в примерах у них повсюду

 

module

...

initial begin

clk=0;

forever begin

#5 clk=1;

#5 clk=0;

end

end

 

вобщем мне такое forever не очень нравится, но реально - мелочь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

yes,

как бы Вы могли оценить быстродействие vcs по отношению к квесте? Хотя бы примерно, если нет возможности запустить тест.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

yes

Сколько тестовых векторов получилось для вашей схемы?

 

И еще. Сколько потоков используют симуляторы? Насколько распараллеливается процесс?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может конечно :bb-offtopic: , но создавать отдельную тему вроде бы бессмысленно.

 

Так получается, что сейчас "стоим на распутье" на предмет выбора тулзов под моделирование и синтез для ASIC.

Краеугольный камень- поддержка SV.

У кого есть опыт иcпользования продукции Mentor Graphics, Synopsys, Cadence, поделитесь, плз.

Особенно интересуют симуляторы. В области синтеза, похоже, альтернативы DC нет, но хотелось бы узнать насколько он поддерживает синтезируемое подмножество SV.

 

До этого работали только c FPGA на Questa + Precision. Как у других тулзов с поддержкой SV по сравнению с ними?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Краеугольный камень- поддержка SV.

IMHO Не только, а плюс еще чтобы он числился sign-off-ным на фабе. Так как после прогона исходника однозначно придется не раз гонять результаты синтеза, результаты post-CTS, post-route... А это затрата времени (машинного, на один прогон) куда большая, чем исходника.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

yes,

как бы Вы могли оценить быстродействие vcs по отношению к квесте? Хотя бы примерно, если нет возможности запустить тест.

 

квесты 64-х битной у меня нет, а 32-х битная этот тест не возьмет.

ну и когда-то давно сравнивал с nc - получалось, что квеста на порядок (раз в 10, если не ошибаюсь, но в любом случае значительно медленнее на нетлист+SDF) медленнее

 

 

yes

Сколько тестовых векторов получилось для вашей схемы?

 

И еще. Сколько потоков используют симуляторы? Насколько распараллеливается процесс?

 

тяжело сказать - векторов тестера ~300000, но там PLL запускается на х10 частоте - то есть процессорных больше 1М, ну и еще есть асинхронный узел

BTW там возникала интересная задачка синхронизовать вывод с тестером

 

оба симулятора используют 1 проц, насколько я знаю - 1 год назад не было тула для параллельной симуляции

 

 

IMHO Не только, а плюс еще чтобы он числился sign-off-ным на фабе. Так как после прогона исходника однозначно придется не раз гонять результаты синтеза, результаты post-CTS, post-route... А это затрата времени (машинного, на один прогон) куда большая, чем исходника.

 

большинство ФАБ-ов принимают и VCS и NC. это свойство sign-off ности NC, имхо, просто возможность каденса взять лишние деньги.

мы доверительно беседовали с ФАБом на предмет "бывает ли что VCS разойдется в симуляции с NC" они утверждали, что были клиенты с VCS и никаких проблем не было

 

ну и вообще у TSMC принимаются оба (по крайней мере, через нашего посредника) как sign-off

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну и вообще у TSMC принимаются оба (по крайней мере, через нашего посредника) как sign-off

Я больше не про эту пару, а про всякие невнятные квесты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может конечно :bb-offtopic: , но создавать отдельную тему вроде бы бессмысленно.

 

Так получается, что сейчас "стоим на распутье" на предмет выбора тулзов под моделирование и синтез для ASIC.

Краеугольный камень- поддержка SV.

У кого есть опыт иcпользования продукции Mentor Graphics, Synopsys, Cadence, поделитесь, плз.

Особенно интересуют симуляторы. В области синтеза, похоже, альтернативы DC нет, но хотелось бы узнать насколько он поддерживает синтезируемое подмножество SV.

 

До этого работали только c FPGA на Questa + Precision. Как у других тулзов с поддержкой SV по сравнению с ними?

 

меня это тоже сильно интересовало.

 

http://electronix.ru/forum/index.php?showtopic=57954

 

есть плюсы у VCS (на мой взгляд гораздо больше документации и гораздо более внятная диагностика ошибок), но QUESTA (и скорее всего NC8.x, которого у меня сейчас нет, но доки есть) поддерживают более сложные конструкции - то есть ближе к стандарту

 

если пользовали QUESTA+OVM, то однозначно NC. ну и вообще, если есть какие-нибудь сложные классы с параметрами типов, массивы виртуальных интерфейов и т.п. то VCS может и не взять

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

NC8.x, которого у меня сейчас нет

А почему нет? Лимит скачивания с фтп электроникса кончился? :)

 

PS.

А по скорости на нетлистах NC уделал таки XL ? Или нет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А почему нет? Лимит скачивания с фтп электроникса кончился? :)

 

PS.

А по скорости на нетлистах NC уделал таки XL ? Или нет?

 

да времени пока нет поставить и проверить - у меня когда-то был лицензионный, большой разницы с 5.8 по скорости не было (а SV тогда не интересовал)

 

 

с XL : NC быстрее (сильно, точнее не скажу, но по результатам сравнения мы на NC перешли сразу же) XL был уже на версии 5.1 (то есть лет 5-6 назад). но были расхождения в симуляции (то ли с отрицательными сетап/холд, то ли какие-то еще конструкции SDF - не помню)

 

но сейчас вроде бы NC sign-off, про XL не слышал требований (у меня впечатление, что каденсе вообще не развивает XL уже давно)

 

----------------------

 

UPD:

BTW: ради SV запустил

http://electronix.ru/forum/index.php?showtopic=58055

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не где не могу услышать оценки 0-in и ее поддержки SV. Кто нибудь пробовал?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...