⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme.txt

📁 FPGA、CPLD芯片的usb数据下载线
💻 TXT
字号:
-----------------------------------------------------------------------------usb_jtag - Variations on the implementation of a USB JTAG adapter.Copyright (C) 2005-2007 Kolja Waschk, ixo.de-----------------------------------------------------------------------------usbj_tag is free software; you can redistribute it and/or modify it under theterms of the GNU General Public License as published by the Free SoftwareFoundation; either version 2 of the License, or (at your option) any laterversion.usbj_tag is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FORA PARTICULAR PURPOSE.  See the GNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program as file "copying.txt"; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA-----------------------------------------------------------------------------IMPORTANT: The code and information herein is NOT sufficient to build a device that can be used exactly like an "Altera USB Blaster". I have onlyincluded code here that is purely my own work or taken from Cypress libraryfor the FX2 firmware. I do not include any copy of Altera code or data, such asthe content of the EEPROM that configures the USB controller of their product(containing USB vendor and product ID and some more data). But you need at leastthe correct IDs in the EEPROM to make it compatible with their software. Please do not ask me about such data. The code presented here is interestingenough even if used without Altera software. If you include support for thisdevice in your host software, please let me know, so I can mention it in thisREADME. And please be so kind to make your software compatible enough so itcould make use of an original Altera device as well!Quartus, SignalTap and USB-Blaster are trademarks of Altera Corporation.ChipScope is a trademark of Xilinx Inc.-----------------------------------------------------------------------------FILES: Beside this README, this archive contains the following files: - copying.txt: The text of the GNU Public License (GPL). - device/c51: Firmware for usb_jtag based on Cypress FX2, for SDCC compiler - device/fx2.old: Alternative, now old and unsupported FX2 firmware, for Keil compiler - device/cpld: CPLD logic for usb_jtag with FT245BM + CPLD - host/eecksum: Code to compute a valid checksum for FT245BM EEPROM emulation - host/devtest: Small utility to do some basic tests with usb_jtag adapter - host/openocd: Experimental usb_jtag/USB-Blaster driver for OpenOCD - host/openwince: Experimental usb_jtag/USB-Blaster driver for openwince JTAGWhere appropriate, the directories contain a file "readme.txt" with furtherinformation about purpose, usage and history.-----------------------------------------------------------------------------HISTORY: In my company, in 2006 we received first samples of a new hardwaredesign as a base for upcoming products; two major components of this designbeing a Cypress EZ-USB FX2 USB controller and an Altera Cyclone EP1C12 FPGA.The FX2 implements the USB interface of the product; its first task afterbooting is to configure the FPGA. The FPGA configuration data is sent from theUSB host to the FX2 and then via JTAG to the FPGA.I had the idea to make the FX2 code less specific, i.e. turn it into ageneral-purpose JTAG interface and move all the code specific to FPGAconfiguration away from the FX2, up to the host PC. While developing a strippeddown FX2 firmware, it occured to me that its function in the end would becomesimilar to that of the USB JTAG adapter developed by Altera; just direct FPGAsignal control (bit banging) and fast parallel/serial conversion. The Alteradevice obviously can't do more, because it consists of just an USB-Parallelchip (FTDI FT245BM) and a small CPLD that can't do much more thanparallel/serial conversion for single bytes.  At that time, I took a look atthe Altera communication mechanisms and decided to write my code so it wouldbehave similar to their device.-----------------------------------------------------------------------------THANKS: After I released the first CPLD and FX2 code, Antti Lukats (xilant.com)was so kind to reserve an ID for my project, 0x16C0 / 0x06AD.  Thanks Antti!Jean from fpga4fun.com was the first who tried the FX2 code "outside my lab"and kept trying until he succeeded. Thanks for trying and reporting, Jean!There is an ongoing discussion at http://www.edaboard.com/ftopic114946.htmlwith valuable discussion and info from the past. Whenever possible, I checkthere for new postings and try to answer questions. Thanks to all memberswho contributed (and do so in future) there!-----------------------------------------------------------------------------COMMON ISSUES: I received a number of mails from others who used my logic withvarying success. Following are some general tips.If it works "partially" for you, "sometimes" or "it programs the device, butthe device doesn't work afterwards", your setup maybe isn't suitable for cleartransmission of signals at several MHz. It may still be a critical timing inthe logic, but I'm using it even slightly "overclocked" at 25 MHz and haven'thad any errors since months. So I doubt it's the logic. Try reducing the clockto the CPLD from 24 MHz to, say, 6 MHz.When using AS mode with a FPGA connected in parallel with a configurationdevice (or similar setup), don't forget to connect nCE and nCS.Whenever I experienced problems, it was due to wrong connections, badpullup/pulldown resistors on the target JTAG interface, or mismatch betweenlogic levels (3.3/5 V) of CPLD vs. target JTAG interface.The cable between CPLD and target should not exceed 10 cm in length.If you want to debug the CPLD logic, you could load jtag_logic into a largerFPGA and embed SignalTap or ChipScope to watch what's happening. -----------------------------------------------------------------------------Kolja Waschk, January 2007

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -