(C) Шина Авалон декодирует адрес и устанавливает chipselect.

(C)  Передний фронт clk отмечает конец первого цикла шины - цикла ожидания. Если

подчиненный порт синхронен, то он, вероятно, фиксирует address, read_n и chipselect

по этому переднему фронту clk.

(E) Передний фронт clk отмечает конец второго (и последнего) цикла ожидания.

(F)  Периферийное устройство выставляет свои достоверные данные на выходах readdata

где-то в течение третьего цикла шины.

(G)  Модуль шины Авалон фиксирует readdata на переднем фронте clk, и здесь заканчивает

операцию чтения. Следующий шина цикл мог бы быть началом другой операции

шины.

Операция чтения подчиненного устройства с циклами ожидания, управляемыми внешним устройством

Управляемые внешним устройством циклы ожидания, позволяют целевому внешнему устройству останавливать модуль шины Авалон на такое количество циклов шины, сколько потребуется для того, чтобы представить данные. Используя этот режим, внешнее устройство может затребовать переменное количество циклов шины, чтобы представить данные в модуль шины Авалон.

На примере 4 показана операции чтения подчиненного устройства с циклами ожидания, управляемыми внешним устройством. Такой режим ожидания использует сигнал запроса ожидания, который является выходом от подчиненного порта. После того как сигнал read_n для подчиненного порта установлен, подчиненный порт должен возвратить запрос ожидания в пределах первого цикла шины, если он желает продлить операцию чтения. Когда запрос ожидания установлен, он останавливает модуль шины Авалон и не дает ему фиксировать readdata. Модуль шины Авалон будет фиксировать readdata только на следующем переднем фронте clk после того, как запрос ожидания будет снят. Модуль шины Авалон не имеет встроенной функции блокировки времени по тайм-ауту, чтобы ограничивать время, в течение которого подчиненный порт может останавливать шину. Когда модуль шины Авалон остановлен, где-нибудь в Системном Модуле есть внешнее устройство мастер, которое будет также остановлено, и оно будет находится в ожидании требуемых данных, которые должны возвратиться от адресованного подчиненного внешнего устройства. Подчиненный порт может постоянно "завешивать" порт мастера. Поэтому, разработчик периферии должен гарантировать, что подчиненное внешнее устройство не устанавливает запрос ожидания неопределенно долго.

НЕ нашли? Не то? Что вы ищете?

Пример 4. Операция чтения подчиненного устройства с циклами ожидания управляемыми внешним устройством

Этот пример демонстрирует соответствующие PTF параметры:

Операция чтения из синхронного внешнего устройства

Больше чем один цикл ожидания, управляемый внешним устройством Read_Wait_States = "peripheral_controlled"

Нет предустановки Setup_Time = "0"

Описание временных соотношений сигналов

(A) Первый цикл шины начинается на переднем фронте clk.

(B)  Все выводы address и read_n от мастера, формируемые на регистрах – достоверны. Эти

сигналы направляются к подчиненному устройству.

(C) Шина Авалон декодирует адрес, затем устанавливает chipselect.

(D) Подчиненный порт устанавливает запрос ожидания перед следующим передним фронтом clk.

(E) Модуль шины Авалон производит выборку запроса ожидания по переднему фронт clk. Запрос ожидания, установлен. Поэтому readdata не зафиксированы на этом фронте синхрочастоты.

(F-G) Сигнал запрос ожидания установлен, проходят циклы ожидания.

(H) Периферийное устройство выдает достоверные данные readdata.

(I) Периферийное устройство сбрасывает waitrequest..

(J)  Модуль шины Авалон фиксирует readdata на переднем фронте clk, и здесь заканчивает операцию чтения. Следующий цикл шины мог бы быть началом другой операции шины.

Когда управляемые внешним устройством циклы ожидания определены, то можно определить следующие ограничения, относящиеся к другим режимам операции шины. Эти ограничения применяются только для операций, связанных с каким либо определенным подчиненным портом, а не для любого другого внешнего устройства, связанного с модулем шины Авалон.

Если управляемые внешним устройством циклы ожидания определены, то предустановка (setup), и циклы хранения (hold) не могут использоваться. Почти во всех случаях, внешнее устройство, которое может генерировать сигнал запроса ожидания будет находиться на кристалле, и оно будет синхронным, поэтому рассмотрение сигналов предустановка и хранение в таком случае будет не нужно.

Операция чтения подчиненного устройства с временем предустановки.

Модуль шины Авалон при генерации автоматически выполняет требования по времени предустановки для каждого подчиненного порта, основанные на назначениях, сделанных в PTF файле. Внешнее устройство мастер, которое инициализирует операцию чтения, не должно учитывать предустановку и требования хранения для каждого подчиненного порта. Порты, используемые для операции чтения со временем предустановки идентичны, тем, что используются для основной операции чтения. Различие состоит только в синхронизации сигналов.

