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) исполнение из пзу инвалидирует кеш