Порты SHARC-процессоров. Реализуемые виды интерфейсов. Способы взаимодействия между процессорным ядром и портами при вводе/выводе данных.
Работа с линк-портами SHARC-процессоров
SHARC-процессоры семейства ADSP-2106x и старше (кроме ADSP-21061) имеют дополнительные возможности организации обмена данными через шесть 4-битовых линк-портов (звеньевых портов). Каждый линк-порт может тактироваться частотой до двух раз превышающей внутреннюю частоту процессора, что позволяет передавать до 8 битов за один такт. Линк-порты широко используются для организации взаимодействия процессоров в многопроцессорных системах различной структуры.
Линк-порты характеризуются следующими возможностями:
- могут функционировать одновременно и независимо друг от друга;
- позволяют передавать/принимать 32- и 48-разрядные слова;
- доступны как для DMA-контроллера (DMA-пересылок), так и для ядра процессора;
- доступны для внешнего хост-процессора при использовании режимов прямого чтения и записи (Direct Reads and Direct Writes);
- имеют двухуровневые FIFO-буферы для передачи и приема данных;
- поддерживают обмен данными с использованием сигналов тактовой синхронизации и подтверждения.
Работа с последовательными портами SHARC-процессоров семейства ADSP‑2106x
В ADSP-21060 имеются два независимых последовательных порта (serial port) SPORT0 и SPORT1, обеспечивающих интерфейс процессора с различными периферийными устройствами ввода/вывода. Последовательные порты обеспечивают побитовый обмен данными с максимальной скоростью до n Мбит/с, где n - тактовая частота процессора, и характеризуются следующими возможностями:
- независимый прием и передача данных каждым портом;
- буферизация данных при передаче и двойная буферизация при приеме данных;
- аппаратное компандирование по А- и m-законам при передаче и приеме[11];
- передача и прием слов данных размером от 3 до 32 битов, начиная со старших (Most Significant Bit, MSB) или с младших (Least Significant Bit, LSB) битов;
- использование независимых тактирующих сигналов для передачи и приема каждого бита (clock sync) и каждого слова (frame sync), причем синхронизация может быть либо внутренней (тактовые импульсы генерируются самим процессором), либо внешней (передача или прием с частотой тактовых импульсов, генерируемых внешним устройством);
- пересылка данных как по одному слову под управлением процессорного ядра, так и блоками данных с использованием DMA-контроллера;
- многоканальный режим приема и передачи данных с временным разделением битового потока.