Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   БК-0010/0011 (http://zx-pk.ru/forumdisplay.php?f=59)
-   -   Давайте впаяем в БК0010 еще один процессор. (http://zx-pk.ru/showthread.php?t=18567)

vinxru 22nd March 2012 02:05

Давайте впаяем в БК0010 еще один процессор.
 
Говорят, что процессоры ВМ1 крайне легко объединяются в многопроцессорный компьютер. Почему бы не попробовать добавить еще один процессор в БК0010.

По команде программы можно было бы сбрасывать второй процессор (ну и задавать IP ему).

Patron 22nd March 2012 12:15

Главная проблема здесь в том, что все основные команды процессор ВМ1 выполняет со скоростью доступа к памяти. Поэтому прибавка быстродействия от второго процессора на типовых командах будет такой же, как и от функции предвыборки команд в процессоре ВМ2 - порядка 15%.

---------- Post added at 10:15 ---------- Previous post was at 10:10 ----------

Чтобы многопроцессорная система на процессорах типа ВМ ( т.е. таких, у которых почти всё время выполнения команды занимают циклы доступа к памяти ) могла быть эффективной - она должна быть многошинной, с возможностью переключать страницы памяти между шинами и "контроллером окна", таким, что содержимое окна доступно всем процессорам, но обращения к окну по чтению-записи не блокируют шины остальных процессоров.

Примерно так ( если не ошибаюсь ) взаимодействуют два процессора ВМ2 в УКНЦ.

vinxru 22nd March 2012 12:40

Понятно.

Значит процессор 8080 более предрасположен к многопроцессорной работе. Там можно 4 процессора вешать на одну шину и они не будут мешать друг другу. (Процессор выполняет обмен с шиной по перепаду тактового импульса. Если сдвинуть тактовые импульсы процессоров на 25% и поставить мультиплектор, то процессоры будут работать прозрачно друг для друга.)

Возможно так же можно сделать и на 1801ВМ1, но это уже будет совсем другой компьютер. Сложно слишком, что бы пробовать.

---------- Post added at 10:40 ---------- Previous post was at 10:38 ----------

Quote:

Originally Posted by Patron (Post 483300)
Примерно так ( если не ошибаюсь ) взаимодействуют два процессора ВМ2 в УКНЦ.

Если я не ошибаюсь, доступ к общей видеопамяти разделен по времени. 25% времени к ней имеет право обращаться первый процессор, 50% времени второй процессор, а 25% времени происходит формирование видеосигнала.

Titus 22nd March 2012 13:08

Quote:

Originally Posted by vinxru (Post 483318)
Если я не ошибаюсь, доступ к общей видеопамяти разделен по времени. 25% времени к ней имеет право обращаться первый процессор, 50% времени второй процессор, а 25% времени происходит формирование видеосигнала.

Нет, не так. 50% на формирование экрана, а 50% на нужды обмена с памятью, причем вся память - это видеопамять, но - 1/3 видеопамяти находится в ОЗУ ПП, а 2/3 видеопамяти находится в ОЗУ ЦП, и каждый из процессоров может писать в свою часть видеопамяти независимо и одновременно с другим. А вот доступ ПП к ОЗУ ЦП, осуществляемый через регистровый механизм, очевидно, подтормаживает работу ЦП в этот момент.

vinxru 22nd March 2012 13:24

Quote:

Originally Posted by Titus (Post 483341)
и каждый из процессоров может писать в свою часть видеопамяти независимо и одновременно с другим.

Что то у меня в голове все перепуталось. Надо схемы посмотреть. Не получается (у меня в голове) из 24-х микросхем РУ5 сделать: 64 Кб 16-бит, 32 Кб и 96 Кб.

Titus 22nd March 2012 13:28

Quote:

Originally Posted by vinxru (Post 483352)
Что то у меня в голове все перепуталось. Надо схемы посмотреть. Не получается (у меня в голове) из 24-х микросхем РУ5 сделать: 64 Кб 16-бит, 32 Кб и 96 Кб.

Поле ЦП - 128Кб, 16-битный доступ. Поле ПП - 64Кб - 8-битный доступ.

vinxru 22nd March 2012 13:33

1) ЦП 128 Кб 16 бит. При этом ЦП имеет доступ к только к половине из 128 Кб?
2) ПП 64 Кб 8 бит. При этом ПП имеет доступ только в половине из 64 Кб?
3) А бедный видеоадаптер, должен уметь асинхронно обращаться к шинам обоих процессоров? Причем шина первого 16-битная, а вторая 8-битная.

Titus 22nd March 2012 13:37

Quote:

Originally Posted by vinxru (Post 483357)
1) ЦП 128 Кб 16 бит. При этом ЦП имеет доступ к только к половине из 128 Кб?
2) ПП 64 Кб 8 бит. При этом ПП имеет доступ только в половине из 64 Кб?
3) А бедный видеоадаптер, должен уметь асинхронно обращаться к шинам обоих процессоров? Причем шина первого 16-битная, а вторая 8-битная.

1) Напрямую да. К остальной части через регистры.
2) Напрямую да, к остальной части через гегистры. Кроме того, к окну, вместо части ПЗУ тоже напрямую, а к оставшейся части только на запись)
3) Шина ЦП 16-бит, шина ПП 16/8-бит, в зависимости от того, к какому устройству обращение. Если к ОЗУ, то 8 бит, если ПЗУ/Регистры, то 16-бит.

vinxru 22nd March 2012 13:43

Наверное видеоадаптеров с более мудреной выборкой не существует в природе (если не считать современных PCIE/AGP)

Alex_K 22nd March 2012 13:47

Quote:

Originally Posted by vinxru (Post 483357)
3) А бедный видеоадаптер, должен уметь асинхронно обращаться к шинам обоих процессоров? Причем шина первого 16-битная, а вторая 8-битная.

Во-первых видеоадаптер не обращается к шинам обеих процессоров, не имеет он доступа ни туда, ни сюда. Имеет он только доступ к ОЗУ обоих процессоров, причем абсолютно ко всему.
И во-вторых - никакой он не бедный, одновременно он является арбитром доступа к ОЗУ и соответственно наивысший приоритет для доступа к нему, а контроллеры адресного пространства процессоров, являющиеся по совместительству и контроллерами ОЗУ своих банков, обращаются к ОЗУ только по разрешению со стороны видеоадаптера. Вот как-то так.


All times are GMT +4. The time now is 02:36.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.