6 ms·
What are people doing with FPGAs? I'd be really interested in understanding or seeing some cool projects!
by djhworld 7y ago
What are people doing with FPGAs? I'd be really interested in understanding or seeing some cool projects!
- fest 7y agoDriving a lot of LEDs: https://mobile.twitter.com/GregDavill/status/1192515630626291712 https://mobile.twitter.com/GregDavill/status/119251563062629... Processing video (especially if you have weird requirements like 14 bit greyscale input): https://gregdavill.com/blog/2018/9/9/boson-camera-project-part-4 https://gregdavill.com/blog/2018/9/9/boson-camera-project-pa... Experimenting with non-mainstream CPUs: https://www.thanassis.space/myowncpu.html https://www.thanassis.space/myowncpu.html https://github.com/cliffordwolf/picorv32 https://github.com/cliffordwolf/picorv32
- dlieu 7y agoit's also used in high frequency trading (market data processing, order passing, light strategies)
- sm4rk0 7y agoThat's probably only one of many applications. Just search for DFE (data flow engine). Maxeler is one of the manufacturers.
- ddorian43 7y agoExample: https://www.microsoft.com/en-us/research/project/project-catapult/ https://www.microsoft.com/en-us/research/project/project-cat... (bing search etc)
- monocasa 7y agoMotor control for a pretty high number of motors. There's rumors that a couple of the big cloud vendors use them on network cards for SDN. Integration with non standard peripherals like ku band radios on a satellite.
- guipsp 7y ago>There's rumors that a couple of the big cloud vendors use them on network cards for SDN. No rumours needed, the papers are out there in the open.
- monocasa 7y agoI said rumors due to saying "a couple". I know that azure is pretty public about it, but I didn't think AWS and Google were.
- zokier 7y agoFor network cards specifically it seem surprising that it wouldn't be more economical for the big three to roll out custom silicon instead of FPGA.
- monocasa 7y agoIIRC, the configurable logic took the place of the CAMs in the routing table mainly. There's cool niches where FPGAs make sense due to their on the fly reconfigurability even more than a purpose designed asic would.
- kingosticks 7y agoDo they really alter the images "on the fly" when traffic is flowing? Or do they have some situation where it's OK to stop traffic on their network interface for a short while?
- monocasa 7y agoYeah, they do. They might drop a few packets during a partial reconfiguration if a stream is still in progress, but that's bound to happen anyway on routing changes.
- DoingIsLearning 7y agoOriginally FPGA evolved from programmable logic devices. An EPROM is probably the most widely used example of a PLD. Partially because of this there are a lot of projects in SDRAM designs out there. Usually if you need extremely fast i/o in the nanosecond order of magnitude then FPGA designs are a common design choice. An example of this are GPON network switches. As mentioned in another comment video processing or any signal processing where the algorithms benefit from high parallelization is also an application where an FPGA would be a good fit. The caveat though is that often FPGA/ASIC development is expensive and slow so a recent trend is to have a System-On-Chip with an FPGA area and multicore Microcontrollers. The idea with this is a hybrid design so that you can have an RTOS dealing with functionality where speed is not as critical. And have a custom design on an FPGA that is responsible for whatever bespoke application you need and have some memory interface between the two.
- segfaultbuserr 7y ago> An EPROM is probably the most widely used example of a PLD. Upvote for this. When I used to think about PROM, I think it as a medium of data storage, or sometimes think it's a lookup table. But it's actually simplest form of programmable logic device - a device that can transform x-bit of arbitrary input signals to y-bit of arbitrary output signals, so you can build any digital system that uses combinational logic in PROM (and RAM for sequential logic), including a CPU. And since it's a PROM, you can reprogram it to implement another different logic device, simply by burning a new truth table. After I realized this, the existence of reprogrammable hardware like FPGAs no longer sounds like magic to me anymore. From this, you can also see that computers with finite RAM and ROM is not a Turing machine, but a Finite State Machine.
- tverbeure 7y agoI try to use FPGAs for pretty much all my hobby projects, even if using an RPi or any other microcontroller would make more sense. Because writing RTL is much more fun. And if I happen to need a little CPU for some generic control operations, I just add a soft core to my design.
- brandmeyer 7y agoBuilding a multiband GNSS receiver on-orbit, in order to observe the weather. https://www.ecmwf.int/sites/default/files/gpsro_lecture_2015_nwpsaf.pdf https://www.ecmwf.int/sites/default/files/gpsro_lecture_2015... is an overview.
- Koshkin 7y agoSomewhat unexpectedly, many FPGA's industrial applications involve implementing a simple CPU (a "programmable state machine", PSM) and then having the domain logic coded in its machine language (using a cross-assembler).
- klyrs 7y agoI can't speak to what I'm actually doing with FPGAs but lately I've been enthralled by systolic arrays [1] to achieve massive parallelization of certain algorithms. It can be a trick to rearrange cache, computation and communication to be local, but if your amortization game is strong, O(n) becomes O(1) and it's extremely satisfying work. [1] https://en.m.wikipedia.org/wiki/Systolic_array https://en.m.wikipedia.org/wiki/Systolic_array
- unixhero 7y agoBuilding an improved Amiga accelerator and a new standalone byte-compatible Motorola 68K Amiga http://www.apollo-core.com/ http://www.apollo-core.com/
- unixhero 7y agoPreserving old CPU architectures and building fun retro arcade machines of them: http://www.racketboy.com/retro/mister-fpga-the-future-of-retro-game-emulation-and-preservation http://www.racketboy.com/retro/mister-fpga-the-future-of-ret...
- Haga 7y agoMaking hardware that can be patched when speculative execution goes specularly wrong.
- zarkov99 7y agoFPGA's are an essential part of high speed trading these days.
- IndrekR 7y agoFew applications I have worked on lately involving FPGAs: - RF and microwave, direct digital synthesis. - Data acquisition and analysis (fast, very fast) - Time of Flight imaging/video - Timing critical process control
- Andrex 7y agoAnalogue Nt's consoles all rely on FGPAs to emulate the original systems on a hardware level. https://www.analogue.co/nt-mini/ https://www.analogue.co/nt-mini/ https://www.analogue.co/pocket/ https://www.analogue.co/pocket/
- krenzo 7y agoMy previous project was an UWB indoor tracking system for VR. FPGAs did all the signal transmission, reception, and digital signal processing: https://www.youtube.com/watch?v=mYyFUQbWC1E https://www.youtube.com/watch?v=mYyFUQbWC1E My current project is AR glasses. An FPGA is decoding a displayport signal and driving the display.
- Fredej 7y agoWe build 3D scanners for dentists https://www.youtube.com/watch?v=C5jKnxEyrbU https://www.youtube.com/watch?v=C5jKnxEyrbU