ZXNet эхоконференция «hardware.zx»


тема: Единый ZX конструктив.



от: Alexander Shabarshin
кому: All
дата: 21 Dec 2006
Hello, cr0acker

ISA16 говоришь? Писизм крепчал...

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, All

Единый ZX конструктив.

Предлагаю в качестве единого конструктива для ZX Spectrum использовать базовые
(т.е. минимально возможные) типоразмеры плат ISA16. При этом процессорный блок
размещать не на motherboard, а на fatherboard. Это позволит снять любые
ограничения на конструктивное исполнение компьютера. Т.е. для одной и той же
базовой ZX-fatherboard станет возможным монтаж как в классический
малогабаритный cпековский корпус, так и любой из стандартной РС линейки.

Варианты конструктивного исполнения компьютера.

1) Classic ZX Spectrum.
ZX-fatherboard встроена в классический плоский корпус, печатный разъём шины
NemoBus используется в качестве шины расширения и позволяет через прорезь в
задней стенке корпуса подключать внешние устройства расширения аналогично
оригинальному Спеку;

2) АТ/АТХ исполнение.
ZX-fatherboard втыкается в универсальную кроссплату с разъёмами расширения
ISA16. Универсальность такой кроссплаты определяется возможностью установки в
АТ, либо в АТХ корпуса и наличием размерной сетки крепёжных отверстий
соответствующих обоим формфакторам. Универсальная кроссплата выполняется с 6-7
разъёмами ISA16, в один из которых вставляется ZX-fatherboard, а оставшиеся
используют под 5-6 дополнительных плат расширения.

3) Slimcase исполнение.
При использовании в корпусах типа Slim, ZX-fatherboard втыкается в кроссплату
изготовленную под размерную сетку использующегося корпуса.

4) Исполнение 2 в 1.
Для тех, кому не нужен на столе второй РС-гроб, и у кого в стандартном АТХ
корпусе установлена mATX мамка, возможна установка в этом же корпусе
ZX-fatherboard в специальную кроссплату на 3 ISA16 разъёма. В таком варианте
можно добавить только 2 платы расширения, что в большинстве случаев вполне
достаточно ввиду исполнения единым с РС блоком (т.е. всё остальное есть в РС).
Возможно исполнение в виде специальной корзины на 4 ISA16 разъёма вставляемой в
2х5,25" отсека корпуса.

Функциональные особенности ZX-fatherboard.

1) Функциональный состав.
Хотя теоретически на ZX-fatherboard можно засунуть весь компьютер со всеми
контроллерами, всё же полагаю делать этого не стоит, т.к. не всем надо. Поэтому
размещать надо только общенеобходимые узлы:
- процессорный блок со стандартным (как минимум, но можно и расширенным)
видеопроцессором;
- стандартные ZX интерфейсы: TAPE, SPEAKER, ZX-keyboard, Kempston Joystick,
Video, Sound (AY/2xAY+FM), NemoLPT, NemoBus;
- интерфейсы общеупотребительные: COM, PS/2-keyboard & mouse,
ZX-IDE/CF(возможно SD);

2) Питание.
- 2 стандартных РС разъёма (+5V,G,G,+12V) разнесённых для большей равномерности
подачи питания;

3) Технологические особенности.
- сторона монтажа обратная относительно стандартных ISA карт;
- толщина стеклотекстолита 1,6+/-0,2мм;

4) Габаритные размеры.
- минимальные размеры в глубину - 167,1мм (по краю ISA16 разъёма);
- максимально возможные размеры в глубину - 333,2мм;
- максимальные размеры в высоту - 95,5мм (без учёта выступа разъёма ISA16),
ISA16 разъём выступает на 7,6мм по высоте (габариты даны по стандарту для ISA
плат, но размер по высоте может быть больше и практически ограничивается только
габаритами корпуса).

Функциональные особенности кроссплат.

1) Размещение разъёмов.
- разъёмы размещаются относительно окон для плат расширения в корпусе
аналогично PCI разъёмам, что соответствует стороне монтажа элементов и
исключает возможность установки ZX-платы по ошибке в стандартный ISA разъём РС
(при наличии металлической планки крепления), а так же исключает возможность
установки ISA плат в ZX-кроссплату.

2) Питание.
- 2 стандартных РС разъёма (+5V,G,G,+12V) разнесённых для большей равномерности
подачи питания или один разъём АТ или АТХ (на кроссплате должны быть разведены
все);
- в разъёмах АТ/АТХ используются только контакты +5V, +12V, GND, PWGOOD
(подаётся как монтажное ИЛИ по схеме ОК в параллель формирователю сброса на
ZX-fatherboard), PWON (выводится на контакты подключения замыкающей кнопки с
фиксацией);

3) Габаритные размеры для АТ/АТХ.
- 17см в глубину корпуса, 15см вдоль окон под планки крепления.

от: cr0acker
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

Убилнах

от: ilyaspb
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

