Luigi Posted December 5, 2016 Share Posted December 5, 2016 Genesys 2 provides an on board undocumented FT2232 USB2 SW interface. This device should be addressed using Adept 2. My question is if adept can be avoided using standard drivers and libraries provided by the FTDI manufacturer. Luigi Link to comment Share on other sites More sharing options...
hamster Posted December 6, 2016 Share Posted December 6, 2016 Hi! I have a Genesys2, and have never needed to use Adept. I design in Vivado and use the Vivado suit to program the FPGA (the JTAG interface has native support), The J15 USB<->UART bridge uses the standard FTDI drivers to implement the virtual serial port. Link to comment Share on other sites More sharing options...
Luigi Posted December 6, 2016 Author Share Posted December 6, 2016 Hi hamster, I have to clarify my question,I did refer to SW interfacing to the device, the on-board(don't in schemtic) FT2232H provide an 8 bit USB2 480 Mbit/s SW to FW interfacing. ADEPT provide C/C++ libraries (API) to implement DPTI/DSPI SW-FW communication, The same capability is provided by FTDI API/Drivers. As long as possible I prefer to develop using a 'standard' and reusable Design approach, i.e. a design that can be used on any platform using FTDI devices. Virtual serial port is a very slow approach where high bandwidth SW-FW communication is the target, really the USB3 (FTDI -FT600) is best approach providing 32bit 3000 Mbit/s of transfer-rate SW to FW interfacing, the best Genesys 2 on bord protocol is the "FDTDI-FT245 Synchronous FIFO Mode" That I will use to implement SW-FW communication without an added external interface. Luigi Link to comment Share on other sites More sharing options...
Luigi Posted December 6, 2016 Author Share Posted December 6, 2016 It seems that GENESYS should work fine using FTDI API/Drivers Today I did perform a specific test onto the Genesys using the FTDI utility FT Prog, the utility perfectly detects the FT2232 H On Board device, The device is programmed by board manufacturer. The question now is if it can also be programmed by the users. Anyway I did state to try to address it by C++ SW driver. Luigi Link to comment Share on other sites More sharing options...
D@n Posted December 6, 2016 Share Posted December 6, 2016 @Luigi, May I caution you to be careful with that FTDI? Lots of folks on this forum have discovered that the FTDI can be reprogrammed. I know this because I read their posts afterwards as they come back here with their tail between their legs after having bricked their board by reprogramming their FTDI chip. There's even one such post today as I recall. May I offer you two alternate possibilities? The first: why not design your own interface to the board's JTAG that doesn't use the FTDI chip. Then the proprietary FTDI software is no longer an issue. The second: I have been using for some time a command and control interface for my boards that maps over UART. Sure, it may not be the fastest interface, but ... it's worked for me. Using it, I can program flash, program my CPU, reconfigure the board using programmed flash, etc. Since I started using this approach, I've added compression to the data stream (a simple previous word lookup table), and some other things (interrupts, bus error detection, idle, the ability to remote the connection over TCP/IP, etc). If you are interested, we can discuss it some more. There are two problems, though, with this alternate solution: A) it doesn't work if there isn't a compatible program initially running on the board, and be) it takes your UART port away from you. Oh, and since you were looking for "a 'standard' and reusable Design approach", I thought I should mention that the approach mentioned above has worked for me over JTAG (using the JTAG-USER command on a XuLA2 board), DEPP (Digilent's parallel port architecture on a CMod-S6), and UART (both Basys-3 and Arty). So ... it is fairly reusable, if not an FTDI choice. Just some thoughts, Dan Link to comment Share on other sites More sharing options...
Luigi Posted December 6, 2016 Author Share Posted December 6, 2016 Hi D@N, As I did suppose, Digilent has a proprietary API interface layer so any FW/SW application will run only on Digilent compatible boards, This is good reason to avoid ADEPT layers usage. That isn't my policy, Untill now my FW can run an Avnet boards,Enclustra boards and Genesys without compilation problems.. From my side I don't intend to re-program the chip. I will simply try to control it by the FTDI API. I can't suppose that USB SW interface can damage the Genesys 2. From my side as long as possible I'll avoid to write a SW application layers that will run only on Genesys. Surely JTAG or VCOM are standard but slow and poor interface channels. My need is to have a minimum SW/FW streeming capability of sustained 200 Mbit/s that should be compatible with the FTDI device.. Tanks. Luigi Link to comment Share on other sites More sharing options...
Luigi Posted December 7, 2016 Author Share Posted December 7, 2016 Only to update anybody interested to this topic (i.e.SW Accessing to Genesys 2 FT 2232 by direct usage of FTDI API, so overpassing ADEPT); As I did state this approach is needed to implement an independent (no Digilent restricted) interface layer To day I did start to implemeny the application and to connect this SW Application to the Genesys 2 FT2232 USB2 Interface, untill now all seems to work fine: As a very ancient Borland developer I'm using RAD Studio 10.1; Untill now results are: API Imported and linked Device can be Open (FT_Open); Device can be Closed( FT_Close); When Device is Opened from SW, JTAG Channel can't be accessed (as expected, the device is a dual port and Port A is used for JTAG; Closing the device JTAG works normally; Device mode can be set from SW (FT_SetBitMode, I did test tre modes); Device can be READ (i.e. PC write to FW) (this fnction was partially tested becouse no FW is connected) Starting from this preliminary results I can move to design the FW side of the application, This will require some weeks (4 weeks was needed to me to develop the FT600-USB3 FW side); I Know that ADEPT library provids an VHDL model for DPTI interfacing but I prefer to design the interface by myself; That is all results from the first day trials. I'll keep update this session for anybody interested to connect Genesys in USB2 using the ON board provided FT2232 Interface. Luigi Link to comment Share on other sites More sharing options...
Luigi Posted December 15, 2016 Author Share Posted December 15, 2016 To Close this topic. Preliminary FW/SW tests are finished. All test states that the Genesys 2 FT2232 interface pefectly operate if controlled by the FTDI native API i.e. without any ADEPT Usage. Yhe Genesys 2 is a very good evaluation board and perfectly integrates to any PC controller. Link to comment Share on other sites More sharing options...
Question
Luigi
Genesys 2 provides an on board undocumented FT2232 USB2 SW interface. This device should be addressed using Adept 2.
My question is if adept can be avoided using standard drivers and libraries provided by the FTDI manufacturer.
Luigi
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.