Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 80027

.pdf
Скачиваний:
2
Добавлен:
01.05.2022
Размер:
302.05 Кб
Скачать

Вопросы для самопроверки к теме 1

1.В чем состоит цель и задачи изучения курса?

2.Какие базовые операции есть в алгоритмах?

3.Что такое аппаратная реализация алгоритма?

4.Что такое программная реализация алгоритма?

Методические указания к теме 2

Основные особенности, характеризующие цифровые процессоры обработки сигналов:

быстрая и гибкая арифметика, возможность выполнения операций умножения и умножения с накоплением за один командный цикл;

защита от переполнений при вычислении сумм;

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

целесообразность выборки двух операндов за один цикл для повышения быстродействия операции;

гибкая система адресации с учетом специфики алгоритмов ЦОС, в частности, наличие модульной и битреверсивиой адресации для организации циклических буферов;

эффективная организация циклов и ветвлений

[1,2,4].

Методические указания к теме 3

Рассмотрим некоторые особенности использования памяти в ЦПОС.

Доступ к блокам памяти. Блоки памяти.

Организация быстрых вычислений при выполнении алгоритмов ЦОС требует архитектуры процессора с несколькими блоками памяти и несколькими комплектами шин. Для выполнения основной операции умножения с накоплением MAC требуется три обращения к памяти для выборки команды и двух сомножителей (при сохранении результата в каком-нибудь регистре).

9

В чистом виде на это ориентирована архитектура процессоров, в которых выделяется память программ и память данных, которая в свою очередь разделена на две части — X и Y. В конечном итоге, для организации эффективных вычислений определяющим является не название и количество реально независимых блоков памяти, а возможность организации необходимого для этих вычислении количества доступов к памяти (при которых производится чтение команд и операндов и запись результатов).

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

Внешняя память по отношению к процессору рассматривается как единое пространство памяти, ячейки и отдельные части которого отличаются только адресами [1-4].

Вопросы для самопроверки к теме 3

1.Что такое блок памяти?

2.Как организован доступ к блокам памяти?

3.Какие шины используются при обращении к внешней

памяти?

4.Какие данные передаются по общему комплекту

шин?

5.Чем обосновано применение одного общего комплекта шин?

6.Что такое внешняя память?

10

Методические указания к теме 4

Формат данных определяет длину последовательности из нулей и единиц — количество битов в последовательности битов. Такие последовательности могут рассматриваться как данные в операциях бит-манипуляций (операциях с отдельными битами) или как данные логического типа в логических операциях AND, OR, NOT. Однако для того, чтобы эти последовательности воспринимались как численные данные (двоичные числа), необходима дополнительная информация:

о функциональном распределении битов в последовательности:

о типе числа, представляемого в заданном формате;

о форме представления числа заданного типа.

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

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

Форма представления численных данных (чисел) в процессоре отображает алгебраическую форму записи числа.

Соответственно двум алгебраическим формам записи вещественных чисел — обычной и показательной — различают две формы представления численных данных в процессорах:

сфиксированной точкой (ФТ):

сплавающей точкой (ПТ).

Данные целого типа (целые двоичные числа) представляются в процессорах только в форме с ФТ.

Данные вещественного типа могут представляться в форме с фиксированной или с плавающей точкой, в зависимости от чего различают:

ЦПОС с фиксированной точкой; ЦПОС с плавающей точкой [2,4].

11

Вопросы для самопроверки к теме 4

1.Что определяет формат данных?

2.Что необходимо для определения последовательности битов как численных данных?

3.Что является определяющим и для типа числа и для функционального распределения битов в последовательности?

4.Чем отделяется целая часть от дробной в цифровой вычислительной технике?

5.Что отображает форма представления численных

данных?

6.Какие различают формы представления численных данных в процессорах?

Методические указания к теме 5

В процессорах с ПТ обработка различного рода нетривиальных результатов операций регламентируется стандартом IEEE 754 и осуществляться автоматически.

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

— exceptions):

недопустимая операция; деление на ноль; переполнение (overflow); потеря значимости (underflow); потеря точности (inexact).

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

Недопустимая операция регистрируется, когда операцию по той или иной причине невозможно выполнить. Арифметическую операцию невозможно выполнить, если она производится над недопустимыми для нее данными. Примеры недопустимых арифметических операций: 0/0; 0х∞; ∞/0; 0/∞=; ∞—∞; ∞+(—∞). Кроме того, недопустимыми считаются все арифметические операции с сигнальными нечислами SNaN и неподдерживаемыми форматами. Недопустимая операция в

12

качестве результата возвращает значение спокойного нечисла

QNaN.

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

Переполнение фиксируется, когда значение результата выходит за границы диапазона его представления.

Потеря значимости результата — это особый случай, присущий обработке данных с ПТ и иногда называемый антипереполнением. Потеря значимости результата возникает, когда одновременно происходят два следующих события:

результат становится бесконечно малым и представляется ненормализованным числом;

результат (ненормализованное число) невозможно точно представить в заданном формате.

Особый случай потеря точности отображается установкой соответствующего бита в регистре состояния, если выдается неточный (округленный) результат.

Вопросы для самопроверки к теме 5

1.Чем регламентируется обработка нетривиальных результатов операций в процессорах с ПТ?

2.Какие особые случаи должны распознавать процессоры с ПТ?

3.Что такое недопустимая операция?

4.Что такое особый случай деления на ноль?

5.Что такое переполнение?

6.Что такое потеря значимости?

7.Что такое потеря точности?

13

Методические указания к теме 6

