Author Topic: FPGA Advice wanted.  (Read 15002 times)

0 Members and 2 Guests are viewing this topic.

Offline DubbieTopic starter

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
FPGA Advice wanted.
« on: July 10, 2016, 11:12:31 pm »
Hi,

First up, I'll admit that I'm wading into water a long way over my head here!

I have a project that I am working on where I need to time 16 channels simultaneously to ~ 10 nS resolution. I want to store these timings as 16bit ints somewhere, then once all a timeout is reached, set a "dataready" pin so that a microcontroller can read out the data via SPI.
The readout will only happen at 60 HZ so there is plenty of time for the serial transfer.

I figure that a small FPGA is perfect for this application. However I have never done anything with FPGAs before. I have a bunch of experience with microcontrollers. I also have a rough idea how the process of designing for FPGAs goes.

Can anyone recommend an entry level FPGA dev board that has good intro tutorials etc? I would prefer a chip that isn't BGA so I will have a decent shot of assembling a board myself.

I downloaded the free Xilinx software and had a brief poke around. It looks pretty user friendly.

Thanks in advance for any suggestions.

Rhys.
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #1 on: July 10, 2016, 11:25:42 pm »
Hi

Is this a one off or a production board? If it's a one off, forget about building a board yourself. There are a lot of places that will be happy to sell you an assembled board (built in the 100's) for less than what the parts would cost you (single piece).

10 ns impies a 100 MHz clock. That is not a big deal in the FPGA world these days. What *is* an issue is the design software. The manufacturers will happily give you free software to do this sort of thing on their newest parts. If you go off to eBay looking for boards or parts ... that's not what you are going to find. So:

Is there a budget for this gizmo? Is $100 to much, is $10 still to much? Does it have to come in under $1? Do you already have a 100 MHz clock to time things out against or does the FPGA need to generate that clock?

Lots of questions !!

Bob
 

Offline DubbieTopic starter

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: FPGA Advice wanted.
« Reply #2 on: July 10, 2016, 11:30:48 pm »
For now it is a one off part. If I ever wanted to make more, I'd get a professional to design it properly :D

At this stage it is a prototype/RnD device, so budget isn't really a concern. $100 would be completely fine.

Regarding making boards I often design and build my own boards for projects even though it would be far cheaper to use dev boards because in the process I have learnt a ton.

I plan for this to be a learning project as much as anything, so constraints are fairly flexible.

Regarding clock, I can provide the same clock that I will clock the microcrontroller from. I presume I can PLL it up to the desired frequency inside the FPGA.
« Last Edit: July 10, 2016, 11:32:42 pm by Dubbie »
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #3 on: July 10, 2016, 11:40:27 pm »
Hi

To do a reasonable job, you will need at least a 4 layer board. Most of what we do is in the 8 to 12 layer range. There are non-bga parts out there. They have a bunch of restrictions on them that make them less than fun to use. The lead frame really gets in the way these days. One pretty good way to go is something like:

http://www.trenz-electronic.de/products/fpga-boards/trenz-electronic/te0725-artix-7.html

They have all the hard to do stuff taken care of already and will drop on a carrier board that you lay out.

If they ever came back into stock:

https://www.arrow.com/en/products/bemicromax10/arrow-development-tools

Would also work. Getting at the clock input is only possible if you use the edge connector.

This guy is a bit more fun to play with out of the box:

https://products.avnet.com/shop/en/ema/kits-and-tools/development-kits/3074457345628965502

Getting at all the clocks and i/o is not as easy as with the 725 boards.

All of these are massive overkill for what you are trying to do. That's a good thing. Projects like this tend to grow as you get into them...

Bob
 

Offline DubbieTopic starter

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: FPGA Advice wanted.
« Reply #4 on: July 10, 2016, 11:48:40 pm »
Thanks a lot for the useful advice Bob.
That first link looks very interesting.

Do you imagine that I will be able to muddle through a design from scratch on that chip? My problem is that I'm still at the "Don't even know what I don't know" stage here :D

Thanks,

Rhys.
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #5 on: July 10, 2016, 11:54:55 pm »
Hi

The software is not impossible to get through. You will have to come up to speed with VHDL to play in the Xylinx world. Altera will still let you do schematic entry. If this is as much a learning experience as a design ... learn VHDL. It's a couple of weeks watching videos part time. Worst case, you get the demo board from Avnet and the Trenz board.

One way or another you will need to beg / borrow / steal a programming dongle to get the Trenz to do it's thing. I believe the Avnet board has some sort of programmer built in.

