книги / Микропроцессоры в телевидении
..pdfОперация счета позволяет организовать задержку разной дли тельности. Для получения малых задержек (несколько микросе кунд) используют счет тактов генератора, тактовых импульсов МП на базе одиокаскадного счетчика. Так как тактовая частота МП обычно стабилизирована, то время задержки формируется с высокой точностью. Для получения более длительных задержек число каскадов счетчика увеличивают программным путем. Все арифметические операции МП выполняет фактически с помощью одной команды — сложения.
О п е р а ц и я с л о ж е н и я . Двоичные числа с плавающей запя той складываются в три этапа: 1— выравнивание порядка сла гаемых до большего (если увеличили один из порядков на п еди ниц, то необходимо сдвинуть сумму мантисс вправо на т разря дов— в этом случае число не меняется); 2 — сложение мантисс слагаемых; 3 — нормализация результата (если это необходимо).
Числа могут быть представлены в виде чисел с фиксирован ной и плавающей запятыми. Арифметика чисел с плавающей за пятой позволяет МП отслеживать ее положение. Числа с плава ющей занятой хранятся в МП так же, как и целые числа. За писываются мантисса числа со знаком и порядок числа со сво им знаком. -
Числа с плавающей запятой вычитают путем сложения од ного двоичного числа с дополнительным кодом другого двоично го числа. Для получения двоичного отрицательного числа в до полнительном коде необходимо во всех его разрядах в прямом
коде заменить единицы |
на |
нули, а нули на единицы и добавить |
||||
к младшему разряду единицу. Переход к дополнительному |
коду |
|||||
в языке |
ассемблера осуществляется командами |
инверсии |
СМА |
|||
и инкремента INRA. |
|
с плавающей запятой |
получается пу |
|||
У м н о ж е н и е |
ч и с е л |
|||||
тем многократного сложения и выполняется в четыре этапа: |
1 — |
|||||
сложение |
порядков |
сомножителей; 2 — определение знака произ |
||||
ведения; |
3 — умножение |
(многократное сложение) |
мантисс; |
4 — |
нормализация результата, если это необходимо.
Числа с плавающей запятой делят как повторяющееся вычи тание. При этом: 1 — порядки делимого и делителя вычитают ся; 2 — определяется знак частного; 3 — делятся мантиссы; 4 — нормализуется результат (если это необходимо). Микропроцес сор, оперирующий числами с плавающей запятой, арифметичес кие операции выполняет по программам из пакета подпрограмм арифметики с плавающей запятой. Эти пакеты содержат также подпрограммы выполнения возведения в квадрат, извлечения кор ня, вычисления тригонометрических функций. Однако программы нз пакета выполняются за большее время, чем реализуются вы числения аппаратными средствами МП. Это связано с тем, что при сложении чисел с плавающей запятой необходимо выполнить до 30 команд МП.
Кроме арифметических операций МП способен выполнять ло гические операции: конъюнкцию (логическое умножение), дизъ-
2 1
Таблица |
1.6 |
|
|
|
|
|
|
Таблица |
|
1.7 |
|
Логическое |
сло |
Логическое |
умно |
Сравнение |
(Ис |
А |
А |
А+А |
|||
жение |
(ИЛИ) |
|
жение |
(И) |
ключающее |
ИЛИ) |
|||||
А |
в |
А+В |
А |
В |
А-В |
А |
В |
АфВ |
0 |
1 |
1 |
|
|
|
|
|
|
|
|
|
|||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
|
|
|
|||||||||
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
|
|
|
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
|
|
|
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
|
|
|
юнкцию (логическое сложение), сравнение (исключающее ИЛИ), инверсию. Логические операции над двумя операндами МП вы полняет поразрядно.
В табл. 1.6 дана расшифровка трех логических команд. Коман ду логического сложения используют для формирования машин ных слов из отдельных частей. Команду логического умножения применяют для выделения определенных разрядов из машинного -слова. Команду сравнения проводят как суммирование двоичных чисел по модулю 2, что позволяет определять факт равенства двух двоичных чисел, а также какое из них больше или меньше. Эту команду производят по определенным правилам: если два числа равны, то сформированный результат сравнения содержит нули во всех разрядах.
Микропроцессором выполняется также функция НЕ или, дру гими словами, операция инверсии (дополнения). Говорят, что А
•есть инверсия А или НЕ А. Черта над переменной А означает инверсию (или отрицание) переменной. Записывается функция
НЕ следующим образом: А + А = 1 . В табл. 1.7 представлены зна чения функции НЕ.
Функции ИЛИ, И, а также другие логические функции реали зуются на основе функции И —НЕ, ИЛИ—НЕ. Элементы И—НЕ, ИЛИ—НЕ являются базисными для большинства серий ТТЛ и КМОП логик. В этих сериях имеются элементы И и ИЛИ, но их выбор ограничен, кроме того, стоимость их выше [111]. Элементы И и ИЛИ имеют большее время задержки, так как состоят из большего числа каскадов, чем элементы И—НЕ и ИЛИ—НЕ. Поэтому в логических устройствах применяют, как правило, эле менты функции И—НЕ и ИЛИ—НЕ.
Функция И—НЕ определяется согласно значениям, указан ным в табл. 1.8.
Функция ИЛИ—НЕ определяется следующим образом: f —А+В=А-В. Значения функции ИЛИ—НЕ приведены в табл. 1.9.
Существует также функция «Исключающее ИЛИ—НЕ», используемая для сравнения двух двоичных чисел, как и функция «Исключающее ИЛИ», функ
ция записывается следующим образом: ?=А О В =А 0 В+А©В. Значения функ ции приведены табл. 1.9.
22
Таблица |
1.8 |
|
|
|
|
Таблица |
1.9 |
|
|
|
ИЛИ—НЕ |
|
|
И -Н Е |
|
А |
в |
A 0 B |
|
А |
в |
А-В |
А |
в |
А+В |
||||
|
|
|
|||||||
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
J |
|
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
|
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
|
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
|
|
|
|
|
|
|
|
На базе элементов И—НЕ логики в МП могут быть построе ны устройства, которые называют классификаторами прерываний- В МП системах с развитой периферией возникает ситуация, ког да сразу несколько периферийных устройств необходимо соеди нить с одним центральным. В момент, когда периферийному уст ройству необходимо связаться с центральным, оно вырабатывает сигнал прерывания. Сигналы прерывания от всех периферийных устройств подаются на устройство ИЛИ, на выходе которого воз никает сигнал запроса на прерывание. Этот сигнал «сообщает» МП о необходимости прервать текущую работу и перейти на про грамму обслуживания периферийного устройства [11]. Каждой периферийное устройство имеет индивидуальный канал, по кото рому передается сигнал прерывания. Эти сигналы поступают на классификатор прерываний. Он вырабатывает сигнал главногопрерывания и определяет периферийное устройство, которое по слало сигнал прерывания. Наиболее общий аппаратный метод определения номера периферийного устройства, которое хочет установить связь с центральным устройством, называют методом формирования цепочки или методом аппаратного опроса. Сущ ность метода заключается в последовательном проходе (опросе) цепочки устройств сигнала опроса. Устройство в цепочке, требу ющее установления с ним связи, не пропускает этого сигнала и инициирует специальный сигнал, который поступает в центральное устройство, указывая на запрос на прерывание.
В заключение, пользуясь понятиями, изложенными выше,, кратко рассмотрим процесс проектирования программы средств микропроцессорных устройств. Прежде всего необходимо четко уяснить технические особенности создаваемого устройства. Эти особенности диктуют тот набор рабочих программ, который обес печивает выполнение устройством заданных ему функций (управ ляющих и вычислительных). Программы разрабатываются либо- в машинных кодах, либо на языке ассемблера. Проектируют про граммные средства с помощью системного программного обеспе чения, которое подразделяется на кросс-программные и резидент ные средства [6, 7, 12]. Кросс-программное обеспечение, позволя ет транслировать большую часть рабочих программ путем моде лирования логики работы основных узлов микропроцессорногоустройства на ЭВМ. Кросс-средства включают в себя такие слу жебные программы, как редактор, транслятор (ассемблер или
2 3
компилятор), загрузчик или имитатор. Резидентное программное обеспечение включает служебные программы: монитор, редактор (ассемблер или компилятор), загрузчик и отладчик, реализуемые на создаваемом микропроцессорном устройстве либо на микроЭВМ, построенной на основе МП того же типа. Монитор-програм ма, управляющая работой микропроцессорного устройства во время трансляции, корректировки, тестирования и ввода прог рамм пользователя, состоит из основной управляющей програм мы и совокупности подпрограмм, обеспечивающих разработку ра бочих программ микропроцессорного устройства [6].
1.3. ОСНОВЫ п р о е к т и р о в а н и я МИКРОПРОЦЕССОРНЫХ
устройств д л я т е л е в и д е н и я
Микропроцессорные устройства для телевидения проектируют так же, как и МП для других применений, и, как правило, в сле дующем порядке. После уяснения задач, возлагаемых на МП уст ройство (МПУ), разрабатывают его структурную схему. На ос нове анализа схемы выбирают одно из направлений дальнейшей работы: либо проектируют оригинальное устройство, либо кон струируют устройство на основе имеющегося набора микропро цессорных комплектов (МПК). Для упрощения проектирования и создания устройства с учетом того, что имеется достаточно ши рокий набор МПК, выбирают второй путь.
На основе анализа параметров и возможностей МПК из того набора, которым располагает разработчик, создают функциональ ную схему устройства с учетом разделения функций его аппара турных и программных средств. Далее разрабатывают аппаратур ную и программную части (алгоритмы и программы работы ми кропроцессорного устройства). Завершают разработку отладкой аппаратуры и программных средств. Причем, естественно, сле дует предварительно выбрать средства отладки, разработать тес товые алгоритмы и программы.
Важная особенность проектирования МПУ — необходимость комплексной разработки аппаратурного и программного обеспе чения. Затраты на создание программного обеспечения доходят до 80% общей стоимости проекта [6].
В связи с программируемостью и многофункциональностью МП позволяют создавать в телевидении достаточно просто перестра иваемые устройства, решающие разнообразные задачи. На пер вом этапе их проектирования создаюталгоритм решения задачи, список параметров и констант, описывают входные и выходные сигналы устройства, определяют перечень и основные параметры (быстродействие, формат слова, уровни электрических сигналов) периферийных устройств. Кроме того, при необходимости могут -быть заданы требования на системы команд, способы адресации и разрядность обрабатываемых слов в устройстве.
Далее разрабатывают функциональную схему устройства. Главным при ее разработке является выбор типа МП. Пока не
24
существует универсальной методики его выбора, поэтому обычно просто перебирают различные МП с одновременным анализом со ответствия заданных технических параметров устройства тем, ко торые позволяет получить каждый тип МП. Ограничениями при выборе МП является предельно допустимая стоимость устройства, допустимая степень соответствия проектируемых его параметров заданным.
Затем переходят к проектированию трех основных блоков МП устройства: центрального процессора, системы памяти и систе мы ввода — вывода. Главное при разработке процессора на осно ве разрядно-модульных МП — это выбор блока микропрограм много управления (БМУ); обеспечение необходимой разрядности процессора. Завершает разработку процессора создание его прин ципиальной .схемы. Блок микропрограммного управления являет ся составной частью почти всех МПК с разрядно-модульной ор ганизацией (секционированных). Блок выбирают на основе ана лиза его быстродействия, емкости адресуемой памяти, потребля емой мощности и других параметров с учетом обеспечения реше ния поставленной задачи с помощью МПУ с минимальными за тратами, эффективным программированием. Разрядность обра батываемых слов обеспечивается (см. § 1.1) соединением (после довательным, параллельным ш «параллельно-последовательным) нескольких секций с помощью цепей переноса и сдвига. Принци пиальные схемы процессора и МПУ должны основываться на ис следовании критических путей .прохождения арифметической и управляющей информации [6, 7]. При этом временные параметры устройства определяются значениями задержки сигналов на тех устройствах, в которых время распространения информационных и управляющих сигналов максимально.
Если в состав МПК не входит генератор тактовых импульсов (ГТИ), при ходится его разрабатывать и изготовлять. В зависимости от типа выбранного МП ГТИ должен формировать одно-, двух-, трех- и четырехфаэпые синхрони зирующие последовательности тактовых импульсов с заданными параметрами (частота следования импульсов, длительность импульсов, временные соотноше ния между импульсами отдельных фаз, длительность фронтов, уровни напря жений выходных сигналов).
Проектирование систем памяти включает проектирование бло ков ОЗУ -и ПЗУ, в которых хранятся операнды, константы, ми кропрограммы и/или программы, управляющие работой МПУ. Разработке блоков памяти должна предшествовать программная реализация алгоритмов. Это необходимо для определения требу емого объема памяти. При проектировании микропрограммируемых МПУ знание объема памяти связано с выбором формата микрокоманд и зависит от числа и разрядности основных и вспо могательных полей микрокоманд [6]. Основу проектирования си стемы памяти составляют выбор типов и числа БИС ЗУ, созда ние принципиальной схемы, которая в значительной .степени оп ределяется типом и составом элементов выбранного МПК, чис-
25
лом устройства ввода — вывода (УВВ), числом и разрядностью информационных, управляющих и адресных шин элементов. Специфика адресации элементов памяти и УВВ связана со структу рой и организацией шин МП. Адресовать можно по раздельным шинам или общей адресной шине. При адресации по общей шине систему создают путем распределения поля адресов между ком понентами устройства одним из методов: разделением адресного пространства между ЗУ и УВВ или использованием дополнитель ных управляющих сигналов для идентификации типа адресуемо го компонента.
Первый метод заключается в том, что старшие разряды адреса, выполняю щие управляющие функции, используют для выборки соответствующих компо нентов и указания направления передачи информации; при этом элементы па мяти и УВВ имеют различные адреса. По второму методу элементы памяти и УВВ имеют общее адресное пространство, а выборка компонентов устройства и управления режимом их работы осуществляется с помощью дополнительных управляющих сигналов — признаков, формируемых МП.
При выборе способа адресации необходимо учитывать сле дующие параметры устройства: .число входов выборки кристал ла, разрядность адресных шин ЗУ и УВВ и их число [6].
Перед разработкой системы ввода-вывода требуется выбрать способы обмена информацией УВВ — МПУ и распределения ин терфейсных функций между аппаратурой и программой. К числу основных способов (режимов) обмена информацией, которые от личаются быстродействием и объемом аппаратуры, их реализую щей, относятся: обмен в режиме прерывания, прямой доступ к памяти и обмен по. запросу МП. Организация обмена в режиме прерывания наиболее рациональна, когда быстродействие УВВ значительно уступает быстродействию МПП. Интерфейсные функ ции при этом реализуются программным либо аппаратурным пу тем, причем предпочтение одному из этих путей отдается с уче том времени реакции на запрос прерывания от УВВ и объема допустимых аппаратурных затрат. Режим прямого доступа к бло ку памяти применяют, когда используются быстродействующие УВВ, требующие передачи и приема больших массивов инфор мации. Прямой доступ позволяет передавать информацию меж ду памятью л УВВ без участия процессора, что, в свою очередь, обеспечивает высокое быстродействие, но реализуется при наи больших аппаратурных затратах из перечисленных способов об мена. Обмен по запросу МП рационален при согласовании или малом рассогласовании временных параметров процессора и УВВ. Этот способ реализуется при минимальных аппаратурных и прог раммных затратах [12].
Как правило, МПК содержат различные интерфейсные устрой ства: буферные регистры, программируемые и непрограммируе мые периферийные адаптеры, блоки приоритетных прерываний и др. Но с их помощью не всегда реализуется весь необходимый
26
набор интерфейсных функций. Поэтому приходится разрабаты вать и специальные интерфейсные устройства.
Завершающим этапом разработки МПУ является отладка его отдельных узлов и всего устройства в целом. Удобнее всего про водить ее, используя специальные пульты и системы.
Правильность функционирования узлов МПУ — процессора, систем памяти и УВВ — проверяют с помощью отладочных пуль тов, в состав которых входят: запоминающее устройство, емкость которого до 1 Кбайта (ОЗУ) и 4 Кбайт (ПЗУ), световые инди каторы, показывающие состояние входных и выходных адресных, управляющих и информационных шин МПУ; шестанадцатеричная клавиатура, с которой вводятся адреса и данные требуемой разрядности и осуществляется управление режимами работы бло ков устройства. Исследуемый блок подключают через специаль ный разъемный соединитель на пульте. В ОЗУ пульта хранят не большие по объему диагностические программы, команды кото рой могут реализовываться в пошаговом режиме. При этом на индикаторах высвечиваются параметры, характеризующие состо яние шин блоков или других контрольных точек, что позволяет быстро выявлять неисправность, а также тот участок, где она имеет место.
Более совершенными, позволяющими комплексно отладить ап паратурные и программные средства МПУ на всех этапах проек тирования, являются специализированные системы моделирования и системы комплексной отладки МПУ, ориентированные на оп ределенный МП [6, 13]. Система комплексной отладки — это мощная универсальная микроЗВМ с широким набором аппара турных модулей и периферийных устройств, а также с развитым резидентным обеспечением. Технические и программные средст ва этой системы позволяют компоновать из аппаратурных моду лей и периферийных устройств прототип проектируемого устрой ства и последовательно отлаживать готовые блоки микропро цессорного устройства и разрабатываемых программ, когда ре ального устройства еще нет.
В состав системы (рис. 1.6 [6]) входят: блок центрального процессора, состоящий из собственно МП, а также генератора тактовых импульсов, устройств запуска и прерываний и т. д.; блок основной памяти в виде ОЗУ или ППЗУ для хранения слу жебных программ в процессе разработки программного обеспе чения и временного хранения прикладных программ и данных; внешнее ЗУ для постоянного хранения резидентных программных средств, исходного и объективного модулей прикладного програм много обеспечения; диалоговый терминал данных, применяемый для разработки программ и обеспечивающий ввод директив, кон троль и коррекцию содержимого ОЗУ; модуль ввода — вывода, согласующий работу системы отладки с периферийными устройст вами, применяемыми в разрабатываемом МПУ; эмулятор, обес печивающий отладку аппаратурных и программных средств уст ройства в реальном времени, когда готового макета МПУ еще
27
Рис. 1.6. Структурная схема системы комплексной отладки микропроцессорного устройства
не существует; монитор — основное управляющее звено системы комплексной отладки.
Как правило, процесс отладки начинается в то время, когда макета МПУ еще нет. В таком случае используют полную эму ляцию компонентов разрабатываемого устройства. Прототип раз рабатываемого устройства создают на основе системы отладки перераспределением ее аппаратурных ресурсов и предваритель ной отладки прикладных программ в реальном масштабе време ни. По мере создания МПУ (процессора, системы памяти, сис темы ввода — вывода) узлы — аналоги системы отладки отсоеди няют и вместо них к эмулятору системы подключают готовые блоки. Происходит отладка этих блоков и определенной части программного обеспечения (режим частичной эмуляции). Разра ботку МПУ заканчивают изготовлением его макета. Окончатель но отлаживают аппаратурные и программные средства с помощью системного программного обеспечения применяемой системы ком плексной отладки. Основным недостатком системы комплексной
отладки является их ориентация только |
на определенный тип |
|
МП [6]. |
выбора типа МПК и разработки |
функциональной схемы, |
Для |
а также выбора алгоритма решения задачи при создании про граммного обеспечения МПУ, оценки работоспособности проек тируемого устройства в процессе создания аппаратурных средств проверки и отладки программного обеспечения на модели в про цессе комплексной отладки программных и аппаратурных средств
28
применяют специализированные системы моделирования (ССМ) [14, 15]. Достоинством ССМ является инвариантность к типу МП. Их молено с успехом использовать для создания МПУ сред ней сложности, т. е. наиболее характерных с точки зрения при менения в телевидении.
Коротко рассмотрим основные положения методики автома тизации проектирования МПУ при использовании диалоговой си стемы моделирования, которая является хорошим примером спе циализированной системы моделирования [6].
Функциональную схему МПУ разрабатывают в начале про ектирования на основе анализа быстродействия вариантов уст ройства при реализации бенчмарковских программ (БП). Модель
Рис. 1.7. Алгоритм создания функциональной схемы на основе автоматизиро ванном анализа перебора вариантов построения МПУ
29
МПУ реализуют на .функциональном уровне, и она представлю ет собой совокупность имитационных отладочных моделей отдельных блоков устройства. Алгоритм создания функциональной схемы на основе автоматизированного анализа и перебора ва риантов построения МПУ приведен на рис. 1.7 [6]. Вначале вы бирают группу МП для проведения их анализа. Для одного из
МП |
разрабатывают |
БП и функциональную схему |
МПУ. |
В мо- |
. дель |
блока .памяти |
записывают БП и формируют |
модель |
вари |
анта МПУ. В результате потактовой обработки БГ1 на модели
определяют |
быстродействие устройства |
для данного |
типа МП |
|||
^мпу • Далее .полученное быстродействие |
сравнивают |
с |
заданным |
|||
Га. Процесс |
поиска вариантов заканчивают при незначительном |
|||||
(в соответствии с'заранее выбранным |
критерием) расхождении |
|||||
^ мпу и Г.. Исследуемую |
структуру |
МПУ принимают |
|
в .качестве |
||
базового варианта для |
разработки |
принципиальной |
схемы. |
Рассмотрим выбор алгоритма решения вычислительных за дач. Рациональный алгоритм ,выбирают на этапе создания прин ципиальной схемы МПУ и его программного обеспечения по зна чению вычислительной погрешности, возникающей из-за округле нияпромежуточных и окончательных результатов вычислений [7]. Модель алгоритма создают путем последовательно-парал лельного соединения типовых блоков решения известных мате матических задач, на которые его предварительно разбивают. Если полученная точность меньше заданной, это говорит о необ ходимости либо увеличить разрядность процессора, либо изме нить алгоритм вычислений.
Работоспособность и правильность функционирования проек тируемого устройства проверяют моделированием основных ин формационных и управляющих сигналов, циркулирующих в МПУ» получением и анализом временных диаграмм работы [16].
Глава 2.
ПРИМЕНЕНИЕ МИКРОПРОЦЕССОРОВ Д Л Я ПОВЫШЕ НИЯ КАЧЕСТВА ТВ ИЗОБРАЖЕНИИ
2.1. ОБРАБОТКА ИЗОБРАЖЕНИИ. ИКОНИКА
Применение МП для обработки изображений связано преж де всего с разработкой эффективных методов этой обработки. Создать же эффективные методы можно только при учете зако нов восприятия изображений человеком, комплексно рассматри ваемых в рамках сравнительно новой науки — иконики.
Изображение — одно из наиболее привычных понятий, .приме няемых человеком в своей деятельности. В то же время это по нятие из-за своей неопределенности и неоднозначности требует точного определения для употребления в технической, и научной
30