MIPS互換のCPUコアを書き始めたのがきっかけですが、現状ではFPGAでSoCを実現する為のプラットフォームになりつつあります。 主に Xilinx のFPGAをターゲットにした、様々なコードを蓄積しており、主に Verilog 2001 で開発しております。
最近は、作者の発案したFPGA用のバイナリニューラルネットである LUT-Network の実行にも一部コードを流用しており、作者の中でも重要性が高まっております。
基本的には色々なものをごった煮で含んでいる状況ですが、参考になる部分だけ活用いただければと思います。
/rtl/cpu/ 以下にあります。
Verilogの勉強を始めた頃に Spartan-3 向けに試しに書いてみたプロセッサです。
ブロック図などはWebサイトの方にあります。
/rtl/gpu 以下にあります。
フレームメモリを使わないフィルタ型の低遅延なリアルタイム描画を目指したものです。
動画はこちらです。
もはやこれが Jelly のメインかもです
- rtl/library FIFOとかRAMとか様々なRTLのパーツ
- rtl/bus AXIとかWISHBONEとかのバスブリッジ等のパーツ
- rtl/math GPUとかで使うような算術パーツ
- rtl/peripheral UARTとかI2CとかTIMERとかののパーツ
- rtl/video DVIとかHDMIとかのビデオ処理
- rtl/image 画像処理用パーツ(ニューラルネットの畳み込みでも利用)
- rtl/model シミュレーション用の便利モデルいろいろ
- projects/ultra96v2_udmabuf_sample
- Ultra96V2 でudmabufを試す
- projects/zybo_z7_udmabuf_sample
- Zybo Z7 でudmabufを試す
- projects/zybo_z7_imx219
- projects/zybo_z7_imx219_hdmi
license.txt にある通り、MIT ライセンスとして置いておきます。