Структура последовательного порта в основном определяется типом данных, передаваемых по этому порту. При цифровой обработке сигналов требуется передавать непрерывные потоки информации. Обработкой данных обычно занимаются цифровые сигнальные процессоры (DSP), поэтому последовательные порты, предназначенные для передачи цифровой информации с максимальной скоростью, называются DSP портами.
Какие данные могут образовывать непрерывные потоки? Чаще всего это звуковые или видеосигналы, хотя в качестве сигнала, образующего непрерывный поток данных могут выступать сигналы измерения биотоков живого организма или сигналы геомагнитных измерений. Как можно определить из определения природы таких сигналов, источником цифрового потока должен быть аналого-цифровой преобразователь (АЦП). Если микросхема является приёмником цифрового потока данных, то в ее состав входит цифро-аналоговый преобразователь (ЦАП).
При преобразовании аналоговой информации в цифровую форму и наоборот очень важно обеспечить стабильность тактового сигнала. Такой сигнал обычно вырабатывается специальными термостабилизированными высокостабильными генераторами, питаемыми от отдельного стабилизатора питания. Скорость передачи информации в цифро-аналоговый или аналого-цифровой преобразователь должна быть строго согласована по времени со скоростью передачи по каналу связи (последовательному порту). Именно поэтому сигналы синхронизации, необходимые для работы DSP порта, вырабатываются из входного высокостабильного тактового сигнала самой микросхемой аналого-цифрового или цифро-аналогового преобразователя.
Проще всего преобразовать число, представленное в параллельном коде, в последовательный вид можно при помощи сдвигового регистра. При этом на приёмном конце важно знать момент, когда производится запись в этот регистр. Знание этого момента времени позволит определить, какой из передаваемых бит является старшим значащим разрядом, а какой — младшим. Так как поток двоичной информации передаётся постоянно, то сигналы записи в регистр будут подаваться с одним и тем же периодом.
Выходной двоичный код бит за битом можно снимать с последнего выхода сдвигового регистра. Для того чтобы на приёмном конце этот сигнал принимался без ошибок, каждый бит должен сопровождаться синхронизирующим импульсом. При этом чтобы отличать синхросигналы друг от друга, импульсы, сопровождающие информационные биты, стали называть тактовой синхронизацией (CLK), а сигнал, отмечающий момент записи в регистр — кадровой синхронизацией (FS).
Сигналы кадровой и тактовой синхронизации должны быть жестко связаны между собой, поэтому для их формирования обычно используется цифровой счётчик. Давайте рассмотрим пример передачи восьмиразрядного последовательного слова. В качестве источника цифрового потока используем аналого-цифровой преобразователь. Получившаяся в результате схема синхронного последовательного порта приведена на рисунке 1.
Рисунок 1. Схема последовательного DSP-порта
Как видно из приведенной схемы, на вход двоичного счётчика подаются импульсы от генератора высокостабильных колебаний. Из этих импульсов вырабатывается сигнал тактовой синхронизации, который подается на выход схемы и поступает на вход синхронизации сдвигового регистра.
Логический элемент "4ИЛИ-НЕ", подключенный к выходу четырёхразрядного счётчика формирует импульсы кадровой синхронизации с частотой в восемь раз меньшей частоты тактовой синхронизации. Такую частоту можно было бы получить с выхода "8" двоичного счётчика, но нам требуется длительность импульса, равная длительности импульса тактовой синхронизации. Логический элемент "4ИЛИ" позволяет декодировать нулевое состояние счётчика. В результате этого на его выходе длительность импульса равна длительности импульсов тактовой синхронизации, а сам импульс появляется в самом начале кадра передачи данных с выхода АЦП.
В свою очередь длительность импульсов на выводе CLK равна периоду сигнала тактовой синхронизации, так как этот сигнал снимается с выхода младшего разряда двоичного счётчика.
Кадр передачи данных начинается с параллельной записи результата преобразования АЦП в передающий сдвиговый регистр. Для этого импульс кадровой синхронизации подаётся на вход параллельной записи в регистр сдвига. В приведённой на рисунке 1 схеме запись в регистр осуществляется по переднему фронту этого импульса.
Этот же импульс кадровой синхронизации подаётся на вход синхронизации аналого-цифрового преобразователя. Внутренняя схема АЦП выполнена так, чтобы аналого-цифровое преобразование начиналось по заднему фронту импульса. Такой подбор схем АЦП и регистра сдвига позволяет сначала записать результат в регистр, а затем начать новое преобразование аналогового сигнала в цифровую форму по одному и тому же импульсу синхронизации.
Пример временных диаграмм сигналов данных и сопровождающих их сигналов тактовой и кадровой синхронизации на выходе последовательного DSP-порта приведен на рисунке 2.
Рисунок 2. Временные диаграммы сигналов на выходе синхронного последовательного DSP-порта
В приведенных временных диаграммах осуществляется передача двоичного числа 100111002. При этом запись информации в последовательный регистр производится по сигналу кадровой синхронизации FS. В этот момент на выходе Q7 регистра сдвига появляется старший бит результата преобразования. Начиная от этого момента, начинают отсчитываться импульсы тактовой синхронизации CLK.
Приведенный на рисунке 1 регистр осуществляет сдвиг своего содержимого по заднему фронту этих импульсов. В результате на выходе Q7, а значит на выводе порта D, последовательно один за другим будут появляться биты передаваемого двоичного числа. Для безошибочной передачи информации по линиям последовательного порта в приёмный регистр эти данные должны записываться по переднему фронту импульсов CLK, так как именно этот фронт совпадает с середой битового интервала.