|
7.2. Архитектура роботаСхема робота как связной системы процессоров, элементами которой являются операционные и запоминающие устройства, а связи показаны в виде линий, снабженных стрелками, указывающими возможные направления передачи информации, называется схемой архитектуры робота. Архитектура робота - наиболее укрупненное описание его физической структуры, но необходимое при его разработке как определенный этап проектирования. Приведу некоторые фрагменты схем архитектуры, которые нам знакомы по материалам гл. 5 на уровне коллективов алгоритмов. Рис. 7.1. Два процессора, связанных буфером, допускающим только чтение Два процессора, связанных буфером, допускающим только чтение, изображены на рис. 7.1. Сигнальных ячеек в данном случае буфер не содержит. Оба ОУ могут из него читать, лишь бы это было только технически возможно. О таких тонкостях, как техническая возможность обращения двух ОУ к одному и тому же ЗУ, я в этой книге рассказать не имею возможности и упоминаю о ней только, чтобы не вызвать раздражения у специалистов. Аббревиатура СЗУ означает "собственное ЗУ". Рис. 7.2. Два процессора, связанных буфером, регулируемым предикатами и содержащим сигнальную ячейку Б' На рис. 7.2 показаны два процессора, связанных буфером, регулируемым предикатами. Сигнальная ячейка на этом рисунке выделена в отдельный схемный элемент (?'). Рис. 7.3. Процессор, ведущий очередь, связанный с тремя процессорами-клиентами На рис. 7.3 приведен фрагмент схемы архитектуры робота, на котором показан процесс ведения очереди между тремя процессорами-клиентами. Этот процессор ведет очередь в своем СЗУ и связан сложной системой сигнальных ячеек с процессорами-клиентами. Становясь в очередь, ш клиент записывает код "1" в сигнальную ячейку ci и ожидает появления номера i в сигнальной ячейке х0. Получив тот ресурс, за которым он стоял в очереди, и использовав его, i-й клиент записывает код 0 в ячейку х0. Подробно ведение очереди описано в гл. 5. Рис. 7.4. Два процессора, связанные 'полуоткрытым' буфером (без регулирующих предикатов) Схема связи двух процессоров полуоткрытым, не регулируемым предикатами буфером показана на рис. 7.4. Один процессор может как писать в буфер, так и читать из него, а другой - только читать. Более сложная схема этого вида, в которой функциональный процессор генерации времени связан со многими ОУ, приведена на рис. 7.5, на этом рисунке генератор времени во все буферные ячейки пишет одно и то же. Каждый "клиент" считывает время только из одной ячейки буфера. Рис. 7.5. Возможная схема связи генератора времени со многими процессорами На рис. 7.6 показана схема так называемого вентиля - устройства, с помощью которого процессор 7 может изменять направление процесса, протекающего в процессоре 2; легко видеть, что схема вентиля является частым случаем фрагмента, показанного на рис. 7.4. В ней буфер сводится к одной сигнальной ячейке. Если процессор 1 является процессором ввода, то вентиль а для преобразователя информации будет представлять собой открытый буфер. Рис. 7.6. Схема 'вентиля', с помощью которого процессор 1 может влиять на направление процесса, протекающего в процессоре 2 Фрагмент схемы архитектуры робота, на котором показан процессор пассивного внимания, изображен на рис. 7.7. ОУ процессора пассивного внимания считывает содержимое регистра прерываний (являющегося сигнальном ЗУ), обрабатывает его в своем С ЗУ и с помощью вентилей αi, где i = 1, 2, ..., n, вносит нужные изменения в процессы, выполняемые другими процессорами. Рис. 7.7. Архитектурный фрагмент 'пассивного внимания' На рис. 7.8 показан фрагмент схемы архитектуры, изображающий так называемую точку синхронизации двух процессов. Иногда точка синхронизации служит для того, чтобы избежать схватывания при наличии двух буферов, связывающих два процессора, иногда же ее используют для перераспределения ячеек между двумя СЗУ и буфером, так что распределение запоминающих устройств становится динамическим. Суть точки синхронизации заключается в следующем. Приближаясь к этой "точке", процессор 1 записывает в ячейку с1 код "1" и ждет выполнения условия "с1 = 1 и с2 = 1". Точно так же процессор 2 в ячейку с2 записывает код "1" и ждет выполнения того же условия. Дождавшись, первый в с1 а второй в с2 пишут код "О" и продолжают свои процессы. До начала работы обоих процессоров должно бытье c1 =0 и с2 =0. Рис. 7.8. Архитектурный фрагмент 'точка синхронизации' В этом и предыдущем параграфах мы определили общий подход к любому дискретному роботу, позволяющий рассматривать его как систему взаимно-связанных процессоров. Пользуясь таким подходом, мы можем при создании роботов применить так называемый системный принцип. |
|
|||
© ROBOTICSLIB.RU, 2001-2019
При копировании материалов проекта обязательно ставить ссылку на страницу источник: http://roboticslib.ru/ 'Робототехника' |