Вход

Просмотр полной версии : Стенд МПИ систем для подключения к порту LPT ПК



MM
12.11.2024, 05:20
Уважаемы специалисты ретро-ЭВМ, пожалуйста, посоветуйте конфу регистров ввода-вывода стенда для испытаний шины М-ЭВМ, например МС1201.03.
Приставка-стенд подключается к порту LPT ПК, желательно быстрого ( от 3 Ггц, 1 ядра достаточно :smile: т.к. софт под МС ДОС 6.22 ).
По результатам замеров, в типовом ПК скорость доступа к порту порядка 650 т. записей в сек., что обеспечит порядка 10 т. транзакций по шине типа МПИ ( исследуемой М-ЭВМ или контроллера ).
Исследуемая М-ЭВМ теоретически может иметь и др. конфы, в т.ч. на ЦП Z80, что определяется ПО стенда.
Возможен автоинкремент доступа к регистрам стенда - т.е. сначала записывается номер регистра ( например 0 ), а при каждой сл. записи к номеру регистра прибавляется 1.
Предлагаемая конфа регистров стенда и соответствие шине МПИ.
Д00 - SYNC
Д01 - DIN
Д02 - DOUT
Д04 - WTBT
Д05 - RPLY
Д06 - VIRQ
Д07 - INIT

Д10 - АД00
Д11 - АД01
Д12 - АД02
Д13 - АД03
Л14 - АД04
Д15 - АД05
Д16 - АД06
Д17 - АД07

Д20 - АД08
Д21 - АД09
Д22 - АД10
Д23 - АД11
Д24 - АД12
Д25 - АД13
Л26 - АД14
Д27 - АД15

Д30 - А16
Д31 - А17
Д32 - А18
Д33 - А19
Д34 - А20
Д35 - А21
Д36 - BS7
Д37 - SEL CPU

Д40 - DMR
Д41 - SACK
Д42 - DMGO ( CPU )
Д43 - DMGI
Д44 - ACLO
Д45 - DCLO
Д46 - HALT ( PULT )
Д47 - HLTM ( IND PULT )

Д50 - IAKO ( CPU )
Д51 - IAKI
Д52 - EVNT
Д53 -
Д54 -
Д55 -
Д56 -
Д57 -

Д60 - Атоинкремент счетчика байт, после СБРОСа - включено.


Д00 - SYNC
Д01 - DIN
Д02 - DOUT
Д04 - WTBT
Д05 - RPLY
Д06 - AR ( SSYNC )
Д07 - CLCO ( TA )

Д10 - АД00
Д11 - АД01
Д12 - АД02
Д13 - АД03
Л14 - АД04
Д15 - АД05
Д16 - АД06
Д17 - АД07

Д20 - АД08
Д21 - АД09
Д22 - АД10
Д23 - АД11
Д24 - АД12
Д25 - АД13
Л26 - АД14
Д27 - АД15

Д30 - А16
Д31 - А17
Д32 - А18
Д33 - А19
Д34 - А20
Д35 - А21
Д36 - BS7
Д37 - SEL CPU

Д40 - DMR
Д41 - SACK
Д42 - DMGO ( CPU )
Д43 - DMGI
Д44 - ACLO
Д45 - DCLO
Д46 - HALT ( PULT )
Д47 - HLTM ( IND PULT )

Д50 - VIRQ
Д51 - IAKO ( CPU )
Д52 - IAKI
Д53 - EVNT
Д54 - INIT
Д55 - IRQ250 ( 1801ВМ3 )
Д56 -
Д57 -

Д60 - Атоинкремент счетчика байт, после СБРОСа - включено.


Используемые линии порта LPT :
Strob - активный уровень 0в, в момент перехода к уровню +5в.
Init - активный уровень 0в., сброс всех регистров в уровень +5в., в т.ч. счетчика регистров в уровень 0в.
SELECT IN - 0в. = выход ( адреса или данных ) с ПК, +5в. - вход ( данных ) в ПК.
AUTOFEED +5в. - ( из или в ПК ) передаются данные, 0в. - передается адрес регистра ( из ПК )
Вход порта LPT Paper end - уровень +5в. свидетельствует о недостатке питания стенда ( напряжение менее 4.2 в. ).
Питание стенда осуществляется от БП ПК, например от USB розетки.
Предусмотрены меры защиты от коллизии питания стенда и исследуемого устройства.

Для подключения контроллер типа КНГМД ДВК ( МХ ) у стенда недостаточно быстродействия, потянет только буферизированный ввод-вывод.

ЭБ стенда :
ИР35 - 6 шт.
155ЛН3 - 9 шт.
КП15 - 8 шт.
ИЕ7 - 1 шт.
ИД7 - 1 шт.
АП6 - 2 шт.
ТМ2 - 1 шт.
ЛА1 - 1 шт.
ЛЛ1 - 1 шт.
Диоды Д9Б
Диоды КД521
НР1-4-9 1 ком
Итого - 30 шт. ИС.

