Билет № 24

1.      Структура системы ЦОС. Учёт требований обработки в реальном времени.

СТРУКТУРА СИСТЕМЫ  ЦОС

Цифровые сигналы удобны тем, что их можно обрабатывать с помощью ЭВМ. Это делается в следующей структуре:

D:\Место обмена\цос\отверти 2.files\image008.gif

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

Операции ЦОС, например цифровая фильтрация, выполняются в ЦСП, представляющем собой микрокомпьютер. На выходе системы осуществляется обратная операция - в ЦАП кодовые слова превращаются в отсчёты дискретного сигнала и,  наконец, на выходе фильтра ФНЧ возникает обработанный аналоговый сигнал. ФНЧ работает как интерполятор – восстанавливает ход функции между отсчётами.

Выборка отсчётов осуществляется в АЦП через интервал дискретизации T = 1/fД, от которого зависит точность представления аналогового сигнала. Чем больше частота дискретизации, тем более точным будет представление сигнала в цифровом виде, тогда как в случае малого числа отсчетов (низкая частота дискретизации) может теряться информация о сигнале.

Присутствие на входе АЦП составляющих с частотами более высокими, чем fд/2, вызывает искажение спектра сигнала типа наложения (aliasing). Эффект наложения искажает отсчёты сигнала и не позволит получить точное восстановление. Для предотвращения наложения, перед АЦП необходимо иметь аналоговый ФНЧ, подавляющий частоты более высокие, чем частота Fв - высшая рабочая частота. Такой подавляющий ФНЧ вместе с АЦП образуют кодер.

Для получения аналогового сигнала после цифровой обработки применяют декодер, состоящий из ЦАП и сглаживающего ФНЧ. Промышленность производит кодер и декодер вместе в виде одной ИМС, имеющей название кодек.

Обмен данными с кодеком происходит через последовательный порт ЦСП, имеющий двунаправленное действие.


 

 

 

D:\Место обмена\цос\отверти 2.files\image009.gif

 

 

 

 

 Выбор частоты дискретизации

Существует ограничение на минимальное значение fд для АЦП. Согласно теореме Котельникова необходимо иметь частоту дискретизации fд  2Fв, иначе невозможным будет точное, без искажений восстановление сигнала после обработки.

Выбрав более высокую частоту дискретизации (избыточную дискретизацию), мы уменьшаем требование к крутизне спада ФНЧ в кодере и, следовательно, уменьшаем сложность фильтра за счет использования более быстрого АЦП.

Количество операций в алгоритме обработки, выполняемом ЦСП для одного отсчёта сигнала, может составлять сотни и тысячи. Чтобы выполнять обработку сигналов в реальном времени, обработка одного отсчёта должна укладываться в интервал времени, равный периоду дискретизации в АЦП. Для этого нужно иметь тактовую частоту процессора в сотни и тысячи раз более высокую, чем частота дискретизации в АЦП.

 2. Устройство обмена между шинами. Назначение и особенности использования.

Данное устройство соединяет 24-разрядную шину PMD и 16-разрядную шину DMD, обеспечивая двунаправленный обмен данными между ними. На программной модели процессора (рис. 11 ) оно представлено 8-битным регистром обмена PX, компенсирующим разницу в разрядности соединяемых шин. Его содержимое всегда соответствует младшим битам источника/приемника данных. Регистр может быть непосредственно записан и считан инструкцией типа регистр - регистр, например: AX0=PX; При чтении PX старшие биты приемника (AX0) обнуляются.

При чтении 24-битных данных из памяти программ в любой регистр, например, AX0 = PM(I4, M4); старшие 1 6 бит записываются в регистр приемник AX0, а младшие 8 бит автоматически сохраняются в регистре PX и могут быть в дальнейшем использованы. Аналогично, 16-битные данные из любого регистра записываются в старшие 1 6 бит слова памяти, а младшие 8 бит данных автоматически записываются из регистра PX: PM(I4, M4) = AX0; Если эти данные важны, то они должны быть предварительно записаны в PX с шины DMD.

3. Особенности использования и программирования кольцевого буфера.

Оба генератора поддерживают режимы линейной и циклической адресации соответственно линейного и циклического буферов, аппаратно создаваемых в памяти. Циклическую адресацию называют также модульной, а циклический буфер - кольцевым. Режим адресации линейного или циклического буферов для используемого индексного регистра I задается регистром длины буфера L, имеющим с регистром I одинаковый номер, т.

е. I0-L0, I1 -L1 и т. д.

При инициализации регистра L отличным от нуля значением активизируется устройство адресации по модулю, обеспечивающее автоматическую адресацию циклического буфера длиной, определяемой значением регистра L.

Линейная адресация обеспечивается при записи в регистр L нулевого значения длины кольцевого буфера, блокирующего устройство модульной адресации.

После перезапуска процессора в регистрах I, M и L содержатся случайные значения. Поэтому программа должна обязательно предусматривать инициализацию регистров L, соответствующих всем используемым регистрам I.

Ниже приводимая последовательность инструкций является простым примером задания и использования линейной косвенной адресации:

I3=0x3800; M2=1; L3=0; I7=0x0100; M4=1; L7=0;

МX0=DM (I3, M2); МX1=PM (I7, M4); MR=MX0*MX1;

В случае циклической или модульной адресации следующий адрес циклического (кольцевого) буфера вычисляется в соответствии с выражением:Следующий адрес = (I+M - B) по модулю (L) + B,

где I - это текущий адрес; M - модифицирующее значение (со знаком); В - базовый адрес; L - длина буфера, отвечающая условию: L>|M|.

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

Базовый адрес циклического буфера длины L равен 2n или кратен 2n , где n удовлетворяет условию: 2n-1 < L < 2n. На практике не требуется самим вычислять n; редактор связей автоматически помещает циклический буфер по правильному адресу.

Приводимый пример иллюстрирует вычисление адреса при модульной адресации:

Пусть I0 = 4, M0 = 1 , L0 = 3, базовый адрес B = 4. Следующий адрес = (4+1-4) по модулю (3) + 4 = 5; Следующий адрес = (5+1-4) по модулю (3) + 4 = 6; Следующий адрес = (6+1 -4) по модулю (3) + 4 = 4 и т. д.

Модульная адресация данных применяется, как правило, в циклах, организуемых с помощью инструкции DO UNTIL. Ниже приведен простой пример инициализации и исполнения такого цикла:

000 00000000}

 

Hosted by uCoz