Обычно, время предустановки используется для внешних устройств, находящихся вне кристалла, которые требуют чтобы сигналы address и сигналы chipselect были установлены до прихода сигнала чтения. Время установки отличное от нуля, и равное, например, – N, означает, что, после того, как сигналы address, be_n и сигналы chipselect будут выданы подчиненному порту, будет задержка на N циклов шины прежде, чем сигнал read_n будет установлен. Обратите внимание, что сигнал chipselect не меняет свою форму при задании времени предустановки. Если внешнее устройство требует времени предустановки, и для read_n и для chipselect, то проектировщик должен вручную добавить соответствующую логику (один И вентиль) к интерфейсу. Общее количество циклов шины, требуемых для того, чтобы завершить операцию зависит от предустановки и циклов ожидания. Например, внешнее устройство с Setup_Time = "2" и Read_Wait_States = "3" будет требовать 6 циклов шины, чтобы завершить операцию:

¦ 2 цикла шины для предустановки;

¦ 3 цикла для циклов ожидания;

¦ 1 цикл шины, чтобы принять данные.

В примере 5 показана операции чтения подчиненного устройства с одним циклом предустановки и одним установленным циклом ожидания.

Пример 5. Операция чтения подчиненного устройства с временем предустановки.

Этот пример демонстрирует соответствующие PTF параметры:

Операция чтения от синхронного внешнего устройства

1 шина цикл времени установки Setup_Time = "1"

1 установленный цикл ожидания Read_Wait_States = "1"

Описание временных соотношений сигналов

(A)  Первый цикл шины начинается на переднем фронте clk.

(B) Все выводы address и be_n от модуля шины Авалон, формируемые на регистрах – достоверны. Сигнал read_n остается не установленным.

(C) Модуль шины Авалон декодирует адрес, затем устанавливает chipselect.

(D) Передний фронт clk определяет конец цикла предустановки (Tsu), и начало цикла ожидания.

(E) Модуль шины Авалон устанавливает read_n

(F) Передний фронт clk отмечает конец цикла ожидания.

(G) Периферийное устройство выдает достоверные данные на шинах readdata.

(H) Модуль шины Авалон фиксирует readdata по переднему фронту clk, и операции чтения здесь завершается. Следующий цикл шины мог бы быть началом другой операции шины.

Когда для внешнего устройства на шине Авалон определено время предустановки, то определенные ограничения применяются к другим режимам операции шины. Эти ограничения применяются только для данного подчиненного порта, но не для других внешних устройств, связанных с модулем шины Авалон.

Если внешнее устройство способно выполнять операции шины - чтение и запись, и определено время предустановки, то применяется одно и то же время предустановки для операций чтения и записи. Время предустановки не может использоваться, если подчиненный порт использует управляемые внешним устройством циклы ожидания.

Операции записи подчиненного устройства на шине Авалон

В обсуждениях операций записи, приведенных ниже, важно понять, что в реальных обстоятельствах, операции шины - не изолированные события. Например, операция записи может немедленно предшествовать или следовать за несвязанной операцией чтения. В течение шина операции записи, chipselect целевого внешнего устройства и сигналы write_n обязательно установлены, как показано в диаграммах синхронизации. Однако, после того, как операция записи заканчивается, chipselect и write_n может остаться установленным, если другая операция, связанная с этим подчиненным портом, будет выполняться на следующем цикле шины. Поэтому, диаграммы синхронизации, приведенные ниже, показывают значения этих сигналов на подчиненных портах как неопределенные и до и после операции записи.

Основная операция записи подчиненного устройства

Основная операция записи подчиненного устройства – основа для всех операций записи Авалон. Все другие режимы операций записи подчиненного устройства, используют комбинацию основных сигналов, и представляют собой разновидность основных режимов синхронизации. Основная операция записи подчиненного устройства инициализируется модулем шины Авалон, и передает один блок данных от модуля шины Авалон до подчиненного порта. Основные операции записи подчиненного устройства не имеют времени ожидания. В примере 6 показана основная операция записи подчиненного устройства. Нет состояний ожидания, и нет времени предустановки или циклов хранения. Модуль шины Авалон выдает сигналы address, writedata, be_n, и write_n, и, затем, устанавливает chipselect. Подчиненный порт фиксирует адрес, данные и сигналы управления на следующем переднем фронте синхрочастоты, и на этом операция записи заканчивается. Полная операция требует только один цикл шины. Подчиненное внешнее устройство может требовать дополнительные циклы синхрочастоты, чтобы фактически обработать пишущиеся данные уже после того, как сама операция заканчивается. Если внешнее устройство не может выдержать последовательные операции записи на каждом шина цикле, то требуются дополнительные проработки проекта, чтобы генерировать циклы ожидания.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5