Добрый день, начинаю тему по адаптации Ethernet-контроллера ObsoNet MSX на чипе Realtek RTL 8019AS для УКНЦ-ДВК.
Дальше будут схемы, обсуждение и прочие этапы разработки.
Вид для печати
Добрый день, начинаю тему по адаптации Ethernet-контроллера ObsoNet MSX на чипе Realtek RTL 8019AS для УКНЦ-ДВК.
Дальше будут схемы, обсуждение и прочие этапы разработки.
Вопросы (не критика)
1. зачем - те почему именно этот вариант ?
2. зачем - те какие цели ставятся ?
3. как будет реализовываться резидентная часть стека ? ну к примеру в RT11SJ ?
4. кто готов написать этот стек ?
Оригинальная схема ObsoNET от ptero https://radikal.ru/lfp/i013.radikal....fd985t.jpg/htm
Маленькая 8-ногая ППЗУ содержит МАС-адрес контроллера и другую служебную информацию для работы в сети Ethernet
155РЕ3 - используется как дешифратор вместо ПЛИС.
На самом деле основные вопросы - 3 и 4.
Потому что с современной элементной базой собрать контроллер - особых проблем нет. А с написанием софта под старые компы...
1. Потому что на чипе RTL8019AS и с тем кто сделал контроллер первый этот у нас на МСХ я дружу. И не хочу чтобы сетью рулил буржуйский МК мощнее УКНЦ и непонятно с чем внутри. Возможно придется ставить отдельны 1806ВМ2 для обслуживания сети.
2. Цель - подключение к локалке-интернету - mail-irc клиент, может текстовый браузер типа lynx. терминальный доступ на большие машины и обмен файлами по ftp например.
3. Это надо обсуждать с программистом когда я его приведу на форум, он говорит что есть исходники стека, под RT-11 допилить можно. У человека стаж программирования 25 лет, ему виднее.
4. См п3.
именно
тем более, что технически сетевой адаптер уже готов - в контроллере AZ уже предусмотрена и подключена сетевая карта
что важно - в контроллере идет автономная обработка сетевых данных (и надо понимать, что это достаточно большой пласт работы)
те я могу уже выдать "наружу" уже готовый интерфейс позволяющий манипулировать IP-пакетами. могу выдать UDP или TCP.
SNMP/NTP/DHCP уже встроены в мой стек.
проблема сейчас в отсутствии готовности использовать это на самой ДВК/УКНЦ.
В контроллере AZ ключевой для меня недостаток - импортный контроллер к которому будет пригорожен еще один импортный контроллер который реализует стандартную от чего-то там сетевую, причем все такие умные что "еще немного и будут писать стихи и сами постить их на целлюлозе без ведома хозяина".
А в свете некоторых обстоятельств я бы не хотел такой радости в своей системе. Доверия древнему и не такому самостоятельному RTL8019AS у меня больше.
Спасибо за ссылку на даташит, Птер.
А вообще надо ждать пока забредет сюда ММ и притащу программиста.
странная логика. 8019 разве не импортная ? на схеме https://radikal.ru/lfp/i013.radikal....fd985t.jpg/htm только 155РЕ3 производства России/CCCР
Давайте без троллинга, мне нравится 8019 может быть в связке с 1806ВМ2. Современные МК мощнее УКНЦ я тут не рассматриваю, это условия задачи.
8019 это NE2k контроллер, т.е. там целое семейство контроллеров эпохи 80-90х годов прошлого века с единым интерфейсом.
Вопрос исключительно в софте, плату в нынешних реалиях сделать ваще не проблема ни разу. Учитывая что оригинальный Обсонет на ДВК никто портировать не собирается (и правильно, там вагон не лучшим образом построенного кода на ассемблере), делайте просто типовое подключение. Ну и да, в реальность того что будет софт, не верю. Не хочу давить негативом, но из тутошней практики: оперсорсных стеков в сети вагон и тележка, но никто из форумчан не осилил.
Как я уже озвучивал ранее, для тех кто не хочет поднимать стеки есть достаточно простой и дешевый W5100 от Wiznet. Он кстати сделан на ядре x51.
Стеки уже внутри нее, по сути открываешь сокет и общайся на уровне данных.
Не, конечно RTL8019 это хардкор и для него уже написано много прог, но в основном под z80. А вот для инопланетных процов это по всей вероятности надо делать считай с нуля.
Чет все какие то демотиваторы тут )
Дайте человекам осилить задуманное - поделятся решением и впечатлениями от поставленной(и скорее всего решенной) задачи !
А то сразу, зачем, для чего - Для себя ! Хотят ! Так что не трольте, сами что то творите подобное(стеки осильте, например, перечисленные выше) и все будет в чоколаде )
Всех Благ !
Вопросы :
1. Нужен вариант для ЦП или ПП УКНЦ ?
2. Никак нельзя выкинуть штатное большое ППЗУ из примера конструкции выше по ссылке ?
3. Готов ли ТС к расходам на программера - а они будут Значительные ?
4. Может, сначала просто пристроить Чип на МПИ, для тестов ?
5. Сколько нужно СОЗУ для Н1806ВМ2, который будет обслуживать Чип ?
Для блочка с ВМ2 понадобится 4СПП.
Пример :
https://pic.maxiol.com/thumbs/156182...e9313fd985.jpg
Просьба Радикалом не пользоваться - с него в П-Посаде у всех провайдеров идет перенаправление на платный порносайт.
1. Только для ЦП в отсек СА, если взлетит то можешь сваять и для ДВК полуплату.
2. Про ППЗУ надо чтобы мой программист прочитал даташит и когда придет сюда - решим в процессе, но вероятно можно. На ISA сетевой никаких больших ПЗУ небыло.
3. Программист мой друг и мне обязанный, вызвался покодить под это дело. Так что расходы на него вероятно не более чем текущие мои. Посторонних кодеров привлекать не желательно, т.к. возьмут много денег. 2-3-5 тысяч смогу выделить на стороннего писателя кода если что, но не более.
4. Согласен, прилепи его к БК на макетке и тести. И купи наконец УКНЦ! Она всего 2-4 тысячи стоит даже на авито!
5. Сколько нужно ОЗУ и нужен ли вообще отдельный 1806ВМ2 - решать будем с программистом. Может он сможет все заставить работать на ЦП УКНЦ. А нет - значит и 1806ВМ2 и 4СПП придется раскошелиться.
Про радикал понял.
Много и быстро вкладывать денег в это я не могу. Иначе бы давно заказал и не тут.
Программист проявился, зову его сюда.
Вопрос ТС :
- должен ли эмулироваться СА УКНЦ - т.е. загрузка из меню УКНЦ, или можно просто запустить некотрую программочку в области адресов регистров ( "загрузочное ППЗУ ") ?
Естественно, там же процессор не ниже 80286 и памяти не менее 1М. И TCP/IP там ни разу не было - на выбор, или IPX, или мелкий и мягкий NetBIOS. А подключить TCP/IP - это не ниже 80386, не меньше 4М и не меньше Windows 3.11, нормального TCP/IP под ДОСом я ни разу не видел. Ну, не винды, так линюха, но все равно, 386 и 4М - минимум.
MM, все должно запускаться из рабочей ОС драйвером, поверех которого работает уже целевое ПО. Никаких своих ПЗУ и эмуляций СА быть не должно, если придется ставить 1806вм2 то там будет у него свое пзу-озу но я надеюсь избежать
Зачем столько памяти и такой процессор? TCP/IP и на PIC18 работает, а там памяти несколько килобайт.
TCP/IP под MS-DOS существует. Лично пробовал, даже какой-то программой файл по HTTP скачал.
- - - Добавлено - - -
А чем будет занят 1806вм2? Основной процессор с сетевыми протоколами не справится?
Я разворачивал на 386-ые машины образы ОС, загружаясь с дискеты c MS-DOS, где были файлы стека TCP/IP плюс клиент Symantec Ghost. 640 кб для процесса хватало. Для создания таких дискет был какой то софт у MS, но за давностью уже сходу не назову. Были сетевухи с ПЗУ или разъёмом под ПЗУ для загрузки бездисковых станций. Помнится, что бы посмотреть, как это выглядело, создали такую машинку (486) для загрузки W95 по сети. Ну, на тех скоростях (10 мб коаксиал) это выглядело не фонтан
- - - Добавлено - - -
Человек, как обычно, не в теме
контики ваще 30 кб с гуем и тсп айпи стеком
http://www.contiki-os.org
8 битная , 386 не нужен
К-во регистров Чипа - 16 шт. по 16 бит каждый ( массив длиной 40 ( 8 )).
К-во вариантов адресации - 16 шт., возможные варианты :
177000, 177040, 177100, 177140 и еще 12 шт.
Размер стартового ПЗУ - до 4 Кбайт ( выбираем - или 1 шт. 1801РР1, или 2 х 573РФ5 ), сектора выбираются перемычками в адресах 170000, 171000, 172000, 173000 и еще 4 шт.
Можно приделать 588ВН1 ж. для выдачи вектора прерывания.
Пассивные компоненты - СМД, резисторы - 0603, кондюки - 1206. Мелкота ИС - СМД. Шинные усилители - АП6.
Платочку можно будет навешивать на МПИ ДВК и др. М-ЭВМ.
- - - Добавлено - - -
Или оставить огромное ЭСППЗУ 0.5 метра , как на оригинале - но приделать выключатели секторов адресов ?
Про размер ПЗУ решим когда программист включится в дискуссию.
Адреса предложенные 177ххх ни с чем стандартным не пересекаются?
Смотря какой проц, Контики же кроссплатформенная (т.е. насколько под данный проц рыхлый код). В случае "рыхлого" Z80 в 30кб поместится только uIP (собсно стек) и ядро Контики (насколько вообще можно говорить о этом "микроядре" ОС, построенной тупо вокруг одного большог case который кстати и находится в стеке uIP). На орионе я делал адаптацию uIP как раз в варианте с 8019, эта эпопея есть в отдельной теме в разделе Ориона примерно 10 лет назад. Притом, для понимания, uIP это предельно примитивная реализация, не имеющая ничего похожего на сокеты (которые там нечто псевдоэтакое на дефайнах в юзерспейсе процессов, поэтому не считается), не делает композицию и декомпозицию фреймов больше чем размер кадра Ethernet (т.е. всё что больше 1,5к приложение должно молотить само делая свой собственный некий "TCP поверх uIP") и это же дает ограничение по скорости в 5 кадров в секунду (т.е. такой стек как и большинство 8-битных это максимум 6-7 кб/сек), контроль передачи приложение тоже делает само.
Для uIP 1.0 нужен хороший компилятор С (там Дункель окончательно двинулся со своими дефайнами), поэтому я остановился на 0.9 бэкпортив туда багфиксы.
Отсюда вывод: определитесь что и как вы будете портировать чтобы потом не было мучительно больно за бесцельно потраченные усилия. Я рекомендую lwIP того же автора что и uIP. Для него потребуется хороший ANSI компилятор С (на ДВК он есть?) и хотя бы 128кб оперативки под код и буфера только стека (lwIP он хотя и light weight IP, но не настолько, и слава богу, а то опять получился бы uIP). Ну и в пользовательских пространствах посчитайте сами, ИМХО не менее 32к на каждый (там у вас же С).
Error404, офище, вот на орион 128 с z80 контики бы славно смотрелась, зззз
Специально для УКНЦ ( ПП ).
Ну и всего массива ДВК/Э-60.
Если дело упрется в размер ОЗУ ЦП УКНЦ - можно добавить 4 кбайт 010000 ( 8 ) - в адреса 160000...167777.
Но в этом случае все остальные наработки по системному софту УКНЦ идут лесом...
*
Если господа программеры выяснятъ, что на 56...60 кбайт ОЗУ ЦП передать файл невозможно, есть небольшой рояль в кустах - М1801ВМ3А-6 мгц с 3.9 метрами СОЗУ и 4СПП. Отмечу, что разработка Э3 ВМ3А и топологии будет несколько дороже и дольше. Да и 4СПП изрядно дороже - один только шаблон ~$35
( зато можно и Звучок туда пристроить... ).
- - - Добавлено - - -
Офф.
Может, сразу сделать УКНЦ-3 ?
( Н1806ВМ2-5.5 - ПП, М1801ВМ3А-6 + гарнир - ЦП ). 565РУ5 - на 8-битки сменить...
Вот поэтому я и предлагаю прежде всего заранее для самих себя определиться с терминологией и целями. Потому что то, к чему люди привыкли в микроконтроллерах (примитивный веб-сервер поверх голого IP {да даже поверх ARP видел реализации в сотне байт} сугубо для ембедед управления вида "отобразить состояние датчика и послать с формы нажатие на экранную кнопку" ) это не TCP/IP - совсем не то же самое что относительно полная и функциональная реализация TCP/IP с каким-то минимальным базово реализованным набором RFC, в которой кроме http будет стабильно работать что-то еще требующее именно контроля (т.е. достоверности, скорости и удобства) передачи. Т.е. если нужно первое, то нефига и затевать очередное оно (которого в сети для любого микроконтроллера как овна за баней), а если по нормальному, и брать что-то человеческого вида, а не uIP, то таки придется приготовить пару сотен килобайт под код (там его будет прилично) и буфера (их тоже надо под сборку пакетов из приходящих кадров), и относительно приличный проц (или эффективные алгоритмы) потому что надо считать CRC (его конечно можно проигнорить, но тут см. п.1), будет децл 32-битной арифметики (немного, большая часть 16-битная). И вот тут мы приходим ко второму вопросу - а есть ли на целевой платформе нормальный С-компилер? Хотя бы уровня SDCC. Т.к. даже если и наковырять стек на ассемблере (что странно, но реализуемо), стек ведь не самоцель, цель - портирование сетевого софта, а оно всё на С.
- - - Добавлено - - -
Да, наверное. Но я не осилил SDCC из-за того что он все время подкидывает какие-то коленца (в каждой версии новые), а другой имевшийся у меня Z80-компилер не может распутать мегадефайны, которые накрутила автор Контики, но я остался именно на компиляторе послабее и на версии uIP 0.9 (А Контики начался с версии uIP 1.0, собственно автор в свой монструозный case кроме приложений, которые к стеку и так каждый раз надо докомпилировать, загрузки нет, добавил еще и окошки - получился Контики). С другой стороны, Контики малополезен, использовать его реально только для принять/отправить файл по IP, никаких других реально юзабельных вещей там нет, и поскольку это один общий бинарь (по крайней мере на то время это было так), то ничего кроме уже заранее скомпилированного (например, с внешнего носителя) не запустишь.
К Оригиналу добавятся :
1. 588ВН1 ж. - векторные прерывания
2. Селектор страниц ЭСППЗУ ( регистр ), т.к. 8 кбайт ПЗУ в секторе BS7 неуместны. Кстати, ЭСППЗУ можно будет перешивать прямо в устройстве ( если программер поддержит ), посекторно.
3. Аппаратный селектор адресов ЭСППЗУ - т.к. хотелось бы более универсальную карту получить, для всех типов ЭВМ.
Вот, наконец-то здравый голос! А то всё "На ZZZ работает, а там памяти всего несколько килобайт!", "На YYY 30 К с гуём" и вообще "Шапками закидаем!"
И вообще, в первую очередь надо думать о прикладном софте. Хотите электронной почты? А где взять почтовый клиент? Кто будет его писать? Хотите http? А кто напишет браузер? Или тот же IRC-клиент, как кто-то высказывал пожелания? А без всего этого софта, который, естественно, никто писать не соберется, и нормальный TCP/IP на УКНЦ не нужен. Вон, коллега form запустил TCP/IP на PDP-11/83 под RSX-11. Или под TSX. Или под обеими системами - точно не помню. Так вот, спросите у него, какой софт там доступен? И учтите, что ничего из этого на УКНЦ не пойдет - 90% (если не 99%) всего софта под RSX-11 требуют наличия ДП.
А что может пригодиться реально - это доступ к отшаренному файлу (не папке) подобно тому, как обращаются к диску. То есть, грубо говоря, сетевой диск. Причем родными средствами TCP/IP, то есть Самбой, это дело сделать не выйдет - современная Самба тоже дюже толстая, ее клиент, не факт, что влезет даже в приличный современный МК. Ну, кроме самых крутых. Зато никто не мешает нам сочинить под винды или линюху свой собственный мини-сервер, который обеспечит такой доступ по собственному упрощенному протоколу через TCP или UDP, не знаю кто из них здесь нужен.
Ну, и вторая реально полезная вещь - это средство доставки файл-образов между PC и УКНЦ. И все.
В оригинале там большой кусок ПО Обсонета. Который на УКНЦ не нужен.
Как грузится с голой УКНЦ? Никак! Или с дисков или с ленты.
Вообще как ptero говорит почти все регистры 8019AS используются только при начальной конфигурации чипа, потом только чтение/запись по приходу/отправке пакета.
Да, большую. ПЗУ нафиг. Драйвер целевой из под ОС должен работать и все конфигурировать и обслуживать.
- - - Добавлено - - -
Да еще, MM, я предполагаю свободное распространение схемы, печатки и драйвера с исходниками на благо сообщества PDP-шников. Но ты можешь заняться коммерциализацией, если хочешь, я не против.
Особо желания нет.
Все мои поделия - планово убыточны, в т.ч. модуль ЭСППЗУ - там типа как сборка была бесплатной, для цен за 1 шт. 400 руб и ниже ( продал по этой цене порядка 50 шт. ).
Есть некотрые надежды, что хотя бы Звучок БК11М не будет "минусом".
Кстати, без ЭСППЗУ на ДПП сетевого блока может поместится "Звучок" - а он весьма востребован...