A hardware storage allocator

Thread Starter


Joined Jan 12, 2015
I recently completed testing a new offset heap written in C#, this is to facilitate shared memory and persistent data structures. The freelists do not use pointers but offsets, this is because the heap can be loaded into multiple processes at differing virtual addresses. But leaving all of this aside, I had to intimately understand and carefully design this in order to get solidity and it began to dawn on me that an FPGA might be able to do this, to do the arithmetic book keeping, rather than using software.

There's no reason why heap Metadata must be stored mixed in with the data, in fact I designed a heap once that kept block sizes and free lists at different "ends" of a memory region and it worked well.

I really don't know much about FPGAs though, I've played with them a bit but hardly enough to consider myself more than an absolute novice, I know one can implement CPU cores in them and that got me thinking. Can I regard them as having memory themselves? or are they wholly composed logic cells only?