Skip to content

Control FTDI USB chips and implement JTAG control of devices

Notifications You must be signed in to change notification settings

rockboynton/ftd2jtag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JTAG Exercise

This is a small software application written in Python that interacts with a Xilinx XC2C64A chip mounted on a CoolRunner-II development board.

This design fills in the "back box" between the PC and the JTAG interface on the chip.

Task

The program:

  1. Reads back the unique IDCODE from the XC2C64A chip, and compares it to the IDCODE in the chip’s datasheet.
  2. Blinks D1 and D2 (alternating) at 0.5Hz

The module written can be extended to implement JTAG control over other chips.

Equipment

The equipment needed to complete this exercise includes:

Installation

Wire up the project according to the connection diagram: Wiring Diagram

This code is tested to run on Windows 10 in Powershell

I recommend creating a virtual environment before running, but this is optional:

PS path\to\ftd2jtag> py -m venv env
PS path\to\ftd2jtag> .\env\Scripts\activate
PS path\to\ftd2jtag> pip install -r requirements.txt

Usage

PS path\to\ftd2jtag> py .\jtag_exercise.py

You may also view the JTAG signals in the WaveForms project using the Analog Discovery 2.

Resources

Finding the right datasheets, schematics, and other files from the manufacturer websites was crucial to completing the exercise.

Equipment Datasheets

JTAG Programming Resources

Dependencies

Python >3.6

ftd2xx

bsdl-parser

Additional Q&A

additional_questions.md

Author

Rock Boynton - Portfolio website | GitHub | LinkedIn

About

Control FTDI USB chips and implement JTAG control of devices

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages