-
prerequisites
-
Install python3
- sudo apt install python3
- sudo apt install python-is-python3
- sudo apt install python3-pip
- sudo apt install python3-setuptools
- sudo apt install gnat-10
- sudo apt install texinfo
-
Insall yosys
- mkdir /tmp/yosys
- cd /tmp/yosys
- sudo apt install build-essential clang bison flex libreadline-dev gawk tcl-dev libffi-dev git graphviz xdot pkg-config python3 libboost-system-dev libboost-python-dev libboost-filesystem-dev zlib1g-dev
- git clone https://github.com/YosysHQ/yosys.git
- cd yosys
- make clean
- make config-gcc
- make
- sudo make install
-
Install Litex
- sudo apt install libevent-dev libjson-c-dev verilator
- wget https://raw.githubusercontent.com/enjoy-digital/litex/master/litex_setup.py
- chmod +x litex_setup.py
- sudo ./litex_setup.py init install
-
Install Vivado
-
Download powerpc cross compiler and add its bin directory to the path env variable
- wget https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--stable-2020.08-1.tar.bz2
- tar -xvf powerpc64le-power8--glibc--stable-2020.08-1.tar.bz2
- export PATH=$PATH:/path/to/powerpc64le-power8--glibc--stable-2020.08-1/bin
-
source /path/to/Xilinix/Vivado/2020.2/settings64.sh
-
install ghdl
- mkdir /tmp/ghdl
- cd /tmp/ghdl
- wget https://github.com/ghdl/ghdl/archive/refs/tags/v1.0.0.zip
- unzip v1.0.0.zip
- wget http://mirrors.concertpass.com/gcc/releases/gcc-10.3.0/gcc-10.3.0.tar.gz
- tar -xvf gcc-10.3.0.tar.gz
- cd gcc-10.3.0
- ./contrib/download_prerequisites
- cd ../ghdl-1.0.0
- mkdir build
- cd build
- ../configure --with-gcc=/tmp/ghdl/gcc-10.3.0 --prefix=/usr/local
- make copy-sources
- mkdir gcc-objs; cd gcc-objs
- /tmp/ghdl/gcc-10.3.0/configure --prefix=/usr/local --enable-languages=c,vhdl --disable-bootstrap --disable-lto --disable-multilib --disable-libssp --disable-libgomp --disable-libquadmath --enable-default-pie
- make -j2 && sudo make install
- cd /tmp/ghdl/ghdl-1.0.0/build
- make ghdllib
- sudo make install
- cd /usr/local/bin
- sudo mv gcc baK-gcc;sudo mv gcc-ar bak_gcc-ar;sudo mv gcc-nm bak_gcc-nm;sudo mv gcc-ranlib bak_gcc-ranlib
- cd /usr/local/include
- sudo mkdir ghdl
- sudo cp ghdlsynth.h ghdl/synth.h
-
install yosys-ghdl-plugin
- mkdir /tmp/plugin
- cd /tmp/plugin
- git clone https://github.com/ghdl/ghdl-yosys-plugin.git
- cd ghdl-yosys-plugin
- make
- sudo make install
-
install sbt
- echo "deb https://repo.scala-sbt.org/scalasbt/debian all main" | sudo tee /etc/apt/sources.list.d/sbt.list
- echo "deb https://repo.scala-sbt.org/scalasbt/debian /" | sudo tee /etc/apt/sources.list.d/sbt_old.list
- curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add
- sudo apt update
- sudo apt install sbt
-
-
Build a sample SoC using litex with microwatt core
- git clone https://github.com/varunmadhavam/openpower_x.git
- cd openpower_x
- build the soc bitstream
- cd lab004_microwatt
- python base_microwatt_vivado.py
- build the firmware for the soc
- cd firmware
- make clean
- make
-
Simulate SOC with microwatt core
- git clone https://github.com/varunmadhavam/openpower_x.git
- cd openpower_x/microwatt_sim
- ./runsim.sh
-
Installing the Lattice FPGA tool chain
- sudo apt-get install build-essential clang bison flex libreadline-dev gawk tcl-dev libffi-dev git mercurial graphviz xdot pkg-config python python3 libftdi-dev qt5-default python3-dev libboost-all-dev cmake libeigen3-dev
- cd /tmp
- git clone https://github.com/YosysHQ/icestorm.git icestorm
- cd icestorm
- make
- sudo make install
- cd /tmp
- git clone https://github.com/YosysHQ/nextpnr nextpnr
- cd nextpnr
- cmake -DARCH=ice40 -DCMAKE_INSTALL_PREFIX=/usr/local .
- make
- sudo make install
-
Notifications
You must be signed in to change notification settings - Fork 2
varunmadhavam/openpower_x
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published