Неявная адресация. При такой адресации для указания длины (формата) машинного слова указывается количество байт в слове. Неявная адресация (подразумеваемая) — способ, при котором в адресной части не задается адрес одного из операндов или результата. В одноадресной команде задается лишь адрес одного операнда, подразумевается, что второй операнд хранится в регистре АЛУ, а результат посылается в АЛУ. В двухадресной команде обычно задаются адреса обоих операндов, а результат посылается вместо одного из них. По способу неявной адресации работает счетчик команд, в который при выполнении арифметической или логической операции прибавляется единица. [2,4].

Методические указания к теме 7

Система команд включает комплект команд, обеспечивающих:

выполнение операций над данными; управление последовательностью этих операций;

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

Сравнение систем команд различных процессоров производится по совокупности следующих основных показателей:

полнота системы (достаточность команд);

унификация (единообразие) структуры слова и синтаксиса различных команд;

разнообразие типов адресаций;

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

возможность параллельных пересылок; возможность условного выполнения команды.

14

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

Однако, при большом количестве команд в системе, указании трех операндов (в арифметических операциях), разнообразии типов адресаций, наличии параллельных пересылок, условия выполнения операции и т. д. длина слова команды окажется слишком большой, а, следовательно, потребуются большая разрядность соответствующих шин и регистров, больший объем памяти программ, увеличатся габариты и возрастет стоимость процессора.

В то же время, для многих приложений требуются простые и дешевые сигнальные процессоры, поэтому разработчики систем команд учитывают область применения процессоров. При относительно небольшой длине слова команды (16—24 бита) по перечисленным показателям принимаются компромиссные решения, в результате системы команд различных процессоров имеют свои сильные и слабые стороны [2-4].

Вопросы для самопроверки к теме 7

1.Что включает в себя система команд?

2.Как производится сравнение систем команд различных процессоров?

3.Как показатели сравнения связаны с длиной слова команды?

15

Методические указания к теме 8

Контроллер прямого доступа к памяти (ПДП)

предназначен для организации пересылок между различными областями карты памяти без вмешательства ЦПУ. Все пересылки ПДП производятся в фоновом режиме относительно Контроллер ПДП имеет несколько независимо

программируемых каналов и снабжен рядом регистров:

общим регистром управления ПДП, который своим состоянием определяет:

режим работы контроллера;

характер изменения адресов источника и приемника (инкремент, декремент, синхронный);

регистрами адресов источников и приемников для каждого канала ПДП;

регистрами счетчика пересылок, управляющего размером кадров и блоков пересылок по каждому каналу ПДП;

регистром разрешения прерываний ЦПУ/ПДП.

Контроллер ПДП обеспечивает пересылки данных в

виде:

элемента, разрядность которого программируется и может составлять 8, 16 или 32 бита;

кадра, состоящего из программируемого количества элементов;

блока, состоящего из программируемого количества кадров.

Пересылка элемента в каждом канале выполняется за два шага:

Чтение элемента (данных) из ячейки памяти, адрес которой определяется регистром адреса источника ПДП.

Запись прочитанного элемента в ячейку памяти, адрес которой определяется регистром адреса приемника ПДП.

Пересылка элемента завершается только по окончании процессов чтения и записи. В конце каждой операции чтения или записи адрес источника или приемника модифицируется

16

(обновляется) согласно правилу (инкремент, декремент), установленному в общем регистре управления ПДП. По окончании каждой записи декрементируется счетчик пересылок ПДП.

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

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

Длина кадров и блоков устанавливается в регистре счетчика пересылок по каждому каналу ПДП при инициализации процессора. Допустимые пределы, в которых может изменяться эта длина, зависят от разрядности регистра счетчика пересылок. Регистр разрядности т допускает 2т 1 элементов в одном кадре и столько же кадров в одном блоке. Например, если т = 16 (что типично для большинства процессоров), максимальная длина кадра составит 65 535 элементов; такое же максимальное количество кадров может содержать один блок. Таким образом, в одном блоке по одному каналу ПДП допустимо пересылать до 4 294 836 225 элементов.

Пересылка кадра и блока завершается генерацией сигнала прерывания [2,4].

Вопросы для самопроверки к теме 8

1.Для чего предназначен контроллер прямого доступа к

памяти?

2.Какие регистры содержит контроллер ПДП ?

3.В каком виде контроллер ПДП обеспечивает пересылки данных?

4.Что такое пересылка элемента?

5.Что такое пересылка кадра?

17

6.Что такое пересылка блока?

7.Чем завершается пересылка кадра и блока?

Методические указания к теме 9

Появление мощных процессоров, подобных семействам

TMS320C5xxx и TMS320C6xxx, вызвало необходимость в новых отладчиках, которые предоставляли бы пользователю более широкие возможности и удобства с целью сокращения сроков разработки и отладки систем ЦОС. В связи с этим появилось новое поколение отладочных средств, получивших наименование «интегрированная среда отладки»; сюда относятся среда разработчика CodeComposer и среда разработчика CodcComposcrStudio.

Среда разработчика CodeComposer обладает следующими новыми возможностями:

редактирования, компилирования и отлаживания программы, не выходя из отладочной среды;

одновременного отлаживания на языках С и ассемблера нескольких программ, написанных для разнородных процессоров с отдельными окнами отладки:

создания собственных сценариев yа С-подобном внутреннем языке GFL и встраивания их в интерфейс отладчика;

выполнения сценариев при попадании па заданную точку останова:

установки точек подключения с заданием условий выполнения каждой точки; точка подключения используется для:

обзора сигналов в определенные пользователем моменты;

подачи сигналов из файлов в задаваемые точки системы;

считывания сигналов в заданных точках и записи их в

файл;

фиксирования состояния ограниченной области памяти.

18