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

Subversion Repositories usb_fpga_1_2

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

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 ZTEX
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
<!--NewPage-->
3
<HTML>
4
<HEAD>
5
<!-- Generated by javadoc (build 1.6.0_02) on Thu Dec 10 20:53:20 CET 2009 -->
6
<TITLE>
7
ztex
8
</TITLE>
9
 
10
<META NAME="date" CONTENT="2009-12-10">
11
 
12
<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
13
 
14
<SCRIPT type="text/javascript">
15
function windowTitle()
16
{
17
    if (location.href.indexOf('is-external=true') == -1) {
18
        parent.document.title="ztex";
19
    }
20
}
21
</SCRIPT>
22
<NOSCRIPT>
23
</NOSCRIPT>
24
 
25
</HEAD>
26
 
27
<BODY BGCOLOR="white" onload="windowTitle();">
28
<HR>
29
 
30
 
31
<!-- ========= START OF TOP NAVBAR ======= -->
32
<A NAME="navbar_top"><!-- --></A>
33
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
34
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
35
<TR>
36
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
37
<A NAME="navbar_top_firstrow"><!-- --></A>
38
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
39
  <TR ALIGN="center" VALIGN="top">
40
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
41
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
42
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
43
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
44
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
45
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
46
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
47
  </TR>
48
</TABLE>
49
</TD>
50
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
51
</EM>
52
</TD>
53
</TR>
54
 
55
<TR>
56
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
57
&nbsp;<A HREF="../ch/ntb/usb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
58
&nbsp;NEXT PACKAGE</FONT></TD>
59
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
60
  <A HREF="../index.html?ztex/package-summary.html" target="_top"><B>FRAMES</B></A>  &nbsp;
61
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
62
&nbsp;<SCRIPT type="text/javascript">
63
  <!--
64
  if(window==top) {
65
    document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
66
  }
67
  //-->
68
</SCRIPT>
69
<NOSCRIPT>
70
  <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
71
</NOSCRIPT>
72
 
73
 
74
</FONT></TD>
75
</TR>
76
</TABLE>
77
<A NAME="skip-navbar_top"></A>
78
<!-- ========= END OF TOP NAVBAR ========= -->
79
 
80
<HR>
81
<H2>
82
Package ztex
83
</H2>
84
The Java API of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX EZ-USB SDK</a>.
85
<P>
86
<B>See:</B>
87
<BR>
88
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="#package_description"><B>Description</B></A>
89
<P>
90
 
