Alchitry Au FPGA のデモ

Alchitry Au FPGA は、33,000以上のロジックセルを備えたXilinx Artix 7 XC7A35T-1C FPGAと、256MBのDDR3 RAMを搭載する優れたボードです(さまざまなスピードグレード、温度範囲、動作電圧で利用可能)。

image

Alchitry FPGAプラットフォームのAuエディションは、3.3Vロジックレベルの入出力ピンを合計102本備えており、そのうち20本は1.8Vロジックレベルに切り替え可能です。また、差動アナログ入力を9本、汎用LEDを8個、FPGA内部で操作可能な100MHzオンボードクロック、ボードの設定と電源供給用のUSB-Cコネクタ、そしてデータ転送用のUSBシリアルインターフェースを備えています。すべての AlchitryボードはLucid HDLを完全サポートしています。

「エレメント」と呼ばれるシールドやHATに似たスタック可能な拡張ボードを追加することで、Alchitry Au FPGA は試作スペース、ボタン、LEDなどを増設し、自身のI/Oハードウェア機能を拡張できるようになります。

このデモでは以下のLucid HDLを使用しており、

module blinker (
    input clk,   // clock
    input rst,   // reset
    output blink // output to LED
) {
    dff counter[26](.clk(clk), .rst(rst))
    
    always {
        blink = counter.q[25]
        counter.d = counter.q + 1
    }
}

これはalchitry_topモジュールで用いられ、

module alchitry_top (
    input clk,              // 100MHz clock
    input rst_n,            // reset button (active low)
    output led[8],          // 8 user controllable LEDs
    input usb_rx,           // USB->Serial input
    output usb_tx           // USB->Serial output
) {
    
    sig rst                 // reset signal
    
    .clk(clk) {
        // The reset conditioner is used to synchronize the reset signal to the FPGA
        // clock. This ensures the entire FPGA comes out of reset at the same time.
        reset_conditioner reset_cond
        
        .rst(rst) {
            blinker my_blinker
        }
    }
    
    always {
        reset_cond.in = ~rst_n     // input raw inverted reset signal
        rst = reset_cond.out       // conditioned reset
        
        led = 8x{my_blinker.blink} // blink LEDs
        
        usb_tx = usb_rx            // echo the serial data
    }
}

対応するalchitry.acfファイルと併せて使用されています。

STANDARD(LVCMOS33), SIDE(TOP) {
    pin clk CLOCK FREQUENCY(100MHz)

    pin rst_n RESET

    pin led[0] LED0
    pin led[1] LED1
    pin led[2] LED2
    pin led[3] LED3
    pin led[4] LED4
    pin led[5] LED5
    pin led[6] LED6
    pin led[7] LED7

    pin usb_rx USB_RX
    pin usb_tx USB_TX
}

Lucid HDLは Alchitry Au FPGA ボード上のすべてのLEDを点滅させます。このデモの開発とプログラミングにはAlchitry IDEを使用しました。以下の動画は Alchitry Au FPGA ボードのデモです。

このデモでは、ホストから送信された文字をUSBシリアル端末経由でエコーバックします。

 usb_tx = usb_rx            // echo the serial data

以下のシリアル端末の例では、入力した文字がそのままユーザーにループバックされている様子が確認できます。

Alchitry Auに搭載されているFPGAには、9系統の差動入力を持つ12ビット1MSPSのA/Dコンバータ(ADC)が内蔵されています。このうち8系統はデジタルI/Oと共有され、1ペアは専用入力です。以下のブロック図はXilinx Artix 7 XC7A35T-1C FPGA内部のADCを示しています。

Alchitry AuのFPGA自体にも十分な内部メモリがありますが、Alchitry AuのFPGA には、256MBのDDR3 RAMと接続された内蔵メモリコントローラを備えており、追加の外部メモリとして利用できます。Alchitry Au FPGA は非常に小型のフォームファクタでありながら強力なFPGAボードで、さまざまなアプリケーションに使用できます。また、Xilinx Artix 7 XC7A35T-1C FPGADigiKeyで入手可能です。

どうぞ良い一日を!

この記事はスペイン語でこちらからご覧いただけます。

Este artículo está disponible en español aquí.

新しいALCHITRY AU V2 FPGAバージョンについてはこちらをご覧ください。




オリジナル・ソース(English)