Передачи данных подчиненного устройства Сравнение интерфейса мастера и подчиненного устройства



страница1/7
Дата29.05.2018
Размер0,76 Mb.
  1   2   3   4   5   6   7
Шина Авалон

Передачи данных подчиненного устройства

Сравнение интерфейса мастера и подчиненного устройства

Синхронизация Шины Авалон

Сигналы Шины Авалон Режим одновременной работы нескольких мастеров шины Авалон

Передачи данных подчиненного устройства

Сигналы Авалон для подчиненного устройства при передаче данных

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

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

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

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

управляемыми внешним устройством

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

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

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

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

ожидания

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

управляемыми внешним устройством

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



Шина Авалон

Передача данных

Спецификация шины Авалон определяет сигналы и синхронизацию требующуюся для того, чтобы передавать данные между портом мастера и подчиненным портом через модуль шины Авалон. Сигналы, которые образуют интерфейс между модулем шины Авалон и внешним устройством, различны, в зависимости от типа передачи. Во-первых, есть различия в интерфейсе для передачи мастером и передаче для подчиненных, что вызвано отличием в определениях подчиненного порта и порта мастер. Кроме того, точный тип и число требуемых сигналов изменятся в зависимости от назначений, сделанных в системе PTF-файла. Спецификация шины Авалон предлагает ряд параметров, чтобы сформировать сигналы шины, с учетом их временных параметров для различных типов внешних устройств. Основное правило для передачи данных по шине Авалон - это пересылка одного блока данных по шине между пара мастер - подчиненный. Цикл передачи данных по шине может быть расширен при помощи циклов ожидания, чтобы согласовать работу с медленными внешними устройствами. Передачи данных потоком, наряду с одновременной работой в режиме мультимастера, повышают скорость обмена данными с внешними устройствами. Внешние устройства могут также использовать комбинацию операций шины различных типов. Последовательность обмена сигналами для всех передач подчиненного устройства получается из основной операции чтения для подчиненно устройства, основной операции записи для подчиненно устройства. Аналогично, основные операции, в которых мастер читает данные и мастер записывает данные - основание для всех операций передачи данных мастером Авалон. Точное понимание основных операций передач по шине, облегчит понимание более сложных операций на шине.



Сравнение интерфейса мастера и подчиненного устройства

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

По этой причине, обсуждение операций передачи данных по шине Авалон разделено на два типа: передачи мастера и передачи подчиненного. Большинство разработчиков будет заинтересовано, в основном, только в описании передачи подчиненных устройств, потому что внешние устройства, определяемые пользователями, которые они проектируют (если таковые будут), будут наиболее вероятно подчиненными внешними устройствами. В этом случае, разработчик может рассматривать только передачу сигналов между модулем шины Авалон и внешним устройством , определяемым пользователем. Обсуждение операций передачи данных по шине мастером только уместно тогда, когда проектировщик создает внешнее устройство мастер.
Синхронизация Шины Авалон

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

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

Спецификация Шины Авалон не определяет, как именно сигналы должны переключаться в промежутке между фронтами синхрочастоты. Мы знаем только то, что переключение сигналов управляется синхрочастотой шины Авалон, и что сигналы должны застабилизироваться перед фронтом синхрочастоты, по которому они будут зафиксированы. По этой причине все диаграммы в этом документе лишены явной информации по расчету временных параметров. Точная синхронизация переключения сигналов и их стабилизации между фронтами синхрочастоты будет меняться в зависимости от характеристик устройства PLD Altera, выбранного для того чтобы осуществить проект. По тем же самым причинам, невозможно определить максимальную эффективности шины Авалон. После синтеза и размещения Системного Модуля на определенном кристалле, разработчик должен выполнить стандартный временной анализ Системного Модуля, чтобы определить максимальное быстродействие, при котором могут быть выполнены передачи по шине Авалон.


Сигналы Шины Авалон

Поскольку шина Авалон является шинной архитектурой, расположенной внутри кристалла и она синтезируется из HDL файлов, необходимо специально обратить внимание на описание подключения между модулем шины Авалон и внешними устройствами Авалон. Ситуация очень отличается от той, когда шинная архитектура расположена вне кристалла и физически представляет собой пассивную группу металлических проводов, к которой и подключены все внешние устройства, которые совместно используют доступ к этой конкретной шине. В случае шины Авалон, SOPC Builder должен точно знать, какие порты Авалон присутствуют на каждом внешнем устройстве, так чтобы он смог подключить внешние устройства к модулю шины Авалон. Кроме того, он должен знать название(имя) каждого порта и роль каждого порта. Название и роль для каждого порта на внешнем устройстве Авалон объявлены в системе PTF файла. Спецификация Шины Авалон не нормирует существование какого либо порта на внешнем устройстве Авалон. Приведено только определение возможных типов сигналов (таких как адреса, данные, синхрочастота) которые могут существовать на внешнем устройстве. Каждому порту на внешнем устройстве должен быть назначен достоверный тип сигнала Авалон, который определяет роль порта. Порт может также быть определяем пользователем, тогда SOPC Builder не подключает этот порт к модулю шины Авалон. Существенно то, что типы сигналов Авалон – разделены на две категории, они могут быть определены или как сигналы подчиненного порта или как сигналы порта мастера. Поэтому, типы сигналов, используемых внешним устройством определены прежде всего исходя из того какую роль имеет этот порт – мастер или подчиненный. Каждый порт мастера или каждый подчиненный порт могут иметь до одного из каждого типа сигналов. Набор типов сигналов, используемых индивидуумом мастером или подчиненным портом, зависит от проекта внешнего устройства. Например, в проекте для подчиненного внешнего устройства – PIO, имеющего только выходы, необходимо определить порты для записи данных (в направлении выхода), но не нужно определять порты для чтения. В таком внешнем устройство также вероятно имело бы бесполезно использовать выход запроса прерывания (IRQ), хотя выход IRQ - позволенный тип сигнала для подчиненного порта.



