Важная информация

User Tag List

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 38

Тема: А не пора ли нам взяться за реализацию Ethernet?

  1. #21
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Status: continue debugging

    На данный момент работает драйвер RTL8019AS и уровень IP (ARP, ICMP и т.п.). С уровнем TCP похоже пока какие-то баги. К примеру, webserver не отвечает, а telnetd хотя и отвечает, но как-то странно, "через пакет". Другие приложения пока не пробовал. Баги с telnetd могут быть еще и оттого, что telnet я взял из версии 0.9, т.к. в версии 1.0 автор uIP на_уевертил такого на #define-ах, что компилятор не может распутать.

    По прикидкам, собственно стек TCP/IP занимает в коде 10-11 кб.

    Пока откладываю дальнейший дебаг, т.к. на работе начался загруз. Желающие поковырять исходники - wellcome, текущие исходники в аттаче в файле uIP-ori.zip. uip-1.0.zip - оригинальный uIP v 1.0.

    Примечание1: загрузив HitechC v 3.09, замените дистрибутивную libc.lib на ту, что в моем архиве - там либа с исправленной до правильного функцией memset.

    Примечание2: Для компиляции я использую эмулятор CP/M MYZ80 от Simeon Cran. Директивы import/export в файле _make_uip.bat - это от этого эмулятора.

    Примечание3: Орионовская версия рассчитана под AltairDOS v 3.x. В ней есть готовый сервис прерываний int 50hz (см. в архиве в файле clock-ar.c), чем я и пользуюсь. Для других ОС этот файл должен соответственно корректироваться.
    Последний раз редактировалось Error404; 08.08.2011 в 18:00.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  2. #22
    Banned Аватар для Black_Cat
    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Сколько там у u10 - 12 пинов на гребенке GPIO пока свободно
    на 12 пинов не подключишь ничего, ни RTL, ни NE2000. Для них надо как минимум 5 адресов + 2 управления + 8 данные.

  3. #23
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black_Cat Посмотреть сообщение
    на 12 пинов не подключишь ничего, ни RTL, ни NE2000. Для них надо как минимум 5 адресов + 2 управления + 8 данные.
    Это если подключаться только к GPIO.
    Но за счет того, что у нас RTL в адресном пространстве, то возможно некоторые сигналы (например, /WR /RD, а может - чем черт не шутит - и ШД) можно взять прямо с платы - например там где оно выводится на ПЗУ или ОЗУ.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  4. #24
    Banned Аватар для Black_Cat
    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Это если подключаться только к GPIO.
    Но за счет того, что у нас RTL в адресном пространстве, то возможно некоторые сигналы (например, /WR /RD, а может - чем черт не шутит - и ШД) можно взять прямо с платы - например там где оно выводится на ПЗУ или ОЗУ.
    На адреса и данные SRAM, действительно подключиться можно, хотя и не айс, т.к. уменьшит быстродействие, т.к. RTL рассчитан на стандатрную 8МГц ISA шину, и боюсь так же быстро как SRAM не заработает. Т.е. как минимум надо ещё заводить на GPIO сигнал WAIT, а лучше сразу генерить его прям внутри ПЛИС при обращении к адресам, отображаемым на порты.

    ---------- Post added at 17:38 ---------- Previous post was at 17:14 ----------

    Цитата Сообщение от Error404 Посмотреть сообщение
    Чтобы когда оно будет реализовываться (а реализовываться оно все же скорее будет в виде чипа RTL присоединенного непосредственно к ПЛИС - у реализаторов нет живого Ориона с системной шиной, слотами и т.п.), было понятно что к чему. Врядли кто-то будет делать например u9+ ISA или Орион2010 + ISA, где сам комп меньше чем сетевая карта c переходниками/шлейфами для подключения к по сути контроллеру.
    У подключения готовой карты есть два плюса - её не надо делать, и стоимость у неё в несколько раз меньше.
    Последний раз редактировалось Black_Cat; 20.06.2011 в 17:31.

  5. #25
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Black_Cat Посмотреть сообщение
    На адреса и данные SRAM, действительно подключиться можно, хотя и не айс, т.к. уменьшит быстродействие, т.к. RTL рассчитан на стандатрную 8МГц ISA шину, и боюсь так же быстро как SRAM не заработает. Т.е. как минимум надо ещё заводить на GPIO сигнал WAIT, а лучше сразу генерить его прям внутри ПЛИС при обращении к адресам, отображаемым на порты.

    ---------- Post added at 17:38 ---------- Previous post was at 17:14 ----------

    У подключения готовой карты есть два плюса - её не надо делать, и стоимость у неё в несколько раз меньше.
    Контроллеры из проектов uIP работают с RTL и на 16МГц, так что ее быстродействия должно хватить, а вот про некратные частоты - это XЗ.

    Если подключение голой RTL еще более менее понятно для меня, то грамотно согласовать подключение ISA-карты - это уже для более шарящих (кстати, схему на zx.clan.ru смотрел, но вот именно той схемы для подключения ISA к, к примеру, Ориону мне как среднестатистическому чайнику не достаточно - надо более подробно, в виде методички). Поэтому иллюстрировал на примере голой RTL. Кстати, для голой RTL вон оказывается что продают (см. вторую картинку):
    http://zx.pk.ru/showpost.php?p=393035&postcount=57
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  6. #26
    Banned Аватар для Black_Cat
    Регистрация
    15.06.2006
    Адрес
    S.Pb
    Сообщений
    5,791
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    6
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    но вот именно той схемы для подключения ISA к, к примеру, Ориону мне как среднестатистическому чайнику не достаточно - надо более подробно, в виде методички). Поэтому иллюстрировал на примере голой RTL.
    Для Ориона - тоже самое что и голая RTL, токо на адресной шине жёстко выставляется базовый адрес в виде набора нулей и единиц на адресах A5-A10 (его можно так же генерить по чипселекту), и он же прописывается в NVRAM, а на ISA вместо IORD, IOWR подаётся RD, WR (так же чипселект можно замешивать с ними, если удобней).

  7. #27
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Попалась такая страничка:
    http://tinyapps.org/internet.html

    и подумалось: а ведь кандидатуры!
    Ессно если стек заработает.
    Конечно даже эти tiny придется дополнительно почикать для еще большего уменьшения.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  8. #28
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Status: it is working!

    Цитата Сообщение от Error404 Посмотреть сообщение
    Пока откладываю дальнейший дебаг, т.к. на работе начался загруз. Желающие поковырять исходники - wellcome, текущие исходники в аттаче в файле uIP-ori.zip. uip-1.0.zip - оригинальный uIP v 1.0.

    Примечание1: загрузив HitechC v 3.09, замените дистрибутивную libc.lib на ту, что в моем архиве - там либа с исправленной до правильного функцией memset.

    Примечание2: Для компиляции я использую эмулятор CP/M MYZ80 от Simeon Cran. Директивы import/export в файле _make_uip.bat - это от этого эмулятора.

    Примечание3: Орионовская версия рассчитана под AltairDOS v 3.x. В ней есть готовый сервис прерываний int 50hz (см. в архиве в файле clock-ar.c), чем я и пользуюсь. Для других ОС этот файл должен соответственно корректироваться.
    Таки выкроил пару часиков.
    Телнет заработал. Все ошибки были не в стеке (стек вообще ХЗ как отлаживать, но он похоже работает, что удивительно - чтобы подогнать под компилятор я там наделал всякого), а в самом telnetd - как в версии 0.9, так и в версии 1.0 (хотя в этой уже меньше, и поэтому с telnetd я вернулся на v1.0 выкинув все эти мега-#define)

    Ессно, зателнетившись вы попадаете не в CP/M (для интеграции демона с консолью/процессами CP/M - а еще лучше с MP/M - надо много думать), а в некую среду с четырьмя командами, одна из которых help, а вторая exit. Но это фигня, для начала сойдет. Главное понять, что стек работает .

    Кто читает не с начала - все пока только в эмуляторе.

    Цитата Сообщение от Black_Cat Посмотреть сообщение
    Для Ориона, ISA-карта - тоже самое что и голая RTL, токо на адресной шине жёстко выставляется базовый адрес в виде набора нулей и единиц на адресах A5-A10 (его можно так же генерить по чипселекту), и он же прописывается в NVRAM, а на ISA вместо IORD, IOWR подаётся RD, WR (так же чипселект можно замешивать с ними, если удобней).
    Кто займется подключением карты ISA?
    Последний раз редактировалось Error404; 08.08.2011 в 18:31. Причина: управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. #29
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Status: it is working again!

    Заработал Веб-сервер (опять же когда нашел и устранил в нем ошибки).
    Опять текущие сырцы во вложении, бинарник также в образе тут:
    http://zx.pk.ru/showpost.php?p=275608&postcount=851

    Вот интересный вопрос: когда Ethernet представлялся малореализуемым, тут устраивала троллоло куча народу. А вот когда дошло до стадии "апробировано: бери да отлаживай потихоньку приложения" - так никого не наблюдается.
    Не любим трудиться, не любим...
    Вложения Вложения
    Последний раз редактировалось Error404; 09.01.2013 в 16:17. Причина: Удалил вложения
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  10. #30
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Директивы import/export в файле _make_uip.bat - это от этого эмулятора.
    А как заставить эмулятор выполнять команды из этого файла?

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ethernet for c64
    от Jubei в разделе Commodore 16/64/128
    Ответов: 5
    Последнее: 24.01.2007, 19:01
  2. Ethernet для спека
    от CHRV в разделе Несортированное железо
    Ответов: 62
    Последнее: 22.12.2005, 14:30
  3. ZX, Ethernet и Linux
    от Bear в разделе Несортированное железо
    Ответов: 33
    Последнее: 19.07.2005, 11:36

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •