Подключение произвольных устройств к IDE или SATA портам

Тема в разделе "WASM.OS.DEVEL", создана пользователем Aleksich, 27 апр 2023.

  1. Aleksich

    Aleksich New Member

    Публикаций:
    0
    Регистрация:
    27 апр 2023
    Сообщения:
    3
    Уважаемые участники!

    Возникла необходимость подключать устройство с односторонним параллельным обменом, от компьютера, (байтовым, но можно и на последовательную передачу по одной-двум линиям перейти, устройство-то как раз можно перепрограммировать) к материнским платам под управлением Linux прежде всего. Но и под Windows есть возможность начать эксперименты по крайней мере. По ситуации вариантов всего два: SATA порт на плате или IDE порт через переходник SATA -> IDE. Реализацию протокола обмена пока опустим, это более или менее решаемо, если остальное возможно. Ни USB, ничего другого нет - остался только SATA порт. Вот посмотрел сейчас пока на свой компьютер - на моей матери 2017 г.в. вообще нет никаких "Legacy", PCI-IDE, а есть только AHCI и какой-то Intel RST

    Подскажите, пожалуйста - реально через адреса PCI или чего-то подобного сделать так, что бы, обращаясь как бы к SATA (раз на порты из диапазона 1xx сейчас рассчитывать уже нельзя, особенно на новых платах), на выходе переходника в IDE появлялись нужные мне логические сигналы?
     
  2. DreadPirateRoberts

    DreadPirateRoberts Member

    Публикаций:
    0
    Регистрация:
    16 фев 2023
    Сообщения:
    47
    мб использовать копеечный USB-to-Serial переходник? USB-to-RS485?
     
    UbIvItS нравится это.
  3. Aleksich

    Aleksich New Member

    Публикаций:
    0
    Регистрация:
    27 апр 2023
    Сообщения:
    3
    Добрый день. Проблема в том, что там в принципе нет ничего кроме SATA внутри. И дополнительную плату я хочу поставить внутрь: https://www.ixbt.com/platform/hiper-m11-review.html А я очень не люблю, когда что-то висит снаружи. Честное слово,т.к. обмен с кастомной платой будет совсем медленный и только от компа к плате, то я, если бы мог заставить по моему хотению моргать Power Led (все равно этот разъем незадействован) передачу организовал бы через этот канал! Думал даже через Audio сделать, (что получится не сомневаюсь), но аналоговую передачу вводить нехочется, и да вдруг звуковой выход мне когда-то потребуется… а там что то типа модема звучит :derisive: Можно конечно вытащить Wi-Fi и поставить туда что-то интерфейсное, но я таких плат пока не встречал в широкой продаже.
     
  4. Marylin

    Marylin Active Member

    Публикаций:
    0
    Регистрация:
    17 фев 2023
    Сообщения:
    144
    Да без проблем можете сажать любые цифр.девайсы прямо на SATA-порт. Здесь даже переходник SATA-IDE наоборот будет лишним. Известно, что на мат.плате установлены только порты, а контролёр находится на самом диске. Порты всегда активны, т.к. включаются в биосе. На SATA уже готовые выходы Tx/Rx:

    sata.jpg


    Только нужно учитывать несколько нюансов:

    1. Если не хотите сжечь порты на плате, устройство нужно подключать через промежуточный буфер, например м/с MAX232.
    2. Обмен с устройством будет возможен только из-под чистого доса в реальном режиме, чз сервис INT-13h. Это прерывание эмулируют все современные мат.платы, в том числе и EFI (не говоря уже о биосах).

    Связано это с тем, что в защищённом РМ нужно сначала получить хэндл подключённого к порту диска, который далее отправить функции CreateFile(). Но т.к. SATA-порт без контролёра (на нём нет диска), то и хэндл не удастся получить. Поэтому только сервис INT-13h, который ожидает лишь номер харда 0-8.

    3. AHCI в биосе обязательно отключить, выставив контролёру порта режим Legacy.
    "Intel-RST" это софт-фишка Win, и роли здесь не играет.

    С другой стороны, чем возиться в этом навозе (с сомнительным выхлопом),
    проще купить обычный USB-хаб, ведь на один USB-порт можно сажать до 128 девайсов. В чём проблема?
     
  5. Aleksich

    Aleksich New Member

    Публикаций:
    0
    Регистрация:
    27 апр 2023
    Сообщения:
    3
    Спасибо за ответ!
    > С другой стороны, чем возиться в этом навозе (с сомнительным выхлопом),
    Сложно, согласен, да и нужно обязательно под Win и Linux что бы работало. Свой комп 2017 года я привел только как пример, уже там в BIOS ничего связанного с Legacy нет, а в этом - наверное тем более: https://www.ixbt.com/platform/hiper-m11-review.html Думаю, я пока там пожертвую Wi-Fi и поставлю плату miniPCIe -> RS232. Но все же, очень было бы здорово реализовать возможность подключать что-то самодельное к SATA и передавать этому свои команды. Но тут видимо без Altera в переходнике не обойтись, да и драйвер любой ОС будет мешать. Хотя, конечно, если реализовать в этом переходнике что-то типа виртуального SATA - накопителя и хотя бы просто создавать файл с заданным именем, а из Altera по тому же RS233 (это уже детали) передавать имя файла, которое на самом деле команда (или содерживое файла, что бы не столкнуться с ограничением на символы в именах файлов) далее на микроконтроллер платы расширения - все без сомнения взлетело бы. Но это я размечтался, на это уйдет вероятно не один месяц. Хотя было бы здорово, в любом компе свободные SATA не редкость.