Опубликован: 01.10.2013 | Доступ: свободный | Студентов: 255 / 19 | Длительность: 24:58:00
ISBN: 978-5-9963-0223-9
Специальности: Разработчик аппаратуры
Лекция 9:

Оценка производительности и живучести МКМД-БИТ-потокового предпроцессора системы астронавигации

8.3. Система МКМД-бит-потоковых слов-инструкций поток-оператора слежения за центром масс астроориентира и их топология

Укрупненная функциональная схема МКМД-бит-потокового субпроцессора слежения за "центром масс" астроориентира имеет вид рис. 8.4, и она определяет место этого субпроцессора во всем тракте управления угловыми координатами при полете группы ЛА сомкнутым строем.

Функциональная схема включения МКМД-бит-потокового субпроцессорного тракта в контур обработки полетной информации

Рис. 8.4. Функциональная схема включения МКМД-бит-потокового субпроцессорного тракта в контур обработки полетной информации

Из этой схемы следует:

  1. Данный субпроцессор является предпроцессором, и его системное назначение состоит в том, чтобы обеспечить высокую живучесть модуля сопряжения высокоскоростных источников сигналов с центральной частью БВС, работающей в контуре САУ.
  2. Он выполнит свое функциональное назначение, если осуществит "семантическое" сжатие потоков входных данных и снизит их интенсивность с 2 457 600 бит/сек до 2.400 бит/сек. Первая из этих цифр задается 5 видеокамерами (5*30 кадров/сек*128*128пикселей = 2457600), а вторая определяется скоростью передачи в центральную часть БВС десяти 8-битных координат "центра масс" астроориенти-ров, вычисленных по каждому кадру обрабатываемого изображения. Согласно приведенному выше алгоритму работы, в МКМД-бит-потоковом предпроцессоре определения "центра масс" астроориентира можно выделить следующие функциональные модули (рис. 8.5):
    • модуль параллельно-последовательного 16-битного интерфейса данных (INS16);
    • модуль циклической генерации тест данных (DTM);
    • модуль "скользящего окна" размером 5*5пикселей (SWM25);
    • модуль медианной фильтрации бинарного изображения (MMF25);
    • модуль формирования построчных гистограмм отфильтрованного бинарного изображения и их циклического сглаживания 2-элементным "скользящим окном" (LHM);
    • модуль "свертки" вектор-столбца построчной гистограммы отфильтрованного изображения (SMM);
    • модуль определения положения центра масс астроориентира на оси Х (CMM);
    • модуль контроля правильности работы логических устройств субпроцессора (ICLM);
    • модуль контроля правильности работы арифметических каналов субпроцессора (CAM).

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

Функциональная схема поток-процессора определения "центра масс" астроориентира

Рис. 8.5. Функциональная схема поток-процессора определения "центра масс" астроориентира

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

Параллельно-последовательный 16- битный интерфейс данных ( INS16 - рис. 8.6) с блоком управления процедурой синхронного чтения реализуется на основе регистра параллельной записи и последовательного чтения (рис. 8.7). Здесь и далее за начало координат взят верхний левый угол бит-матрицы; первой указана координата строки, а второй - координата столбца бит-матрицы.

Структурная схема параллельно-последовательного интерфейса (INNS16)

Рис. 8.6. Структурная схема параллельно-последовательного интерфейса (INNS16)
Топологическая схема модуля входного интерфейса (INNS16)

Рис. 8.7. Топологическая схема модуля входного интерфейса (INNS16)

Данный интерфейсный модуль занимает бит-матрицу размером 3*18 БП, и в нем время начальной задержки поступления входных данных составляет 32 такта. Такая задержка обеспечивает вхождение в конвейер параллельной FIFO -регистровой шины управления процедурой "чтение" (бит-процессоры 1-й и 2-й строки). В этой шине все 16 эквидистантных выходов канала распространения циклической константы C_{16}1 (см. лекцию 5 курса "Задачи и модели вычислительных наноструктур") имеют одинаковое время задержки, отсчитанное от управляющего входа канала (БП с координатами (1, 16, 3)), что обеспечивает одновременное (синфазное) поступление "1" на схемы "И" третьей строки бит-матрицы.

Частота поступления входных бит-данных, заданных в параллельном коде, - 1 раз за 16 тактов работы бит-матрицы. Координаты информационных входов помечены треугольными стрелками: (3, 1, 4)-(3, 16, 4). Координата выхода операндов в последовательном коде - (1, 2, 2). Время начальной задержки в модуле - 36 тактов. Здесь и далее используется следующая система обозначений БП и их входов-выходов:

  • первые две цифры в скобках соответствуют номеру строки и столбца бит-матрицы, отсчитанные от левого верхнего угла;
  • третья цифра идентифицирует номер входа-выхода по правилу: слева - 1, сверху - 2, справа - 3, снизу - 4.

Строб "чтение" C_{16}1 формируется управляющим модулем ICU1(16), который расположен на БП 17-го и 18-го столбцов бит-матрицы рис. 8.7. В этом модуле функции задающего генератора C_{8}1 = 00000001…00000001 выполняет БП (3, 18), который настроен на бит-инструкцию CG, в "теле" которой и размещена 8-битная константа C_{8}1 со сдвигом влево на 2 бита (в шестнадцатеричном виде она записывается как 04 ). Далее эта циклическая константа проходит через триггер со счетным входом ( Т -триггер), собранный на БП (2, 17) и (3, 17). Функциональный выход модуля ICU1(16) расположен в БП (2, 18, 2), который настроен на бит-инструкцию AND. Реальный, топологический выход модуля ICU1(16) расположен в БП (1, 17, 1).

