Author Topic: Advice on an FPGA project  (Read 8553 times)

0 Members and 1 Guest are viewing this topic.

Offline 0xff7Topic starter

  • Newbie
  • Posts: 8
  • Country: us
  • Information Addict
    • Together We Hack
Advice on an FPGA project
« on: January 25, 2019, 09:22:21 am »
 So I ordered a Numato Mimas v2 as I have a project in mind using [https://fupy.github.io](https://fupy.github.io/) and was wondering if the XC6SLX9 is a good choice for my particular project. My plan is to make an FPGA based "bus pirate" type of project but with some extra features aside from the standard UART/JTAG/SPI/I2C. My board would also have a "JTAG" finder feature similar to the JTAGulator as well as Logic Analyzer feature (likely using SUMP and Sigrok) and maybe even some sort of glitching features similar to the ChipWhisperer. Basically the idea is yet another "hardware hacking Swiss Army knife". My plan is to use the Mimas V2 to start prototyping and then eventually build a custom PCB for the project. Since I'm still new to FPGAs in general tho I've been having a hard time choosing exactly which FPGA the project would use and finally just ordered the Mimas v2 figuring I can't go wrong with the XC6SLX9. With that said does my chosen chip sound like a good choice for the project? All input regarding the project is very much appreciated:)
Information addict | Poking holes in security is fun | Mobile Security nerd turned Hardware Hacker | Founder TogetherWeHack | #ExploitEverything
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9929
  • Country: us
Re: Advice on an FPGA project
« Reply #1 on: January 25, 2019, 03:56:52 pm »
I would think it would work well.  The only concern I have is with the DDR memory and the logic analyzer application.  The Sump project is based on using onboard static RAM of the Spartan 3 Starter Board.  The project has been ported to a number of other platforms but I haven't followed along.  Look through the ports and see what you turn up.  I also know next to nothing about the timing of DDR memory - among many other topics.

The lack of a large header to connect with the logic analyzer level shifter/breakout board is a PITA.  One of the very nice features of the Spartan 3 Starter board was the 3 50-pin headers.  I have 3 or 4 of those boards and I still think about using them from time to time.  These days, it's the Artix-7 which is a very nice chip with a ton of logic.  But more pricey...

This is also a very nice board with a lot of pins but it doesn't have static RAM
https://www.ztex.de/usb-fpga-2/usb-fpga-2.01.e.html

I guess I'm just not a big fan of the PMOD headers although I concede they have their place for I2C, SPI, UART and so on.

 

Offline 0xff7Topic starter

  • Newbie
  • Posts: 8
  • Country: us
  • Information Addict
    • Together We Hack
Re: Advice on an FPGA project
« Reply #2 on: January 25, 2019, 07:36:57 pm »
The lack of a large header to connect with the logic analyzer level shifter/breakout board is a PITA.  One of the very nice features of the Spartan 3 Starter board was the 3 50-pin headers.  I have 3 or 4 of those boards and I still think about using them from time to time.  These days, it's the Artix-7 which is a very nice chip with a ton of logic.  But more pricey...

Yea when I first decided to order an FPGA I was going back and forth between the Digilent Arty A7 and the Mimas v2. I settled on the Mimas v2 because not only is it half the price but Numato gives a student discount so I got it for around $35 before shipping (was about $55 w/ shipping)
Information addict | Poking holes in security is fun | Mobile Security nerd turned Hardware Hacker | Founder TogetherWeHack | #ExploitEverything
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9929
  • Country: us
Re: Advice on an FPGA project
« Reply #3 on: January 25, 2019, 08:18:42 pm »
The lack of a large header to connect with the logic analyzer level shifter/breakout board is a PITA.  One of the very nice features of the Spartan 3 Starter board was the 3 50-pin headers.  I have 3 or 4 of those boards and I still think about using them from time to time.  These days, it's the Artix-7 which is a very nice chip with a ton of logic.  But more pricey...

Yea when I first decided to order an FPGA I was going back and forth between the Digilent Arty A7 and the Mimas v2. I settled on the Mimas v2 because not only is it half the price but Numato gives a student discount so I got it for around $35 before shipping (was about $55 w/ shipping)

I haven't seen an Artix board with static RAM anyway.  There is a static RAM component for the DDR memory on the Nexys 4 DDR board but I haven't studied the timing.

For the price, the Numato board is going to be hard to beat.  See if it works for the logic analyzer but don't spend much time worrying about it.  Build your other projects, learn the business of coding logic and think about the fact that the Mimas board isn't your last board.
 

Online Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3772
  • Country: nl
Re: Advice on an FPGA project
« Reply #4 on: January 26, 2019, 09:14:47 am »
A long time ago I decided to not go into FPGA, as my limited brain capacity is already strained with writing uC firmware.

In the last few years I've seen open source software tools growing in capabilities and low priced FPGA boards are also becoming available from Ali / Ebay / China / Etc.
With a bit of searching you can get minimal development boards with an FPGA from Altera or Xilinx for less than EUR 10, which makes the price trivial, in my book and the quality of support by open source tools would then becoma a more important factor for me.

As a "swiss army toolbox gadged" the combination of ESP8266 seems very promising.
You can use REPL over WiFi and use python commands to extract data from I2C chips etc via a web browser.

Sigrok is a wonderfull piece of software, and has seen some significant updates, the last big version step from 2018-10 added some nice features. I use it with a CY7C68013A box (24MHz 8ch, from Ali / Ebay / Etc).
With the generic CY7C68013A development board you get 16 channels in Sigrok, but it lacks input protection.
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3238
  • Country: ca
Re: Advice on an FPGA project
« Reply #5 on: January 26, 2019, 03:10:31 pm »
If you're going to sell them then price of the development board means nothing. Select the chip you want to use in your final product (likely to be Spartan-7) then buy the board with this chip. If you design everything for Spartan-6, then moving to Spartan-7 will not be easy - it's totally different set of tools - Vivado vs. ISE.

If you're just doing a project for yourself, use the board you already have. Practically any FPGA can do what you want. However, keep in mind that Spartan-6 is only supported by ISE, which is now obsoleted by Xilinx and replaced with Vivado. If you're just starting, it might not be a good idea to use obsoleted tools.

Of course, if you want to go to very higher speeds, it's another story.
 

Offline 0xff7Topic starter

  • Newbie
  • Posts: 8
  • Country: us
  • Information Addict
    • Together We Hack
Re: Advice on an FPGA project
« Reply #6 on: January 26, 2019, 03:35:24 pm »
If you're going to sell them then price of the development board means nothing. Select the chip you want to use in your final product (likely to be Spartan-7) then buy the board with this chip. If you design everything for Spartan-6, then moving to Spartan-7 will not be easy - it's totally different set of tools - Vivado vs. ISE.

If you're just doing a project for yourself, use the board you already have. Practically any FPGA can do what you want. However, keep in mind that Spartan-6 is only supported by ISE, which is now obsoleted by Xilinx and replaced with Vivado. If you're just starting, it might not be a good idea to use obsoleted tools.

Of course, if you want to go to very higher speeds, it's another story.

Well I'm planning on open-sourcing the project so anyone can build/improve/whatever. I'll likely manufacturer and sell some boards on tindie or something too though
Information addict | Poking holes in security is fun | Mobile Security nerd turned Hardware Hacker | Founder TogetherWeHack | #ExploitEverything
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9929
  • Country: us
Re: Advice on an FPGA project
« Reply #7 on: January 26, 2019, 04:20:35 pm »
I'm not a fan of open source tools for FPGA development for the simple reason that the factory is going to know more about the internals of the chip than any outside developer.  I don't want to have to debug my HDL and the toolchain.

It took me a while to warm up to Vivado after ISE - I don't do well with change, I guess.  Now it's all good.
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3238
  • Country: ca
Re: Advice on an FPGA project
« Reply #8 on: January 26, 2019, 04:36:27 pm »
I'll likely manufacturer and sell some boards on tindie or something too though

Then you need to think about things like price, form factor, future proofing etc.
 

Online iMo

  • Super Contributor
  • ***
  • Posts: 5077
  • Country: bt
Re: Advice on an FPGA project
« Reply #9 on: January 26, 2019, 08:32:38 pm »
For your app with an external ddr I would recommend you a bit bigger chip, at least an XC6SLX16, or better the Artix-7 line.
The XC6SLX9 is pretty capable, its internal sram is rather smallish, you can run a Microblaze MCU in it plus a lot of your own logic, or a complete PDP-8 :).
Connecting the LX9 to an external ddr or something like that would cost you a lot of resources, however.

