|
Hi all,
I am thinking of FPGA for an algorithm of mine, but lack of any experience with FPGAs.
The activity is number crunching, no fancy IO or A/D conversion.
I send a very large number, it crunch, and I get answer as a single number. One can think of it as integer factorization.
Crunching is made of large additions, subtractions, shift operations (*2 and /2), increments/decrements and logical operation and bits testing, and storage in local memory.
May be an embedded ARM processor to handle communication and data conversion.
Algorithm can be adapted for treading.
It is for hobby, so no real budget.
What hardware/software would you recommend ?
Already posted in Hardware forum, but no activity
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
I was considering something of the sort -- but not related to huge computation.
There's an arduino library that will generate SHA-256 hashes. I had an arduino that was set up with a 16 x 4 LCD.
I then had a bluetooth module connected to the Arduino. I could send any text to the arduino via Android app, that received the text string. The Arduino would pass it through the SHA-256 generator and calculate the hash and pass the hash back.
Yes, you can generate the SHA-256 hash on the android phone itself much easier, but this was a prototype and has some of the pieces you are interested in.
If you later need more computational power you can get one of the Arduinos that have those ARM chips for like $30 or cheaper and then very little of your code would have to change.
Just some ideas.
modified 8-Jul-20 14:34pm.
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
Hmmm, For shear number crunching I have used Lattice, I am told that Altera are better for number crunching they are an art to use. If you can use an ARM it may be easier to do the number cruching in that and keep it all on one chip.
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
|
Is it something that can be done in parallel? If so, you might be able to adapt it to run on a GPU. That's what I've been doing lately and it is fascinating. For parallel computing they can be very, very fast.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
what's FPGA ?
I'd rather be phishing!
|
|
|
|
|
Maximilien wrote: what's FPGA ? Female golfing.
Social Media - A platform that makes it easier for the crazies to find each other.
Everyone is born right handed. Only the strongest overcome it.
Fight for left-handed rights and hand equality.
|
|
|
|
|
Field Programmable Gate Array
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
For a reasonably inexpensive FPGA development platform with support processor - have a look at the Evo M51 from Alorium Technology. Evo M51 | Arduino Compatible FPGA Module | Alorium Technology[^]
It is an FPGA-enhanced embedded Arduino compatible microcontroller module.
features a 32-bit SAMD51 microcontroller along with an Intel (Altera) MAX 10 FPGA.
Atmel SAMD51 32-bit ARM Cortex-M4 Micro
Intel MAX 10 FPGA
Programmable with Arduino
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
I've used Xilinx products, mainly the Zynq Z7, which has a dual-core ARM together with a bunch of FPGA gates. I wasn't developing directly on the FPGA (I was putting together a Linux distro using Xilinx's PetaLinux tools), but did have a little play with Vivado, which is Xilinx's GUI design tool, which was OK.
They also do high level synthesis, which will translate C/C++ functions into bitstreams that you load into the FPGA and can then use from your code running on the ARM cores.
Overall - a Xilinx or Altera dev kit, maybe like this or this - just be aware that you also need something on your PC to be able to produce the FPGA bitstream, and some sort of cable (like this for Xilinx boards) to be able to get the bitstream into the FPGA device.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
If no budget and you are mostly a software guy and are doing this because if might be useful if you can get the performance you are looking for, then consider an AWS Cloud FPGA...
Amazon EC2 F1 Instances[^]
No messing with drivers installing tools and and all the other stuff that you have to do before you can do what you want to do. Nicely documented with low slope paths for people coming from a software background. Probably the very fastest and cheapest way to get your algorithm actually running on an FPGA.
And if it does turn out that your new FPGA is useful, you can make an image deploy it on effectively an infinite number of hardware units with a click of the mouse.
-josh
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
depends on your budget.
I bought a few EP2C5T144C8N mini boards through Amazon for under $20 each but you would also need the $10 'Blaster' programming cable. Look up "RioRand EP2C5T144 Altera Cyclone II FPGA Mini Development Board " on Amazon.(free shipping) just connect to 5 volts.
The Software is free from Altera (now Intel) I use Altera Quartus II 13 sp1
I have several 8 bit microprocessor emulator projects I run in them
Live long and prosper
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
A while back, Michaela Blott of Xilinx was the first I know of to do it all, communications and otherwise, to put a KVS onto an FPGA that handled IP requests at line rates up to 10gbps (and they projected they could do 100gbps with one FPGA node.)
https://www.usenix.org/sites/default/files/conference/protected-files/blott_hotcloud13_slides.pdf
Since then many have repeated this work in conferences, but I believe you can get her code and help if you use a Xilinx FPGA. Nice lady.
Charlie Johnson
|
|
|
|
|
Hi all
Thanks for advices.
I will need time to study all those options.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
So, when the system pops up that "Unknown Error" message, I wonder how it knows it's really an error?
In fact, it doesn't - it said so.
Probably an error message conceived by politicians.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
It's an if without an else.
It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it.
― Confucian Analects: Rules of Confucius about his food
|
|
|
|