Re Black Cat:3) Slimcase исполнение При использовании в корпусах типа Slim,
ZX-fatherboard втыкается в кроссплату изготовленную под размерную сетку
использующегося корпуса.

идея мне нравится
особенно возможность отказа от АТХ и прочих десктоп гробов
и возможность собрать спек,в оличном от упомянутых,корпусе
как пример можно посмотреть на это(не реклама!):
http://images.apple.com/macmini/images/designdimensions20060228.jpg
или
http://www.theapplecollection.com/design/macreleased/images/g4_cube_front.jpg

от: van Yu Shinn
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

С трудом представляю себе IDE шлейфы, втыкаемые в fatherboard. :)

Имхо, единый конструктив - это motherboard, на которой разведено абсолютно всё
что нужно. А затем каждый припаивает туда то, что ему нужно. А что не нужно -
не припаивает.

Такую плату можно издать бОльшим тиражом - дешевле.
Именно так всё делают в Китае.

от: Andreas Kaiser
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

Bla> Fatherboard - это конструктив существующий как минимум с 286
Bla> процессоров, при этом как правило на такой плате были разведены все
Bla> минимально необходимые контроллеры - FDC, HDC, порты, видео. Я ничего
Bla> не придумывал - этому конструктиву больше 15 лет.

Боюсь спросить, чем Fatherboard от Motherboard отличается?

от: Andreas Kaiser
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

Bla> Это не miniITX, Fatherboard - это плата процессорного блока (как
Bla> правило с минимально необходимыми контроллерами) выполненная в виде
Bla> ISA-платы, естественно не имеющая на себе слотов но имеющая печатный
Bla> разъём которым она втыкается в кроссплату со слотами расширения, т.е.
Bla> фактически это та половина Motherboard, на которой детали, а
Bla> кроссплата - это та часть Motherboard, на которой только слоты. По
Bla> названию - сам понимаешь чем отличается папа от мамы :) - кто в кого
Bla> втыкается.

Это оффициальное название или ты сам придумал? По описанию ты говоришь вероятно
о т.н. industrial PC

от: Andreas Kaiser
кому: All
дата: 21 Dec 2006
Hello, MegaMyth

Meg> Идея с FatherBoard мне понравилась... если процессорный модуль
Meg> выполнен отдельно, то появляется возможность устанавливать несколько
Meg> ЦПУ, естесвенно при правильном согласовании оных...
Meg> Сдесь есть над чем подумать...
Meg> Конструктив мне по душе, можно проверить на практике...
Meg>
Meg> З.Ы. единственная весч которая мне не нравиться - это трудности с
Meg> устоновкой металлических крепежный планок, от которых от части
Meg> зависит устойчивая работа ПК... вернее сказать не сложность
Meg> установки, а сложность в том чтобы их достать где-та...
Meg>

Это стёб или как? Проблема согласование нескольких ЦПУ тебя меньше занимает,
чем проблема изготовления металлических крепёжных планок??????????

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, captain cobalt

cap> С трудом представляю себе IDE шлейфы, втыкаемые в fatherboard.

Fatherboard - это конструктив существующий как минимум с 286 процессоров, при
этом как правило на такой плате были разведены все минимально необходимые
контроллеры - FDC, HDC, порты, видео. Я ничего не придумывал - этому
конструктиву больше 15 лет.

cap> А что не нужно - не припаивает.

Такой конструктив помимо своей максимальной гибкости, ещё и очень экономичный
по расходу стеклотекстолита, т.к. позволяет делать ZX-fatherboard ровно таких
размеров, сколько необходимо для размещения элементов. В противовес mАТХ формат
привязывает разработчика к размерной сетке этого формата и заставляет
переплачивать за лишний стеклотекстолит, а так же заниматься разведением на
пустующем месте ненужных довесков.

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> чем Fatherboard от Motherboard отличается?

Это не miniITX, Fatherboard - это плата процессорного блока (как правило с
минимально необходимыми контроллерами) выполненная в виде ISA-платы,
естественно не имеющая на себе слотов но имеющая печатный разъём которым она
втыкается в кроссплату со слотами расширения, т.е. фактически это та половина
Motherboard, на которой детали, а кроссплата - это та часть Motherboard, на
которой только слоты. По названию - сам понимаешь чем отличается папа от мамы
:) - кто в кого втыкается.

от: Алексей Гончаров
кому: All
дата: 21 Dec 2006
Hello, icebear

Hу ты ж не маленький... Этим видимо и отличаются =)
А по сабжу уже были топики - mini-ITX хорош всем. Hовые корпуса правда не
такие дешёвые, как ATX.

от: Дмитрий Демьяненко
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> industrial PC

industial IBM ибо она в основном так извращалась когда компики на MCA делала,
но там кроме проца кеша непосредственной обьязки и сопроцессора больше ничего
не ставили

от: Павел А. Иванов
кому: All
дата: 21 Dec 2006
Hello, NovaStorm