Bob
 
The following users thanked this post: Dubbie

Offline DubbieTopic starter

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: FPGA Advice wanted.
« Reply #6 on: July 11, 2016, 12:18:01 am »
Well thanks for the hints Bob, I've bought one of the trenz modules and a xilinx JTAG programmer/cable.

Looking forward to getting thoroughly confused. :D

R
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #7 on: July 11, 2016, 12:21:40 am »
Well thanks for the hints Bob, I've bought one of the trenz modules and a xilinx JTAG programmer/cable.

Looking forward to getting thoroughly confused. :D

R

Hi

Getting confused is most of the fun !!

One quick hint on the 725 module:

It wants 3.3V as a supply to the module. There are switchers onboard that take care of everything else.  LVDS i/o is possible (and a good idea cross talk wise). If you go that way, you will need an external (to the module) 2.5V supply to run the LVDS banks. There is a 2.5V regulator on the module. It's not easy to get at.

Good liuck !

Bob
« Last Edit: July 11, 2016, 12:24:19 am by uncle_bob »
 
The following users thanked this post: Dubbie

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: FPGA Advice wanted.
« Reply #8 on: July 11, 2016, 04:00:32 am »
The software is not impossible to get through. You will have to come up to speed with VHDL to play in the Xylinx world.

Why do you say that? Xilinx software supports VHDL, Verilog, and Systemverilog.
Complexity is the number-one enemy of high-quality code.
 

Offline DubbieTopic starter

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: FPGA Advice wanted.
« Reply #9 on: July 11, 2016, 09:53:58 am »
I have an ice40 dev board, but I found the software much more confusing than the Xilinx


Sent from my phone using Tapatalk
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #10 on: July 11, 2016, 12:09:12 pm »
The software is not impossible to get through. You will have to come up to speed with VHDL to play in the Xylinx world.

Why do you say that? Xilinx software supports VHDL, Verilog, and Systemverilog.

Hi

If this is a start from scratch / I know none of them sort of thing - VHDL is what I'd pick. Based on what has been posted so far, it's a pretty good bet that this is indeed a start from scratch situation.

Bob
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: FPGA Advice wanted.
« Reply #11 on: July 11, 2016, 04:11:18 pm »
iCE40 or ProASIC3, both are fine for this type of application. Less than $3 each, QFN package, no external config ROM.
A large CPLD might be a better fit for a project like this.However for a one off project the last thing I'd look at is the cost of the device or the development board. Concentrate on an easy solution because getting to results quickly is very rewarding.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline sporadic

  • Regular Contributor
  • *
  • Posts: 72
  • Country: us
    • forkineye.com
Re: FPGA Advice wanted.
« Reply #12 on: July 11, 2016, 04:26:26 pm »
Anyone have feedback on the Altera and Xilinx boards from WaveShare? Seem like they'd be ideal for something like this - http://www.waveshare.com/product/fpga-tools.htm

Sent from my XT1094 using Tapatalk

 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: FPGA Advice wanted.
« Reply #13 on: July 11, 2016, 04:43:49 pm »
Anyone have feedback on the Altera and Xilinx boards from WaveShare? Seem like they'd be ideal for something like this - http://www.waveshare.com/product/fpga-tools.htm

I have no experience with the WaveShare FPGA boards, but I do have several of their ARM boards and I've found them to be well-built and very good value for the money. Documentation, however, is minimal and quirky.
Complexity is the number-one enemy of high-quality code.
 
The following users thanked this post: sporadic

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #14 on: July 11, 2016, 04:56:35 pm »
Anyone have feedback on the Altera and Xilinx boards from WaveShare? Seem like they'd be ideal for something like this - http://www.waveshare.com/product/fpga-tools.htm

Sent from my XT1094 using Tapatalk

Hi

At least from a quick look on their web site - what they have are all older parts. Most of them have dropped off of support on the latest "free" IDE's. You can of course cobble something together downloading an older IDE. That's not what I would recommend for a first project. Many of their boards are competing directly against cheap and dirty boards from China. It becomes a "how much will I pay for quality?" question at that point.

Bob
 
The following users thanked this post: sporadic

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: FPGA Advice wanted.
« Reply #15 on: July 11, 2016, 05:23:11 pm »
At least from a quick look on their web site - what they have are all older parts. Most of them have dropped off of support on the latest "free" IDE's. You can of course cobble something together downloading an older IDE. That's not what I would recommend for a first project. Many of their boards are competing directly against cheap and dirty boards from China. It becomes a "how much will I pay for quality?" question at that point.

