Реконфигурация » History » Version 15
« Previous -
Version 15/23
(diff) -
Next » -
Current version
krufter_multiclet, 07/11/2014 04:54 PM
Реконфигурация¶
Введение
Мультиклеточное ядро — это группа идентичных процессорных блоков(2 и более), объединенных полносвязной однонаправленной коммутационной средой.
Процессорный блок в мультиклеточной архитектуре называется клеткой. Набор команд, который она может выполнять определяется конкретной реализацией и не зависит от архитектуры.
Т.к. код не зависит от количества клеток, которым он будет исполняться, появляется способность мультиклеточного ядра к распределению своих вычислительных ресурсов во время работы, при этом управление происходит программно.
Способность мультиклеточной архитектуры перераспределять свои ресурсы мы называем — реконфигурацией. Например, клетки мультиклеточного ядра могут быть, как угодно распределены для выполнения какого-либо алгоритма или его части. Группа (лучше названия пока не придумали) — это часть клеток мультиклеточного ядра, которые связаны между собой для выполнения какого-либо алгоритма или части алгоритма. В группе может находиться 1 и более клеток. Когда мультиклеточное ядро разделяет группу на части — это называется декомпозиция. Процесс объединения в группу — композиция.
На рисунке С0 - С3 это клетки. Картинка не совсем корректна, т.к. показаны трансформации не за один процесс реконфигурации.
В ближайшее время поправлю.
Больше теории по архитектуре можно почитать тут http://habrahabr.ru/post/226773/
Теория
Реконфигурация — способность клеток процессора к композиции (сбор) и декомпозиции (разбор) по группам, т.е. возможность клеток объединяться в группы от одной клетки и до N(для N клеточного процессора) и выполнять свой участок кода. По умолчанию при старте любой программы все клетки находятся в одной группе. Стоит отметить, что у каждой группы появляется свой набор РОНов, индексных, управляющих регистров, можно назначить свой обработчик прерываний.
Для совершения операций по реконфигурации клеток используются два системных регистра: NEWADDR, ICR.Рассмотрим регистр NEWADDR:
Регистр предназначен для формирования адреса перехода на следующий параграф для группы клеток.
номер бита | 63...36 | 35 | 34 | 33 | 32 | 31...0 |
описание | резерв | C0 | C1 | C2 | C3 | NEWADDR |
В битах C0-C3 необходимо отметить клетки группы для которых назначается адрес перехода.
NEWADDR - адрес параграфа на который будет переход выбранной группы.
Регистр предназначен для формирования групп клеток.
номер бита | 63...36 | 35 | 34 | 33 | 32 | 31...4 | 3 | 2 | 1 | 0 |
описание | резерв | C0_Г | C1_Г | C2_Г | C3_Г | резерв | C0 | C1 | C2 | C3 |
В битах C0_Г - C3_Г необходимо отметить клетки формируемой группы.
В битах С0 - С3 необходимо выставить соответствующим клеткам группы разрешение работы.
Примечание: важно заметить, что если будет выставлена "1", например в поле C0_Г, а в поле С0 будет
установлено значение "0", то клетка будет полностью отключена до следующей перезагрузки процессора.
Поэтому в большинстве случаев значение С0_Г - С3_Г совпадает со значение битов C0 - C3
Реконфигурация в принципе состоит из двух при декомпозиции и трёх параграфов при композиции:
1) В первом параграфе необходимо выставить в PSW биты 7,8 для группы клеток с которыми необходимо провести операции
композиции и декомпозиции.
- Бит 7 системного регистра PSW позволяет группе клеток заявить о готовности к реконфигурации.
- Бит 8 системного регистра PSW запрещает выборку следующего параграфа, пока не выполняться команды текущего параграфа.
1+) При композиции необходимо сделать для группы которую мы присоединяем ещё один параграф без адреса перехода.
2)Во втором параграфе необходимо сформировать группы клеток и назначить адреса перехода для каждой новой группы.
Т.е. выбрали группу для реконфигурации, сформировали новые группы и задали адреса. Затем новые группы независимо друг от друга пойдут
по своим параграфам. При это у каждой группы появится своя набор РОНов, управляющих регистров, обработчиков прерываний и т.д.
Но при этом любая группа клеток может беспрепятственно обращаться к памяти или периферии.
Декомпозиция
Группы клеток могут быть разделены на новые группы. При это у новых групп клеток будет свой набор РОНов, управляющих регистров, обработчиков прерываний и т.д, но значения РОНов, управляющих регистров сохранится от группы клеток от которой они отделились.
Композиция
Группы клеток могут быть объединены в новую группу. При это те клетки, которые были присоединены к текущей группе из которой и проходил процесс
композиции приобретут полный набор РОНов, управляющих регистров, обработчиков прерываний и т.д от группы клеток к которой они присоединились.
Особенности реконфигурации
В первых двух ревизиях процессора R1 присутствуют некоторые особенности процесса реконфигурации:
Запрещено за один процесс реконфигурации отделить часть клеток от одной группы и присоединить к другой.
Примеры