OpenCores
URL https://opencores.org/ocsvn/usb_fpga_2_14/usb_fpga_2_14/trunk

Subversion Repositories usb_fpga_2_14

[/] [usb_fpga_2_14/] [trunk/] [docs/] [java/] [ztex/] [package-summary.html] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 ZTEX
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
<!-- NewPage -->
3
<html lang="de">
4
<head>
5
<!-- Generated by javadoc (version 1.7.0_79) on Wed Mar 22 19:20:13 CET 2017 -->
6
<title>ztex</title>
7
<meta name="date" content="2017-03-22">
8
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
9
</head>
10
<body>
11
<script type="text/javascript"><!--
12
    if (location.href.indexOf('is-external=true') == -1) {
13
        parent.document.title="ztex";
14
    }
15
//-->
16
</script>
17
<noscript>
18
<div>JavaScript is disabled on your browser.</div>
19
</noscript>
20
<!-- ========= START OF TOP NAVBAR ======= -->
21
<div class="topNav"><a name="navbar_top">
22
<!--   -->
23
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
24
<!--   -->
25
</a>
26
<ul class="navList" title="Navigation">
27
<li><a href="../ztex/package-summary.html">Package</a></li>
28
<li>Class</li>
29
<li><a href="package-tree.html">Tree</a></li>
30
<li><a href="../deprecated-list.html">Deprecated</a></li>
31
<li><a href="../index-all.html">Index</a></li>
32
<li><a href="../help-doc.html">Help</a></li>
33
</ul>
34
</div>
35
<div class="subNav">
36
<ul class="navList">
37
<li>Prev Package</li>
38
<li>Next Package</li>
39
</ul>
40
<ul class="navList">
41
<li><a href="../index.html?ztex/package-summary.html" target="_top">Frames</a></li>
42
<li><a href="package-summary.html" target="_top">No Frames</a></li>
43
</ul>
44
<ul class="navList" id="allclasses_navbar_top">
45
<li><a href="../allclasses-noframe.html">All Classes</a></li>
46
</ul>
47
<div>
48
<script type="text/javascript"><!--
49
  allClassesLink = document.getElementById("allclasses_navbar_top");
50
  if(window==top) {
51
    allClassesLink.style.display = "block";
52
  }
53
  else {
54
    allClassesLink.style.display = "none";
55
  }
56
  //-->