Agree. Look at Digilent--they have boards based on more recent parts and they support their boards very well.
Complexity is the number-one enemy of high-quality code.
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: FPGA Advice wanted.
« Reply #16 on: July 11, 2016, 06:02:08 pm »
When it comes to Xilinx ISE 14.7 versus Vivado: AFAIK ISE14.7 is mature and Vivado is still under construction. Getting the latest&greatest may not be the best choice. Besides that Xilinx has always kept the old versions of ISE available in case you need to work on a project which has been made using a certain version.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #17 on: July 11, 2016, 06:54:25 pm »
Hi

In the context of a learning project, I find it hard to recommend people learn tools that have already been declared obsolete by the vendor. If you have projects in ISE then sure, keep trucking on those projects. If you are just starting out today .... go with a tool that has a future to it. ISE has no future.

Indeed both Altera and Xilinx will let you download old tool suites. You *can* do a project on a MAX 3000. You will be learning a bunch of stuff that is now going on three generations out of date. If it is absolutely necessary, sure do it.  In a "I only have $10 to spend and X months of time is free" situation, go that way. If it's a skill for the future ... not so much.

Bob
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26906
  • Country: nl
    • NCT Developments
Re: FPGA Advice wanted.
« Reply #18 on: July 11, 2016, 07:03:40 pm »
As much as Xilinx would want it ISE isn't going to be obsolete for the next couple of years. There is still too much not working right in Vivado.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #19 on: July 11, 2016, 07:20:23 pm »
As much as Xilinx would want it ISE isn't going to be obsolete for the next couple of years. There is still too much not working right in Vivado.

Hi

I've seen this process before. As much as the new super version has issues (they always have issues) ... they do go ahead and kill the older version. I'm not in any way saying that's right. It is what happens. If you get a couple of years of overlap that's better than the way some places do it. They *have* to get rid of the cost of support on the older version. A number of people's bonus plans depend on it. That's what makes it happen.

Bob
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: FPGA Advice wanted.
« Reply #20 on: July 11, 2016, 07:34:13 pm »
ISE vs Vivado - where to start...  I have spent 12 years working with ISE and I am still struggling to figure out Vivado.  Maybe I'm a slow learner.  I'm slowly starting to come around...

If I were going to the Internet to find similar projects or tutorials for VHDL, I'll bet there are a thousand times more projects for ISE than there are for Vivado.  I would always recommend starting with ISE even knowing that there is no future.

I thought I posted last night but here's a Spartan 6 board (uses ISE) that includes a USB gadget that will handle the communications to the PC.  Furthermore, it comes with a bunch of sample projects that demonstrate its use:
http://shop.ztex.de/product_info.php?cPath=25&products_id=87

There is a small Debug board that gets the user up to speed fairly quickly:
http://shop.ztex.de/product_info.php?products_id=81

A more realistic board from Digilent:
http://store.digilentinc.com/cmod-s6-breadboardable-spartan-6-fpga-module/

It too will require ISE 14.7

Digilent has implemented the DEPP (EPP Parallel Port) on this device.  So, the user code on the PC treats the device just like a bi-directional parallel port.  I don't want to get too far into it but there is an address register that addresses the data registers and some data registers.  Set the address and then read/write the data register.  It's pretty easy on the PC end because there is an SDK provided.

https://reference.digilentinc.com/reference/programmable-logic/cmod-s6/reference-manual

I'm pretty sure I would try this gadget first.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: FPGA Advice wanted.
« Reply #21 on: July 11, 2016, 07:44:19 pm »
As much as Xilinx would want it ISE isn't going to be obsolete for the next couple of years. There is still too much not working right in Vivado.

Hi

I've seen this process before. As much as the new super version has issues (they always have issues) ... they do go ahead and kill the older version. I'm not in any way saying that's right. It is what happens. If you get a couple of years of overlap that's better than the way some places do it. They *have* to get rid of the cost of support on the older version. A number of people's bonus plans depend on it. That's what makes it happen.

Bob

I think Xilinx is pretty up-front about the fact they no longer support ISE but what are they going to do, leave millions of projects with no support whatsoever?  That's not a winning strategy.

Their view is that they will leave 14.7 out there to support the devices in the field and move on to Vivado with just the slightest overlap in devices.  I don't see 14.7 going away, ever...

If they did kill off 14.7, how would they redefine 'field upgradeable'?  I think having a copy of the old version 10.x is pretty handy as well.  I still have Spartan 2 devices to program.
 

