Introduction
The Aller AU-Plus Programmer is a carrier board designed to make programming and debugging of the Aller AU-Plus FPGA module straightforward and reliable. It features an onboard USB-JTAG interface (FT2232H) and a standard JTAG header, with both signals connected through a FPC header using a multiplexer. This header connects to the module’s corresponding FPC header via an FPC cable, enabling seamless programming and communication with the FPGA. An M.2 female connector is provided to directly connect the Programmer with the Aller AU-Plus module, making it a compact and feature-rich programming platform. Additionally, the board includes a Cruvi connector, which is connected to a separate FPC header. This FPC header is also linked to the module through another FPC cable, allowing expansion or additional peripheral interfacing.
Board Features
- JTAG header
- FTDI (FT2232H)
- M.2 key M
- Cruvi connector
Hardware Accessories Required
- Aller AU-Plus Module.
- 5V DC Power supply
- USB-C cable
- FPC Cable
- A Xilinx Platform Cable USB II compatible JTAG programmer
Power
The carrier can be powered either by connecting a 5V adapter to the DC jack or by connecting the USB cable.
Clock
M.2 Clock on the programmer
Clock pins | FPGA pins |
---|---|
M.2_CLK_P | AA17 |
M.2_CLK_N | AA18 |
M.2 Edge Connector
The M.2 female connector on the programmer is used to connect the Aller AU-Plus Module to the carrier.
FPC header (P5)
The JTAG header and USB-JTAG signals are multiplexed and routed to the FPC header P5 on the programmer. This header connects to the module’s FPC header P1 via an FPC cable, enabling FPGA programming on the module.
CRUVI Connector (P3)
The Aller AU-Plus Programmer supports CRUVI standard connectors for more complex applications. The Customizable Ruggedized Universal VI (CRUVI) is a universal connector designed for easy integration of peripheral modules with the main board, allowing developers to extend system functionality with minimal effort.
The Cruvi connector (P3) on the programmer is routed to FPC connector (P7), which connects to the module’s FPC connector P7 via an FPC cable.
The table lists the CRUVI pins on the FPC header (P7).
FPC header pins | CRUVI pins | Signal name | FPGA pins |
---|---|---|---|
1 | RESET | VCCO_104 | U9 |
2 | A5_N | VCCO_104 | AB2 |
3 | B5_N | GND | Y1 |
4 | A5_P | GND | AB3 |
5 | B5_P | HD104_IO1_P | W1 |
6 | A4_N | HD104_IO2_P | AB4 |
7 | B4_N | HD104_IO1_N | V1 |
8 | A4_P | HD104_IO2_N | AB5 |
9 | B4_P | HD104_IO3_P | U2 |
10 | A3_N | HD104_IO4_P | AA5 |
11 | B3_N | HD104_IO3_N | AA1 |
12 | A3_P | HD104_IO4_N | Y5 |
13 | B3_P | HD104_IO5_P | AA2 |
14 | GND | HD104_IO6_P | |
15 | GND | HD104_IO5_N | |
16 | A2_N | HD104_IO6_N | V5 |
17 | B2_N | GND | V4 |
18 | A2_P | GND | U5 |
19 | B2_P | HD104_IO7_P | U4 |
20 | A1_N | HD104_IO8_P | Y4 |
21 | B1_N | HD104_IO7_N | V2 |
22 | A1_P | HD104_IO8_N | W4 |
23 | B1_P | HD104_IO9_P | U3 |
24 | A0_N | HD104_IO10_P | AA3 |
25 | B0_N | HD104_IO9_N | W2 |
26 | A0_P | HD104_IO10_N | Y3 |
27 | B0_P | HD104_IO11_P | W3 |
28 | GND | HD104_IO12_P | |
29 | GND | HD104_IO11_N | |
30 | VCCO_104 | HD104_IO12_N | |
31 | VCCO_104 | HD_IO |
Programming Aller AU-Plus Module using Aller AU-Plus Programmer
Aller module can be programmed using two ways: Using JTAG header and USB-JTAG.
Connect the Aller Module to the M.2 female connector on the Aller Programmer before programming, as shown below.
Programming Aller AU-Plus Using JTAG
The onboard JTAG connector in the Aller AU-Plus programmer facilitates easy reprogramming of SRAM and SPI flash on the module through JTAG programmer like “Xilinx Platform cable USB”. Following steps illustrate how to program the FPGA on Aller module using JTAG.
Step 1: Ensure that switch SW2 is set to JTAG mode.
Step 2: Connect the Xilinx Platform Cable USB to the JTAG port on the Programmer. Then, connect one end of the FPC cable to the Programmer’s FPC connector and the other end to the module’s FPC connector and power up the board.
Step 3: Open Vivado project and open the target by clicking on the “Open Target” in “Open Hardware Manager” in the “Program and Debug” section of the Flow Navigator window. Select “Auto Connect”.
Step 4: If the device is detected successfully, then right click on the target device “xcau7p_0” and select “Program Device” as shown below.
Step 5: In the dialog window which opens up, Vivado automatically chooses correct bitstream file if the design was synthesized, implemented and bitstream generated successfully. If needed, browse to the bitstream which needs to be programmed to FPGA. Finally, click “Program”.
As soon as “Program” is clicked, a orange colored DONE LED (D1) on Aller module should light up, indicating that programming process is going on. This LED will turn off when the configuration is complete.
Programming Aller AU-Plus Using USB-JTAG
Ensure that the D2XX drivers are installed prior to programming. The channel A of FTDI FT2232H chip on the Programmer is connected to the JTAG interface of the FPGA via the FPC. Through this connection, USB interface can be used as a JTAG programmer, eliminating the need for a dedicated JTAG cable or connector. Following steps illustrate how to program FPGA on Aller Module using USB-JTAG.
Step 1: Ensure that switch SW2 is set to USB-JTAG mode.
Step 2: Connect the USB type C cable to the USB port on the Programmer. Then, connect one end of the FPC cable to the Programmer’s FPC connector and the other end to the module’s FPC connector and power up the board.
Step 3: Open Vivado project and open the target by clicking on the “Open Target” in “Open Hardware Manager” in the “Program and Debug” section of the Flow Navigator window. Select “Auto Connect”.
Step 4: If the device is detected successfully, then right click on the target device “xcau7p_0” and select “Program Device” as shown below.
Step 5: In the dialog window which opens up, Vivado automatically chooses correct bitstream file if the design was synthesized, implemented and bitstream generated successfully. If needed, browse to the bitstream which needs to be programmed to FPGA. Finally, click “Program”.
As soon as “Program” is clicked, an orange colored DONE LED (D1) on Aller module should light up, indicating that programming process is going on. This LED will turn off when the configuration is complete.
Programming QSPI Flash using Vivado
A ‘.bin’ or ‘.mcs’ file is required for programming Aller AU-Plus onboard QSPI flash.
Step 1: Open Vivado Project. Click on “Open Target” in “Open Hardware Manager” in the “Program and Debug’ section of the Flow Navigator window. Select “Auto Connect”.
Step 2: If the device is detected successfully, then right-click on the target device “xcau7p_0” and select “Add Configuration Memory Device” as shown below.
Step 3: Select the memory device “mt25ql512-spi-x1_x2_x4”, then click “OK”.
Step 4: After completion of Step 3 the following dialog box will open. Click “OK”.
Step 5: Browse to the working ‘.bin’ file or the ‘.mcs’ file (whichever is applicable) and click “Apply” and then “OK” to program as shown below. If programming is successful, a confirmation message will be displayed.