Дико извиняюсь что влажу, но на вопрос "что они в двоём будут делать?" за последние 10 лет еще ни кто не дал ответа.
Вид для печати
Еще была такая приставка имени Бортника.
К БК подключался ВМ3 и доп. память.
0) Просто ради спортивного интереса.
1) Каждый процессор мог бы рисовать свою половину экрана в новых компьютерных играх. (Которых вряд ли больше 3-х штук появится в этом тысячелетии, пока не изобретут полностью автоматический рекомпилятор)
2) Можно было бы запустить еще одну программу параллельно стандартной. Отладчик например. (Только подерутся они из за того, что разделение адресного пространства между программами не предусмотрено).
Интереснее для начала подключать ОЗУ экрана не напрямую к шине, а через специальный "контроллер окна", чтобы обращения видео-контроллера к ОЗУ экрана не блокировали шину.
Следующий шаг - возможность настройки контроллера окна на отключение видео-ОЗУ из окна и подключение в окно другой общей памяти всех шин.
vinxru
0) это понятно ;)
1) даст ли это реальный прирост производительности и примерно с каким коэффицентом?
2) конечно можно сделать второй проц диспетчером первого, но тогда это действительно будет разговор о другом комплексном решении, т.е. новом ПК.
Правильнее, наверное, сказать не "требуют память", а "ждут память".
Процессору ВМ1 требуется для непосредственного исполнения команд примерно в 10 раз меньше времени, чем для загрузки из ОЗУ их кодов и операндов. Поэтому практически всё время выполнения типовых команд занимает ожидание памяти.
Скажите мне что в Вашем понимании многопроцессорный БК? Это комп переделанный таким образом чтоб на нем запустилась адаптированная к нему RSX-11M-plus или просто байда непонятного содержания такая как УКНЦ или то что подключалось через TUBE интерфейс в Acorn BBC model B (процессоров вроди как и 2 но никакой симметрии нету а значит воспользоваться ресурсом с точки зрения OS очень не просто)
---------- Post added at 03:12 ---------- Previous post was at 03:11 ----------
Там основной процессор отключался да?
Я ничего не знаю про RSX-11M-plus, поэтому ничего не смогу сказать по этому поводу. Многопроцессорная БК - это еще один процессор полностью идентичный первому и работающий с той же памятью и с теми же устройствами.
---------- Post added at 09:42 ---------- Previous post was at 08:54 ----------
А нафига тогда производители говорили о возможности подключения 4-х процессоров? Если уже 2-ой процессор добавляет лишь 15% производительности. Третий и четвертый процессоры (почти) никогда не получат доступа к шине.
---------- Post added at 09:47 ---------- Previous post was at 09:42 ----------
Я тут нашел твои страшные осциллораммы
http://em-api.narod2.ru/add/scope_1a_2a/scope_1_2d.html
Судя по линии BSY времени для второго процессора действительно не остается.
---------- Post added at 10:08 ---------- Previous post was at 09:47 ----------
И еще вопрос. Смотрю на осциллограмму процессора и не понимаю, как оно работает
http://s019.radikal.ru/i612/1203/ba/37ba4f63790e.jpg
(Голубая линия) Процессор устаналивает на шину адрес.
(Желтая линия) Прижимает линию SYNC, что вызывает загрузку адреса в ОЗУ (и т.п.)
(Зеленая линия) Прижимает линию DIN, говоря ОЗУ, что хочет прочитать данные.
Но на шине еще несколько тактов будет находится адрес. То есть процессор не отпустил шину, а уже попросил ОЗУ дать отчет.
Потом ОЗУ прижимает линию RPLY, типа всё готово.
(Фиолетовая линия) На шине данных возникает ответ ОЗУ. Уже после сигналов DIN, RPLY.
А дальше процессор отпускает DIN, память отпускает RPLY, процессор отпускает SYNC и BSY.
P.S. Выходит, что память процессору нужна только между сигналами DIN-RPLY. Процессор дал сигнал DIN. Мы подключаем память к этому процессору. Память дает сигнал RPLY и по этому сигналу мы производим запись ответа памяти во внешний регистр. И освобождаем память. Ей может пользоваться другой процессор.
Хитрость диаграмм в том, что шины адреса/данных двунаправленные и тот, кто выставляет на них уровни - совершенно не беспокоится о том, чтобы быть единственным "поставщиком" информации для шины. Поэтому, значительный процент времени процессор и память выставляют биты на линии адреса/данных "лоб в лоб" - каждый свои.
Осциллограф же не может знать "откуда пришли биты" и показывает лишь суммарный сигнал на каждой исследуемой линии шины.
Однако, никакой путаницы не возникает за счёт выполнения несложных правил протокола обмена:
1. Процессор не должен выставлять на шину адрес до выставления BSY.
2. После выставления процессором SYNC - устройство может выставлять данные.
3. После выставления процессором DIN - устройство может выставлять RPLY.
4. До снятия с шины сигналов адреса - процессор не должен читать с шины данные.
5. До завершения чтения данных - процессор не должен снимать DIN.
6. До снятия устройством RPLY - процессор не должен снимать BSY.
---------- Post added at 10:43 ---------- Previous post was at 10:40 ----------
Шина блокируется сигналом BSY. До снятия BSY устройством, захватившим шину - ни одно другое устройство не может её использовать.
---------- Post added at 10:55 ---------- Previous post was at 10:43 ----------
И ещё один момент - на приведённой выше диаграмме показан цикл обращения процессора ВМ1 к своим внутренним регистрам, проецируемым на шину. Мы наблюдаем это процесс "с обратной стороны" буферного регистра шины, поэтому ( прямо как в теории относительности Эйнштейна ) нам кажется, что данные отстают от RPLY :)
На самом деле диаграмма чтения слова из памяти ( в данном примере - из ПЗУ ) выглядит так:
http://s1.hostingkartinok.com/upload...fd0d59acb0.png