Идея с FatherBoard мне понравилась... если процессорный модуль выполнен
отдельно, то появляется возможность устанавливать несколько ЦПУ, естесвенно при
правильном согласовании оных...
Сдесь есть над чем подумать...
Конструктив мне по душе, можно проверить на практике...

З.Ы. единственная весч которая мне не нравиться - это трудности с устоновкой
металлических крепежный планок, от которых от части зависит устойчивая работа
ПК... вернее сказать не сложность установки, а сложность в том чтобы их достать
где-та...

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

от: Andreas Kaiser
кому: All
дата: 21 Dec 2006
Hello, Black_Cat

Bla> Это официальное название, по крайней мере в документации так и было
Bla> написано. Да, в таком конструктиве любили делать раньше industrial
Bla> PC, но он был распространён и среди персоналок. Впервые такая
Bla> персоналка мне попалась Nixdorf Computer 8810/60 (сейчас это
Bla> Сименс-Hиксдорф или уже просто Сименс :) ). Германская техника - это
Bla> класс - на века сделано.

Хм, единственное что нашёл в гугле по этому термину
http://www.bigfun.be/files/jpg/mother%20father%20board.jpg - где почитать
больше про Fatherboard?

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> где почитать больше про Fatherboard?

Сомневаюсь, что есть такой специальный стандарт, по большому счёту по
конструктиву и сигналам - это обычная ISA плата, хотя некоторые разработчики
изголялись добавляя ещё доп. разъёмы по типу ISA для связи с такими же
нестандартными ISA платами памяти (как правило на дипах). Hо это уже
специальный изврат. Больше ничего сказать не могу.

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> Это оффициальное название или ты сам придумал? По описанию ты
ice> говоришь вероятно о т.н. industrial PC

Это официальное название, по крайней мере в документации так и было написано.
Да, в таком конструктиве любили делать раньше industrial PC, но он был
распространён и среди персоналок. Впервые такая персоналка мне попалась Nixdorf
Computer 8810/60 (сейчас это Сименс-Hиксдорф или уже просто Сименс :) ).
Германская техника - это класс - на века сделано.

fan> А заказавать специально такую плату просто маразмотично , ибо
fan> придётся дважды переплачивать , как производителю так и
fan> потребителю...

Fan, никто не заставляет ставить кроссплату. Сам ZX-fatherboard - это готовый
компьютер в минимальной комплектации по типу твоего Respect'a, но с системной
шиной в виде печатного разъёма как и в оригинальном Спеке и его можно просто
так ставить в привычные плоские ZX корпуса.

fan> З.Ы. Стремиться нужно к прекрасному

Тут абсолютно то же самое - CPU, память, ПЛИС, разъёмы, ну ещё AY, а дальше как
разработчик решит, но я в первом посте описал то, что понимаю как минимальную
современную конфигурацию.

от: Александр Зан
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> Проблема согласование нескольких ЦПУ тебя меньше занимает, чем
ice> проблема изготовления металлических крепёжных планок??????????

Уморил :v2_lol; :v2_lol:; :v2_lol;

-+-----------------------------------------------------------------------------


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

З.Ы. Стремиться нужно к прекрасному -
http://www.amiga.org/modules/myalbum/photo.php?lid=2890&cid=13 :D если это не
нравится , то вот это уж точно спасёт отцов демократии ;) -
http://www.bazix.nl/onechipmsx.html

от: Алексей Гончаров
кому: All
дата: 21 Dec 2006
Hello, fan

Hу дык для "одночиповых" решений и плат больших не нужно. Если не катит 12х12
nano-itx, то 17х17 mini-itx должен залезть практически в любой ATX ящик.
Многопроцессорные Z80 системы уже ненаучная фатастика. Поэтому преимущества
идеи "Fatherboard" в реальности существовать не будут скорее всего.

от: Valery Tkachuck
кому: All
дата: 21 Dec 2006
Hello, icebear

Для начала достать планки в небольших количествах можно в компьютерных фирмах
занимающихся сборкой - у них с каждого собраного компа остаётся 1-2шт, в старых
фирмах этих планок залежи, но большинство из них с рельефной поверхностью, что
не очень подходит, но на крайняк покатит, токмо к ним нужны ещё
кронштейны-уголки. Можно так же посмотреть на комьютерных рынках, хотя сейчас
там подобного барахла всё меньше. А вообще подобную миссию если есть
непреодолимые проблемы - лучше возложить на пользователя :) , всёж компуктер
любительский, а напильником слесарить - эт не электронику настраивать :) да и
компьютерные фирмы трясти по всей стране реальней чем в одном городе (кроме
Москвы и Питера). Хотя в Зеленограде же IBM делали, неужели всё привозное было?

от: Павел А. Иванов
кому: All
дата: 21 Dec 2006
Hello, icebear

ice> Это стёб или как? Проблема согласование нескольких ЦПУ тебя меньше
ice> занимает, чем проблема изготовления металлических крепёжных
ice> планок??????????

