1. A system for controlling prefetching, comprising: a prefetch buffer system coupled to a processing unit and to a memory, wherein the prefetch buffer system comprises a prefetch controller that is adapted to be programmable such that prefetch control features can be selected.