Прямая запись

При выполнении прямой записи в ведомый ADSP_2106x адрес и данные фиксируются на кристалле устройством ввода_вывода. Устройство ввода_вывода буферизирует адрес и данные в специальном наборе буферов FIFO. Если происходит дополнительная прямая запись, когда буфер FIFO полон, ведомый ADSP_2106x сбрасывает сигнал на линии ACK, пока буфер не станет частично пуст. До шести прямых записей может выполниться прежде, чем следующая будет задержана (буфер прямой записи может сам удерживать данные до четырех циклов, если все каналы DMA последовательного порта активны, или до девяти циклов, если происходит цепочка операций DMA).

Задержка прямой записи

При выполнении прямой записи в ведомый ADSP_2106x данные и адрес фиксируются на выводах I/O в четырехуровневом буфере FIFO. Этот буфер называется FIFO записи ведомого (см. рис. 8.1 в главе Хост_интерфейс). В следующем цикле FIFO записи ведомого пытается выполнить запись во внутреннюю память. Это позволяет ведущему ADSP_2106x выполнять запись на полной тактовой частоте. FIFO записи ведомого не может напрямую считываться ядром ведомого ADSP_2106x, и его состояние не может быть определено.

Запись в регистры IOP обычно выполняется в первом или втором следующем за

командой циклах или после завершения текущей передачи по DMA.

Выполнение записи займет более двух циклов в случае, если прямая запись в предыдущем цикле была задержана из_за того, что буфер полный. Если запись происходит, когда буфер полный, то ведомый ADSP_2106x сбросит сигнал на линии ACK, пока буфер частично не освободится. Если не происходит внутренней передачи данных по DMA с более высоким приоритетом, то обычно буфер освобождается за один цикл. Поэтому задержка записи обычно составляет один цикл.

Если имеются данные в FIFO записи, то чтение ведомого задерживается. Это

предотвращает считывание ошибочных данных.

Бит DWPD (Direct Write Pending – задержка прямой записи) в регистре

SYSTAT указывает на то, что прямая запись во внутреннюю память задержана в FIFO прямой записи устройства ввода_вывода или данные ждут обработки в FIFO записи ведомого. Прямая запись и обращение к регистрам IOP могут завершаться в различной последовательности. Например, если ведущий ADSP_2106x выполняет прямую запись в память и затем записывает данные в регистр IOP ведомого, то запись данных в регистр IOP может завершиться раньше

прямой записи.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: