Архитектура машин управляемых потоком данных



бет8/9
Дата16.10.2023
өлшемі0,54 Mb.
#185870
түріРеферат
1   2   3   4   5   6   7   8   9
Байланысты:
prorobot.ru-19-0101

Пакеты операций


над структурами



Рис. 11. Устройство хранения и обработки структур.




3.1. Постановка и реализация задачи


З адание: разработать машину потоков данных реализующую функцию:

, если bi>50

, иначе

Разработаем алгоритм работы программы (рис.12):

1

2

3

4

5

6

7

8

9

10

11

T

T

T

T

F

F

T

Рис. 12. Блок-схема алгоритма программы.

Словесное описание алгоритма:
Для нахождения значений заданной функции необходимо пройти 10 циклов, так как i принимает значения от 0 до 9. На начальном этапе (в первом блоке) i присваивается значение 0, из чего следует, что это 1 цикл алгоритма, второму блоку передаётся i=0. На следующем такте i сравнивается с i командой Jump Equal, в результате в 3 блок передаётся флаг True (так как i всегда будет равно i), а в 10 блок посылаются данные i. На третьем такте проверяется условие bi>50, если ДА – на 4, 5 и 7 блоки подаётся флаг True, иначе – на 6 и 8 – False; здесь же i сравнивается с 9 командой Jump Equal or Lesser: если i<=9 – на 11 блок подаётся флаг True и данные i, если i>9 – на 9 блок флаг False, из чего следует, что программа прошла все 10 тактов. На четвёртом такте i увеличивается на 1 и передаётся в блок 2 для прохождения следующего цикла, а также высчитывается очередное значение ai через блоки 4, 5 и 7 или 6 и 8.


3.2. Реализация программы на машине потоков данных

Р еализуем данную программу:



1


MOV

2

N




1

i

C




1

0

2


JE

3,9

N







i

N







i

3


JG

4,5,6,7,8

T







bi

C




1

50

4


MUL

6(1)

T







bi

T







ci

5


DIV

6(2)

T







di

T







bi

6


SUB

вывод

T









T









7


SUB

8(1)

F







bi

F







ci

8


DIV

вывод

F









F







di

9


JEL

10,…

T







i

C




1

9

10


INC

2

T







i

C




1

1




3.3. Принцип работы устройства

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


