Package to interact with JTAG UART modules in Intel FPGA designs
Project description
intel_jtag_uart is a Python module that can be used to interact with the JTAG UART instances inside
Intel FPGA designs.
The official ways to do this are either interactively, through nios2-terminal utility,
or by scripting some TCL code inside the Quartus System Console. There is no official
straightforward way to interact with a JTAG UART with Python.
This module is a wrapper around the jtag_atlantic shared library/DLL that is part of any
modern Quartus installation. (jtag_atlantic is the internal code name for the JTAG UART.)
To use this module, you need access to the jtag_atlantic shared library as well as the jtag_client
shared library, which provides lower level JTAG-related functions.
Usage
-
Install this package with
pip3 install intel_jtag_uart. -
Point to the
jtag_atlanticandjtag_clientshared libraries, so that the module can find it.The module uses the following sequence to find these libraries:
- Look in the directory in which
intel_jtag_uart.pyis located - Look in the directory in which the executable that uses this module is located
- Use the OS-provided way to find shared libraries. (E.g. for Linux, it will check
the directories of the
$LD_LIBRARY_PATHenvironment variable.) - Look in the
$QUARTUS_ROOTDIRdirectory
Most default Quartus installations will have
$QUARTUS_ROOTDIRenvironment variable set to the correct directory, so everything should just work™. - Look in the directory in which
-
Use some variation of the script below:
import intel_jtag_uart
try:
ju = intel_jtag_uart.intel_jtag_uart()
except Exception as e:
print(e)
sys.exit(0)
ju.write(b'r')
time.sleep(1)
print("read: ", ju.read())
The script sends r to the JTAG UART, waits 1 seconds for a reply, and reads the
reply, if there is any. If you have an Arrow/Terasic DECA FPGA board, you can check
things out right away with a precompiled example bitstream.
Full List of Functions/Methods
Use the source, Luke!
This module is a very thin wrapper around a handful of function calls that are mostly self-explanatory.
Bug Reports/Comments/Questions
Bug reports, comments, or questions can be entered through the GitHub issue tracker of this project.
References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file intel_jtag_uart-0.0.3.tar.gz.
File metadata
- Download URL: intel_jtag_uart-0.0.3.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7d1594f34763d78aa009db4af9adb82fafd51e5d9b4c99cc71a592e825501d6
|
|
| MD5 |
005e564d6f971f0ece4db59141990feb
|
|
| BLAKE2b-256 |
ecd2e03ba347fe63b5557d052b0bc7735023a6cdd6f70c2a52f46af33947a8f9
|
File details
Details for the file intel_jtag_uart-0.0.3-py3-none-any.whl.
File metadata
- Download URL: intel_jtag_uart-0.0.3-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce6aefd5986c61d46b04fcf3bccf4da8cc0f65390a05f1bf10d71666d2464a9a
|
|
| MD5 |
76815edd65487ca59efb6f4eaba2bfc3
|
|
| BLAKE2b-256 |
e36048b75e4bc69b19467dd96fe907565868dd1175c94a04d669b6402c86f9ca
|