Смекни!
smekni.com

Методические указания по микропроцессорным системам (стр. 12 из 14)

Рис. 6.1. Базовая архитектура КСНК

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

Типичным представлением КСНК являются транспьютеры, которые предназначены для построения МКМД-структур. Рассмотрим логическую структуру транспьютера на примере типичного представления этого класса МП – транспьютере Inmos T414, структурная схема которого приведена на рис. 6.2.

Транспьютер Т414 представляет собой 32 – разрядный микропроцессор, в состав которого входят центральное процессорное устройство с архитектурой КСНК, внутрикристальное ЗУПВ емкостью 2 Кбайт, четыре быстродействующих последовательных канала связи и таймер с разрешающей способностью 1 мкс. Внутренняя архитектура транспьютера соответствует фон-неймановским принципам, т.е. включает единую шину адресов и данных, связывающих ЦПУ со встроенной и внешней памятью.

Рис. 6.2. Структура транспьютера Т414

В транспьютере Т414 используются простые 8-битовые базовые команды, но могут быть созданы и многобайтовые. Используемые регистры и способы пересылки данных между ними указываются в команде неявным образом.

Как видно из рис. 6.2, транспьютер Т414 имеет мультиплексируемую 32-разрядную шину внешней памяти с диапазоном физических адресов 4 Гбайт. Дополнительная память может иметь различную конфигурацию, причем возможно включение в ее состав одновременно и быстродействующих, и медленных устройств. Предусмотрены сигналы регистрации динамических ЗУПВ. Скорость пересылки данных по шине внешней памяти может достигать 25 Мбайт/с.

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

Каждый последовательный канал состоит из двух частей, служащих для передачи информации в противоположных направлениях. Пересылка производится со скоростью 10 или 20 Мбит/с, причем каждому байту предшествуют два единичных бита, а завершает передачу один ненулевой бит. После передачи байта данных пославший его транспьютер ожидает получения двухбитового подтверждающего сигнала, указывающего на то, что принимающий транспьютер готов к получению следующих данных. Возможен обмен информацией между независимо тактируемыми системами, если частоты тактирования одинаковы.

Для сопряжения каналов транспьютера с нетранспьютерными устройства-ми и интерфейсами связи предусмотрен ряд интегральных адаптерных схем: микросхемы адаптеров последовательного канала С011 и С012, групповой переключатель шин С004.

Транспьютер может быть использован в качестве отдельного самостоятельного устройства, обеспечивающего производительность 10 млн. оп/с; при этом для программирования используется широкий набор стандартных высокоуровневых языков, так как архитектура транспьютера ориентирована на эффективное применение компилятора.

Для полной реализации возможности объединения транспьютеров в сети или матрицы при построении высокопроизводительных систем применяется язык ОККАМ, позволяющий максимальным образом использовать свойства транспьютеров, ориентированные на распараллеливание обработки. Транспьютер выполняет ОККАМ-процесс до тех пор, пока у него не возникнет необходимость получить дополнительную информацию от других процессоров или в нем не сформируется информация, которая должна быть использована другим процессором. В этих ситуациях транспьютер останавливает свой процесс, запоминает указатель процесса и переводит процесс в режим ожидания. После этого процессор продолжает работу с другими процессами, пока не поступает информация, требуемая для первого процесса. Если процесс реализуется на нескольких транспьютерах, каждый из них продолжает работу до тех пор, пока не окажется готовым к передаче информации, а затем пребывает в состоянии ожидания до момента, когда соответствующий принимающий транспьютер будет готов к получению этой информации. После этого осуществляется пересылка данных и продолжается выполнение программы.

Транспьютер Т414 был доступен потребителю в 1985 году и представлял собой 32-разрядную машину с памятью емкостью 2 Кбайт.

Аналогичная 16-разрядная СБИС Т212 содержит ЗУПВ емкостью 2 Кбайт и четыре быстродействующих последовательных канала связи, но имеет лишь 16-разрядную шину адресов/данных, что ограничивает диапазон прямоадресуемой памяти емкостью 64 Кбайт. Этот тип транспьютера обеспечивает возможность реализации интерфейса, ориентированного на подключение дисковой памяти в соответствии со стандартом ST506 и нескольких других интерфейсных стандартов.

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

Версия 32-разрядного транспьютера, предназначенная для обработки данных с плавающей запятой и имеющая обозначение Т800, включает внутрикристальную память емкостью 4 Кбайт, четыре последовательных коммуникационных канала, скорость передачи по которым может достигать 20Мбит/с, и встроенный процессор с плавающей запятой, работающий параллельно с ЦПУ. При работе на тактовой частоте 20 МГц быстродействие транспьютера Т800 может достигать 1,5 Мфлопс, когда обрабатываются 32-битовые данные, и 1,1 Мфлопс, когда обрабатываются данные с форматом 64 бит, т.е. превышает 5-10 раз быстродействие Т414. Разновидность Т800, имеющая частоту тактирования 30 МГц, имеет быстродействие 2,25 Мфлопс.

Так как транспьютеры создавались как механизм для параллельной обработки больших массивов информации в системах типа МКМД, области применения его довольно широки. Это задачи теплопроводности, математической физики, обработка метеорологических данных, геодезия, цифровая обработка сигналов, распознавание образов, задачи фильтрации и т.п.

Контрольные вопросы

1. Дайте понятие RISС-процессора, поясните организацию структуры и особенности работы.

2. Назначение SISC-процессоров.

3. Приведите логическую структуру транспьютера.

4. Перечислите области применения RISC-процессоров и транспьютеров.

7. СРЕДСТВА РАЗРАБОТКИ И ОТЛАДКИ МПС

7.1. Автономная и комплексная отладка МПС

Автономная отладка МПС заключается в отладке аппаратуры и отладке программ.

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

Отладка программ МПС проводится, как правило, на тех же ЭВМ, на которых велась разработка программ, и на том же языке программирования, на котором написаны отлаживаемые программы. Она может быть начата на ЭВМ даже при отсутствии аппаратуры МПС. При этом в системном ПО ЭВМ должны находиться программы (интерпретаторы и эмуляторы), моделирующие функции отсутствующих аппаратурных средств.

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

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

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

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

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