An Efficient Architecture For Loop Based Data Preloading