FPGA thread

FPGA thread

Other urls found in this thread:

youtube.com/watch?v=MI18Wk4gxA4
en.wikipedia.org/wiki/Processor_(computing)
en.wikipedia.org/wiki/Connectionism#Parallel_distributed_processing_.28PDP.29
twitter.com/NSFWRedditImage

okay

What do you use it for?

Are there any decent Linux-based development tools yet? It has been a while since I last gave them any attention and back then it did not look good.

Any projects developed with these tools?

anyone know how to load to chip on a DE0-Nano from Linux?

I've got Quartus II up and running but the Terasic demo software only works on winblows and I can't figure out how to get it working in wine

general purpose computers can do everything, but they also suck at everything

if you limit the domain of what you want to do you can implement a faster and more efficient system on custom hardware, which can be prototyped or realized on an FPGA

FPGA's are really good for realtime systems like video/audio processing

vivado

to add to this you can also implement general purpose chips on an FPGA to learn commodity-style computer engineering

learning VHDL/verilog will also change your understanding of programming computers, because the design of the machine code on your platform FPGA will be a result of the structure of your VHDL, so for example instead of making a chip that runs on traditional opcodes like x86 or ARM asm, you could make a tagged architecture, or a configurable dataflow architecture, the sky is the limit

>vivado

As far as a Linux environment is considered, the Vivado download page seems to talk quite lot about licenses, license servers, license management tools and login credentials. While I can perfectly understand the reasoning for this, it nevertheless locks the environment out for further consideration on my part.

Search continues. Things improve. Matter of time, perhaps.

I remember using these in school

If you don't mind the FPGA being a bit old, there's the Icestorm (open source) project for iCE40 FPGAs.

I have been using it in a VM for over a year and I never had to deal with license BS. I only entered my Xilinx account once while installing and thats it

Which VM and how do you configure communication with the board?

virtualbox running fedora on a MacBook Air, and you install some extension pack to virtualbox which lets you use host usb devices on the guest natively

Slowly advancing project, but clearly not abandoned. There seems to be support for 8k parts. Interesting. Worth a closer look! Thanks!

Olay, but what do you personally make that involves FPGAs.

realtime image processing for live event graphics

Not him , but you could implement LZMA in an fpga hook up the board on an usb and then write a driver and a command line tool that can interface with it and ending up with a gzip like tool that can handle huge files quickly.
Not very optimal for most people from price/complexity/time perspective but just an example.

you can implement a custom protocol on a board and connect another board to your server or friends and now you have a blazing fast VPN with hardware level security

It's not, that it's old, it is the fact, that they are _tiny_.

Most of them are.

I've been using the old xilinx ISE studio and it works fine under debian, thought it is with the free license. I'd imagine vivado is about the same.

This Linux Foundation talk is quite recent: Open-Source Tools for FPGA Development

youtube.com/watch?v=MI18Wk4gxA4

I want to make a thing that takes 4k+ video in over displayport, does some simple permutations to it, and spits it back out over another dp. Is there an existing board I could get that would be suitable for this?

any that work with Terasic boards?

not sure about DP, but there are some boards from Digilent with HDMI in & out at decent pricepoints

one of the problems with working with 4K is you need a sufficiently fast FPGA to implement protocols for 4K

I built a custom industrial controller. 8-16 axis of closed loop control per board set. RISC-V cpu. Ethernet IO too. The boards can do a lot more than that though (fpga duh).

>This Linux Foundation talk
The guy uses a Mac :)

It never ends... all the best programmers are always seen using Macs.

>The guy uses a Mac :)

that's probably the conference organizers presentation laptop that everyone sends their slides to and uses because switching computers would be impractical

Guys, I've been toying with making a RISC-V targeted fpga board.

It would have PS2 inputs for keyboard and mouse, VGA output (min 1024x768), DDR2 ram, SD card, some sort of stereo audio out, some sort of ethernet. The fpga would be either an Artix-7 or an unreleased Spartan-7.

I could release the fully functioning VHDL RISC-V cpu, etc. that runs at ~200MHz. Maybe booting linux. It would probably be about as fast as an early Pentium, but would be totally open source.

