Версии программы: 0.9

Сравнение производилось с ModelSim-Altera 10.1 и Aldec Active-HDL 8.2 Expert Edition.

В целом

Быстродействие

Быстродействие проверялось на тесте, симулирующем запуск программы мигания светодиодами в ОС FX-RTOS на модели микроконтроллера PIC32. Подробнее об этом тесте, можно посмотреть на видео "Запуск FX-RTOS на модели PIC32 в Delta Design HDL Simulator и на Altera Arria V Starter Kit"

Тест запускался на двух машинах со следующими основными характеристиками:

  • Машина 1: Intel Core i7-2600K CPU 3.40 GHz, RAM 16 GB, под управлением ОС Windows 7 Ultimate x64
  • Машина 2: Intel Core i7-2630QM CPU 2.00 GHz, RAM 6 GB, под управлением ОС Windows 7 Ultimate x64

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

Поддержка стандартов VHDL

Проверка выполнялась на определённом множестве тестов, которые будут опубликованы позднее. В ходе проверки было установлено превосходство Delta Design HDL Simulator над сравниваемыми системами моделирования в поддержанной нашим симулятором части стандарта (на данном этапе нет access и полноценной работы с файлами). На страницах с результатами тестирования приведены характерные тесты, которые выявили разного рода ошибки у рассматриваемых конкурентов. Эти тесты не содержат какие-то экзотические инструменты VHDL (а такие есть), в них вполне применимые комбинации средств и техник VHDL, которые помогают, на сколько это возможно в VHDL, параметризовать и обобщить разработку и отладку устройств.

HDL Simulator vs Aldec

Результаты тестирования быстродействия

Машина 1, секМашина 2, сек
Delta Design HDL Simulator 287 385
Aldec Active-HDL 8.2 sp3 Expert Edition 35 47
Отставание в быстродействии x8,2 x8,15

Здесь наш симулятор Delta Design HDL Simulator сильно отстаёт от Aldec Active-HDL 8.2 Expert Edition. Если судить по заявленному ускорению VHDL-симуляции в 4,5 раз Expert Edition относительно базовой версии, то возможно, что от базового Aldec Active-HDL 8.2 мы отстаём в 1,8 раз.

Но не смотря на такое отставание, всё далеко не плохо в виду весьма вольного понимания Aldec'ом стандартов VHDL. Вероятно, такова их плата за скорость. Мы значительно превосходим в качестве.

Результаты тестирования поддержки стандартов VHDL

В ходе проверки выяснилось, что ModelSim уступает в поддержке реализованной нами части стандарта. Характерные тесты, демонстрирующие этот факт, здесь vsAldec.7z

В этих тестах:

  • test1.vhd - вызывает у Aldec Active-HDL внутренние ошибки, которые, судя по всему, связанны с кодогенерацией.
  • test2.vhd - при инициализации симуляции ELAB2: Fatal Error: ELAB2_0001 INTERNAL ERROR: Unexpected error from C_E2_Model::evalValue().
  • test3.vhd - при инициализации симуляции (elaboration) ELAB2: Fatal Error: ELAB2_0010 "<unknown source>" (0): Signal "(null)" has multiple sources but is not resolved.
  • test5.vhd, test9.vhd - при инициализации симуляции (elaboration) ошибки, вызванные неправильной работой с агрегатами и выведением типов по default_expression.
  • test6.vhd, test7.vhd, test8.vhd - ошибки при компиляции, вызванные не правильном понимании Aldec атрибутов дискретных и физических типов, преобразований подобных типов (2 подтипа одного типа оказываются на столько разными, что нельзя явно преобразовать один в другой), значений по умолчанию для параметров подпрограмм, связи formal_part и actual_part через функции, иерархических имён, choice в case statement, localy_static.
  • test4.vhd, test10.vhd, test11.vhd, test12.vhd, test13.vhd, test14.vhd, pro000021.vhd, pro000022.vhd - ошибки неправильной симуляции. В основном ошибки в сравнении объектов сложных типов (комбинации из записей и массивов), ошибки в обработке element_declaration и т.п. в условиях wait statement, управление slice name сигналов сложных типов, а также, вероятно, с инстансом компонентов (test4 - последовательное соединение однотипных блоков с назначением портов через алиасы на элементы сигнала-массива).

Это только наиболее часто встречающиеся у Aldec Active-HDL 8.2 Expert Edition ошибки. Вообще, их больше. Но и этого вполне достаточно, чтобы однозначно утверждать то, что Delta Design HDL Simulator значительно превосходит такого конкурента в части поддержки стандартов VHDL.

Те области, которые на данный момент не охвачены нашем симулятором, будут поддержаны в следующих версиях. И поддержка будет на аналогичном уровне. Мы будем лучше.

HDL Simulator vs ModelSim

Результаты тестирования быстродействия

Машина 1, секМашина 2, сек
Delta Design HDL Simulator 287 385
ModelSim-Altera 10.1 675 905
Превосходство в быстродействии х2,35 х2,35

На обеих машинах округлённый до секунд результат оказался соизмерим по разнице в быстродействии. Delta Design HDL Simulator моделирует FX-RTOS на модели PIC32 в 2.35 раза быстрее, чем на это способен ModelSim-Altera 10.1

Результаты тестирования поддержки стандартов VHDL

В ходе проверки выяснилось, что Aldec уступает в поддержке реализованной нами части стандарта. Характерные тесты, демонстрирующие этот факт, здесь vsModelSim.7z

В этих тестах:

  • test6.vhd, test7.vhd - ModelSim не смогла скомпилировать.
  • test1.vhd, test4.vhd, test8.vhd pro000021.vhd, pro000022.vhd - ошибки при симуляции. При чём test8.vhd в результате не правильной работы зацикливается.

03.02.2016