Added rudimentary cache structures, datasheet isn't too clear on their function :S