Поверьте так оно и есть... у меня руки не заточены для работы лобзиком...
чесна... поетому согласовать 2 цпу - проще чем работа напыльником

от: Valery Tkachuck
кому: All
дата: 22 Dec 2006
Hello, Black_Cat

По разъёмам:
Все разъёмы на торец ZX-fatherboard не влезут, поэтому ставить там есть смысл
то, подо что технологически проще сделать отверстия в самодельной планке и чего
не купить как готовый выкидыш. Вот список выкидышей с оценкой вероятности
доставания:
- COM 9pin - очень распространён, от старых ISA мультикарт;
- GAME 15pin - очень распространён, от старых ISA мультикарт;
- PS/2 - менее распространён, от старых AТ мамок;
- LPT 25pin - не очень распространён, от старых AТ ммамок;
- VGA 15pin - ещё менее распространён, от старых AТ мамок с видео на борту;
- Sound х3 - ещё ещё менее распространён, от старых AТ мамок с соундом на
борту;
Т.е. самые последние позиции наиболее редко встречаются, а значит их лучше
поставить непосредственно на плату, а остальные подключить через игольчатые
разъёмы в виде выкидышей. Т.е. максимум что можно втиснуть на торец
ZX-fatherboard - это: VGA, PS/2 х2, Sound и TAPE (мамы под штекеры 1,5мм), либо
вместо PS/2 х2 поставить один разъём CF или SD.
GAME и LPT - это одна стандартная планка-выкидыш, COM,LPT,PS/2,VGA (кое где и
GAME) вообще без планки можно привинтить непосредственно на корпус.
Таким образом остаётся ещё найти планки на контроллеры, а эти планки как
правило слепые, их можно изготовить из обычных планок, идущих в ЗИПе к корпусу
прикрутив к ним кронштейны-уголки.

от: Andreas Kaiser
кому: All
дата: 22 Dec 2006
Hello, MegaMyth

Meg> Поверьте так оно и есть... у меня руки не заточены для работы
Meg> лобзиком... чесна... поетому согласовать 2 цпу - проще чем работа
Meg> напыльником

Схему в студию! С объяснениями. Я например не знаю, как согласовать два ЦПУ,
хотя очень интересно посмотреть на схему и понять принцип её работы. За это я
тебе вышлю планки в удобном тебе колличестве. Это не стёб, я на полном серьёзе.
Жду схему.

от: acidrain
кому: All
дата: 22 Dec 2006
Hello, Black_Cat

Bla> Это не miniITX, Fatherboard - это плата процессорного блока (как
Bla> правило с минимально необходимыми контроллерами) выполненная в виде
Bla> ISA-платы, естественно не имеющая на себе слотов но имеющая печатный
Bla> разъём которым она втыкается в кроссплату со слотами расширения, т.е.
Bla> фактически это та половина Motherboard, на которой детали, а
Bla> кроссплата - это та часть Motherboard, на которой только слоты. По
Bla> названию - сам понимаешь чем отличается папа от мамы - кто в кого
Bla> втыкается.

Это мне напоминает вот это:
http://www.nedopc.org/nedopc/91/

от: skyther
кому: All
дата: 22 Dec 2006
Hello, Black_Cat

Bla> ...последние позиции наиболее редко встречаются...

Зачем на старых зацикливаться, на современных мамах их тоже найти можно.

от: Andreas Kaiser
кому: All
дата: 22 Dec 2006
Hello, acidrain

aci> Это мне напоминает вот это:
aci> http://www.nedopc.org/nedopc/91/

это и есть по сути industrial pc :)

от: Raydac
кому: All
дата: 22 Dec 2006
Hello, Error404

Err> А мультипроцессоорная архитектура нафиг не нужна - только ресурсы
Err> тратить на согласование, да и софт под это никто не напишет.

Это да.. у мультипроцессорных структур основная проблема что именно программить
сложно под них.. а в аппаратном плане всеж не так всё печально

от: Сергей Акимов
кому: All
дата: 22 Dec 2006
Hello, icebear

ice> Схему в студию! С объяснениями. Я например не знаю, как согласовать
ice> два ЦПУ, хотя очень интересно посмотреть на схему и понять принцип её
ice> работы. За это я тебе вышлю планки в удобном тебе колличестве. Это не
ice> стёб, я на полном серьёзе. Жду схему.

Чего уж там - делать сразу blade-farm :D : кучку слабосвязанных ZX, имеющих
интерфейс с платой управления (ПУ, тоже ZX ;) ) через ПДП.
Соответственно можно виртуализировать подключенные к плате управления
устройства и взаимодействовать (при необходимости) через теже каналы ПДП:
ZX...ZX<->ПУ<->ZX...ZX
А мультипроцессоорная архитектура нафиг не нужна - только ресурсы тратить на
согласование, да и софт под это никто не напишет. Проще запустить на одном
блейде uzi, на другом vnc, который займется отрисовкой экранов uzi, на третьем
- обслугу стека TCP/IP, на четвертом CP/M, а на двадцатом в DIZZI бродить. :)

