How to predict the memory size and gate count given source code

fpgahardwarememory

Excuse my poor English 🙂

I am in a software (for face detection) team and we co-work with the hardware team.
If we give the source code to the hardware team, they will try to implement it with hardware.

I thought it would better to first predict and consider the memory size or gate count and then give the code to hardware team.

I really don't know anything about hardware but I heard that hardware can be implemented either SoC type or standalone type.

We are first trying to make it a standalone type so we don't use SRAM to store images and we have to process the image with line memories.

Ahh… I don't even know what I'm saying.. 🙁

Anyways Is there a simple and effective way to predict how much memory the source code will require?

And I also want to know about the relationship between memory size and the gate count.

Best Answer

If you are thinking of implementing in hardware, you may want to reconsider the algorithms you use - what is appropriate for software is rarely the same as what is good for hardware. You can of course implement exactly what you write in software, but it may be far from optimal.

(One of my day-job tasks is getting in early with algorithm people and working with them to get something at the Matlab stage which stands a chance of working well on the hardware they are wanting to target)