Subversion Repositories pentevo

Rev

Rev 228 | Blame | Last modification | View Log | Download | RSS feed

11.06.2011, lvd:

14mhz turbo mode

Чтение из RAM - 4+ такта fpga, запись - 1+ такт fpga

темп чтения и записи - раз в 4 такта fpga

темп процессора (пиковый) - раз в 3 такта CPU = раз в 6 тактов fpga


При переключении 14->ниже могут уже закончиться все свободные слоты обращений к памяти,
и потому надо при переключении это учитывать (как?)




(в порядке бреда)
про кэш:

1. 2 кусочка по 256 байт из 1 штуки памяти
2. на каждый кусочек - тэг 8бит и общий бит валидности
3. на каждый ворд из всех 256 - свой бит валидности. при необходимости можно играться - 
   делать больше кусочков, но в сумме меньше вордов, чтобы сэкономить биты валидности на
   каждый ворд.
4. условия заполнения кеша: 
  1) чтение по M1 - если теги не совпадают, выбирается одна из 2 половинок (по какой-либо
     методике), переписывается тэг, инвалидируются все ворды, новый ворд пишется, половинка
     маркируется в целом валидной.
  2) чтение не по М1 - если попадает в кеш, то слово валидируется, если не попадает - игнор.
  3) запись, попадая в кеш, инвалидирует слово
5. условия инвалидации кеша
  1) любая запись в порты (или в некоторые порты) инвалидирует весь кеш
  2) исполнение из пзу инвалидирует кеш