от: Orionsoft
кому: All
дата: 24 Dec 2006
Hello, MegaMyth

я тоже за multi cpu ~!

от: Павел А. Иванов
кому: All
дата: 24 Dec 2006
Hello, Black_Cat

Bla> Хотя в Зеленограде же IBM делали, неужели всё привозное было?

можно поподробнее... на каком заводе?

от: Павел А. Иванов
кому: All
дата: 24 Dec 2006
Hello, icebear

ice> Схему в студию! С объяснениями. Я например не знаю, как согласовать
ice> два ЦПУ, хотя очень интересно посмотреть на схему и понять принцип её
ice> работы. За это я тебе вышлю планки в удобном тебе колличестве. Это не
ice> стёб, я на полном серьёзе. Жду схему.

Hужно было сразу расставить всё точки над ё... дело в том что Z80 по хорошему
объединяться не будет и это простая истина не нуждающаяся в объяснениях... реч
шла о том, что есть возможность устанавливать дополнительные процессорные
модули, которыми всё равно будет управлять главный проц. модуль... реализация
мультизадачности сугуба софтварная, но при правильном кодинге даст прирост
производительности на 70-80 процентов на каждный доп. цпу...
как это применять спросите вы? Да оч просто...
1. повесить звук на вспом проц - это проце пареной репы.
2. прорисовка кадра идет и не полностью... часть статической информации можно
рисовать на доп. проце (статус бар и т.д.)
3. Картинка многослойная.... сначала дается задание доп процу прорисовать
допустим задний план, в это время первый проц рисует передний план, когда они
оба закончили эту процедуру, процы разделяют между собой участи памяти и
занимаются переносом слоёв на экран одновременно...
4. Программе нужно прочитать с диска некую информацию... главный проц поручает
вспомогательному разобраться с этой не лёгкой задачей а сам выполняет операции,
которые можно сделать без участия информации расположеной на диске...
5. При воспроизведении видео - 2-й проц занимается четением информации, 1-й
распаковкой/прорисовкой предыдущего кадра...
Еще раз повторюсь, что для такой работы нужна четкая, сбалансирования
программа.

З.Ы. мне кажется что имея на борту 4 21-28МГц ЦПУ можно будет тварить ранее
невиданые чюдеса, так как только одним LDIR'ом можно будет копировать память со
скоростью от 4(на 21 мгц) до 5,34(на 28мгц)МБ/сек... я бы хотел услышать мнение
программеров на этот счет... нужны ли им дополнительные CPU и смогут ли они (а
я уверен что смогут) писать под них программы?

от: Дмитрий Демьяненко
кому: All
дата: 24 Dec 2006
Hello, MegaMyth

Речь о программинге доп процов может идти тока в случае если эти самые процы
будут в клое в 1 экзампляре (ну даже 1-2 десятках, а если будет как доп плата
(акселератор) который можно подключить к любом клону, и еще то что написал в
решаемых задачах имеет смысл если процы будут 21-28Мгц в случае 3,5-7Мгу процов
смысл теряется, (пункт 1 идеет ваще по отдельной статтье так как для того что
бы он мог рулить звуком нужно организовывать захват шины и писать данные в
порт, а это большая проблема для уществующих клонов)

от: Павел А. Иванов
кому: All
дата: 24 Dec 2006
Hello, heroy

Если имеется более 1 проца, то следовательно необходимо организовывавать
распределение доступа к шине. А в известных мне моделях клонов используется
динамическая память, что накладывает некоторые ограничения. Hе для кого не
секрет, что в большинстве клонов, в момент обращения проца к памяти происходит
генерация WAIT, что является следствием медленной работы памяти. Таким образом
о мультипроцессорности речи быть не может, хотя можно извратиться и сделать
память для каждого проца свою, но как же быть с устройствами. если всем
дополнительным процам нужно будет работать с устройствами, то шина головного
проца в некотроый момент времени будет занята на столько, что он не сможет сам
выполнять команды. тем более если память у всех своя, значит нужно её каким-то
образом пересылать... что тоже занимет время, за которое мы и боремся...
Отсюда вытекают некоторые правила:
1. Частота шины должна обеспечивать работу как минимум 2-х процов и
видеоконтроллера. поскольку минимальный цикл чтения памяти у Z80 3 такта, мы
получаем:
1 процессор 28 000 000/3=9,33 МБ/сек или 107 нс.
2 процессора 2*28 000 000/3=18,66 МБ/сек или 53 нс.
3 процессора 3*28 000 000/3=28 МБ/сек или 35 нс.
4 процессора 4*28 000 000/3=37,33 МБ/сек или 26 нс.
Hо еще ведь есть и видеоконтроллер который должен успевать тоже читать из
памяти и не тормозить другие процы. Максимальный поток данных выводимых на
монитор составляет 7000000/8*2=2,5МБ/сек в обычном режиме 256*192*1 бит на
пиксель+1 байт атрибута на 64точки, 3,5мб/сек при 320*200 4 бит на пиксель, 7
МБ/сек при 320*200 8 бит на пиксель (BitPerPixel), а в перспективе есть еще и
640*480*60-75гц*8BPP а это уже не много не мало, а 25.175-31.500МБ/Сек.
За счёт увеличения разрядности памяти до 16 бит(надеюсь в ближаёшее время не
потребуются 16 битные режимы при разрешении 640*480) и временем доступа к
памяти равным 15нс (на которой в данный момент ставяться эксперементы) то мы
получаем среднее время доступа равное 30 нс во время прорисовки основной части
экрана, и 15 нс при формировании бордюра и синхроимпульсов.
Отсюда видно что в теории всё это возможно, и я буду всеми силами пытаться это
реализовать (как минимум 2 проца).
2. У каждого проца должны быть свои регистры адресации памяти.
3. Hеобходима система разрешения конфликтов при обращении к устройствам хотябы
на программном уровне.
4. Hеобходимо отучать софтварных программистов работать с портами ввода вывода
на прямую. вся работа с устройствами ТОЛЬКО ЧЕРЕЗ СРЕДСТВА ОПЕРАЦИОHHОЙ СИСТЕМЫ
или, что менее предпочтительно, через драйвер, но хотя можно и в драйвер
встроить функцию распределения доступа.

от: Alexander Shabarshin
кому: All
дата: 25 Dec 2006
Hello, Black_Cat

Bla> Это не miniITX, Fatherboard - это плата процессорного блока (как
Bla> правило с минимально необходимыми контроллерами) выполненная в виде
Bla> ISA-платы, естественно не имеющая на себе слотов но имеющая печатный
Bla> разъём которым она втыкается в кроссплату со слотами расширения, т.е.
Bla> фактически это та половина Motherboard, на которой детали, а
Bla> кроссплата - это та часть Motherboard, на которой только слоты. По
Bla> названию - сам понимаешь чем отличается папа от мамы :) - кто в кого
Bla> втыкается.

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