« Last Edit: January 26, 2019, 08:38:12 pm by imo »
 

Offline OwO

  • Super Contributor
  • ***
  • Posts: 1250
  • Country: cn
  • RF Engineer.
Re: Advice on an FPGA project
« Reply #10 on: January 27, 2019, 03:44:33 am »
XC6SLX9/XC6SLX16 is still a very popular FPGA and is fairly good bang for the buck. I don't see it becoming obsolete any time soon. However higher end Artix-7 and Kintex-7 (and Zynq too!) are starting to become available cheaply here. I would personally avoid Spartan-7 because it seems very difficult to source and aren't available anywhere (might be because no one is using them).
Email: OwOwOwOwO123@outlook.com
 

Offline OwO

  • Super Contributor
  • ***
  • Posts: 1250
  • Country: cn
  • RF Engineer.
Re: Advice on an FPGA project
« Reply #11 on: January 27, 2019, 03:59:06 am »
These parts are "safe" to use (in terms of sourcing):
* XC6SLX9 - 2500LE/$
* XC6SLX16 - 3200LE/$
* XC6SLX25 - 2500LE/$

* XC7A50T - 1800LE/$
* XC7A100T - 2600LE/$
* XC7K160T - 4000LE/$

* XC7Z010-1CLG400 - $14
* XC7Z020-2CLG400 - $30

