Altera_Forum
Honored Contributor
13 years agoAvalon multiple interfaces performance
Hello there. I am currently developing a generic data acquisition system which uses a Cyclone III FPGA. The internal tasks are divided in blocks, which are Avalon MM slaves. There is an Avalon MM master which is responsible for all the system's tasks, which include moving data from the ADC to be sent through an USB controller.
Recently I started noticing that the Avalon bus could get really busy at times when there is a lot of data to move around, and I started wondering if I could gain performance by adding a secondary Avalon master interface which could be exclusively used for transferring the captured data from the Avalon slave responsible for getting the data off the ADC (and putting it into FIFOs, maybe this interface could be burst capable), while another master interface could carry on with a number of other simultaneous tasks as sending different data to other slaves in the system. Is this good practice, can I do it, or would be best not to get so complicated and rely on one Avalon master bus to move all the data around? Thanks in advance.