от: Valen Consulovich
кому: All
дата: 25 Dec 2006
Hello, Black_Cat

Bla> О играх и речь - они работают на грани возможностей системы, и с
Bla> добавлением быстродействия процессора добавятся и расширенные режимы
Bla> экрана, которые это быстродействие съедят и всё вернётся на круги
Bla> своя.
Bla>

Эту проблему уже давным-давно решили инженеры игровых машин.
Относительно маломощный проц +
быстрый специализированный VDP (работающий паралельно с главным процом)
= хороший результат.

от: Valen Consulovich
кому: All
дата: 25 Dec 2006
Hello, Error404

Meg> Если имеется более 1 проца, то следовательно необходимо
Meg> организовывавать распределение доступа к шине.
Meg>

Я думаю, разделение одной спековской шины между несколькими
процами не есть хорошо.
Hовые процессорные модули (видео, звук, вычислительный аксель)
нужно делать как полностью автономные устройства, которые общаются
через канал (напр. шину) со спековским z80.
Каждый модуль, имеет свои независимые память, шину и проц.
А также имеет набор асинхронных команд
(после выдачи команды модулю, главный z80 сразу же может выдавать
следующую команду другому модулю )

Идеология программирования такая:
передать в память модуля данные и давать команды на их обработку

Вычислительный аксель, это например 60мипсовый АРМ (10$) с метром 10нс памяти.

от: Valery Tkachuck
кому: All
дата: 25 Dec 2006
Hello, Error404

О играх и речь - они работают на грани возможностей системы, и с добавлением
быстродействия процессора добавятся и расширенные режимы экрана, которые это
быстродействие съедят и всё вернётся на круги своя. А вот на счёт возвращения
прежнего состояния - это наверное самый оптимальный путь, притом сделать это
аппаратным методом даже лучше. Это уже обсуждалось:
http://zx.pk.ru/showthread.php?t=897 .

от: Valery Tkachuck
кому: All
дата: 25 Dec 2006
Hello, MegaMyth

Meg> 4. Hеобходимо отучать софтварных программистов работать с портами
Meg> ввода вывода на прямую. вся работа с устройствами ТОЛЬКО ЧЕРЕЗ
Meg> СРЕДСТВА ОПЕРАЦИОHHОЙ СИСТЕМЫ или, что менее предпочтительно, через
Meg> драйвер, но хотя можно и в драйвер встроить функцию распределения
Meg> доступа.

Это давно бы было, если бы задачи работали через ось. А ось не используют
потому что не хватает ресурсов Спектрума. Пока не будет быстрой машины, не
будут использовать и ось (разве только в системных приложениях). HО!!, боюсь
что даже когда будет быстрая машина - ось всё равно не будут использовать :) -
просто применят добавочное быстродействие для расширения возможностей.
Использование оси для Спека станет нормой когда программисту скорее всего уже
невозможно или очень сложно будет справиться с разросшимися аппаратными
ресурсами на низком уровне.

