2016-08-28 2 views
2

Как использовать файлы C++, созданные компилятором Chisel? документация не ясна по этому поводу, есть ли какой-либо другой источник, чтобы указать мне на это? Я действительно не понимаю этого, особенно, что я не знаю C++.Как использовать эмулятор Chisel C++

Скажет, например, для простой схемы Adder.scala сумматора я получить следующие файлы, связанные с эмулятором: Adder.cpp, Adder.h, Adder-emulator.cpp, emul_api.h, emulator.h и sim_api.h. За что я могу скомпилировать запустив

g++ Adder.cpp Adder-emulator.cpp 

Это формирует выходной сигнал a.out работает в терминале создает еще три файла, которые я не имею ни малейшего понятия, что они есть. 00003710.cmd, 00003710.in и 00003710.out.

ответ

1

Код C++ используется для создания эмуляции вашего дизайна. Вам также необходимо определить тестер, который будет управлять эмуляцией, используя poke() для установки значений сигнала и peek() или expect(), чтобы прочитать их.

Вы не должны сами компилировать C++. Если вы передадите --genHarness и --test параметрам Chisel, он скомпилирует код C++, построит эмуляцию и запустит ваш тестер для его управления.

Посмотрите на код chisel-tutorial для примера этого процесса.

+0

OK Я был смущен testbench, написанный в коде scala сам по себе эмулятор C++? это оно? – akurd

+0

Я сделал, что я получил сообщение PASSED и Success в терминале, это все? извините за слишком много, но я относительно новичок в долото. – akurd

+0

Испытательный стенд (написанный на Scala) обменивается информацией (в настоящее время через разделяемую память) с эмуляцией, построенной из кода C++. Если вы имеете в виду код учебника, да, PASSED и Success - это указание на то, что имитация дизайна была построена и прошла тесты, написанные для нее. – Jim