Help with getting started on ECP5-5G Versa Development Kit - Page 1
Forum section: electronics / general

author: RickCHodgin
author_rank: Contributor
timestamp: May 19, 2017, 08:58:20 am
content: A continuation from the thread:https://www.eevblog.com/forum/microcontrollers/help-with-getting-started-on-lattice-brevia-xp2-fpga/I plan to begin development on this $99 promo board this weekend:http://www.latticesemi.com/Products/DevelopmentBoardsAndKits/ECP55GVersaDevKit.aspxThru June 30, 2017 the board is $99 with free Diamond software, and IP suites for $99. It seems to be a very powerful product for PCI Express 2.0 development.My first task: I want to figure out how the scatter gather demo app works for sending mass data to the card, and reading it back.I appreciate any help, and I'll document my findings here.Thank you,Rick C. Hodgin

author: RickCHodgin
author_rank: Contributor
timestamp: May 26, 2017, 07:50:16 pm
content: I have not been able to get a license yet from Lattice Semiconductor. I didn't find out until yesterday that they do not honor gmail.com email addresses, although they did when I bought my Brevia2. And I have contacted their technical support from another email but have not heard back from them. I've left phone messages, and no replies yet.I've never had so much difficulty getting a license before. It's preventing me from moving forward right now.Thank you,Rick C. Hodgin

author: RickCHodgin
author_rank: Contributor
timestamp: May 29, 2017, 09:40:47 pm
content: I finally received my license today and am able to begin development.I think the person who doles out licenses must've been on vacation last week as they've been very communicative today. :-)Thank you,Rick C. HodginUPDATE:The person contacted me and apologized for the delays. They said they were out on sick leave last week.

author: RickCHodgin
author_rank: Contributor
timestamp: May 30, 2017, 03:14:36 pm
content: I was able to get the license, and all of the Diamond software installed for the ECP5 board. I'll start trying to work on the sample projects this week. I took a look at some of the source code, and the close coupling between PC and FPGA board looks awesome and powerful.I plan on buying some stepper motors and drivers and begin work on programming their operation later this month. I'll try to post some videos on various stages of my progress.Thank you,Rick C. Hodgin

author: RickCHodgin
author_rank: Contributor
timestamp: May 31, 2017, 02:56:00 am
content: Lattice Semiconductor should create some videos for ECP5 like they did for ECP2 and ECP3, which show how to install things when you get your new board. There's a quick start guide which gives a link which reaches page that has the demo software. It's not the most intuitive thing for a newbie, but now that I understand how it works it should be easier next time.I'm looking at the scatter / gather demo, which sends large blocks of data through the PCI-Express bus, and reads it back after it is processed by the FPGA. It is a demo showing large volumes of data transmitted from a running win32 app, through the card into the FPGA, and then reading back, all in real-time through an OpenGL-like demo sending frame buffer data from one window, and receiving modified frame buffer data to display in the other.If I can get this part working, then I'll have the ability to send any data I want to my card, basically at any speed. And hopefully I'll be able to set it up to respond to port requests for reads/writes, to allow me to setup ports with changing data for some of the controllers I have, otherwise I'll be in poll mode, which I'm not too keen on.Thank you,Rick C. Hodgin

author: ebclr
author_rank: Super Contributor
timestamp: May 31, 2017, 03:44:33 pm
content: Pci express is nice and useful for PC communications, But the real value on this board is on the Serdes Interface, that interface will open applications that manage hugh datahttp://www.latticesemi.com/~/media/LatticeSemi/Documents/ApplicationNotes/EH/TN1261.pdf?document_id=50463

author: RickCHodgin
author_rank: Contributor
timestamp: May 31, 2017, 03:55:05 pm
content: Quote from: ebclr on May 31, 2017, 03:44:33 pmI've seen a few demos which show real-time 1080p 60fps video being converted on-the-fly. I think that's amazing.My greatest benefit will come from the ability to have immediate feedback and programming of the device by traditional Windows-based software, and to be able to poll in real-time the device as it just keeps on updating its own internal status while computing, which is (I hope) memory mapped to an address I can read through a simple assembly IN $portnum,EAX to read 32-bits, for example.We'll see. I may have to use a transport layer of some kind, which would slow things down somewhat.Thank you,Rick C. Hodgin

author: LKM
author_rank: Newbie
timestamp: August 11, 2017, 12:35:34 am
content: Hi All,Bumping this thread in hopes I can get some support here for the Versa Kit as Lattice is being unresponsive.Rick or anyone - can someone help me get the PCIeBasic demo running? I've tried three computers and a bunch of settings and the card isn't showing up as a device anywhere. I'm using the SPI flash background loading and programming seems OK but I'm not sure if I'm supposed to reset the JTAG jumpers after programming SPI, or if I'm loading the right bitstream, have to reconfigure ISPclock, etc. Getting frustrated!I'm not seeing the link negotiated light, it's just not registering. Has anyone gotten it working? I was hoping to use it to interface some JESD204B ADCs but I'm stuck getting the demos working.Thanks!

author: _pavel_
author_rank: Newbie
timestamp: February 13, 2018, 04:27:41 pm
content: Hi All,Can anyone confirm that the PCIeBasic demo works properly on the ECP5 Versa board?I have not managed to get the demo running as well.For me it looks like the board has a defective SERDES channel which is used for the PCI-e interface.

author: mio
author_rank: Newbie
timestamp: May 10, 2020, 12:38:46 pm
content: Hi,I revive this thread, since it is the first thing that google finds for this topic.After some fiddling I managed to make the basic demo work. Try the following steps if the card is not detected by the os:1. Flash the DK-ECP5-PCIE-200\Demonstration\PCIeBasic\Bitstreams\ECP5-5G_PCIe2_Basic.bit into the SPI Flash using JTAG as described in the board user manual. To do so, I had to make a design with MASTER_SPI_PORT enabled first. Otherwise the FPGA will not let you program the flash while a bitfile is loaded. The option can be enabled in Spreadsheet View -> Global Preferences. You could also prevent FPGA programming using the dip switches I guess.2. Set jumper J4 to 1-2, 3-4 as described in the board user guide eb103. Note that the picture is up side down, meaning pin 1 is the pin that has a little white triangle mark on the board. This will shorten the hot plug PCIe detection pins PRSTN#1/2, which allows the mainboard to detect the cards interface length. Your mb may or may not require this. In my tests at least one mb behaved different when connected properly. But even more importantly the jumper will make the ispClock chip select the PCIe reference clock instead of a on board clock source whenever the board is plugged into a PCIe slot. Not setting the jumper would therefore result in a bad reference clock!3. This took me ages to figure out. You have to configure the ispClock chip that responsible for synthesizing the clock from the PCIe reference clock. To do this the ispClock chip has to be connected to the JTAG chain as described in eb103. You can use the diamond programmer to program DK-ECP5-PCIE-200\Demonstration\PCIeBasic\Bitstreams\ispClock_Versa_Demos_200MHz_PCIE.jed persistently into the ispClock chip. I think this step is only required for 5G boards as the non 5G reference clock is equal to the PCIe reference clock.After these steps the board is properly detected by the operating system as Lattice Non-VGA controller. You may need to do a warm reset (reboot) for the board to show up, however I did not need that in my test setup.