Из приведенных данных видно, что на каждом 16-битном цикле работы входного интерфейса:

  • в модуле ICU1(16) реализуются две 8-битные слов-инструкции генерации константы C_{8}1, одна 16-битная слов-инструкция генерации константы C_{16}1 и две операции пересылки этих констант;
  • в модуле INNS16 реализуются 16 пересылок константы C_{16}1, одна 16-битная AND и одна 16-битная FIFO-регистровая пересылка выходного операнда;
  • из 23 реально исполняемых в режиме интерпретации слов-инструкций полезной для пользователя является только одна 16-битная FIFO-регистровая пересылка выходного операнда.

Таким образом, пропускная способность входного интерфейса составляет по потоку 16- битных слов-инструкций V_{I} = [(2+1+2)+(16+1+1)]*F_{t} /16 = 23*F_{t} /16 = 1,4375F_{t} (оп/сек), а по потоку данных V_{D} = F_{t} (бит/сек), где F_{t} - частота работы бит-матрицы.

Модуль циклической генерации тест данных ( DTM - рис. 8.8), которые имеют вид: "пять единиц - три ноля", "пять единиц - три ноля", и т. д., всего 64 раза, что соответствует заполнению тест-данными двух верхних и двух нижних строк каждого кадра обрабатываемого изображения размером 128*128 = 214 однобитных пикселей (см. рис. 8.3).

Блок управления генерацией тест-данных содержит (рис. 8.9):

  • задающий генератор (NG) циклической константы C_{8}1:= 0000.0001 (БП (2, 24)), который настроен на бит-инструкцию CG, в "теле" которой и размещена 8-битная константа C_{8}1 со сдвигом влево на 4 бита, что в шестнадцатеричном виде записывается как 10;
  • генератор цикла (CG) в виде делителя на 211 исходной частоты, который занимает две верхние строки бит-матрицы начиная с третьего столбца и задает цикл генерации тест-данных, равный размеру 1 кадра, обрабатываемого в последовательном коде (всего 214 тактов);
    Структурная схема модуля генерации тест-данных (DTM)

    Рис. 8.8. Структурная схема модуля генерации тест-данных (DTM)
  • таймер продолжительности тест-данных (SG), который формирует циклическую константу из 29 "единиц" и такого же количества "нулей" и который реализован БП верхних двух строк начиная с 11 столбца.

На выходе блока управления генерацией тест данных формируется циклическая константа из 29 "единиц" и (214-29) "нулей". Функциональный выход этого блока расположен в БП (3, 11, 1), а реальный, топологический - в БП (3,2,1).

Как видно из рис. 8.9, делитель и таймер совмещены по аппаратуре и представляют собой счетчики из Т -триггеров, каждый из которых занимает бит-матрицу 2*2 БП.

Генератор тест-данных С_{8}5:=00011111 реализован на БП (1, 1), который выполняет бит-инструкцию CG. В теле этой бит-инструкции хранится данная циклическая константа, которая в шестнадцатеричном виде со смещением на 1 такт влево имеет вид 3Е = 00111110.

В блоке слияния потоков реальных и тестовых данных (БП первых двух столбцов рис. 8.9) управляющий сигнал из 29 "единиц" и (214-29) "нулей" сначала открывает на 29 тактов выход генератора тест-данных (БП (2, 1, 4)), а затем на (214-29) тактов - выход параллельно-последовательного интерфейса (БП (4, 2, 2)).

Топологическая схема модуля генерации тест-данных (DTM)

увеличить изображение
Рис. 8.9. Топологическая схема модуля генерации тест-данных (DTM)

Чтобы совместить поток тест-данных с двумя верхними и двумя нижними строками каждого кадра обрабатываемого изображения, необходимо подобрать начальную задержку в блоке управления, которая регулируется расстановкой бит-инструкций AND или NAND в БП 1-й строки. Эти бит-инструкции определяют время задержки на распространение "единицы" из предыдущего Т -триггера в последующий. В данном случае задержка составляет 36 тактов и она предполагает, что входной интерфейс поток-процессора начал свою работу с задержкой на 256 тактов по отношению ко времени начала работы всей бит-матрицы.

Из приведенных данных видно, что на каждом 8-битном цикле работы генератора тест-данных ( DTM ) выполняются:

  • в задающем генераторе NG: 1 операция генерации циклической константы C_{8}1 и 2 пересылки;
  • в таймере продолжительности тест-данных SG: 1 операция формирования циклической константы из 29 "единиц" и такого же количества "нулей" и 1 пересылка;
  • в генераторе цикла CG: 4 операции слияния по "ИЛИ", 1 операция "И" и 6 пересылок, включая ветвление результирующего операнда между генератором тест-данных и вентилем управления входным потоком;
  • в генераторе тест-данных TG: 1 операция генерации циклической константы 3Е, 1 операция ее временной селекции AND и 2 пересылки;
  • в блоке слияния потоков ASU: 1 операция AND, 1операция OR и 3 операции пересылки.

Таким образом, пропускная способность генератора тест-данных по потоку 8-битных слов-инструкций составляет

V_{I} = [(1+2)+(1+1)+ (4+1+6)+(1+1+2)+(1+1+3)]*F_{t} /8 = 25*F_{t} /8 = 3,125*F_{t},
а из 25 реально исполняемых в режиме интерпретации слов-инструкций полезной для пользователя является только одна операция замещения входных данных тест-данными.

Евгений Акимов
Евгений Акимов

Добрый день!

 

Скажите, пожалуйста,планируется ли продолжение курсов по нанотехнологиям?

Спасибо,

Евгений