Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
# First stage : setup the system and environment
FROM ubuntu:24.04 as base
FROM eclipse-temurin:11-jre-noble as base

RUN \
apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
ca-certificates-java \
curl \
graphviz \
openjdk-8-jre-headless \
gcc \
python3-dev \
&& \
Expand Down
4 changes: 2 additions & 2 deletions Install.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Make sure you have Docker [installed](https://docs.docker.com/get-docker/) on yo

The `sysprog21/chisel-bootcamp` image supports both x86-64 and Arm64 architectures. It bundles:
- Ubuntu 24.04
- OpenJDK 8
- [Eclipse Temurin](https://adoptium.net/temurin) 8
- Scala 2.12.10 with Almond 0.9.1 kernel
- Jupyter Lab
- Graphviz for circuit visualization
Expand Down Expand Up @@ -115,7 +115,7 @@ These instructions cover Windows 10 and later. Running the command prompt in Adm

#### Install Java

Ensure Java 17 LTS or later is installed. Test by typing `java -version` in a command prompt. If not found, install from [Adoptium](https://adoptium.net/temurin/releases/).
Ensure Java 11 or later is installed. Test by typing `java -version` in a command prompt. If not found, install from [Adoptium](https://adoptium.net/temurin/releases/).

#### Install Jupyter
Jupyter recommends using the Anaconda distribution, here is the
Expand Down
24 changes: 0 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,30 +78,6 @@ If you decide to write instances instead of generators, you will see fewer advan
But if you take the time to learn how to write generators, then the power of Chisel will become apparent and you will realize you can never go back to writing Verilog.
Learning to write generators is difficult, but we hope this tutorial will pave the way for you to become a better hardware designer, programmer, and thinker!

## FAQ

### Kernel Crashes Upon Startup

I get the following error upon launching a Scala notebook and Jupyter says that the kernel has crashed:

```
Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException
at jupyter.kernel.server.ServerApp$.apply(ServerApp.scala:174)
at jupyter.scala.JupyterScalaApp.delayedEndpoint$jupyter$scala$JupyterScalaApp$1(JupyterScala.scala:93)
at jupyter.scala.JupyterScalaApp$delayedInit$body.apply(JupyterScala.scala:13)
...

Caused by: java.lang.NullPointerException
at ammonite.runtime.Classpath$.classpath(Classpath.scala:31)
at ammonite.interp.Interpreter.init(Interpreter.scala:93)
at ammonite.interp.Interpreter.processModule(Interpreter.scala:409)
at ammonite.interp.Interpreter$$anonfun$10.apply(Interpreter.scala:151)
at ammonite.interp.Interpreter$$anonfun$10.apply(Interpreter.scala:148)
...
```

Make sure that you have **Java 8** selected for running Jupyter (see the instructions above).

## Contributors
- Stevo Bailey ([stevo@berkeley.edu](mailto:stevo@berkeley.edu))
- Adam Izraelevitz ([adamiz@berkeley.edu](mailto:azidar@berkeley.edu))
Expand Down