[an error occurred while processing this directive]
|
Запись в I/O происходит и заканчивается в фазе W конвейера. Запись в память (собственно ее процесс) инициируется в фазе W, а происходит в следующей - W+. Это дает задержку на один стабильный такт. Далее - в фазе W+ данные записались в сам EMIF, а не в реальную память. Запись в саму внешнюю память EMIF делает независимо от ядра процессора, и процессор продолжает в это время выполнение инструкций. У Вас вероятно еще и включен "write posting", который позволяет EMIF'у немного "кешировать" запросы, поступающие от процессора к нему - они поступают в специальный буфер, позволяя EMIF'у производлить последовательную запись в режиме пакетов (burst). Отсюда и выходит, что периферийный контроллер давно вздернул GPIO, а EMIF продолжает рожать сам по себе циклы записи. А процессор давно уже ушел дальше.
E-mail: info@telesys.ru