Forum Discussion
I can answer my own question. The GE variable is a (constant) global variable in my design. It had *not* been declared as a "const". The HLS compiler considers global variables to exist outside of the component. Because the component does not own global values, the compiler is unable to make any assumptions about the value when performing optimizations. Even if the testbench maintains a global variable with a constant value, the compiler will not assume that the variable is constant in all situations. On the other hand, const qualified global variables are guaranteed to remain constant in all situations. So const qualified global variables can be folded into the component and fully optimized.
The input GE port and Avalon-MM interface are used to pass the location and fetch the value of 'GE' from an external memory. In the const qualified case the constant is optimized into the datapath and does not need to be fetched.
So, lesson learned - when declaring constants as global variables, make sure to use the "const" keyword in the variable declaration. Now that I have done this, those interfaces are no longer added to the synthesized design.