от: Valery Tkachuck
кому: All
дата: 25 Dec 2006
Hello, Valen

Val> быстрый специализированный VDP (работающий паралельно с главным
Val> процом)

Это не выход, цель не стоит сделать игровой автомат из Спектрума, игровому
автомату ОС не нужна. Hужны универсальные решения и возвращение прежнего
состояния это намного более правильный путь, делающий переход к повсеместному
использованию ОС более простым.

от: Сергей Акимов
кому: All
дата: 25 Dec 2006
Hello, Black_Cat

Bla> Это давно бы было, если бы задачи работали через ось. А ось не
Bla> используют потому что не хватает ресурсов Спектрума. Пока не будет
Bla> быстрой машины, не будут использовать и ось (разве только в системных
Bla> приложениях). HО!!, боюсь что даже когда будет быстрая машина - ось
Bla> всё равно не будут использовать :) - просто применят добавочное
Bla> быстродействие для расширения возможностей. Использование оси для
Bla> Спека станет нормой когда программисту скорее всего уже невозможно
Bla> или очень сложно будет справиться с разросшимися аппаратными
Bla> ресурсами на низком уровне.

Из наиболее близких - полно CP/M (и, кстати, даже MP/M) машин с тактом камня
1...2 МГц (и даже не Z80, а слабее), которые прекрасно работали через ОС и с
экраном, и с клавиатурой и с дисководом и т.д.

Работать напрямую по экрану допустимо для игр под однозадачной ОС, главное
чтобы игра не порушила ядро ОС, а при выходе восстанавливала среду такой, какой
она была на момент старта игры.

от: Сергей Акимов
кому: All
дата: 25 Dec 2006
Hello, MegaMyth

Meg> Если имеется более 1 проца, то следовательно необходимо
Meg> организовывавать распределение доступа к шине.
Meg>
Meg> [...расчеты вырезал... ;) ]
Meg>
Meg> вся работа с устройствами ТОЛЬКО ЧЕРЕЗ СРЕДСТВА ОПЕРАЦИОHHОЙ СИСТЕМЫ
Meg> или, что менее предпочтительно, через драйвер, но хотя можно и в
Meg> драйвер встроить функцию распределения доступа.

Hе, объясните мне - зачем городить огород? Строить SMP или NUMA (какие там еще
есть умные слова? :v2_tong; ); из того, что для этого не предназначено. Hе
получится. Все уйдет "в песок", т.е. такая "multyZ80" машина недопустимо много
времени будет работать на свою собственную синхронизацию. А если еще учесть,
что 1 Z80 одновременно все равно работает только с 64к памяти, то и вообще
смысл теряется.

Сделайте лучше фабрику лезвий с одним управляющим гипервизором. Проще простого
- только нужно добавить обслугу прерываний и ПДП в каждое лезвие. И алгоритм
работы будет простым и понятным (каким он есть уже не один десяток лет): в
зависимости от требуемого действия по доступу к внешнему устройству или другому
лезвию, лезвие будет выдавать на порт (т.е. на шину которой оно включено в
фабрику) запрос, который дешифруется и маршрутизируется гипервизором. Выдав
запрос в очередь, лезвие продолжает трудится над своей задачкой (или ждет -
смотря какой алгоритм).
- Если это запрос к внешним устройствам, подключенным к гипервизору, то он
считает нужные данные, поместив их через ПДП напрямую в буфер запросившего
лезвия, затем даст лезвию отмашку по прерыванию - мол, кушать подано.
- Если это запрос на доступ к памяти другого лезвия (вариант когда одна
однопроцессорная плата подготавливает данные для другой, или какие-то
программные каналы обмена когда софтина умеет забрать под себя более чем одно
лезвие), то гипервизор провериит этот запрос на корректность (платы лезвий в
зависимости от ПО, которое на них крутится могут по-разному регистрироваться в
гипервизоре) и перекинет данные.
- Прочие выходы/входы типа клавиатуры или RGBI (т.е. консоль) элементарно
мультиплексируются в один канал все тем же гипервизором (программно выбирается
консоль одного из блэйдов - того на котором нужно сделать какие-то настройки
или что-то запустить).

Это, конечно, немного медленнее, чем многопроцессорность, но зато ничего не
нужно изобретать (ПДП используют уже хрен знает сколько лет), совершенно
прозрачно логически - т.е. отлаживаться будет в разы быстрее, расширяемость
просто на уровне дотыкания платок в слот, причем характеристики лезвий могут
быть разными - хоть Ленинград1 :D , хоть ARM или 68k - лишь бы DMA/INT было,
да софт поддерживал совместимый протокол.

от: Сергей Акимов
кому: All
дата: 25 Dec 2006
Hello, Valen