57
</script>
58
</div>
59
<a name="skip-navbar_top">
60
<!--   -->
61
</a></div>
62
<!-- ========= END OF TOP NAVBAR ========= -->
63
<div class="header">
64
<h1 title="Package" class="title">Package&nbsp;ztex</h1>
65
<div class="docSummary">
66
<div class="block">The Java API of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX SDK</a>.</div>
67
</div>
68
<p>See:&nbsp;<a href="#package_description">Description</a></p>
69
</div>
70
<div class="contentContainer">
71
<ul class="blockList">
72
<li class="blockList">
73
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
74
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
75
<tr>
76
<th class="colFirst" scope="col">Class</th>
77
<th class="colLast" scope="col">Description</th>
78
</tr>
79
<tbody>
80
<tr class="altColor">
81
<td class="colFirst"><a href="../ztex/ConfigData.html" title="class in ztex">ConfigData</a></td>
82
<td class="colLast">
83
<div class="block">This class represents the configuration data space of ZTEX FPGA Boards that support it.</div>
84
</td>
85
</tr>
86
<tr class="rowColor">
87
<td class="colFirst"><a href="../ztex/EzUsb.html" title="class in ztex">EzUsb</a></td>
88
<td class="colLast">
89
<div class="block">Provides methods for uploading firmware to Cypress EZ-USB devices.</div>
90
</td>
91
</tr>
92
<tr class="altColor">
93
<td class="colFirst"><a href="../ztex/Fx3Errors.html" title="class in ztex">Fx3Errors</a></td>
94
<td class="colLast">
95
<div class="block">FX3 runtime error strings</div>
96
</td>
97
</tr>
98
<tr class="rowColor">
99
<td class="colFirst"><a href="../ztex/ImgFile.html" title="class in ztex">ImgFile</a></td>
100
<td class="colLast">
101
<div class="block">A class representing a firmware image.</div>
102
</td>
103
</tr>
104
<tr class="altColor">
105
<td class="colFirst"><a href="../ztex/JInputStream.html" title="class in ztex">JInputStream</a></td>
106
<td class="colLast">
107
<div class="block">Creates an input stream from a regular file or a system resource file (i.e. a file from the current jar file).</div>
108
</td>
109
</tr>
110
<tr class="rowColor">
111
<td class="colFirst"><a href="../ztex/Ztex1.html" title="class in ztex">Ztex1</a></td>
112
<td class="colLast">
113
<div class="block">This class implements the interface-independent part of the communication protocol for the interaction with the ZTEX firmware.</div>
114
</td>
115
</tr>
116
<tr class="altColor">
117
<td class="colFirst"><a href="../ztex/Ztex1v1.html" title="class in ztex">Ztex1v1</a></td>
118
<td class="colLast">
119
<div class="block">This class implements the communication protocol of the interface version 1 for the interaction with the ZTEX firmware.</div>
120
</td>
121
</tr>
122
<tr class="rowColor">
123
<td class="colFirst"><a href="../ztex/ZtexContext.html" title="class in ztex">ZtexContext</a></td>
124
<td class="colLast">
125
<div class="block">This class manages an USB context.</div>
126
</td>
127
</tr>
128
<tr class="altColor">
129
<td class="colFirst"><a href="../ztex/ZtexDevice1.html" title="class in ztex">ZtexDevice1</a></td>
130
<td class="colLast">
131
<div class="block">A class representing an EZ-USB device that supports the ZTEX descriptor 1 or an unconfigured EZ-USB device.</div>
132
</td>
133
</tr>
134
<tr class="rowColor">
135
<td class="colFirst"><a href="../ztex/ZtexEventHandler.html" title="class in ztex">ZtexEventHandler</a></td>
136
<td class="colLast">
137
<div class="block">This class defines an event handler thread which can be used in asynchronous mode.</div>
138
</td>
139
</tr>
140
<tr class="altColor">
141
<td class="colFirst"><a href="../ztex/ZtexImgFile1.html" title="class in ztex">ZtexImgFile1</a></td>
142
<td class="colLast">
143
<div class="block">Represents a firmware image with ZTEX descriptor 1.</div>
144
</td>
145
</tr>
146
<tr class="rowColor">
147
<td class="colFirst"><a href="../ztex/ZtexScanBus1.html" title="class in ztex">ZtexScanBus1</a></td>
148
<td class="colLast">
149
<div class="block">A class for scanning the USB for EZ-USB devices.</div>
150
</td>
151
</tr>
152
<tr class="altColor">
153
<td class="colFirst"><a href="../ztex/ZtexUsbReader.html" title="class in ztex">ZtexUsbReader</a></td>
154
<td class="colLast">
155
<div class="block">A helper class to implement asynchronous bulk and interrupt read transfers.</div>
156
</td>
157
</tr>
158
<tr class="rowColor">
159
<td class="colFirst"><a href="../ztex/ZtexUsbWriter.html" title="class in ztex">ZtexUsbWriter</a></td>
160
<td class="colLast">
161
<div class="block">A helper class to implement asynchronous bulk and interrupt write transfers.</div>
162
</td>
163
</tr>
164
</tbody>
165
</table>
166
</li>
167
<li class="blockList">
168
<table class="packageSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
169
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
170
<tr>
171
<th class="colFirst" scope="col">Exception</th>
172
<th class="colLast" scope="col">Description</th>
173
</tr>
174
<tbody>
175
<tr class="altColor">
176
<td class="colFirst"><a href="../ztex/AlreadyConfiguredException.html" title="class in ztex">AlreadyConfiguredException</a></td>
177
<td class="colLast">
178
<div class="block">Thrown if the FPGA is already configured.</div>
179
</td>
180
</tr>
181
<tr class="rowColor">
182
<td class="colFirst"><a href="../ztex/BitstreamReadException.html" title="class in ztex">BitstreamReadException</a></td>
183
<td class="colLast">
184
<div class="block">Signals that an error occurred while attempting to read a bitstream.</div>
185
</td>
186
</tr>
187
<tr class="altColor">
188
<td class="colFirst"><a href="../ztex/BitstreamUploadException.html" title="class in ztex">BitstreamUploadException</a></td>
189
<td class="colLast">
190
<div class="block">Signals that an error occurred while attempting to upload the bitstream.</div>
191
</td>
192
</tr>
193
<tr class="rowColor">
194
<td class="colFirst"><a href="../ztex/CapabilityException.html" title="class in ztex">CapabilityException</a></td>
195
<td class="colLast">
196
<div class="block">Thrown is a required capability is not available.</div>
197
</td>
198
</tr>
199
<tr class="altColor">
200
<td class="colFirst"><a href="../ztex/DeviceLostException.html" title="class in ztex">DeviceLostException</a></td>
201
<td class="colLast">
202
<div class="block">Thrown if a device went lost after renumeration.</div>
203
</td>
204
</tr>
205
<tr class="rowColor">
206
<td class="colFirst"><a href="../ztex/DeviceNotSupportedException.html" title="class in ztex">DeviceNotSupportedException</a></td>
207
<td class="colLast">
208
<div class="block">Thrown if a device is not supported, i.e. has the wrong USB ID's.</div>
209
</td>
210
</tr>
211
<tr class="altColor">
212
<td class="colFirst"><a href="../ztex/FirmwareUploadException.html" title="class in ztex">FirmwareUploadException</a></td>
213
<td class="colLast">
214
<div class="block">Signals that an error occured while attempting to upload the firmware.</div>
215
</td>
216
</tr>
217
<tr class="rowColor">
218
<td class="colFirst"><a href="../ztex/ImgFileDamagedException.html" title="class in ztex">ImgFileDamagedException</a></td>
219
<td class="colLast">
220
<div class="block">Signals that a firmware image is corrupt.</div>
221
</td>
222
</tr>
223
<tr class="altColor">
224
<td class="colFirst"><a href="../ztex/ImgParseException.html" title="class in ztex">ImgParseException</a></td>
225
<td class="colLast">
226
<div class="block">Signals that an error occurred while attempting to decode the firmware file.</div>
227
</td>
228
</tr>
229
<tr class="rowColor">
230
<td class="colFirst"><a href="../ztex/IncompatibleFirmwareException.html" title="class in ztex">IncompatibleFirmwareException</a></td>
231
<td class="colLast">
232
<div class="block">Thrown while attempting to overwrite an existing firmware with an incompatible one.</div>
233
</td>
234
</tr>
235
<tr class="altColor">
236
<td class="colFirst"><a href="../ztex/InvalidFirmwareException.html" title="class in ztex">InvalidFirmwareException</a></td>
237
<td class="colLast">
238
<div class="block">Thrown if a device runs with no or the wrong firmware, i.e. if the ZTEX descriptor is not found or damaged.</div>
239
</td>
240
</tr>
241
<tr class="rowColor">
242
<td class="colFirst"><a href="../ztex/UsbException.html" title="class in ztex">UsbException</a></td>
243
<td class="colLast">
244
<div class="block">Signals an USB error.</div>
245
</td>
246
</tr>
247
</tbody>
248
</table>
249
</li>
250
</ul>
251
<a name="package_description">
252
<!--   -->
253
</a>
254
<h2 title="Package ztex Description">Package ztex Description</h2>
255
<div class="block">The Java API of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX SDK</a>.
256
<p>
257
This API implements access to all ZTEX FPGA Board specific functions from host side. It uses <a href="http://usb4java.org">usb4java</a>, a Java wrapper
258
for libusb 1.0.
259
<p>
260
<h2>Features</h2>
261
The main features are:
262
<ul>
263
    <li> Platform independent host software. It is possible to pack all necessary files (JNI libraries, firmware, bitstream) into
