nedoPC-580 (SMP на 5 процессорах КР580ВМ80А)

Публичный форум для http://www.nedopc.org/nedopc

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24001
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

ntil wrote:скорее всего тут Вы правы - таки рекомпилинг, хотя думаю там банальный микрокод тоже может иметь место.
имхо банальный микрокод
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24001
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Этапы программирования этого 4-процессорного монстра:
- процессоры выполняют независимые программы (например мигают светодиодами);
- один процессор берёт на себя функции системного, общаясь с клавиатурой и дисплеем, а другие считают свои задачи - возможна связь через общую память;
- поверх общей памяти реализуем разнообразные примитивы межпроцессного взаимодействия - очереди сообщений, мьютексы, каналы ввода-вывода;
- добавляем кооперативную многозадачность (процессов может быть больше чем процессоров);
- добавляем вытесняющую многозадачность и контроль зависонов (аппаратный вачдог).
Я тут за главного - если что шлите мыло на me собака shaos точка net
ntil
Novelist
Posts: 42
Joined: 09 Aug 2012 04:05
Location: 91.213.33.6

Post by ntil »

Меня волнует то, как прикладные задачи ограничить в возможностях навредить, при этом оставив им воозможность коммуницировать с ядром. причем желательно с вменяемыми накладными расходами.
User avatar
MC68k
Retired
Posts: 1328
Joined: 25 Jul 2011 00:14
Location: WWW

Post by MC68k »

ntil wrote:Меня волнует то, как прикладные задачи ограничить в возможностях навредить, при этом оставив им воозможность коммуницировать с ядром. причем желательно с вменяемыми накладными расходами.
записать ядро в ПЗУ(не флэш)
ntil
Novelist
Posts: 42
Joined: 09 Aug 2012 04:05
Location: 91.213.33.6

Post by ntil »

не гибко. наложить запрет на запись через устройство защиты памяти - это уже обсуждалось. суть не в этом.
суть в том как разрешить коду ядра (в системной странице) делать что-то , но при этом запретить делать это-же коду приложения находящемуся в других сегментах.
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Аппаратный регистр номера процессора + ветвление в общем коде?
Last edited by HardWareMan on 05 Jan 2014 07:00, edited 1 time in total.
b2m
Devil
Posts: 906
Joined: 26 May 2003 06:57

Post by b2m »

ntil wrote:суть в том как разрешить коду ядра (в системной странице) делать что-то , но при этом запретить делать это-же коду приложения находящемуся в других сегментах.
Сам же ответил на свой вопрос :)
Делаем очень просто: при обращении процессора к системной странице включать порты, при обращении к не системной - выключать. А чтобы не было соблазна использовать код системной страницы для доступа к портам, оставить в начале (или конце) только векторы переходов, а остальное включать точно также как и порты, после обращения к системной странице. А лучше - всего один вектор перехода, а то вдруг адрес перехода совпадёт с кодом команды OUT :) Ну или контролировать как-то на этапе разработки безопасность векторов перехода.
Страничка эмулятора наших компьютеров
http://bashkiria-2m.narod.ru/
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

ntil wrote:Меня волнует то, как прикладные задачи ограничить в возможностях навредить, при этом оставив им воозможность коммуницировать с ядром. причем желательно с вменяемыми накладными расходами.
А меня волнует, что мы такие замечательные теоретики!... :roll:

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

Я понимаю, что мы люди взрослые и занятые... А мы можем начать воплощать
наши мысли хотя бы на какой-то модели?

Вон у меня есть модель 4-бит ЦПУ, и хотя я ничего не пишу в ветке 4-бит - я к ней
обращаюсь: попробую очередное решение - не понравится - отложу...
Так бы и здесь... "возбудились" - попробовали, глянули - хорошо ли, плохо ли...
У нас вот и пакет симуляции логики есть с "живым Z80"... нет?

А то есть такое впечатление - мы некоторые выкладки повторяем по 3-му, 4-му кругу... :(
iLavr
User avatar
VituZz
God
Posts: 1343
Joined: 13 Nov 2010 04:06

Post by VituZz »

Мы просто приятно проводим время в общении. А это тоже немало в наше время. Работы всем хватает на работе... :D

Учитывая достаточную сложность предмета, маловероятно появление действующей модели, не говоря уже о железе. Почитав доступную литературу по этому вопросу, для себя я понял, что о параллельных вычислениях в классическом понимании лично мне можно просто забыть. Достаточно почитать, что пишет по этому поводу уже упоминавшийся мною здесь Э.Реймонд, его доводы показались мне более чем убедительными. Поэтому моё видение нашей многопроцессорной системы: совокупность отдельных процессоров, полностью независимых, без общей памяти, со своими портами ввода-вывода, своим ПЗУ. Процессоры (вернее сказать - процессорные модули или контроллеры) могут быть неравноправны или специализированы под какую-либо задачу и должны обмениваться друг с другом сообщениями. Разумеется, такой подход имеет кучу недостатков, однако и достоинства ему присущи - достаточно лёгкая отладка и масштабируемость схемы. Такой проект я нахожу вполне реализуемым в железе.

Реализация же классических параллельных вычислений со столь скромными аппаратными ресурсами, я уверен, нежизнеспособна. По крайней мере, при числе процессоров до десяти моя модель будет более производительна (голословно, конечно! :D )
User avatar
Shaos
Admin
Posts: 24001
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

А я всё-таки верю в сильносвязанную модель ;)
Потом этих 4-процессорных монстриков можно объединять в сетку - это как раз не проблема
По поводу параллельного программирования - я реально пишу многопоточные программы с 1997 года (начинал с кооперативной многозадачности в Win3.1 и продолжаю уже с аля-POSIX тредами, мьютексами и т.д.) и знаю как это заставить работать без дедлоков :)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

