Wanted: container classes for reconfigurable computing

I did some search on the topic and the results were quite disappointing, though I would expect something like that should exist:

I am working on a theoretical, combinational problem. My software implementation runs for hours for small problems. The main operation is a small table lookup, some additions, etc. However, I use some data structures for reuse of previously computed results. In my SW implementation these are C++ Standard Template Library instances, for instance a set, so essentially a hash table. Another structure is a vector, where the innermost array grows up to 10 or 12 elements, and the outer structures to 30 and several hundrets resp. The problem offers more parallelism than one could wish for and the updates to the data structures are moderately frequent. Too frequent however, to do it in SW on a processor. I even have a Spartan-3 board with external memory, this would be fine for running the problem on.

However, I do not want to implement these data structures from scratch, which probably would require memory management, caching etc. I think it should be possible to make a circuit generator (similar to the BRASS one) where you feed your required data structures in, adding parameters, like the expected size, update rate etc. and get a circuit out, which will implement them. Similar to the C++ runtime library it would share the memory ressources, use a memory manager but allow parallel requests. In my case I would like to have a high number of ports for the addition to the hash table mentioned first. Seems like a great project for a thesis or a class.

Does someone know, where this has been done?

Thanks, Andreas

Reply to
acd
Loading thread data ...

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.