Коммутация данных и разрядность процессора
Методы и задачи коммутации
Два и более конечных пунктов сети могут соединяться выделенной линией, если между ними все время осуществляется связь с постоянной скоростью передачи. В этом случае выделенная линия соединяет два конечных пункта по двухточечной схеме. В случае многоточечного подключения абонентов к выделенной линии ее ресурсы используются в режиме разделения. Это осуществляется при помощи разных методов коммутации данных.
Под коммутацией данных понимается их передача, при которой канал передачи данных может использоваться попеременно для обмена информацией между различными пунктами сети в отличие от связи через некоммутируемые каналы, обычно закрепленными за определенными абонентами.
Например, в сети на рис.4.1 узлы 2 и 4, непосредственно друг с другом не связанные, вынуждены передавать данные через транзитные узлы, в качестве которых могут использоваться, например, узлы 1 и 5. Узел 1 должен выполнить передачу данных с интерфейса А на интерфейс В, а узел 5 — с интерфейса F на В.
Последовательность транзитных узлов (сетевых интерфейсов) на пути от отправителя к получателю называется маршрутом.
В самом общем виде задача коммутации – задача соединения конечных узлов через сеть транзитных узлов -может быть представлена в виде нескольких взаимосвязанных частных задач:
- определение информационных потоков, для которых требуется прокладывание пути;
- определение маршрутов для потоков;
- сообщение о найденных маршрутах узлам сети;
- продвижение – распознавание потоков и локальная коммутация на каждом транзитном узле;
- мультиплексирование и демультиплексирование потоков.
Рис. 4.1. Коммутация абонентов через сеть транзитных узлов
Определение информационных потоков. Понятно, что через один транзитный узел может проходить несколько маршрутов, например через узел 5 проходят данные, направляемые узлом 4 каждому из остальных узлов, а также все данные, поступающие в узлы 3, 7 и10. Транзитный узел должен уметь распознавать поступающие на него потоки данных, чтобы обеспечивать их передачу именно на те свои интерфейсы, которые ведут к нужному узлу.
Информационным потоком называют последовательность данных, объединенных набором общих признаков, который выделяет эти данные из общего сетевого трафика.
Понятие потока используется при решении различных сетевых задач, и в зависимости от конкретного случая, определяется соответствующий набор признаков. При определении потоков в роли обязательных признаков потока, очевидно, должны выступать адрес отправителя и адрес назначения данных. Тогда каждой паре конечных узлов будет соответствовать один поток и один маршрут.
Определить потоки— это значит задать для них набор отличительных признаков, на основании которых коммутаторы смогут направлять потоки по предназначенным для них маршрутам.
Определить маршрут — однозначно задать последовательность транзитных узлов и их интерфейсов, через которые надо передавать данные, чтобы доставить их адресату.
После того, как маршрут определен, следует «сообщить» о нем всем устройствам сети. Сообщение о маршруте должно нести каждому транзитному устройству примерно такую информацию: «Если придут данные, относящиеся к потоку n, то нужно передать их на интерфейс F».
Оповестить сеть о найденных маршрутах — это значит вручную или автоматически настроить каждый коммутатор таким образом, чтобы он «знал», в каком направлении следует передавать каждый поток.
Когда сеть оповещена о маршрутах, она может начать выполнять свои функции по соединению или коммутации абонентов. Для каждой пары абонентов эта операция может быть представлена совокупностью нескольких (по числу транзитных узлов) локальных операций коммутации.
Термины коммутация, таблица коммутации и коммутатор в телекоммуникационных сетях могут трактоваться неоднозначно. Мы уже определили термин коммутация как процесс соединения абонентов сети через транзитные узлы. Этим же термином мы обозначаем и соединение интерфейсов в пределах отдельного транзитного узла. Коммутатором в широком смысле слова называется устройство любого типа, способное выполнять операции переключения потока данных с одного интерфейса на другой.
Коммутатором может быть как специализированное устройство, так и универсальный компьютер со встроенным программным механизмом коммутации, в этом случае коммутатор называется программным. Компьютер может совмещать функции коммутации данных, направляемых на другие узлы, с выполнением своих обычных функций конечного узла. Однако во многих случаях более рациональным является решение, в соответствии с которым некоторые узлы в сети выделяются специально для выполнения коммутации. Эти узлы образуют коммутационную сеть, к которой подключаются все остальные. На рис4.2 показана коммутационная сеть, образованная из узлов 1, 5, 6 и 8, к которой подключаются конечные узлы 2, 3, 4, 7, 9 и 10.
Коммутационная сеть
Рис. 4.2. Коммутационная сеть
Мультиплексирование и демультиплексирование. Как уже было сказано, прежде чем выполнить переброску данных на определенные для них интерфейсы, коммутатор должен понять, к какому потоку они относятся. Эта задача должна решаться независимо от того, поступает ли на вход коммутатора только один поток в «чистом» виде, или «смешанный» поток, который объединяет в себе несколько потоков. В последнем случае к задаче распознавания добавляется задача демультиплексирования.
Задача демультиплексирования (demultiplexing) — разделение суммарного агрегированного потока, поступающего на один интерфейс, на несколько составляющих потоков.
Как правило, операцию коммутации сопровождает также обратная операция — мультиплексирование.
Задача мультиплексирования (multiplexing) — образование из нескольких отдельных потоков общего агрегированного потока, который можно передавать по одному физическому каналу связи.
Операции мультиплексирования/демультиплексирования имеют такое же важное значение в любой сети, как и операции коммутации, потому что без них пришлось бы все коммутаторы связывать большим количеством параллельных каналов, что свело бы на нет все преимущества не полносвязной сети.
Частный случай коммутатора (рис. 4.3а), у которого все входящие информационные потоки коммутируются на один выходной интерфейс, где мультиплексируются в один агрегированный поток и направляются в один физический канал, называется мультиплексором (multiplexer, mux). Коммутатор (рис.4.3), который имеет один входной интерфейс и несколько выходных, называется демультиплексором.
Рис 4.3. а) – мультиплексор и б) – демультиплексор
Среди множества возможных подходов к решению задачи коммутации абонентов в сетях выделяют следующие методы коммутации данных:
- коммутация каналов;
- коммутация сообщений;
- коммутация пакетов.
Коммутация каналов – осуществляет соединение двух или более станций и обеспечивается монопольное использование канала передачи данных до тех пор, пока соединение не будет расторгнуто;
Коммутация сообщений — характеризуется тем, что создание физического канала меду оконечными узлами необязательно и пересылка сообщений происходит без нарушения их целостности; вместо физического канала имеется виртуальный канал, состоящий из физических участков, и между участками возможна буферизация сообщения;
Коммутация пакетов – сообщение передается по виртуальному каналу, но оно разделяется на пакеты, при этом канал занят только на время передачи пакета (без нарушения его целостности ) и по ее завершении освобождается для передачи других пакетов.
Микропроцессорная секция
Микропроцессорная секция, аббревиатура МПС; также, многокристальный секционный микропроцессор — большая интегральная схема (БИС), предназначенная для обработки нескольких разрядов данных или выполнения определенных управляющих операций.
Секционность БИС микропроцессора определяет возможность наращивания разрядности обрабатываемых данных или усложнения устройств управления микропроцессором при параллельном включении большего числа БИС.
Однокристальные микропроцессоры представляют собой реализацию всех аппаратных средств процессора в виде одной БИС/СБИС. Учитывая тот факт, что возможности однокристальных микропроцессоров ограничены аппаратными ресурсами кристалла и корпуса, получили распространение многокристальные микропроцессоры, а также многокристальные секционные микропроцессоры.
Многокристальный микропроцессор образуется путём разбиения логической структуры микропроцессора на функционально законченные блоки (деление «по горизонтали»), которые реализуются в виде БИС/СБИС. Функциональная законченность БИС многокристального микропроцессора означает, что его части выполняют заранее определенные функции и могут работать автономно, а для построения развитого процессора не требуется организации большого количества новых связей и каких-либо других электронных ИС БИС. (Пример — серия К581).
Микропроцессорная секция по сути является частью схемы процессора, получаемая при делении «по вертикали», что позволяет формировать систему необходимого уровня сложности (в простейшем случае — увеличить разрядность) из набора секций-элементов. Пример для построения готовых систем — К589ИК02 и К1804ВС1.
Однокристальные и трехкристальные БИС микропроцессоров обычно изготовляют на основе микроэлектронных технологий униполярных полупроводниковых приборов, а БИС МПС — на основе технологии биполярных полупроводниковых приборов.
Два способа коммутации данных в процессоре
Передача данных во все эти узлы не вызывает особых проблем, поскольку все их входы, предназначенные для загрузки в них данных, можно подключить к любому участку основного тракта данных, например выходу сдвигателя. А вот передача информации из этих узлов в тракт данных процессора представляет некоторую сложность из-за невозможности соединения выходов. Решить эту проблему можно одним из двух способов. Первый способ состоит в том, чтобы оснастить выход сдвигателя, а также выходы всех этих узлов буферными схемами с тремя состояниями выхода и синхронизировать их работу так, чтобы в нужный момент времени только один узел мог передавать данные. Тогда образуется внутренняя шина данных процессора.
Другой способ состоит в том, чтобы на каком-либо из участков тракта данных, разместить дополнительный селектор с несколькими входами, к каждому из которых подключен один из этих дополнительных узлов. Выбор нужного входа в этом случае позволит выбирать, из какого именно узла мы хотим получить данные.
Если все предыдущие рассуждения можно было в той или иной степени отнести к любому процессору, то теперь настала пора определиться с основными характеристиками нашего процессора, т.е. сформулировать, что же мы хотим в итоге получить. Одно дело, если мы хотим получить простой и компактный процессор с низким энергопотреблением, и совсем другое, если требуется получить максимум производительности и функциональных возможностей, который только можно получить в рамках реалистичного масштаба. Определившись в этом выборе, мы сможем ответить на два основных вопроса – какова будет разрядность процессора, и какова будет структура его системы команд. А от этого будет зависеть, как именно мы будем дальше строить схему процессора.
Разрядность процессора
Разрядность процессора определяется тем, сколько разрядов данных обрабатывает АЛУ процессора за один прием. Соответственно, другие узлы процессора в основном должны иметь такую же разрядность. Хотя это и не всегда справедливо. К примеру, для восьмиразрядных процессоров. Если восьмиразрядное АЛУ вполне позволяет, пусть и не очень быстро, но все же выполнять почти любые вычисления, то восьмиразрядный счетчик команд или регистр адреса шины сделает этот процессор бессмысленным, поскольку ограничит адресное пространство 256 адресами. Поэтому в восьмиразрядных процессорах счетчик команд и регистр адреса шины должны иметь как минимум 16 разрядов, что позволяет расширить адресное пространство до 64 килобайт. Кроме того, восьмиразрядное слово не позволяет описать всю систему команд в рамках одного слова и возникает множество команд, состоящих из нескольких байт. Поэтому восемь разрядов – оптимальный выбор для экономичных компактных процессоров с невысокой производительностью.
Шестнадцатиразрядные процессоры – промежуточное решение, не имеющего в настоящее время широкого распространения. Для экономичных такие процессоры уже великоваты, а адресное пространство у них такое же небольшое, как и у восьмиразрядных.
Наиболее универсальны 32-разрядные процессоры, поскольку обычно обладают вычислительной мощностью и адресным пространством, позволяющим решать большинство практических задач. К тому же, 32-разрядное слово предоставляет максимум удобств при разработке системы команд процессора.
64-разрядные процессоры, и процессоры большей разрядности, пока что являются избыточными для большинства приложений, и в основном представляют собой устройства для специальных применений.