nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 16 Apr 2024 09:52



Reply to topic  [ 413 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 28  Next
nedoPC-580 (SMP на 5 процессорах КР580ВМ80А) 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
То есть, если я правильно понял, симметричная мультипроцессорная система
на К580 (или пусть Z80) не имела известных решений в России.
(За исключением соединения двух "Специалистов" по методу Шурика... :lol:

Хорошо, что я сам не взялся делать такое, хотя представлялось мне довольно
просто - отдельные процессоры со своей памятью и один процессор сверху,
с программой супервизором, который всё организует и распаралелит. Был
только один сложный вопрос - кто мне ОСь напишет...)
Но
Shaos wrote:
Многие структуры и решения для такой системы уже давно сложились и продумались в моей голове - еще с десяток лет назад

Может поделишься мыслями, уважаемый? :wink:


22 Feb 2011 13:22
Profile
God

Joined: 02 Jan 2006 02:28
Posts: 1390
Location: Abakan
Reply with quote
Post 
Супервизор не обязательно выделять, это как бы больше в задачи ОСи входит.
Из достаточного: монопольная память на каждый проц в одном окне проецирования + общая память в другом окне проецирования. Теоретически можно использовать для любого количества процессоров, но с увеличением будет падение эффективности использования общей памяти, причем, навскидку - в геометрической прогрессии.
Подразумеваем, что видеоконтроллера нет, или он зацеплен на монопольную память одного из процессоров.
Можно сделать и полностью общее поле памяти, но тогда частота обращения к оной будет кратна количеству процессоров, при этом неизбежны конфликты на шине, что отрицательно скажется на пиковой производительности как каждого процессора, так и системы в целом.

Реализаций симметричных систем на 580 и z80 не встречал.
Сам делал некое подобие на mcs51 с выделенным арбитром и связью по последовательной шине. Задачка была специфическая по входным данным.


22 Feb 2011 23:02
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
2_jdigreze

В теории я тоже неплохо всё представляю и книжки вумные на этот повод читал. :wink:
Но взглянуть на что-то "живое", покопаться в нём - это обычно стократ
полезнее, на мой взгляд...


23 Feb 2011 10:59
Profile
God

Joined: 02 Jan 2006 02:28
Posts: 1390
Location: Abakan
Reply with quote
Post 
Lavr wrote:
Но взглянуть на что-то "живое", покопаться в нём - это обычно стократ полезнее, на мой взгляд...
Согласен! Я пока свое чудо-юдо о 4-х процах не собрал, тоже много чего недопонимал. Да и сейчас в принципе не специалист по многопроцессорности.


23 Feb 2011 21:02
Profile
Banned
User avatar

Joined: 20 Mar 2005 13:41
Posts: 2141
Location: От туда
Reply with quote
Post 
Я в своем SpecSVGA юзаю быструю статику. Она на 1/4 времени занята синхрогенератором. Т.е., 1/4 времени такта процессора память ему недоступна, но учитывая, что в эту часть времени оно ему и не надо, то он даже и не замечает. Я думаю, что используя данную технологию я могу зацепить 2 ВМ80 на одну память с абсолютным прозрачным арбитражем. Если увеличить скорость ОЗУ в 2 раза а такты процессоров сместить по фазе - то 4 процессора. ;) Да, я такой. :3
Чисто теоретически. Если взять шлюзовый сегмент в 64КБ (W24512-15), у нее время доступа 15нс, но можно удвоить для совместимости. Т.е. 30нс. Это означает примерно 33МГц. Если запустить ВМ80 на 2,5МГц (как бы ему больше и не осилить), то 2 проца это 5МГц, 4 проца это 10МГц, а 8 процов - это 20МГц. 20МГц это 50нс, что длиннее наших 30 с запасом. В итоге, делаем циклогенератор так, чтобы F2 у каждого процессора был строго в своей фазе (20МГц разделить на 8 фаз), а ОЗУ разрешать (гейтить) к каждому процессору на переднем фронте F2 с учетом его RD/WR (т.е., когда F2 0=>12, ОЗУ должно уже устаканить свой адрес и быть готово к обращению). Все, каждый процессор будет работать независимо, на своей частоте и не мешать другим (ну кроме содержимого ОЗУ). Останется только одному из процессоров подсунуть буткод и вывесить сбросы всех процов на регистр контроля. Хотя, если у каждого из процессоров сделать выделенный порт статуса, откуда он мог бы считать свой номер, то буткод мог бы быть общим в 0, и первым делом считывал бы свой номер а потом согласно номеру прыгал бы на свою ветку. Так-то! Дискасс!


Last edited by HardWareMan on 05 Jan 2014 07:12, edited 2 times in total.



23 Feb 2011 21:43
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
HardWareMan wrote:
Да, я такой. :3 :wink:

Да ты прям просто маладесс! Но как говорит один мой знакомый телемастер:
и мы люди неглупые, и мы книжки читаем, и мы знаем, как троллейбус работает,
одного не поймём - как бензин по проводам течёт... :wink:
И чем у тебя 4 процессора управляются? ОСь какая? Или 4 монитора от "Специалиста" справятся?


23 Feb 2011 21:53
Profile
Banned
User avatar