The only thing that stops me is I figure only about 3 people globally would buy the thing. How many of you guys would drop $500 on such a thing?

no it isn't. all the laptops are different from diff speakers.

I would drop $500+ for a fully fledged dataflow architecture box with the peripheral specs you provided + a USB port, but not some shitty slow commodity cpu rehash

wow so the best programmers actually use a variety of computers! what a thought

why make your own board? why no use a preexisting one?

if your cpu is decoupled enough from the board's I/O it could easily be ported between FPGA boards and the instruction set and software can remain the same

Don't bother man, FPGAs are not ideal for making processors. They're good for prototyping processor designs, but that's about it. The future is FPGAs with embedded hard processors like the ZYNQ and closely coupled FPGA fabric to do what FPGAs are good for.

Friendly advice: release it for free and then if you want to sell it, do it as an ASIC design (like ARM does)

>FPGAs are not ideal for making processors

they're good for processors, just not commodity instruction set style ones

in the modern day where hardware backdoors are a concern for privacy, why not make a CPU design on an FPGA with hardware accelerated encryption/decryption, aimed specifically for secure communications?

It's funny how Terasic likes to tout you can run Linux on their boards, but their actual tools aren't compatible for Linux.

USB is actually a bitch. There is an enormous amount of hardware and software (in particular) to make a usb port do anything.

Most things that have a usb port on it just use it for a serial console with a single dedicated chip. Is that all you want the usb port for, or do you want a lot of IO from it? Would you want something that forms something like a EPP port that would let you hook the fpga fabric up to it and stream in/out at ~20-40 MB/sec (usb 2.0).

>> shitty slow commodity cpu rehash
I realize FPGAs are cool because people can go way off the reservation, but you would be on your own wrt fpga development. I could provide the fpga pinouts and sample driver VHDL code for all functions.

Give me one example of a successful processor for FPGAs. As a product not as academic research

many of the proprietary or secret military architectures used by large companies, government agencies, or government contractors that can't risk outsourcing hardware development use it, also an FPGA is already inherently a processor architecture by itself, it's just configurable, if you don't understand what dataflow architectures are you should really read up on it before saying such

>As a product not as academic research

considering they've only been affordable within the last decade or so, you're baiting here, check out FPGAs for yourself

why not just make retro computers on FPGAs ? people already did it and it's somehow selling

I'm actually the guy that did this
So I already have everything done, just not packaged up.

I could also maybe stick an array of like 10 simple cpus in the fabric running as a GPU or coprocessors. I have already done that in another project.

I realize hard cores are good, but I did not want to buy into a single vendors toolchain. Xilinx really wants you to use the whole stack for your project, then be 'stuck'. At least potentially I can move everything I've done over to Altera with a little work if I needed to.

I did a hw accelerated triple DES for a 5-stage MIPS processor ~10 yrs ago for my master's thesis. Nice as a research project, not worth a dime as a product. There's plenty of open source AES FPGA designs out there, it's not a novelty. Bottom line is nobody cares if it's not an ASIC design and there are lots of companies offering hw enc/dec designs for ASIC processors (ARM, etc.)

Yeah, that is one of the only 'markets' I can see, but many are somewhat clones of old hardware.

The other 'market' is what touched on. A totally open trustable core that you can build anything on, or build into your personal infrastructure in whatever way you can imagine.

It really comes down to how many people would buy such a thing. If you guys are cranking out sophisticated high speed video transformations like , building your own custom bga board is not that far away on the high end, and on the low end blinking a LED is good enough.

8 yrs of professional experience, believe me it's not worth the trouble. Massively parallel pipelines/accelerators (for AI, graphics, etc.) yes. Single/dual/triple core CPUs, no - ASICs are better accustomed for those

>Massively parallel pipelines/accelerators (for AI, graphics, etc.) yes.

aaaand that's dataflow, not everyone's head is in HarvardAchland

I think you are forgetting that ASICs are pretty pricey, and FPGA's are getting cheaper / faster / bigger. Not everything is the high end. If you can push lots of functionality into a single chip and drop your BOM, you win. All it needs to be is fast enough for the job at hand.