Спецификация Шины Авалон не диктует требований по обозначению для портов на внешнем устройстве Авалон. Роль каждого порта хорошо определена, а название порта определено в соответствии с периферийным проектом. Порт может быть назван тем же самым как его тип сигнала, или он может быть назван по-другому, чтобы выполнить соглашение по обозначениям, применяемым в системе. Описание операций шины Авалон, приведенное в следующих разделах относится к сигналам Авалон, например к сигналу readdata или сигналу irq. Название типа сигнала используется здесь как название порта, но фактические названия, данные портам на внешних устройствах в Системном Модуле, могут быть различны. В табл.1, например, показан частичный перечень сигналов доступный подчиненному порту Авалон. Направление сигнала приведено по отношению к внешнему устройству. Например, синхрочастота сигнал clk (обозначенный как вход) – представляет собой вход для подчиненного внешнего устройства, но он будет являться выходом для модуля шины Авалон.
Таблица 1. Частичный перечень сигналов подчиненного устройства шины Авалон


Тип сигнала

Разрядность

Направление

Требуется?

Описание

address


1 - 32

in


no

Шины адреса к подчиненному, от модуля Авалон. Позволяют производить байтное адресование.

read


1

in


no

Сигнал чтения периферийного устройства. Не применяется в тех случаях, когда периферийное устройство не читается мастером. Если этот сигнал применяется, то должны применяться и сигналы readdata.

readdata


1 - 32

out

no

Шины данных для модуля Авалон, применяются при операциях чтения. Не применяется в тех случаях, когда периферийное устройство не читается мастером. Если этот сигнал применяется, то должен применяться и сигнал read.

write


1

in


no

Сигнал записи в периферийное устройство. Не применяется в тех случаях, когда периферийное в устройство не производится запись мастером. Если этот сигнал применяется, то должны применяться и сигналы writedata.

writedata


1 - 32

in


no

Шины данных модуля Авалон, применяются при операциях записи. Не применяется в тех случаях, когда периферийное в устройство не производится запись мастером. Если этот сигнал применяется, то должен применяться и сигналы write.

irq


1

out

no

Запрос прерывания. Подчиненный устанавливает этот сигнал, для того, чтобы его обслужил мастер.


Примечание:

Сигналы, перечисленные в табл.1 активны при высоком уровне. Однако, шина Авалон также предлагает инверсную версию каждого типа сигнала. Добавляя в PTF декларации к названию типа сигнала "_n" (например, irq_n, read_n), соответствующий порт объявляется активным при низком уровне. Это полезно для многих внешних устройств вне кристалла, которые используют логику с активным низким уровнем.

Сигналы шины Авалон и выполняемые ими действия будут те же самые, независимо от того расположено ли внешнее устройство внутри системного модуля, или вне его. В том случае, когда устройство является внутренним, SOPC Builder автоматически подключает порт мастера или подчиненный порт этого внешнего устройства к модулю шины Авалон. В том случае, когда устройство является внешним, разработчик должен вручную подключить порт мастера или подчиненного к системному модулю. В любом случае, сигналы шины Авалон ведут себя одинаково.
Режим одновременной работы нескольких мастеров шины Авалон

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

Другими словами, подчиненные порты не знают, что несколько мастеров одновременно требовали доступ к шине для передачи данных. Аналогично, внешнее устройство мастер, которое вынуждено ждать подтверждения арбитража, не знает, что есть другой мастер и он имеет доступ к шине. Порт мастера просто «видит» свой установленный сигнал запроса ожидания, и знает, что он должен ждать, пока требуемый ему подчиненный не будет готов продолжить передачу по шине. Сокрытие деталей арбитража внутри модуля шины Авалон очень упрощает проект периферийного устройства, потому что любое внешнее устройство Авалон может использоваться, и в архитектурах с единственным мастером, и в архитектурах с несколькими мастерами.



Поделитесь с Вашими друзьями:
  1   2   3   4   5   6   7


База данных защищена авторским правом ©grazit.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал