Skip to main content
Topic: Bus Blaster update (Read 19019 times) previous topic - next topic

Bus Blaster update

This is a dirt-cheap high-speed JTAG debugger/flash programmer called the Bus Blaster. It was developed here:
http://dangerousprototypes.com/forum/in ... board=37.0

This project started clear back in the spring, but we could never get the buffers right for full 5volt-2volt interfacing. We finally decided some design was better than none, and designed this version that works from 3.3volts to 2.0volts. We could continue to struggle with the design forever, or if we build a less-than-perfect version there might be interest in improving the design from someone with the right insight.

The key here is that old FTDI2232 chip was 5volts, but the new H version is 3.3volts with 5volt tolerant pins.

We want 'out of the box' compatibility with the widely-supported olimex JTAG programmer, but the voltage difference was a real problem. The 5volt chip can be used with the AVC logic family to interface 5.0volts to 2.0volt targets, but when run at 3.3volts the maximum becomes 3.3volts max.

One way around this was using the LVC logic family, but we couldn't find chips that have output enable. That function would take an extra 5 individual output enable logic ICs...

This first version will be very simple - one IO header only, 3.3volts max; after we prove the design we can start to spice it up.

brd/cct images, Eagle files attached. Any suggestions and criticism are welcome.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #1
board
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #2
I don't know why, but I'm having a really hard time attaching the CCT.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #3
The current buffers are:
74AVC4T245 and 74AVC2T45

We also tried (no output enable):
SN74LVC8T245
74LVC2T45
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #4
[quote author="ian"]
We want 'out of the box' compatibility with the widely-supported olimex JTAG programmer, but the voltage difference was a real problem. The 5volt chip can be used with the AVC logic family to interface 5.0volts to 2.0volt targets, but when run at 3.3volts the maximum becomes 3.3volts max.
[/quote]

Could you please elaborate further on this 3.3volts max problem?

Re: Bus Blaster update

Reply #5
Ian what about TXB0108? It is an 8 bit level translator with output enable. It might help maybe.

Re: Bus Blaster update

Reply #6
The FTDI chip has 3.3volt output on the pins. If you connect that to a 2.5volt target the 3.3volt output is too much. If you connect it to a 5volt target, 3.3volt output isn't enough to register a high with the target. Also, some pins need to switch to high-impedance, and the FT2232 can't switch direction on the fly. So, we need a voltage buffer chip, one which translates between votlage, and also has an output enable for high-impedance outputs.

The trick is doing this at higher and lower voltages. The 74AVC4T245 has four level translating bits with output enable, but it is 3.3volts max.

The SN74LVC8T245 will do what we want 3.3v->(0-5), but it is a SOIC-only chip with 8 bits and a single OE channel.

74LVC2T45 is nice, but it only has direction switch and no output enable, a additional output enable buffer would be needed. This is probably the direction we'll go, with a 4066 or something, but we want to prove the programmer concept before messing with the buffers more.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #7
Attached is the summary. The TSRST signal should be done twice: one signal as the input and the other as the output.

There are 6 outputs:
 a) 3 - JTAG signals (TDI, TMS, TCK) with one output enable for all the signals
 b) 1 - TSRST with OE
 c)  1 - TRST with OE
 d) 1 - DGBRQ

There are only 5 input signals:
 a) TSRST
 b) RTCK
 c) TDO
 d) DGBACK
 e) VTG

Attached is a summary. Ignore the Vtarget detect connection, it was changed.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #8
We looked at the TXB chip, but it can only translate one way (meaning to higher or lower voltage targets):

Quote
VCCA should not exceed VCCB.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #9
[quote author="ian"]
We looked at the TXB chip, but it can only translate one way (meaning to higher or lower voltage targets):

Quote
VCCA should not exceed VCCB.
[/quote]

Ahh, I see. I was just focusing on the part about 3.3 to 5v compatibility. But what we need is 2.0-5.0 output, am I right?

Just popped into my mind: An open drain buffer might solve the problem maybe? Found M54/74HC07 as an open drain buffer but no output enable. Maybe a FET switch can be used as a switch for enabling chip or not?

Re: Bus Blaster update

Reply #10
The 74LVC2T45 and SN74LVC8T245 are about perfect, except they don;t have individual output enables. just thinking about it today, writing the post, a 74HCT4066 analog switch might be perfect, or a CD4065 with a transistor switch if it's better to run at USB supply.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #11
Will USB alone be able to supply enough current? An SMD jumper might be a good idea for the test batch. If we find out that we have current issues with the USB, we can quickly unsolder the jumper and solder 2 cables for voltage source connection.

Re: Bus Blaster update

Reply #12
Two back to back level translators should work. First translator goes from 3.3V USB device to 5V logic, the second translates 5V logic to any logic voltage between 1.2V and 5V ( for an Max3000 series translator).

Klaus Leiss

Re: Bus Blaster update

Reply #13
Quote
Will USB alone be able to supply enough current?

It should be, this version doesn't provide any power to the target board. That would probably be a good addition for a future board.
Got a question? Please ask in the forum for the fastest answers.

Re: Bus Blaster update

Reply #14
[quote author="ian"]The SN74LVC8T245 will do what we want 3.3v->(0-5), but it is a SOIC-only chip with 8 bits and a single OE channel.[/quote]I realize that you're dealing with a few problems that are much bigger, but what's wrong with SOIC?  They're actually my favorite these days...