If anything ASICs are going to get more and more rare imho.

>aaaand that's dataflow, not everyone's head is in HarvardAchland
Sure, but that's not a processor anymore. Unless we stretch the definition of "processor" to anything that processes bits.

Anyway, if you go more massive dataflow go ahead. Money's good at AI acceleration at the moment (inference), if I had the time that's what I would work on. Finance too, although you need to know the math and the bastards are very secretive and don't publish a lot

ASICs are always going to be best for the high end, low energy, etc. Unlikely that that'll ever change

However for cases where it isn't financially justifiable to drop the extra cash on an ASIC then yeah, FPGAs all the way. And with FPGA tech becoming cheaper and cheaper we will see more of an uptake, the limiting factor now is that there arent enough people who know about hardware design and HDL languages

>Unless we stretch the definition of "processor" to anything that processes bits.

en.wikipedia.org/wiki/Processor_(computing)

ain't a stretch at all

Right now I'm using it for Connectionist research

en.wikipedia.org/wiki/Connectionism#Parallel_distributed_processing_.28PDP.29

the brain works more like an FPGA than a commodity CPU

>ain't a stretch at all
We're nitpicking here. It's a stress regarding colloquial term processor=CPU.

Brain doesn't work as either, we have no fucking clue how it really works, but I get your point.

Go ahead with the AI stuff they're really interesting and potentially lucrative - but go quickly before the bubble bursts (and it will burst in a few years, mark my words)

What would it take to move a FPGA design over to a custom ASIC beyond $500k-$1M?

Back in the day I picked VHDL as my language of choice thinking I'd never make an ASIC. Could I use my existing hdl designs?

Do I need to rewrite for async resets? Anything else?

>but go quickly before the bubble bursts (and it will burst in a few years, mark my words)

by this do you mean the collapse of civilization? AI tech is among the most subsidized on earth

I think he means everything is boom/bust always. Look at the .com implosion. AI has been a huge thing in the past and been dropped.

imho this deep learning stuff is very cool, but they don't have real AI figured out. They have a better machine and when the new limits are found funding will leave for greener fields, and it will take another 20 years of R&D before AI is again the new hotness.

as long as the military exists AIs will be hot, the so called "AI Winter" is a meme caused by government contractor budgets becoming classified and the fall of a tiny expert systems industry because their target customers (the average office worker) is retarded

I need some recommendation from you guys... there seems to be some knowledgeable FPGA ppl on here.

I'd like to implement a small portable device that would take microphone input and process the sound. Sound processing part would basically enhance the speech and make speech in noisy environments more intelligible. I'd like to experiment with various sound enhancement algos. It would act like some kind of a hearing aid.

Anyone have some recommendations for an FPGA that would be sufficient for this? Something that comes in a small package maybe?

FPGAs are not magic sauce, and are somewhat cumbersome to work with. You need some sort of a model to work from before you commit to any kind of hardware. You need to have samples from microphones and an algorithm working in software - even non-realtime just as a test before you commit to any sort of hardware. If you can get away with using a DSP of some kind do that over a fpga.

After you have a model working, and are sure that you need it in a fpga, modify the software model to do its calculation on a TimeEvent() function to start modeling it as a clock synchronous process. Only then go shopping for hardware.

While FPGAs can be used for this purpose, I believe that a DSP is more apropriated.

I bought a de1-soc because my school used one, but it's been sitting on my shelf for months. I have no idea what to do with it.

I don't know how beginner you are.

For a first project make it display the number input on 8 of the slide switches in hex on two of the 7 segment displays.

I work for Altera, now called Intel PSG. We make FPGA's. AMA i guess.

I can do that. I took a whole class on Verilog and digital logic. Last thing I did was a lab, where I hooked up a keypad to the GPIO header and made a keypad debouncer to display hex on the displays. I'm really interested in hardware, and thought I'd have ideas of what to do after class, but I don't know.

I want to learn FPGA's to run native NeXTSTEP on it.
Does anybody has any recomendation to reach that goal?

Can I play?