264
         one single jar archive which runs on all supported OS
265
    <li> Firmware upload directly to the EZ-USB FX2 and FX3 Microcontrollers
266
    <li> Firmware upload to non-volatile memory (EEPROM or Flash)
267
    <li> Bitstream upload directly to the FPGA
268
    <li> Bitstream upload to Flash memory
269
    <li> Access to various kinds of non-volatile memory (EEPROM, SPI-Flash, SD-cards)
270
    <li> Configuration memory (MAC-EEPROM) support
271
    <li> <a href="http://www.ztex.de/firmware-kit/default.e.html">Default Interface</a> support
272
        <ul>
273
            <li> Multiple communication interfaces: high speed, low speed, GPIO's, reset signal
274
            <li> Compatibility allows board independent host software
275
        </ul>
276
    </li>
277
    <li>Licensed as Open Source under GPLv3</li>
278
</ul>
279
 
280
<p>
281
<h2>Communication with the FPGA Board</h2>
282
Firmware built using the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX SDK</a> supports an additional descriptor, the ZTEX descriptor 1. This descriptor
283
identifies the device and firmware, provides compatibility information (e.g. to avoid that a device is loaded with the wrong firmware)
284
and specifies the communication protocol. A description of the descriptor is given in <a href="../ztex/ZtexDevice1.html" title="class in ztex"><code>ZtexDevice1</code></a>.
285
<p>
286
The communication protocol defines how the functions provided by the firmware (see main features above)
287
can be accessed. Currently there is only one protocol implemented, the so called interface 1.
288
A description of the interface is given in <a href="../ztex/Ztex1v1.html" title="class in ztex"><code>Ztex1v1</code></a>.
289
<p>
290
The most important classes for the interaction with the EZ-USB device / firmware are
291
<p>
292
<table bgcolor="#404040" cellspacing=1 cellpadding=4>
293
  <tr>
