From 64220b8d59dbc5de9c85f35fc033ba12630508f0 Mon Sep 17 00:00:00 2001 From: VMois Date: Tue, 10 Oct 2023 23:30:41 +0200 Subject: [PATCH] WIP Add Verilator support --- Dockerfile | 8 ++++++++ src/test/scala/MergerSpec.scala | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index c74b6cf..63c0046 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,14 @@ FROM openjdk:11 +# Install SBT tool ENV SBT_VERSION 1.9.0 RUN curl -L -o sbt-$SBT_VERSION.zip https://github.com/sbt/sbt/releases/download/v$SBT_VERSION/sbt-$SBT_VERSION.zip && unzip sbt-$SBT_VERSION.zip -d ops ENV PATH="/ops/sbt/bin/:${PATH}" + +# Install Verilator +RUN apt-get update && apt-get install git make autoconf g++ flex bison -y +RUN git clone https://github.com/verilator/verilator /opt/verilator && cd /opt/verilator \ +&& git pull && git checkout v4.226 +RUN cd /opt/verilator && unset VERILATOR_ROOT && autoconf && ./configure && make && make install + WORKDIR /design diff --git a/src/test/scala/MergerSpec.scala b/src/test/scala/MergerSpec.scala index b01e8dd..16972ac 100644 --- a/src/test/scala/MergerSpec.scala +++ b/src/test/scala/MergerSpec.scala @@ -11,7 +11,7 @@ case class TestInput(value: Int, lastInput: Boolean) class MergerSpec extends AnyFreeSpec with ChiselScalatestTester { "One buffer wins and advances" in { - test(new Merger(busWidth = 4, numberOfBuffers = 4)).withAnnotations(Seq(WriteVcdAnnotation)) { dut => + test(new Merger(busWidth = 4, numberOfBuffers = 4)).withAnnotations(Seq(VerilatorBackendAnnotation)) { dut => // reset Merger for a new comparison round dut.io.reset.poke(true.B) dut.clock.step()