Командные пакеты поступают в селекторную сеть в виде последовательности битов, то есть в последовательном коде. Процессорные элементы, находящиеся в каждом из селекторов и переключателей анализируют код операции пакета, по которому они определяют, к какому из блоков, выполнения операций или принятия решений, необходимо направить командный пакет. По мере продвижения командных пакетов по селекторной сети до процессорных элементов, происходит преобразование кода командного пакета из последовательного в параллельный во входных буферах процессорных элементов. Процессорный элемент получает пакет уже в параллельном коде, то есть весь сразу за один такт.
Процессорный элемент производит соответствующие операции и формирует выходной пакет, состоящий из операнда и адреса одного из получателей. Выходной пакет поступает в буфер, где происходит преобразование параллельного кода в последовательный для дальнейшего продвижения выходного пакета по распределительной сети.
В распределительной сети каждый из процессорных элементов, находящихся в селекторах и переключателях, анализирует адрес получателя и коммутирует сеть таким образом, чтобы командный пакет дошел до той или иной командной ячейки.
Функциональная схема потоковой машины изображена в Приложении №1.
Теперь рассмотрим каждый блок подробнее:
Командная ячейка.
Командная ячейка представляет собой набор регистров с параллельным входом и параллельным выходом (Приложение №2). Один регистр выделяется под код операции, два регистра - под два операнда, один регистр под флаги и пять регистров под адреса получателей. Также в ее состав входит комбинационная схема, собранная на логических элементах, которая анализирует, готова ли командная ячейка к выполнению (Приложение №4). Результатом анализа является бит готовности, который управляет выходным буфером, состоящий из 8 сдвиговых регистров с параллельным входом и последовательным выходом. Чтение регистров командной ячейки и запись в регистры буфера производится по управляющему сигналу, выдаваемому комбинационной схемой и синхронизируется сигналами от генератора тактовых импульсов, который рассмотрен ниже. Также содержится входной буфер, состоящий из двух восьмиразрядных сдвиговых регистров с последовательным входом и параллельным выходом, соединенных линиями связи со вторым и третьим регистром, которые содержат первый и второй операнд соответственно.
На регистр содержащий коды флагов приходят сигналы от управляющей сети, а также два бита от распределительной сети, то есть от блоков выполнения операций. Этими битами закодированы флаги готовности данных. От блоков принятия решений приходят вентильные флаги, кодирующиеся каждый одним битом. Вентильные коды закодированы следующим образом:
С – 00
N – 11
T – 01
F – 10
Так как вентильные коды C и N никем не пересылаются, а хранятся в самих командных ячейках, предложена следующая схема управления регистром, хранящим флаги и входным буфером. Схема собрана на логических элементах исключающее ИЛИ-НЕ, И, ИЛИ.
Селекторная, распределительная и управляющая сети.
Все вышеперечисленные сети состоят из селекторов и переключателей, каждый из которых представляет собой устройство.
Селектор (Приложение №6).
Селектор состоит из процессорного элемента, мультиплексора и восьми сдвиговых регистров с последовательной загрузкой и последовательной выгрузкой (буфер - Приложение №6). Селектор работает следующим образом. На одну из входных линий мультиплексора подается биты готовности данных от комбинационной схемы, определяющей готовность командной ячейки. Процессорный элемент тестирует каждую из линий мультиплексора, определяя, на какой из них подан бит готовности. Как только бит готовности установлен, процессор считывает первые 8 бит в последовательном коде, являющиеся кодом операции. Проанализировав считанный код, процессор выдает управляющий код на управляющий вход мультиплексора. По приходу кода мультиплексор коммутирует нужную входную линию на свой единственный выход для дальнейшего продвижения пакета в буфер. В буфере командный пакет может временно храниться. Таким образом, в сетях может одновременно продвигаться несколько пакетов без вероятности потери пакета.
Переключатель (Приложение №5).
Переключатель состоит из процессорного элемента, демультиплексора и восьми универсальных регистров с последовательной загрузкой и последовательной выгрузкой (буфер). Бит готовности поступает на единственный вход переключателя, сразу же, поступая в процессорный элемент. Таким образом, оповещая переключатель, что пакет имеется на входе. Процессор вырабатывает управляющие сигналы для регистров, разрешая последовательную запись в них входного пакета. Далее процессор разрешает последнему регистру считать параллельный 8-миразрядный код, содержащий код операции, либо адресат (в зависимости от типа сети). По анализу данного кода процессор вырабатывает управляющий код для демультиплексора, который коммутирует свой вход с одной из выходных линий, и разрешает сдвиг в регистрах буфера, что приводит к последовательному считыванию битов пакета.
П роцессорный элемент (Приложение №3).
Процессорный элемент состоит из процессора, демультиплексора, и множества расширителей портов. Последовательный код поступает во входной буфер, состоящий из сдвиговых регистров, преобразующих код из последовательного в параллельный. Таким образом, код поступает в процессорный элемент через расширители портов весь сразу за один такт. Процессор считывает код операции и два операнда. Произведя соответствующую операцию, он формирует выходной операнд. Для формирования выходного пакета процессору необходимо считывать с расширителей портов 8-миразрядные коды адресатов. Выходной пакет содержит 16 разрядов, первые 8 из которых – код адресата, а последние – код операнда. Выходной пакет поступает в распределительную или управляющую сеть для дальнейшего продвижения к командным ячейкам.
Источник опорной частоты.


Рис. 13. Схема подключения источника опорной частоты.

На рисунке 13 изображена схема подключения источника опорной частоты. В данном случае в качестве него выступает кварцевый резонатор 6 МГц. Как видно на схеме через конденсатор С3 к схеме подключен вход ОМЭВМ SR – вход системного сброса. Данное подключение позволяет сформировать сигнал системного сброса при включении питания.


Общий сброс ОМЭВМ осуществляется благодаря наличию встроенного триггера Шмитта и соединенного с источником питания +5В резистора. Они в сочетании с внешним конденсатором емкостью 1мкФ, подключенным к выводу SR, обеспечивают при включении ОМЭВМ импульс системного сброса низкого уровня достаточной длительности для гарантированной установки в исходное состояние всех цепей.




Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет