Kyokko について†
Kyokko は FPGA 向けの高速シリアル通信コントローラです。Xilinx Aurora 64B/66B IP コアと互換性があり、Xilinx と Intel のどちらの FPGA でも動作します。
Kyokko という名前は、日本語で Aurora (= polar light) を意味する「極光」が由来となっています。
主な機能†
Kyokko は Aurora 64B/66B プロトコルの基本的な機能をサポートしています。
- フロー制御: NFC (Native Flow Control) と UFC (User Flow Control) の2種類をサポートしています
- チャネルボンディング: 任意の数のレーンのボンディングが可能です。
- ほとんどの FPGA で 10 Gbps 以上のデータレートを実現します。Xilinx UltraScale+ FPGA では最大 25 Gbps での通信が可能です。
- 機能についての詳細は Features をご覧ください。
インタフェイス†
Kyokko のインタフェイスは AXI4-Stream になっており、Aurora と同じように使うことができます。
サポートされているボード/デバイス†
- Xilinx
- Kintex Ultrascale (KCU1500, Avnet KU040 DB)
- Virtex Ultrascale+ (Alveo U50, U55, U200)
- Intel
- Cyclone 10 GX (Intel Cyclone 10 GX Development Board)
- Arria 10 GX (Gidel HawkEye)
- Stratix 10 L-tile (DE10-Pro Rev. B)
リポジトリ†
Kyokko は Subversion (SVN) を用いて管理されています。リポジトリは https://lut.eee.u-ryukyu.ac.jp/svn/kyokko/ です。
基本的な使い方†
- リポジトリからソースコードをチェックアウト
- 使用するデバイスの top ファイルでご自身のアプリケーションと接続
- 使用したいプロジェクト内で setup.tcl を実行し、各種 IP コアをセットアップ
詳しい使い方はStart Guideをご覧ください。
- Akinobu Tomori and Yasunori Osana: "Kyokko: a vendor independent high speed serial communication controller.'' Proc. of the 2021 International Symposium on Highly Efficient Accelerators and Reconfigurable Technologies (HEART), Jun. 2021.