Bus Blaster buffer logic

From DP

Revision as of 14:17, 24 March 2011 by Lynn (Talk | contribs)
Jump to: navigation , search

Contents

Overview

Bus Blaster v2 is buffered by a reprogrammable CPLD instead of discrete logic chips. New buffer logic can be loaded so the Bus Blaster appears like many common JTAG programmer types. These are the currently available buffer clones.

jtagkey

The JTAGkey is probably the most commonly cloned buffer configuration among FT2232-based JTAG programmers. It is compatible with OpenOCD, urJTAG, and more.

Schematic

Bbv2-jtagkey-cpld-v11.png

KT-link

The KT-link is the first FT2232 JTAG debugger with support for new SWD and SWV JTAG protocols. The libswd project is adding support for SWD to OpenOCD and urJTAG, and the KT-link will be the first supported programmer.

Bus Blaster v2 supports SWD only!

Bus Blaster v2 does not support SWV because one required pin is used to program the CPLD

Schematic

Bbv2-ktlink-v1.png

Programming

Bus Blaster v2 can program the CPLD itself using our patched version of urJTAG. Hopefully our patches will be included in an official release soon.

Download and install the drivers:

Download and install urJTAG:

Download the CPLD implementation:

Patched urJTAG

We patched urJTAG to allow the Bus Blaster v2 to self-program. Follow these steps to setup:

  1. Download and install UrJTAG
  2. Copy the patched .exe file (urjtag-revXX.exe) to the install location (C:\Program Files\UrJTAG)
  3. Copy \bsdl and \svf to c:\, or see the notes section below.

Program

Patched-urjtag-full-program-bbv2-v1.png

In this step we load the CPLD with the buffer logic.

First, start the patched urJTAG by running the patched exe file (urjtag-revXX.exe) and connect Bus Blaster v2 USB to a computer.

jtag> cable ft2232 interface=1
Connected to libftd2xx driver.
jtag>

Select the Bus Blaster programmer.

jtag> bsdl path c:/bsdl
jtag>

Copy the xc2c32a.bdsl file to a directory and tell urJTAG where to find it.

jtag> detect
IR length: 8
Chain length: 1
Device Id: 00000110111000011100000010010011 (0x06E1C093)
Filename:     c:/bsdl/xc2c32a_vq44.bsd
jtag>

Enumerate the devices.

jtag> svf c:/svf/bbv2.svf progress stop
Parsing    660/663 ( 99%)
Scanned device output matched expected TDO values.
jtag>

Copy the .SVF file to a directory. Run the Bus Blaster v2 SVF file. Show progress, stop on errors.

Notes

  • The cable type for the self-program connection is FT2232, option interface=1 targets the CPLD
  • Our patched version of urJTAG requires path names with / instead of \
  • Copy the bsdl file to c:\bsdl, or change the location in the bsdl path command
  • Copy the bbv2.svf file to c:\svf, or change the path in the svf command

Bus Blaster v2 buffer pin connections

Buffer pin connections
FT2232 name FT2232 pin CPLD
ADBUS0/TXD/TCK/SK 1616
ADBUS1/RXD/TDI/DO 1714
ADBUS2/RTS#/TDO/DI1813
ADBUS3/CTS#/TMS/CS1912
BDBUS0/TXD/TCK/SK3811
BDBUS3/CTS#/TMS/CS4110
BDBUS1/RXD/TDI/DO399
ADBUS4/DTR#/GPIOL0218
ADBUS5/DSR#/GPIOL1226
ADBUS6/DCD#/GPIOL2235
ADBUS7/RI#/GPIOL3243
ACBUS0/TXDEN/GPIOH0262
ACBUS1/GPIOH1271
ACBUS2/GPIOH22844
ACBUS3/RXLED#/GPIOH32943
ACBUS4/TXLED#/GPIOH43042
ACBUS5/GPIOH53241
ACBUS6/GPIOH63340
ACBUS7/GPIOH73439