JTAG Channel Mapping
The defined mappings in a JTAG Board file use bit masks. Table 1 summarizes each of the mask values that can be used and how these values relate to the pins of the parallel port.
Mask Value | Pin | IO Type | Parallel Port Signal Description | Signal Type |
---|---|---|---|---|
01h | 2 | I/O | D0 | Data |
02h | 3 | I/O | D1 | Data |
04h | 4 | I/O | D2 | Data |
08h | 5 | I/O | D3 | Data |
10h | 6 | I/O | D4 | Data |
20h | 7 | I/O | D5 | Data |
40h | 8 | I/O | D6 | Data |
80h | 9 | I/O | D7 | Data |
0800h | 15 | I | Error | Status |
1000h | 13 | I | SelectIn | Status |
2000h | 12 | I | PaperOut | Status |
4000h | 10 | I | Ack | Status |
8000h | 11 | I | Busy | Status |
010000h | 1 | O | Strobe | Control |
020000h | 14 | O | AutoLineFeed | Control |
040000h | 16 | O | InitializePrinter | Control |
080000h | 17 | O | SelectPrinter | Control |
The mapping is true for any standard IEEE 1284 parallel port cable used, for example:
- The parallel port ribbon cable that comes with a NanoBoard
- Parallel Cable III and IV or MultiPRO Desktop Tool for Xilinx
- ByteBlaster II for Altera.
Using Table 1 in conjunction with any of the predefined JTAG Board files, the designated pins of the parallel port used for the JTAG channels can be easily determined. Consider for example, the Xilinx.JTGBRD
file illustrated in Figure 1.
Using Table 1, the pins of the parallel port used for the Hard Devices JTAG chain can be determined as follows:
[HardChannel]
Mask_TCK = 000002
........maps to pin 3 of the port
Mask_TMS = 000004
........maps to pin 4 of the port
Mask_TDO = 001000
........maps to pin 13 of the port
Mask_TDI = 000001
........maps to pin 2 of the port
Similarly, the pins of the port that are used for the Soft Devices JTAG chain can be decoded as:
[SoftChannel]
Mask_TCK = 000080
........maps to pin 9 of the port
Mask_TMS = 080000
........maps to pin 17 of the port
Mask_TDO = 004000
........maps to pin 10 of the port
Mask_TDI = 000020
........maps to pin 7 of the port
Note: Although the predefined Xilinx.JTGBRD
file defines mapping for the Soft Devices JTAG chain, support for these channels may not be present, depending on the development board you are connecting.
Conversely, if you are creating a new JTAG Board file for your own custom board, or modifying an existing one, use Table 1 to determine the mask values to use for each JTAG channel, depending on the pins of the parallel port you wish to use. When choosing the pins of the port to use, the pin's electrical type (input or output) must correspond to that of the JTAG signal:
TCK
,TMS
andTDI
must be mapped to output pins
TDO
must be mapped to an input pin.