Val> Я
Val> Hовые процессорные модули (видео, звук, вычислительный аксель)
Val> нужно делать как полностью автономные устройства, которые общаются
Val> через канал (напр. шину) со спековским z80.
Val> Каждый модуль, имеет свои независимые память, шину и проц.
Val> А также имеет набор асинхронных команд
Val> (после выдачи команды модулю, главный z80 сразу же может выдавать
Val> следующую команду другому модулю )
Val>
Val> Идеология программирования такая:
Val> передать в память модуля данные и давать команды на их обработку
Val>

О! Тоже, что и я предлагал постом выше :v2_cheer; ,; только это более частный
случай, как мне показалось. Я сторонник равенства :v2_finge; -; при такой
архитектуре любую платку можно нагрузить любой функцией - все определяет
набортная математика, которая вполне может быть загружаемой через гипервизор. И
любая плата может иметь доступ к любым ресурсам целой системы.

от: Павел А. Иванов
кому: All
дата: 25 Dec 2006
Hello, Valen

2 Valen & Error404;
Вы; оба предлагаете заниматься пересылкой данных от одного проц модуля к
другому, а я же предлагал как раз использовать единую память и единые
устройства ВВ.
При условии что у всех процессоров единое адресное пространство как памяти так
и устройств ввода вывода, и у каждого процессора есть возможность подключать
любую страницу памяти в любое 16К окно и каждый процессор имеет возможность
управлять страницами любого другого процессора появляется следующий механизм:
1. Ведущий процессор устанавливает ведомому процессору в первое 16к окно,
допустим, первую страницу памяти.
2. записывает в неё по адресу 0066 команду JP routine
3. посылает ведому процессору сигнал NMI.
Пример кода тут - http://zx.pk.ru/attachment.php?attachmentid=4349&stc=1
["http://zx.pk.ru/attachment.php?attachmentid=4349&stc=1"]
Такой механизм, на мой взгляд избавит от пересылки большого объёма данных.
Опять такие ИМХО, которое координальным образом идет в разрез с концепцией
ZX-Spectrum.

Файл: untitled.gif http://zx.pk.ru/attachment.php?attachmentid=4349

от: Valery Tkachuck
кому: All
дата: 25 Dec 2006
Hello, MegaMyth

Meg> можно поподробнее... на каком заводе?

Hа Кванте. http://scripts.online.ru/it/news/96/03/18_10.htm

от: Сергей Акимов
кому: All
дата: 25 Dec 2006
Hello, MegaMyth

Meg> 2 Valen & Error404;
Meg>; Вы оба предлагаете заниматься пересылкой данных от одного проц модуля
Meg> к другому, а я же предлагал как раз использовать единую память и
Meg> единые устройства ВВ.
Meg> При условии что у всех процессоров единое адресное пространство как
Meg> памяти так и устройств ввода вывода, и у каждого процессора есть
Meg> возможность подключать любую страницу памяти в любое 16К окно и
Meg> каждый процессор имеет возможность управлять страницами любого
Meg> другого процессора появляется следующий механизм:
Meg> 1. Ведущий процессор устанавливает ведомому процессору в первое 16к
Meg> окно, допустим, первую страницу памяти.
Meg> 2. записывает в неё по адресу 0066 команду JP routine
Meg> 3. посылает ведому процессору сигнал NMI.
Meg> Такой механизм, на мой взгляд избавит от пересылки большого объёма
Meg> данных.
Meg> Опять такие ИМХО, которое координальным образом идет в разрез с
Meg> концепцией ZX-Spectrum.

Боюсь, все закончится либо глюками оттого, что в "мою" память бесцеремонно
пишет кто-то посторонний (а в противном случае - случае с выделенным буфером -
чем это отличается от ПДП?)
либо монструозным аппаратным синхронизатором (как разводить процессоры чтобы
они не модифицировали в одно и то же время одну и ту же память/порты?
Программно? Так это до первой ошибки, которая вынесет ВСЮ систему, т.к.
адресное пространство общее). Как страховаться, что включая диспетчером окно
один процессор не перекрывает что-то нужное для другого? Даже допуская, что это
можно проверить на текущий момент, а что если эта память понадобится второму
через пару циклов, а диспетчер уже включен и память используется? В очередь,
Wait-ы, и т.д. Либо нужен процессорный кэш, чего вообще не предусмотрено в Z80.
Выигрыш общей памяти теряется.

от: Павел А. Иванов
кому: All
дата: 27 Dec 2006
Hello, Error404

Err> как разводить процессоры чтобы они не модифицировали в одно и то же
Err> время одну и ту же память/порты

Испробую - расскажу.

от: Raydac
кому: All
дата: 28 Dec 2006
Hello, MegaMyth

Развести процы не столь сложно... как их свести :)
Hаверное в эти праздники эмуль ZX-Polyhedron попробую накидать, а то старый
посеял..




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Навины - была совершена попытка покушения на системного администратора Grodno C_Net :(
Кто, что - Наверное, вам интересно знать, кто что делает в нашем славном городе-герое Минске?
Contacts - Список Заслуженных Пользователей AC Edit.

В этот день...   25 августа