第一天接觸nMigen, 先來安裝 nMigen!

安裝Prerequisites
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 gperf \
libboost-program-options-dev autoconf libgmp-dev \
cmake
安裝有的沒的必備程式
參考 https://symbiyosys.readthedocs.io/en/latest/install.html
安裝nMigen
pip install git+https://github.com/m-labs/nmigen.git
pip install git+https://github.com/m-labs/nmigen-boards.git
安裝之後就可以開始學習如何使用nMigen製作電路
- Boolector (important!)
# Download and build Boolector
git clone https://github.com/boolector/boolector
cd boolector
# Download and build Lingeling
./contrib/setup-lingeling.sh
# Download and build BTOR2Tools
./contrib/setup-btor2tools.sh
# Build Boolector
./configure.sh && cd build && make
./configure.sh --py3
cd build
make
sudo cp build/bin/{boolector,btor*} /usr/local/bin/
sudo cp deps/btor2tools/bin/btorsim /usr/local/bin/
Value in migen
Const 永不變
| |
可以使用Enum 來做常數狀態
| |
Signal 是 Wire或者reg
| |
| |
| |
但是我安裝Miniconda 後整個WSL的ssl都掛了,建議不要安裝
安裝Miniconda
因為我是用WSL,也沒有GUI,就直接用miniconda就好了。
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.9.2-Linux-x86_64.sh chmod +x Miniconda3-py39_4.9.2-Linux-x86_64.sh ./Miniconda3-py39_4.9.2-Linux-x86_64.sh