91
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
92
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
93
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
94
<B>Class Summary</B></FONT></TH>
95
</TR>
96
<TR BGCOLOR="white" CLASS="TableRowColor">
97
<TD WIDTH="15%"><B><A HREF="../ztex/EzUsb.html" title="class in ztex">EzUsb</A></B></TD>
98
<TD>Provides methods for uploading firmware to Cypress EZ-USB devices.</TD>
99
</TR>
100
<TR BGCOLOR="white" CLASS="TableRowColor">
101
<TD WIDTH="15%"><B><A HREF="../ztex/IhxFile.html" title="class in ztex">IhxFile</A></B></TD>
102
<TD>A class representing a firmware image loaded from an ihx (Intel Hex format) file.</TD>
103
</TR>
104
<TR BGCOLOR="white" CLASS="TableRowColor">
105
<TD WIDTH="15%"><B><A HREF="../ztex/JInputStream.html" title="class in ztex">JInputStream</A></B></TD>
106
<TD>Creates an input stream from a regular file or a system resource file (i.e. a file from the current jar file).</TD>
107
</TR>
108
<TR BGCOLOR="white" CLASS="TableRowColor">
109
<TD WIDTH="15%"><B><A HREF="../ztex/Ztex1.html" title="class in ztex">Ztex1</A></B></TD>
110
<TD>This class implements the interface-independent part of the communication protocol for the interaction with the ZTEX firmware.</TD>
111
</TR>
112
<TR BGCOLOR="white" CLASS="TableRowColor">
113
<TD WIDTH="15%"><B><A HREF="../ztex/Ztex1v1.html" title="class in ztex">Ztex1v1</A></B></TD>
114
<TD>This class implements the communication protocol of the interface version 1 for the interaction with the ZTEX firmware.</TD>
115
</TR>
116
<TR BGCOLOR="white" CLASS="TableRowColor">
117
<TD WIDTH="15%"><B><A HREF="../ztex/ZtexDevice1.html" title="class in ztex">ZtexDevice1</A></B></TD>
118
<TD>A class representing an EZ-USB device that supports the ZTEX descriptor 1 or an unconfigured EZ-USB device.</TD>
119
</TR>
120
<TR BGCOLOR="white" CLASS="TableRowColor">
121
<TD WIDTH="15%"><B><A HREF="../ztex/ZtexIhxFile1.html" title="class in ztex">ZtexIhxFile1</A></B></TD>
122
<TD>Represents a firmware image with ZTEX descriptor 1 loaded from an ihx (Intel Hex format) file.</TD>
123
</TR>
124
<TR BGCOLOR="white" CLASS="TableRowColor">
125
<TD WIDTH="15%"><B><A HREF="../ztex/ZtexScanBus1.html" title="class in ztex">ZtexScanBus1</A></B></TD>
126
<TD>A class used for finding the EZ-USB devices on the USB.</TD>
127
</TR>
128
</TABLE>
129
&nbsp;
130
 
131
<P>
132
 
133
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
134
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
135
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
136
<B>Exception Summary</B></FONT></TH>
137
</TR>
138
<TR BGCOLOR="white" CLASS="TableRowColor">
139
<TD WIDTH="15%"><B><A HREF="../ztex/AlreadyConfiguredException.html" title="class in ztex">AlreadyConfiguredException</A></B></TD>
140
<TD>Thrown if the FPGA is already configured.</TD>
141
</TR>
142
<TR BGCOLOR="white" CLASS="TableRowColor">
143
<TD WIDTH="15%"><B><A HREF="../ztex/BitstreamReadException.html" title="class in ztex">BitstreamReadException</A></B></TD>
144
<TD>Signals that an error occurred while attempting to read a bitstream.</TD>
145
</TR>
146
<TR BGCOLOR="white" CLASS="TableRowColor">
147
<TD WIDTH="15%"><B><A HREF="../ztex/BitstreamUploadException.html" title="class in ztex">BitstreamUploadException</A></B></TD>
148
<TD>Signals that an error occurred while attempting to upload the bitstream.</TD>
149
</TR>
150
<TR BGCOLOR="white" CLASS="TableRowColor">
151
<TD WIDTH="15%"><B><A HREF="../ztex/CapabilityException.html" title="class in ztex">CapabilityException</A></B></TD>
152
<TD>Thrown is a required capability is not available.</TD>
153
</TR>
154
<TR BGCOLOR="white" CLASS="TableRowColor">
155
<TD WIDTH="15%"><B><A HREF="../ztex/DeviceLostException.html" title="class in ztex">DeviceLostException</A></B></TD>
156
<TD>Thrown if a device went lost after renumeration.</TD>
157
</TR>
158
<TR BGCOLOR="white" CLASS="TableRowColor">
159
<TD WIDTH="15%"><B><A HREF="../ztex/FirmwareUploadException.html" title="class in ztex">FirmwareUploadException</A></B></TD>
160
<TD>Signals that an error occured while attempting to upload the firmware.</TD>
161
</TR>
162
<TR BGCOLOR="white" CLASS="TableRowColor">
163
<TD WIDTH="15%"><B><A HREF="../ztex/IhxFileDamagedException.html" title="class in ztex">IhxFileDamagedException</A></B></TD>
164
<TD>Signals that an ihx file is corrupt.</TD>
165
</TR>
166
<TR BGCOLOR="white" CLASS="TableRowColor">
167
<TD WIDTH="15%"><B><A HREF="../ztex/IhxParseException.html" title="class in ztex">IhxParseException</A></B></TD>
168
<TD>Signals that an error occurred while attempting to decode the ihx file.</TD>
169
</TR>
170
<TR BGCOLOR="white" CLASS="TableRowColor">
171
<TD WIDTH="15%"><B><A HREF="../ztex/IncompatibleFirmwareException.html" title="class in ztex">IncompatibleFirmwareException</A></B></TD>
172
<TD>Thrown while attempting to overwrite an existing firmware with an incompatible one.</TD>
173
</TR>
174
<TR BGCOLOR="white" CLASS="TableRowColor">
175
<TD WIDTH="15%"><B><A HREF="../ztex/InvalidFirmwareException.html" title="class in ztex">InvalidFirmwareException</A></B></TD>
176
<TD>Thrown if a device runs with no or the wrong firmware, i.e. if the ZTEX descriptor is not found or damaged.</TD>
177
</TR>
178
<TR BGCOLOR="white" CLASS="TableRowColor">
179
<TD WIDTH="15%"><B><A HREF="../ztex/UsbException.html" title="class in ztex">UsbException</A></B></TD>
180
<TD>Signals an USB error.</TD>
181
</TR>
182
</TABLE>
183
&nbsp;
184
 