VituZz wrote:Мы просто приятно проводим время в общении. А это тоже немало в наше время.
Работы всем хватает на работе... :D
Да я понимаю! Я же не предлагаю всем бросить всё и начать копать траншею
отсюда и до обеда? :lol:
Просто приятное общение можно совместить с не менее приятными результатами...
Вся прелесть в том что обязательств нет у нас и сроков не установлено,
а это довольно продуктивно порой! Поскольку движет лишь удовольствие к
действию (или бездействию)... :wink:

Вон совершенно точно bar сказал:
Вчера вечером заняться было нечем, и я решил вспомнить что же за срака такая C++...
Ни убавить, ни прибавить! :D
VituZz wrote:Учитывая достаточную сложность предмета, маловероятно появление действующей модели,
не говоря уже о железе.
Виталий, ну я же не голословно это предлагаю... :( Я CEDAR Logic Simulator
сначала опробовал:

Image

У него 10 окон: в 4-х можем поставит по процессору с обвеской...
Остальных окон нам должно для всего остального за глаза хватить!
Simulator чисто логический, а значит - быстрый. Чтобы убыстрить "Протезус",
все модели надо указать как цифровые, а здесь - это по умолчанию...

На мой взгляд для наших затей CEDAR Logic Simulator гораздо более подходящий,
чем тот же Logisim 2.7.1.
И хотя я всё-равно остаюсь приверженцем "Протезуса", мне кажется, что
CEDAR Logic Simulator - вполне приемлем..

А если у нас действительно всё получится, проект можно будет модульным сделать.
Ты же сам делаешь неплохие компактные модули? Как говорится - было бы желание,
а сделать многое можно! :D
iLavr
User avatar
Shaos
Admin
Posts: 24001
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

CEDAR в Wine не работает (точнее работает криво - вместо иконок - черные квадратики)

P.S. в данном конкретном случае - симулятор логики не нужен, нужен просто эмулятор платформы - это я могу состряпать ровно за один вечер ибо ядро 8080 у меня уже давно написано и более одного проца я уже в одной программке эмулил ещё 15 лет назад:

Image
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shaos wrote:CEDAR в Wine не работает (точнее работает криво - вместо иконок - черные квадратики)
Ну я надеюсь, bar его для линуксоидов адаптирует... Иначе смысла
в разговоре нет.. :(

Не люблю симуляторы в эмуляторах... :-?
iLavr
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shaos wrote:в данном конкретном случае - симулятор логики не нужен, нужен просто эмулятор платформы - это я могу состряпать ровно за один вечер ибо ядро 8080 у меня уже давно написано и более одного проца я уже в одной программке эмулил ещё 15 лет назад:

Image
Мы это читали и видели много страниц назад*... (не полезу искать ссылку)...
Только воз с тех пор не сдвинулся... :(

Никто не знает на чем это написано, как этим пользоваться, да и нет стремления
возложить всё на тебя - ибо непродуктивно...

Симулятор - более естественный, доступный и привычный всем процесс:
"спаял схему", написал для неё программу...
Ну по крайней мере мне так кажется...

А экзотика - она и есть экзотика... даже твоя... :-?


* 24 Июня 2011 - год назад нам Shaos показывал это же кортинко,
утверждая что ему неинтересно...
Вот я и говорю, что некоторые вещи повторяются по 3-4-му разу уже!
Не пора ли хоть на моделях переходить к практике?
8)
Last edited by Lavr on 12 Aug 2012 08:36, edited 1 time in total.
iLavr
User avatar
Shaos
Admin
Posts: 24001
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Lavr wrote:
Shaos wrote:CEDAR в Wine не работает (точнее работает криво - вместо иконок - черные квадратики)
Ну я надеюсь, bar его для линуксоидов адаптирует... Иначе смысла
в разговоре нет.. :(

Не люблю симуляторы в эмуляторах... :-?
и всё-таки твой CEDAR в этом конкретном топике - скорее оффтоп :roll:

у него из процов только Z80 и тот не 100% сэмулён...
Я тут за главного - если что шлите мыло на me собака shaos точка net