Prices may fluctuate because of market conditions.
« Last Edit: January 27, 2019, 04:01:47 am by OwO »
Email: OwOwOwOwO123@outlook.com
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3238
  • Country: ca
Re: Advice on an FPGA project
« Reply #12 on: January 27, 2019, 04:20:38 am »
I would personally avoid Spartan-7 because it seems very difficult to source and aren't available anywhere (might be because no one is using them).

Ever heard of Digi-Key? 64 different Spartan-7 parts in stock starting from $14.70

* XC7Z010-1CLG400 - $14
* XC7Z020-2CLG400 - $30

 :-DD
 

Offline OwO

  • Super Contributor
  • ***
  • Posts: 1250
  • Country: cn
  • RF Engineer.
Re: Advice on an FPGA project
« Reply #13 on: January 27, 2019, 05:57:14 am »
Ever heard of Digi-Key? 64 different Spartan-7 parts in stock starting from $14.70
Yeah, if you want to pay $14 for less logic resources than a spartan 6 lx9. The xc6slx9 you can get for about $3.7 (and the market price has been dropping slowly in the last year or so).
For prototypes it doesn't matter, but when you manufacture something for sale you really aren't going to be using digikey for anything that is more than 10% of your BOM cost.
Email: OwOwOwOwO123@outlook.com
 

Online iMo

  • Super Contributor
  • ***
  • Posts: 5077
  • Country: bt
Re: Advice on an FPGA project
« Reply #14 on: January 27, 2019, 09:09:46 am »
These parts are "safe" to use (in terms of sourcing):
* XC6SLX9 - 2500LE/$
* XC6SLX16 - 3200LE/$
* XC6SLX25 - 2500LE/$   <<<<<<<<<<<<   :-+
The LX9 is still pretty popular because of its 144pin flat pack package (the largest XC6+ in such an easy to handle package available, imho).
« Last Edit: January 27, 2019, 12:10:21 pm by imo »
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3238
  • Country: ca
Re: Advice on an FPGA project
« Reply #15 on: January 27, 2019, 02:01:03 pm »
The xc6slx9 you can get for about $3.7 (and the market price has been dropping slowly in the last year or so).

Perhaps you can get it for $3.70, but I certainly cannot. Where do you buy them for $3.70, and in what quantities?
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15180
  • Country: fr
Re: Advice on an FPGA project
« Reply #16 on: January 27, 2019, 05:49:22 pm »
Yeah, the TQFP144 is currently $16.52 at Digikey... (and you'll notice many of the other packages are non-stock... so I'm going to be wary about future supply issues...)
 

Offline OwO

  • Super Contributor
  • ***
  • Posts: 1250
  • Country: cn
  • RF Engineer.
Re: Advice on an FPGA project
« Reply #17 on: January 27, 2019, 05:59:56 pm »
Perhaps you can get it for $3.70, but I certainly cannot. Where do you buy them for $3.70, and in what quantities?

People doing manufacturing in shenzhen generally use a network of suppliers and some can be found on hqew.com. You can search by part number and request quotes from many suppliers at once. Then there are dealers that buy from the market and sell on taobao, generally to R&D customers. These will vet the suppliers (because selling bad parts on taobao will get your reputation ruined real quick) and add some premium, but taobao prices generally track market prices. The prices I listed above are taobao prices, in single quantities. In volume it's probably more like $2.5.

Outside of China your best bet is probably aliexpress. I would pick a seller with a rating of >98%. I did a quick search and the xc6slx9 averages $4 there, with many sellers so supply likely won't become a problem any time soon.
« Last Edit: January 27, 2019, 06:01:48 pm by OwO »
Email: OwOwOwOwO123@outlook.com
 

Offline ali_asadzadeh

  • Super Contributor
  • ***
  • Posts: 1929
  • Country: ca
