diff options
-rw-r--r-- | tools/Dockerfile | 19 | ||||
-rw-r--r-- | tools/config/README | 2 | ||||
-rw-r--r-- | tools/config/nvim/.gitignore | 2 | ||||
-rw-r--r-- | tools/config/tmux/.gitignore | 2 | ||||
-rwxr-xr-x | tools/devbox.sh | 1 | ||||
-rw-r--r-- | tools/docker-compose.yml | 15 | ||||
-rw-r--r-- | top.core | 39 |
7 files changed, 80 insertions, 0 deletions
diff --git a/tools/Dockerfile b/tools/Dockerfile new file mode 100644 index 0000000..56fd099 --- /dev/null +++ b/tools/Dockerfile @@ -0,0 +1,19 @@ +FROM verilator/verilator:latest + +# Install python3 + pip3 for fusesoc +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + && apt-get install --no-install-recommends -y \ + python3 \ + python3-pip \ + vim \ + neovim \ + tmux \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +RUN pip3 install --upgrade fusesoc + +WORKDIR /work + +ENTRYPOINT [ "/bin/bash", "-l", "-c" ] diff --git a/tools/config/README b/tools/config/README new file mode 100644 index 0000000..530a7de --- /dev/null +++ b/tools/config/README @@ -0,0 +1,2 @@ +# Configuration files for your favorite programs +Put all of your config files in here, if you want to add new programs, add new mounts to the docker compose and new programs to the docker file. diff --git a/tools/config/nvim/.gitignore b/tools/config/nvim/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/tools/config/nvim/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/tools/config/tmux/.gitignore b/tools/config/tmux/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/tools/config/tmux/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/tools/devbox.sh b/tools/devbox.sh new file mode 100755 index 0000000..afd7513 --- /dev/null +++ b/tools/devbox.sh @@ -0,0 +1 @@ +docker compose run --rm dev_environment /bin/bash diff --git a/tools/docker-compose.yml b/tools/docker-compose.yml new file mode 100644 index 0000000..1b956b9 --- /dev/null +++ b/tools/docker-compose.yml @@ -0,0 +1,15 @@ +services: + dev_environment: + container_name: devbox + image: bingchao:latest + + # Allow for interactive terminal + stdin_open: true + tty: true + + # Mount to repository + volumes: + - ../:/work + - ./config/nvim:/root/.config/nvim + - ./config/tmux:/root/.config/tmux + diff --git a/top.core b/top.core new file mode 100644 index 0000000..e8a009d --- /dev/null +++ b/top.core @@ -0,0 +1,39 @@ +CAPI=2: +name: bingchao:riscv:top +description: Fully Linux Capable Processor + +filesets: + rtl: + files: + - rtl/top.sv + - rtl/top.svh: + is_include_file: true + file_type: systemVerilogSource + + tb: + files: + - tb/top_tb.sv + file_type: systemVerilogSource + +targets: + + default: &default + filesets: + - rtl + toplevel: top + parameters: + - clk_freq_hz + + sim: + <<: *default + description: Simulate the design + default_tool: verilator + tools: + verilator: + verilator_options: + icarus: + iverilog_options: + - -g2012 + parameters: + - pulses=10 + |