294
     <td bgcolor="#ffffff" valign="top"><a href="../ztex/ZtexDevice1.html" title="class in ztex"><code>ZtexDevice1</code></a></td>
295
     <td bgcolor="#ffffff" valign="top">Represents an EZ-USB device that supports ZTEX descriptor 1. These devices can be found using <a href="../ztex/ZtexScanBus1.html" title="class in ztex"><code>ZtexScanBus1</code></a>. </td>
296
  </tr>
297
  <tr>
298
     <td bgcolor="#ffffff" valign="top"><a href="../ztex/Ztex1.html" title="class in ztex"><code>Ztex1</code></a></td>
299
     <td bgcolor="#ffffff" valign="top">Implementation of interface-independent part of the communication protocol, e.g. uploading the firmware to the EZ-USB and renumeration management.</td>
300
  </tr>
301
  <tr>
302
     <td bgcolor="#ffffff" valign="top"><a href="../ztex/Ztex1v1.html" title="class in ztex"><code>Ztex1v1</code></a></td>
303
     <td bgcolor="#ffffff" valign="top">Implementation of the Interface 1, i.e. the interface dependent part of the communication protocol.</td>
304
  </tr>
305
</table>
306
 
307
<p>
308
<h2>SDK overview</h2>
309
The following diagram gives an overview about the components of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX SDK</a>.
310
<p>
311
<img src="../../imgs/ztex_firmware_kit-diagram2.png" width="800" height="430" alt="SDK for ZTEX FPGA Boards">
312
<p>
313
Java host software built with the SDK usually consists in a single jar archive which contains
314
<ul>
315
    <li> all necessary Java bytecode </li>
316
    <li> the libusb-1.0 JNI wrapper libraries for Linux/X86 (32 and 64 Bit), Linux/ARM (32 Bit), Windows/X86 (32 and 64 Bit) and OSX/X86 (32 and 64 Bit) </li>
317
    <li> optional: the firmware for the EZ-USB device </li>
318
    <li> Bitstream for the FPGA </li>
319
</ul>
320
This single jar archive runs on all supported operating systems.
321
<p>
322
On Linux this jar archive has no additional software requirements. The usb4java/libusb-1.0 library communicates directly with the EZ-USB device using kernel routines.
323
<p>
324
On Windows a libusb-1.0 driver must be installed and assigned to the device, see the <a href="http://wiki.ztex.de/doku.php?id=en:software:tutorial_example">Tutorial on the Wiki</a>.
325
The usb4java library communicates with the EZ-USB device using that driver.
326
 
327
<h2>Related Resources</h2>
328
Additional information can be found at
329
<ul>
330
  <li> <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX SDK</a>
331
  <li> <a href="http://wiki.ztex.de/">ZTEX Wiki</a>
332
</ul></div>
333
</div>
334
<!-- ======= START OF BOTTOM NAVBAR ====== -->
335
<div class="bottomNav"><a name="navbar_bottom">
336
<!--   -->
337
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
338
<!--   -->
339
</a>
340
<ul class="navList" title="Navigation">
341
<li><a href="../ztex/package-summary.html">Package</a></li>
342
<li>Class</li>
343
<li><a href="package-tree.html">Tree</a></li>
344
<li><a href="../deprecated-list.html">Deprecated</a></li>
345
<li><a href="../index-all.html">Index</a></li>
346
<li><a href="../help-doc.html">Help</a></li>
347
</ul>
348
</div>
349
<div class="subNav">
350
<ul class="navList">
351
<li>Prev Package</li>
352
<li>Next Package</li>
353
</ul>
354
<ul class="navList">
355
<li><a href="../index.html?ztex/package-summary.html" target="_top">Frames</a></li>
356
<li><a href="package-summary.html" target="_top">No Frames</a></li>
357
</ul>
358
<ul class="navList" id="allclasses_navbar_bottom">
359
<li><a href="../allclasses-noframe.html">All Classes</a></li>
360
</ul>
361
<div>
362
<script type="text/javascript"><!--
363
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
364
  if(window==top) {
365
    allClassesLink.style.display = "block";
366
  }
367
  else {
368
    allClassesLink.style.display = "none";
369
  }
370
  //-->
371
</script>
372
</div>
373
<a name="skip-navbar_bottom">
374
<!--   -->
375
</a></div>
376
<!-- ======== END OF BOTTOM NAVBAR ======= -->
377
</body>
378
</html>

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.