looks like that thing has an independent sdram chip hooked up to the fpga. Bring that thing up, use it as a framebuffer, use the keyboard interface you already created and make some sort of game. ?pong?

just a random idea.

Is Intel going to be fabbing your chips?

Also find your marketing department and shoot them. the last time I went looking at your product line it was totally unclear what your product evolution would be.

For Xilinx it is stupid simple. Want a cheap chip, get a spartan. The spartan 7 is faster than the spartan 6, which is faster than the spartan 3.

Artix < Kinetix, < Veritex (probably all misspelled)

Are you just planning on dumping all your lower end chips, because as somebody that buys these things, I have no fucking clue as a company what you are up to. An intel marketing is really just obfuscation by another name.

Is it a PLC?

Your desk is suspiciously neat to have such a device on it.

>tfw I have to reproduce the 68HC11 architecture on an FPGA in less than a month

Help me please

...

PLC/Processor/Ethernet/HMI all in one. The IO pieces are expandable and hotswappable.

Hmmm... delicious FPGA.

you scaled your picture so much I cannot get a part#/mfgr off of it. Please do tell, I want to look at some datasheets.

The industrial design looks GHHHAAAAYYYY!

total random guess: a high end audio equipment where they manually built a DAC from discrete components?

If not, what is it?

>a high end audio equipment where they manually built a DAC from discrete components?

Yes, you got it right. It's a sign magnitude DAC with discrete resistors. The FPGA is used as a all-in-one digital filter here.

thats a big coil

and a lot of caps

whatcha got there sonny

...

I used to work with FPGAs and man, I don't think an average hobbyist should play with them, because they are too niche. Their advantage is prototyping for "real-time" systems, as in systems where low are predictable latencies are critical.

For an average hobbyist, milliseconds or nanosecond latencies are not critical. In terms of processing power CPU and GPU have them beat. What CPU and GPU don't have is low and predictable latencies from data to output because of the layers of underlying software and drivers involved.

They excel in acting as prototyping fabrics or low latency co-processor for communication between a signal input and processor. Why do I keep saying "prototyping"? Because ASIC will replace FPGA past the prototyping stage.

tl;dr: go back to software programming.

What is the cheapest FPGA I can buy?

This. I want to learn a bit about FGPAs. I find the idea fascinating. Also, are there any books and/or free IDEs you would recommend?

As far as complete boards go? DE0-Nano, Basys2 or 3 or an iCEstick are the cheapest of the big three companies, with the iCEstick only being like 20 bucks. All three have free versions of the development tools to work with. For books? Analysis and Design of Digital Systems with VHDL got me started but it's getting pretty old.

>Help me please
Opencores.org

depending on the board/fpga there are free versiions of the IDEs for some of the big companies, i know xilinx anyways have free versions of their software that can program a limited range of FPGAs. there are also 3rd party alternatives for most, i wouldnt know much about them though.

as far as books go, the only books i have experience with are a set if books by Pong P Chu, he covers VHDL and Verilog (I use VHDL). they're a good intro to RTL design and FPGAs i think

FPGAs work great as hardware accelerators, and the fact theyre reconfigurable is a distinct advantage over ASICs.
Right now im working on a small project to see if its viable using an FPGA as a hw accelerator for a (very low end) game running on a coventional CPU.

Similar setup to Xilinx ZYNQ SoCs

On separate chips? What are you using to pass data between them?

right now I'm using a ZYNQ SoC from xilinx, FPGA and a dual core ARM on the same chip. Communication between the two right now is handled by some proprietary Xilinx IP cores, which use an AXI protocol - which is implemented in my FPGA design.

(The AXI protocol is part of AMBA, which is a whole group of IC protocol ownes by ARM)

If i get any success with this in its current impl, ill try move away from an SoC to a design w/ two separate components, maybe communicating over PCI or something (there are prototyping boards out there with PCI, though mostly used for networking)

I wonder what an interesting project for a mini-pcie fpga could be.
Is it worth trying to implement, for example, a compression coprocessor to speed up my weekly full disk backup on my laptop?

H265 hardware decoder for 4K video

Name of the DAC?

DE0-Nano tooling does not work on linux

do you mean that control panel thing?