For FTDI devices to be recognized as a USB-to-JTAG interface in
Xilinx®
JTAG software tools such as XSDB or the
Vivado®
Hardware Manger the EEPROM on the FTDI device must be programmed
with a custom firmware provided by Xilinx. Programming the FTDI is
accomplished by using the
program_ftdi
utility included
in the Vivado install as a Tcl command. Once programmed, the FTDI
device will be recognized as a valid programming cable in Vivado.Note: For on-board implementation details
including FTDI connectivity, please reference the Xilinx VCK190
Schematics available in XTP610 on https://www.xilinx.com/products/boards-and-kits/vck190.html.
The program_ftdi
utility supports the following
FTDI devices:
- FT232H
- FT2232H
- FT4232H
Command Reference:
program_ftdi
Short Description
Write/Read to FTDI EEPROM for Xilinx JTAG Tools support
Syntax:
program_ftdi {-write -ftdi=<ftdi_part> -serial=<serial_number> [-vendor=<vendor_name>][-board=<board_name>][-m=<manufacturer>][-desc=<description>] |
-write -filein=<cfg_filein> |
-read [-fileout=<cfg_fileout>]} [-help][-longhelp]
Usage:
Name Description
-------------------------------------------------------------------------------------
-ftdi Specify the ftdi device to be programmed <FT232H | FT2232H | FT4232H>
-serial Serial number to be written into the EEPROM
[-vendor] Vendor information
[-board ] Name of the board being programmed
[-mfg ] Manufacturer information
[-desc ] A short description of the board
-file_in Input file with all fields to be written
[-file_out] File to which the FDI EEPROM should be read back
Description:
program_ftdi writes/reads the fdti part according to the option specified.
When called with write, either -ftdi and -serial must be used or -filein with -ftdi must be specified. The Xilinx supported configuration for the part specified using -ftdi flag is written into the EEPROM.
-vendor, --board, -m and -desc are optional arguments which can be used to specify more details to be written. All strings must be specified within inverted commas ("").
When used with read, the command reads back the content of FTDI EEPROM to standard out. if -fileout option is used, the read back information is written to the file specified.
If no arguments are passed, FTDI communication is skipped and help menu is printed.
Restrictions:
Only the 1st ftdi part found will be programmed/read. If more than 1 ftdi device is detected this command will error out.
Arguments:
-write - Write the FTDI EEPROM with either the options specifed with command line option of by a given input configuration file.
-read - Read the contents of the FTDI device detected in chain.
-ftdi - (Required field) Specify the ftdi device to be programmed <FT232H | FT2232H | FT4232H>
This programs the ftdi part according to the supported configuration for the specified device
-serial - (Required field) Serial number to be written into the EEPROM
The serial number can have digits and/or alphabets. no special characters may be used.
-vendor - (Optional field) Vendor information
The vendor information should contain vendor name and other details as a string.
-board - (Optional field) Name of the board being programmed
A board name can be written into FTDI using this argument.
-m - (Optional field) Manufacturer information
The Manufacturer information should contain Manufacturer name and other details as a string.
-desc - (Optional field) A short description of the board
-filein - (Required field) Input file with all fields to be written
If this argument is used, an input file with details about the FTDI device, serial number etc should be specified.
-fileout - (Optional field) File to which the FDI EEPROM should be read back
For example, to program an FT2232H the following command would be
used:
program_ftdi write -ftdi FT2232H -vendor "my vendor co" -board "my board" -m "my mfg co" -desc "my product desc" -serial 0ABC01
Note: Be sure to verify and update the Vendor, Board,
Manufacturer Information, Description and Serial Number fields in the above example
before programming.