Joined: 20 Mar 2005 13:41
Posts: 2141
Location: От туда
Reply with quote
Post 
Lavr wrote:
HardWareMan wrote:
Да, я такой. :3 :wink:

Да ты прям просто маладесс! Но как говорит один мой знакомый телемастер:
и мы люди неглупые, и мы книжки читаем, и мы знаем, как троллейбус работает,
одного не поймём - как бензин по проводам течёт... :wink:
И чем у тебя 4 процессора управляются? ОСь какая? Или 4 монитора от "Специалиста" справятся?

Ну я без сарказма говорил. Я просто описал возможный арбитраж памяти, который исключает конфликты и такты ожидания на шине. Уверен, что и для Z80 можно сделать то же самое. Только изза его 2хфронтовом обращении количество процессоров наверное будет меньшим для той же по производительности памяти.


Last edited by HardWareMan on 05 Jan 2014 07:13, edited 1 time in total.



23 Feb 2011 22:02
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
HardWareMan wrote:
Ну я без сарказма говорил.

И я без сарказма. Варианты схемотехники в книжках приводятся. В этом проблем
сильных вроде как нет. Но как ты задачу распараллелишь программно -
вот что интересно?!
И Шаос молчит что-то о своих древних задумках...

PS.
HardWareMan wrote:
Если запустить ВМ80 на 2,5МГц (как бы ему больше и не осилить)

На 3,5МГц он пахал не чихая в "Корвете". В керамике (военная приёмка)
были сведения и до 4МГц его гнали. Дело в теплоотводе...


23 Feb 2011 22:09
Profile
Banned
User avatar

Joined: 20 Mar 2005 13:41
Posts: 2141
Location: От туда
Reply with quote
Post 
Lavr wrote:
PS.
HardWareMan wrote:
Если запустить ВМ80 на 2,5МГц (как бы ему больше и не осилить)

На 3,5МГц он пахал не чихая в "Корвете". В керамике (военная приёмка)
были сведения и до 4МГц его гнали. Дело в теплоотводе...

Мы говорим про экземпляры для простых смертных, не?


Last edited by HardWareMan on 05 Jan 2014 07:13, edited 1 time in total.



23 Feb 2011 22:18
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
HardWareMan wrote:
Мы говорим про экземпляры для простых смертных, не?

Все микросхемы без буквы "К" - военной приемки. Посмотри - мож и у тебя
такие микрухи валяются. "К" - признак ширпотреба... Да:3 :wink:

Но это не сподвигает нас к распараллеливанию задач...


Last edited by Lavr on 23 Feb 2011 22:47, edited 1 time in total.



23 Feb 2011 22:24
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22519
Location: Silicon Valley
Reply with quote
Post 
ну для круглого счёта можно ведь и 10 процов забабахать ;)

а управлять ими будет просто - в особенности если они друг-другу не мешают и чётко знают где чей кусок памяти и куда можно лезть, а куда нельзя

_________________
:dj: https://mastodon.social/@Shaos


23 Feb 2011 22:28
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Shaos wrote:
а управлять ими будет просто

Ну поскольку наблюдаю за тобой устойчивую манеру облекать мысли в коды,
рассказал бы что-нибуть на простом примере... :wink:
(Имеем в виду 580 и Z80 где встроенных механизмов нет)


23 Feb 2011 22:35
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22519
Location: Silicon Valley
Reply with quote
Post 
дык имея шареную память - можно сымитировать любые способы межпроцессного взаимодействия - хоть евенты, хоть каналы, да всё что угодно!

_________________
:dj: https://mastodon.social/@Shaos


23 Feb 2011 22:43
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
Shaos wrote:
можно сымитировать любые способы межпроцессного взаимодействия

Ну давай что-нибуть простое рассмотрим, если есть. Я такого опыта просто
не имею - но интересно!
Тем более - сколько лет тема кисла... :wink:

2_HardWareMan

А может поставить в твоём "Спеце" Z80 и К580 рядом? Это тебе схемотехники
не испортит - а тут попробуем мультипроцессорный софт?


Last edited by Lavr on 24 Feb 2011 00:09, edited 1 time in total.



23 Feb 2011 22:51
Profile
Banned
User avatar

Joined: 20 Mar 2005 13:41
Posts: 2141
Location: От туда
Reply with quote
Post 
Lavr wrote:
2_HardWareMan
А может поставить в твоём "Спеце" Z80 и К580 рядом? Это тебе схемотехники не испортит - а тут попробуем пультипроцессорный софт?

Если бы не синхрогенератор - то легко. Хотя, чисто теоретически, я могу сдвинуть ВМ80 во 3/4, где у Z80 нет дел. Тогда можно и одновременно. :3 Т.е., у памяти 4 слота, 1 для синхрогенератора, 1 для ВМ80 (у него все циклы одинаковые) и 2 для Z80 (из-за его особенности хавать опкод и данные по разным фронтам).
Касаемо мультипроцессорного кода я тебе скажу, что опыт имеется. На Сеге. :3


Last edited by HardWareMan on 05 Jan 2014 07:13, edited 1 time in total.



23 Feb 2011 23:48
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 413 posts ]  Go to page Previous  1, 2, 3, 4, 5 ... 28  Next

Who is online

Users browsing this forum: No registered users and 14 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.