06-07-2017 03:51 AM
As the title insinuates, I'm new to the FPGAs (or at least semi-new). I'm a recent uni grad who has been employed full time for 6 month as an electrical engineer. Unfortunately, I currently work in the power engineering industry when my passion is playing with digital logic. I've seen lots of jobs available in my city for FPGA engineers who work in things high frequency trading, which I find very interesting and I would like to pursue as a career to the best of my ability.
Since I am not very knowledgeable about this industry yet, I'd like to know if anyone could give some insight as to what I should focus on learning in order to make myself employable in such a role. I'm not a complete novice; I've successfully written and simulated a basic cpu which reads instructions from memory and executes them (basic instructions like add, subtract, load, move, multiply, divide and conditional jumps with an alu I wrote). Any guidance is much appreciated.
06-07-2017 05:48 AM
To really learn FPGAs well, you really gotta start with the very basics. Logic blocks/designs, and then translate those basic blocks into HDL (Hardware Descriptive Language) code.
From here, it’s not really about learning the FPGA itself, but more on the software that you need to use the program the chip.
So you can start with latest version of VIVADO with its webpack version from here.
while for actual hardware experience you can start with Artix-7 35T Arty FPGA Evaluation Kit.
with this you can surely grow in FPGA world by starting with understanding the design flow for FPGA.
06-07-2017 08:50 PM
Xilinx hands-on FPGA and Embedded SoC design training is great for Engineers new and old to FPGA and SoC Technology - https://www.xilinx.com/training.html.
I would also recommend to use DocNav to access most of the right documents which can help, discover and learn. https://www.xilinx.com/support/documentation-navigation/overview.html
If you are specifically looking for good methodology guidelines for designing applications you can refer: Ultrafast Design Methodology.
Please mark the post as an answer "Accept as solution" in case it helps to resolve your query.
Helpful answer -> Give Kudos
11-29-2017 01:05 PM - edited 11-29-2017 01:15 PM
Is the fpga board that you recommend appropriate for newbies like me? I have a Ph.D. and I program all
the time, but I am not an electrical engineer.
I am interested in learning about high level synthesis with a newbie introduction.
So recommend a card. Also, does the card you recommend in the previous post come with HLS software or at least a way to get
it at an inexpensive price?
Any help appreciated. thanks in advance.
11-29-2017 03:26 PM
@newport_j I would actually suggest one of the Digilent Zynq boards. Digilent is definitely the right company to buy from for getting started in FPGAs; they're used very frequently by universities and the support for their boards is excellent. At the same time, they're a small fraction of the price of the big Xilinx-branded boards like the ZC702.
I prefer Zynq over Artix because it gives you a decent processor in addition to the programmable logic - and a bunch of handy built-in peripherals (memory controller, USB, ethernet, etc). It's also compatible with SDSoC, which is Xilinx's "next generation" of tools.
For that reason, I'd look at the Zybo-Z7-20. It's relatively expensive ($300), but it's got much better I/O options than some of the other Zynq kits (Arty-Z7 and Pynq-Z1). Vivado and HLS are completely free for this board (the chip is small enough to be covered under the free WebPack license), and you can buy a very heavily discounted SDSoC license to go with it (normally $10, but it looks like it's actually free right now).
11-30-2017 10:05 AM
Okay, I think that the Digilent board is a god idea. My questions is where can I buy it (other than from Digilent)? I was hoping that I could get it from Amazon, since I deal with them all of the time.
Also what else should I buy in addition to the board? I am quite new at this and I am really just feeling my way in the dark. I know that they sell a lot of accessories for it. Which ones should I buy?.
In addition this uses the downloadable software (i.e.. free) software for high level synthesis? Is it available for Linux Ubuntu?
Finally, does it connect to the my laptop from the USB port or does it connect in some other way?
Sorry for the bush league questions, but as I said I am a newbie.
Any help appreciated. Thanks in advance.
11-30-2017 03:17 PM
Easier just to get it from Digilent - it saves effort if you have to send it back, it simplifies licensing (I don't know if third-party sellers would be able to include the SDSoC license as Digilent does), and Digilent customer support is excellent.
Xilinx's response to any problems is invariably along the lines of "contact the authorized Xilinx reseller that you bought the board from. If you didn't buy it from an authorized reseller, then we cannot guarantee that it's an authentic part and therefore cannot provide any support". Digilent is definitely an authorized seller; Amazon is not.
The only things I'd consider adding are:
- A 5V power supply. The Zybo can run from a USB port, but you might not always want to have it plugged in.
- Maybe a Pmod NIC100. The reason I suggest this is that, on the Zynq boards, the built-in ethernet port is connected to the processor (rather than to the FPGA fabric). For high-frequency trading, I can imagine that having a direct connection might give you lower latency.
All the cheap boards use free Vivado WebPack software (includes high level synthesis). It runs on Windows or Linux - in fact the Linux version seems to be better at the moment.
For connecting to a laptop, the board includes a USB JTAG/UART adaptor. This allows for programming the board and low-speed data transfer (top speed on a UART is about 1Mbps). For more speed, it has the ethernet port (the Zynq processor can run Linux, so talking to it over ethernet is much like using any other Linux computer).
01-03-2018 06:56 AM
I got the Digilent board from Digilent. I am unsure where to begin. It came with some code to activate the software, I guess. I am looking for something like A Getting Started booklet or a Quick Start booklet.
It just seems to be light on such items. I need a tutorial and frankly a little hand holding. Since I have never done HLS before and that is the reason, that i got this board. It was the$ 300.00 one with all the accessorizes.
I have programmed for many years though.
I just am unsure where to start.
01-05-2018 08:43 PM
@newport_j Digilent's Resource Centre provides a few useful projects:
They also provide the "Zybo Z7-10 HLS Processing Workshop", which should work nicely for the Z7-20 too (just have to change the processor type from XC7Z010 to XC7Z020). Give that a try; if it doesn't help then I will try to find time to write more of a tutorial.
01-08-2018 10:13 AM
I am confused. I know that Digilent Zybo boards use Vivado software. I thought that software was free. If you want to use more sophisticated version, then you must pay - usually a lot.
So what is with the coupon in the box to get your free software?
It seems that the software is already free.
I also would rather use the Linux version. I am forced to use Windows since it is already on my laptop., but Windows 10 has hyper v so that could work?
Will that work, Using Vivado on Linux with the Linux on Window s 10 hyper v?
Any help appreciated. Thanks in advance.