Heey eziggurat...thanks alot for ur reply and the block diagram u attached as well...its really helpfull.
I have a question concerning the "software registers" which should be used as an interface between the C code and my peripheral(as much as I do understand).
The question is: lets assume I have a core(peripheral) that does some calculations on a picture that contains a huge number of pixels (more than 160,000). the calculation is carried out on each 15 bytes of the total number of bytes.
I will create an array with the 160,000 pixels in the C code. My idea is to have 15 software registers(one register for each pixel) for my VHDL implemented core. My question is how to feed the 160,000 pixel (15pixels at a time) to the 15 software registers using the C code? In other words, how can I force the C code to follow my scheduling of the core (feed the first 15 bytes, wait for two clock cycles which the core needs to do the calculation and then feed the next 15 pixels and so on).
what I have in mind is to loop over the array and feed 15 bytes by 15 bytes till the end of the array, but again how can I synchronize one feed of data to the 15 software registers with the clock of the system!
Hope its clear what I need to understand