Re: Advice on an FPGA project
« Reply #18 on: January 27, 2019, 06:24:16 pm »
Quote
These parts are "safe" to use (in terms of sourcing):
* XC6SLX9 - 2500LE/$
* XC6SLX16 - 3200LE/$
* XC6SLX25 - 2500LE/$

* XC7A50T - 1800LE/$
* XC7A100T - 2600LE/$
* XC7K160T - 4000LE/$

* XC7Z010-1CLG400 - $14
* XC7Z020-2CLG400 - $30

Prices may fluctuate because of market conditions.

Thanks for the tip, which speed grades and package options do you recommend? also since you are in china and I always got my parts from there, do you recommend any reliable supplier?
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline kony

  • Regular Contributor
  • *
  • Posts: 242
  • Country: cz
Re: Advice on an FPGA project
« Reply #19 on: January 27, 2019, 07:09:57 pm »
Be warned of fakes of FPGAs on aliexpress. Already got burned on some XC6 chips (SLX45?).
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3238
  • Country: ca
Re: Advice on an FPGA project
« Reply #20 on: January 27, 2019, 07:22:08 pm »
Outside of China your best bet is probably aliexpress. I would pick a seller with a rating of >98%. I did a quick search and the xc6slx9 averages $4 there, with many sellers so supply likely won't become a problem any time soon.

I have not tried buying ICs on AliExpress, but I tried to buy other things and I didn't have any good luck with AliExpress. Perhaps, if I could find good sellers and distinguish them from bad sellers, things would be different, but I'm bad at this. For example, with FPGA, I can probably tell that if the seller shows the picture of the FPGA laying on his table then he probably doesn't care that the part is moisture sensitive and I will have to bake it before soldering. But this is rather a small thing. What other information do I get? How do I know they sell good parts? They might as well be parts which didn't pass Xilinx QA, or something of that sort, how can I tell? Perhaps you can give me some tips?

BTW: There are plenty of Artix-7 parts on AliExpress, and I'm pretty sure Spartan-7 will find its way to AliExpress given enough time. Although Spartan-7's prices seem to be going up and it doesn't look as attractive compared to Artix-7 as it used to be, except perhaps for the smallest parts.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15180
  • Country: fr
Re: Advice on an FPGA project
« Reply #21 on: January 27, 2019, 07:37:45 pm »
I've already bought FPGA dev boards on AliExpress and the parts on them seemed genuine (never had a functional problem either), but I would really not feel confident buying components that end up in a shipped product... ::)
 

Offline kony

  • Regular Contributor
  • *
  • Posts: 242
  • Country: cz
Re: Advice on an FPGA project
« Reply #22 on: January 27, 2019, 07:47:19 pm »
Fakes I got are semiproffesional. You can spot them only after knowing what to look for - bit different surface texture of the BGA overmould after lapping off the old marking, very stubble error in font used for labeling. Otherwise the parts look absolutely legit, get shipped on a tray in ESD bag and only way how to reliably tell is to populate them on board. It is more than likely that even the seller was unaware about compromised source - four parts were remarked counterfits, one was legit. The seller photos mean virtually nothing, possibly the only thing to look for is if they are using ESD percautions when handling the chips.

Never had a problem with bottom of the line chips, trough.
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: Advice on an FPGA project
« Reply #23 on: January 27, 2019, 09:17:22 pm »
I'm not a fan of open source tools for FPGA development for the simple reason that the factory is going to know more about the internals of the chip than any outside developer.  I don't want to have to debug my HDL and the toolchain.

It took me a while to warm up to Vivado after ISE - I don't do well with change, I guess.  Now it's all good.


Open source project is not the same as open source tools. I've released many of my FPGA projects as open source, they still rely on tools like Quartus and ISE.

I played around with Vivado a bit and was not impressed, maybe I'd get used to it eventually. On the Xilinx side though ISE has WAY more hobbyist support so it is preferable IMO if one is doing this as a hobby. If FPGA development is a serious career interest then Vivado is probably the way to go but that was never my interest.
 

Offline asmi

  • Super Contributor
  • ***
  • Posts: 2778
  • Country: ca
Re: Advice on an FPGA project
« Reply #24 on: January 28, 2019, 01:36:34 am »
On the Xilinx side though ISE has WAY more hobbyist support so it is preferable IMO if one is doing this as a hobby. If FPGA development is a serious career interest then Vivado is probably the way to go but that was never my interest.
It's absolutely the other way around - for hobbyists Vivado is WAAAAYYYY better as it brings more free stuff (like Microblaze infrastructure, which is NOT free for S6), not to mention that the tool itself is IMHO much user-friendly (but still is complicated enough that you will need to read/watch some tutorials and docs). After using Vivado ISE seems like a dinosaur from the stone age!


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf