NAME
Device::Jtag::PP - Perl extension for communicating with JTAG devices via PC parallel port.
SYNOPSIS
use Device::Jtag::PP;
my $jtag = Device::Jtag::PP->new();
$jtag->autodetect();
$jtag->shiftir($device_number, $binary_string);
$jtag->shiftdr($device_number, $binary_string);
DESCRIPTION
Facilitates communication with JTAG devices using the Windows parallel port driving a Digilent Parallel Cable 3 (commonly shipped with Xilinx Spartan-3 FPGA evaluation boards).
EXPORT
None by default.
PREREQUISITES One must install the Perl module Device-Parallel port, which in turn requires that the file inpout32.dll available from http://www.logix4u.net/inpout32.htm be copied to the Windows\sytem32 folder.
CONSTRUCTOR =head2 new =over 4 =item new() Creates a Device::Jtag::PP
=back
METHODS =over 4 =item initialize() Initializes the devices on the JTAG chain to the RTI state.
- autodetect() Auto detects devices on the JTAG scan chain by shiting out 32-bit IDCODE register values for each device on the chain. The subroutine idcode_lookup is called for each 32 bit value to assign information for that device. Currently, only the IDCODEs for Spartan-3 and XCF0xS Flash PROMs are available, but the user can easily add his own.
- shiftir(DEVICE, BIT_STRING) Shift BIT_STRING (a simple string of 0's and 1's) to the instruction register of device number DEVICE (integer) on the JTAG chain. All other devices on the chain get the BYPASS instruction. The device closest to the PC's outgoing serial data is defined as device 0. The length of BIT_STRING must match the number of bits defined for that device's instruction register.
-
= item shiftdr(DEVICE, BIT_STRING) Shift BIT_STRING (a simple string of 0's and 1's) to the data register of device number DEVICE (integer) on the JTAG chain. The device closest to the PC's outgoing serial data is defined as device 0. The length of BIT_STRING must match the number of bits defined for that device's instruction register. Returns a hexadecimal string of the data received on TDO from device number DEVICE.
HISTORY =over =item 0.1 - First release Basic first release. IDCODE support for Spartan-3 and XCF0xS Flash PROM devices only. =back
SEE ALSO
"bvdocs/appnotes/xapp139.pdf" in www.xilinx.com for information on JTAG tap controllers.
AUTHOR
Toby Deitrich, <tdeitrich@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2007 by Toby Deitrich
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.
2 POD Errors
The following errors were encountered while parsing the POD:
- Around line 392:
'=item' outside of any '=over'
- Around line 411:
You forgot a '=back' before '=head1'