Ориентировочное размещение ЭБ Стенда, ДПП 110 х 220 :
https://pic.maxiol.com/thumbs2/1731432388.531453237.110220.jpg (https://pic.maxiol.com/?v=1731432388.531453237.110220.jpg&dp=2)

SuperMax
12.11.2024, 09:37
imho фиксация на LPT порту да еще и MSDOS плохая идея

если делать стенд то явно с USB3.0 и нормальным виндовым софтом, дабы с этим можно было комфортно работать

Vasily_A
16.11.2024, 12:45
можно для юсб на одной rp2040 сделать c 74lvc245 для шин (не совсем мпи по уровням, но должно заработать...)

обратную задачку делал лет 25 назад - ПЦ с программой на дельфи,
а в корзину Э60 воткнута плата с кучкой АП2 и атмел at90s8515, подключенная к пц компортом.
атмел дергая ножками реализовал мпи.
управляло это все печкой для роста кристаллов, вместо помершей платы от Э60 (какой точно, уже не помню).
причина этого всего была скорее не помирании процессорной платы,
а в отсутствии там постоянного человека, который умел писать для Э60.
а на дельфи порог вхождения сильно ниже :)

готовая железка для такой задачи, как у топикстартера, но сильно навороченная, называется "QBONE"
"QBone is a bridge between DEC QBUS and modern Linux environment"
автор ее изначально делал для диагностики и ремонта дековских компов.

совсем олдскульный, но быстрый вариант: в плату компа с ДОСОМ воткнуто 2 платки на pci или на pcie с парой lpt портов каждая (они рублей от 500 стоят).
в итоге получаем много линий, управляемых минуя тормозной LPC контроллер материнки, там заметно (в разы) быстрее получится.
я так делал эрзац логического анализатора, из подручного (с кладовки айтишников) хлама. Адреса плат (лпт портов) раскидывает PNP материнки.
доступ в обычном пространстве из реального режима (под досом) получается без проблем.

если писать на С с экстендером, то получается совсем прикольно - этакая 386 на стероидах - пишешь как на персоналке начала 90-х, но с 3 с лишним гига прямо адресуемого озу и бешенным быстродействием :)

это если очень хочется дос с лпт :)

MM
16.11.2024, 16:33
много линий
Много относительно быстрых линий можно получить, сделав порты на ISA-16 - 4 шт. порта по 16 сигналов, на тех же ИР35 + ЛН3. Входы - на КП2 + АП3
Вероятный семплрейт будет порядка 2 млн транзакций в сек. при частоте шины 8 Мгц.
Но шина ISA-16 нынче весьма редкая...

Соседи изначально советовали сделать на платах портов ввода-вывода для PCI32/33 - но платы редкие, недешовые, и шина эта уже тоже не в каждом ПК, т.к. если и есть такой слот, то он обычно занят ТВ-тюнером для подключения ретро-компов ( один из вариантов ).

AlexG
16.11.2024, 18:08
чтонибудь из FT4222HQ...

MM
16.11.2024, 18:25
При применении USB - трансляторов для порта LPT следует учесть, что необходим контроль над сигналами сопровождения -
Strob
Init
SELECT IN
AUTOFEED
( бит направления шины данных )
*
Приглашаются спонсоры проекта.

AlexG
16.11.2024, 19:03
нафига вообще слово LPT ?!
сиё просто втыкается в ЮСБ а на выходе пучок интерфейсов, на которые можно "повесить" 100500 сигналов входа/выхода.

Vasily_A
17.11.2024, 00:08
isa16 - сейчас это дорого, и не сильно быстро... (все есть, и новые материнки с исой в том числе на i7)

обычный лпт сейчас на материнках живет на lpc контроллере, что его тормозит.

но есть лпт карточки на pci b pci-e, они работают шустрее, более 1М в секунду транзакций можно получить. есть карты с двумя лпт (у меня такая чпу станком рулит)
даже в spp режиме можно 16 бит писать и читать (два порта 8бит на запись, два на чтение), и еще кучка сигналов остается.

в двунаправленном режиме у меня странно они работали, я не стал разбираться.

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

целесообразность данного мероприятия, как и всего, что здесь мы обсуждаем - оценивать смысле нет, это хобби :)

svinka
10.10.2025, 08:20
Думаю, что на сегодняшний день наилучшим будет программирование вот такой ретро-платы на usb2.0

Чип cy7c68013a. много 5 вольт совместимых ножек. цена на алике с доставкой около 350р.

https://github.com/xenpac/Cypress-CY7C68013A/raw/main/docu/cy7c68013a.jpg

https://github.com/xenpac/Cypress-CY7C68013A/raw/main/docu/cy7c68013a.jpg

AlecV
16.10.2025, 12:32
А чего не это ?

https://aliexpress.ru/item/1005008404804398.html?sku_id=12000044898675337