185
<P>
186
<A NAME="package_description"><!-- --></A><H2>
187
Package ztex Description
188
</H2>
189
 
190
<P>
191
The Java API of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX EZ-USB SDK</a>.
192
<p>
193
This API is the host-side counterpart of the Firmware-Kit and allows user software to interact with
194
EZ-USB devices running with such firmware. It uses <a href="../ch/ntb/usb/package-summary.html">libusbJava</a>, a Java wrapper
195
for the libusb 0.1 and the libusb-win32 USB libraries. This API is known to run on Linux and Windows, but should work on every operating
196
system which supports libusb and Java.
197
<p>
198
<h2>Features</h2>
199
The main features are:
200
<ul>
201
    <li> Platform independent host software. It is possible to pack all necessary files (libusb libraries, firmware, bitstream) into
202
         one single jar archive which runs on both, Linux and Windows (and other OS's that support libusb and Java) </li>
203
    <li> Licensed as Open Source under GPLv3 </li>
204
    <li> Firmware upload directly into the EZ-USB Microcontroller</li>
205
    <li> Access to EEPROM memory</li>
206
    <li> Firmware upload to EEPROM</li>
207
    <li> Support of Flash memory </li>
208
    <li> Bitstream upload directly to the FPGA (for <a href="http://www.ztex.de/usb-fpga-1/usb-fpga-1.2.e.html">ZTEX USB-FPGA-Modules</a>)</li>
209
    <li> Bitstream upload to Flash memory (for <a href="http://www.ztex.de/usb-fpga-1/usb-fpga-1.2.e.html">ZTEX USB-FPGA-Modules</a>)</li>
210
</ul>
211
 
212
<p>
213
<h2>Interaction with the firmware</h2>
214
Firmware built using the <a href="http://www.ztex.de/firmware-kit/index.e.html">Firmware Development Kit</a> supports an additional descriptor, the ZTEX descriptor 1. This descriptor
215
identifies the device and firmware, provides compatibility information (e.g. to avoid that a device is loaded with the wrong firmware)
216
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>.
217
<p>
218
The communication protocol defines how the functions provided by the firmware (see main features above)
219
can be accessed. Currently there is only one protocol implemented, the so called interface 1.
220
A description of the interface is given in <A HREF="../ztex/Ztex1v1.html" title="class in ztex"><CODE>Ztex1v1</CODE></A>.
221
<p>
222
The most importand classes for the interaction with the EZ-USB device / firmware are
223
<p>
224
<table bgcolor="#404040" cellspacing=1 cellpadding=4>
225
  <tr>
226
     <td bgcolor="#ffffff" valign="top"><A HREF="../ztex/ZtexDevice1.html" title="class in ztex"><CODE>ZtexDevice1</CODE></A></td>
227
     <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>
228
  </tr>
229
  <tr>
230
     <td bgcolor="#ffffff" valign="top"><A HREF="../ztex/Ztex1.html" title="class in ztex"><CODE>Ztex1</CODE></A></td>
231
     <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>
232
  </tr>
233
  <tr>
234
     <td bgcolor="#ffffff" valign="top"><A HREF="../ztex/Ztex1v1.html" title="class in ztex"><CODE>Ztex1v1</CODE></A></td>
235
     <td bgcolor="#ffffff" valign="top">Implemenetaion of the Interface 1, i.e. the interface dependent part of the communication protocol.</td>
236
  </tr>
237
</table>
238
 
239
<p>
240
<h2>System overview</h2>
241
The following diagram gives an overview about the usage of the different parts of the <a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX EZ-USB SDK</a>.
242
<p>
243
<img src="../../imgs/ztex_firmware_kit-diagram.png" width="660" height="600" alt="ZTEX EZ-USB SDK overview for Linux and Windows">
244
<p>
245
The host software usually consists of a single jar archive which contains
246
<ul>
247
    <li> all necessary Java bytecode;  </li>
248
    <li> the libusb Java wrapper libraries for Linux (libusbJava.so) and Windows (libusbJava.dll), which are statically linked against libusb (no libusb installation required); </li>
249
    <li> the firmware for the EZ-USB device (unless not installed in EEPROM); </li>
250
    <li> Bitstream for the FPGA (if required). </li>
251
</ul>
252
This single jar archive runs on both, Linux and Windows (or other OS's that support libusb and Java).
253
<p>
254
On Linux this jar archive has no additional software requirements. The libusb(Java) library communicates directly with the EZ-USB device using kernel routines.
255
<p>
256
On Windows a libusb driver is required. (This driver is a part of the ZTEX SDK package). The libusb(Java) library communicates with the EZ-USB device using that driver.
257
 
258
<h2>Related Resources</h2>
259
For more information about this project visit the
260
<a href="http://www.ztex.de/firmware-kit/index.e.html">ZTEX EZ-USB SDK</a> page.
261
<P>
262
 
263
<P>
264
<DL>
265
</DL>
266
<HR>
267
 
268
 
269
<!-- ======= START OF BOTTOM NAVBAR ====== -->
270
<A NAME="navbar_bottom"><!-- --></A>
271
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
272
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
273
<TR>
274
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
275
<A NAME="navbar_bottom_firstrow"><!-- --></A>
276
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
277
  <TR ALIGN="center" VALIGN="top">
278
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
279
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
280
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
281
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
282
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
283
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
284
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
285
  </TR>
286
</TABLE>
287
</TD>
288
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
289
</EM>
290
</TD>
291
</TR>
292
 
293
<TR>
294
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
295
&nbsp;<A HREF="../ch/ntb/usb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
296
&nbsp;NEXT PACKAGE</FONT></TD>
297
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
298
  <A HREF="../index.html?ztex/package-summary.html" target="_top"><B>FRAMES</B></A>  &nbsp;
299
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
300
&nbsp;<SCRIPT type="text/javascript">
301
  <!--
302
  if(window==top) {
303
    document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
304
  }
305
  //-->
306
</SCRIPT>
307
<NOSCRIPT>
308
  <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
309
</NOSCRIPT>
310
 
311
 
312
</FONT></TD>
313
</TR>
314
</TABLE>
315
<A NAME="skip-navbar_bottom"></A>
316
<!-- ======== END OF BOTTOM NAVBAR ======= -->
317
 
318
<HR>
319
 
320
</BODY>
321
</HTML>

powered by: WebSVN 2.1.0

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