Offline uncle_bob

  • Supporter
  • ****
  • Posts: 2441
  • Country: us
Re: FPGA Advice wanted.
« Reply #22 on: July 11, 2016, 08:15:34 pm »
As much as Xilinx would want it ISE isn't going to be obsolete for the next couple of years. There is still too much not working right in Vivado.

Hi

I've seen this process before. As much as the new super version has issues (they always have issues) ... they do go ahead and kill the older version. I'm not in any way saying that's right. It is what happens. If you get a couple of years of overlap that's better than the way some places do it. They *have* to get rid of the cost of support on the older version. A number of people's bonus plans depend on it. That's what makes it happen.

Bob

I think Xilinx is pretty up-front about the fact they no longer support ISE but what are they going to do, leave millions of projects with no support whatsoever?  That's not a winning strategy.

Their view is that they will leave 14.7 out there to support the devices in the field and move on to Vivado with just the slightest overlap in devices.  I don't see 14.7 going away, ever...

If they did kill off 14.7, how would they redefine 'field upgradeable'?  I think having a copy of the old version 10.x is pretty handy as well.  I still have Spartan 2 devices to program.

Hi

You probably will be able to download ISE 14.7 a century from now. It still will be available and if you have a computer that will run a 100 year old OS, you will be able to fire it up. There will not be anybody to call up when you have a question or find a bug. The latest and best timing info will be in other programs (even for the old parts). That is likely OK for a project you did 100 years ago and simply want to do a small tweak on. Available is not the same as supported ....

Bob
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: FPGA Advice wanted.
« Reply #23 on: July 11, 2016, 08:38:59 pm »
As much as Xilinx would want it ISE isn't going to be obsolete for the next couple of years. There is still too much not working right in Vivado.

Hi

I've seen this process before. As much as the new super version has issues (they always have issues) ... they do go ahead and kill the older version. I'm not in any way saying that's right. It is what happens. If you get a couple of years of overlap that's better than the way some places do it. They *have* to get rid of the cost of support on the older version. A number of people's bonus plans depend on it. That's what makes it happen.

Bob

I think Xilinx is pretty up-front about the fact they no longer support ISE but what are they going to do, leave millions of projects with no support whatsoever?  That's not a winning strategy.

Their view is that they will leave 14.7 out there to support the devices in the field and move on to Vivado with just the slightest overlap in devices.  I don't see 14.7 going away, ever...

If they did kill off 14.7, how would they redefine 'field upgradeable'?  I think having a copy of the old version 10.x is pretty handy as well.  I still have Spartan 2 devices to program.

Hi

You probably will be able to download ISE 14.7 a century from now. It still will be available and if you have a computer that will run a 100 year old OS, you will be able to fire it up. There will not be anybody to call up when you have a question or find a bug. The latest and best timing info will be in other programs (even for the old parts). That is likely OK for a project you did 100 years ago and simply want to do a small tweak on. Available is not the same as supported ....

Bob

True enough.  The thing is, Xilinx has no intention of supporting legacy devices with Vivado.  Even chips as new as the Spartan 6 aren't supported in Vivado.  Nor do I expect them to ever incorporate the legacy devices.  They have a plan for moving forward and it works for me.  I can use the old software to support my older projects and I can use the new software with my newer projects.  But I would still recommend starting with a legacy device and the legacy softward if tutorials were of any concern.

If not, the Arty Artix 7 board is pretty nice as is the Digilent Basys 3.  In fact, the Artix would handle this job pretty well:
http://store.digilentinc.com/arty-board-artix-7-fpga-development-board-for-makers-and-hobbyists/

Mount a little mezzanine board on top for connecting the inputs and the rest is ready to go.  This board works well with Vivado.
 

Offline Sal Ammoniac

  • Super Contributor
  • ***
  • Posts: 1670
  • Country: us
Re: FPGA Advice wanted.
« Reply #24 on: July 11, 2016, 09:04:44 pm »
I started with Vivado and find ISE strange and puzzling. It seems to me that Vivado is a big improvement in usability over the earlier tools. This is just my perspective, however, coming from someone who started with the new tool and never really put much time into learning the old tools.

From a business perspective, Xilinx has to move forward with one tool and stop putting any money into the other. Since they spent $200M developing Vivado (and it's much better than ISE IMO), that's what they should concentrate on. Leave the last version of ISE available indefinitely to support those still using parts not supported by Vivado, but everyone else should move on.
Complexity is the number-one enemy of high-quality code.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf