Реверс-инжиниринг необычной модемной платы IBM 1965 года

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

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

На винтажной плате IBM ниже есть большой металлический блок, который привлек мое внимание, поэтому я подробно разобрался в ней. Оказалось, что плата — это часть модема, а большая металлическая коробка - трансформатор. Этот материал рассказывает о том, что я в итоге узнал об этой плате, а также немного об истории модемов.

Плата модема IBM, типа HGB.
Плата модема IBM, типа HGB.

Эта плата представляет собой карточку Standardized Modular System (SMS), но очень необычную. В конце 1950-х IBM представила карты Standardized Modular System, небольшие печатные платы с простыми схемами, и использовала эти платы для сборки компьютеров и периферийных устройств в середине 1960-х. Идея состояла в том, чтобы разработать небольшое количество стандартизированных плат, реализующих логические функции и другие базовые схемы. Однако число конструкций вышло из-под контроля, появились тысячи всевозможных типов SMS-карт. (Я создал базу данных SMS-карт, описывающую более 1400 различных карт.)

Типичная SMS-карта, реализующая тройной логический вентиль "И".
Типичная SMS-карта, реализующая тройной логический вентиль "И".

Большинство SMS-карт выглядят так, как показано выше, поэтому карточка с металлическим блоком показалась мне очень необычной. Хотя некоторые SMS-карты представляют собой «близняшек» двойной толщины, я никогда не видел ни одной с большой железной коробкой, зажатой между двумя платами, так что это меня заинтриговало.

Одно из предположений состояло в том, что металлический ящик был термостатированным кварцевым генератор (OCXO). OCXO часто используют, когда требуется высокоточный источник. Частота кристалла кварца зависит от температуры, поэтому, помещая кристалл в модуль с регулируемой температурой (как показано ниже), можно добиться стабильной частоты.

Винтажный кварц, подключенный к гнезду. Фото Wtshymanski(CC BY-SA 3.0).
Винтажный кварц, подключенный к гнезду. Фото Wtshymanski(CC BY-SA 3.0).

Однако замеры Curious Marc и Eric Schlaepfer (TubeTimeUS) показали, что металлический ящик представлял собой большой трансформатор (соотношение 1:1, индуктивность около 8 мГн). На фото ниже показаны четыре соединения с обмотками, внешние металлические провода заземляли корпус. Трансформатор тяжелый — плата весит почти ровно один фунт, — так что он, вероятно, заполнен маслом.

Трансформатор на плате модема.
Трансформатор на плате модема.

Возраст платы можно понять по германиевым транзисторам, использовавшимся до того, как кремниевые стали популярными. Большинство транзисторов являются PNP, по-видимому, потому, что германиевые PNP-транзисторы было проще производить, чем NPN. (Кремниевые NPN-транзисторы, наоборот, более распространены, в основном из-за того, что электроны в NPN-транзисторах перемещаются легче, чем дырки в PNP-транзисторах, обеспечивая лучшую производительность NPN-транзисторов.)

Транзисторы Texas Instruments крупным планом. Большинство транзисторов на плате были PNP типа 033.
Транзисторы Texas Instruments крупным планом. Большинство транзисторов на плате были PNP типа 033.

Я обнаружил документ 1, в котором плата указана как плата передатчика для модема IBM, передающего данные по телефонным линиям. Большой трансформатор использовался для подключения модема к телефонным линиям при сохранении необходимой изоляции. Модем применял частотную манипуляцию (FSK), используя одну частоту для бита 1 и вторую частоту для бита 0. Я произвел реверс-инжиниринг платы, внимательно изучив ее, и обнаружил, что плата генерирует эти две частоты, управляемые линией ввода данных. Это подтвердило то, что плата была платой модемного передатчика.

На фото ниже изображена нижняя сторона платы с дорожками, соединяющими компоненты. Плата односторонняя, с дорожками только на нижней стороне, поэтому дорожки много блуждают, используя перемычки на другой стороне, чтобы пересекать другие дорожки. (Мне потребовалось время, чтобы понять, что корпус трансформатора был просто заземлен, так как дорожка блуждает по всей плате, прежде чем достигнуть земли.) В нижней части находятся два позолоченных 16-контактных разъема, которые подключаются к объединительной панеле системы. Разъем слева обеспечивает питание, а разъем справа — сигналы.

Нижняя сторона печатной платы для карты модема.
Нижняя сторона печатной платы для карты модема.

Результатом моего реверс-инжиниринга является приведенная ниже схема. (Щелкните, чтобы посмотреть увеличенную версию.) Схема кажется сложной для платы, просто генерирующей переменную частоту, но тогда требовалось много деталей, чтобы что-то сделать. В левой части схемы расположены два входа: сигнал двоичных данных и сигнал разрешения, который включает генератор. Далее идут генератор, который производит сигнал, и задержка 13 миллисекунд (оба обсуждаются ниже). Выходной сигнал генератора проходит через фильтр, что делает его несколько более синусоидальным. Затем сигнал усиливается для приведения в действие трансформатора, а также для получения выходного сигнала.

Восстановленная схема модемной платы IBM.
Восстановленная схема модемной платы IBM.

Генератор

Осциллограмма ниже показывает выходной сигнал, который я измерил с платы после ее включения. Синяя линия показывает ввод данных, а голубой сигнал выше показывает частотный выход. Вы можете видеть, что выходная частота отличается для входа «1» и входа «0», кодирующих данные. (Высота тоже меняется, но я думаю, что это просто побочный эффект схемы.)

Осциллограмма, показывающая, как частота выходного сигнала изменяется в зависимости от входных данных.
Осциллограмма, показывающая, как частота выходного сигнала изменяется в зависимости от входных данных.

Предполагается, что модем генерирует частоты 1020 Гц для «метки» (1) и 2200 Гц для «пробела» (0). Однако я получил частоты 893 и 1920, что примерно на 13% меньше. Разумная точностью для компонентов, которым 55 лет. (Я не знаю, какой была ожидаемая точность в то время. Там нет никаких настроек, так что частоты, вероятно, не были чем-то столь критичным. Кроме того, поскольку две частоты отличаются более чем в два раза, существует большой запас. Другой вариант заключается в том, что я предположил, что плата питается от ±12 В, но разные напряжения могут давать более точные частоты.)

Модем работал со скоростью до 600 бод. Это соответствовало 100 символам в секунду для 6-битных символов или 75 символам в секунду для 8-битных символов. Осциллограмма ниже показывает изменение сигнала со скоростью 600 бод. На этой скорости один бит представлен всего 1,7 циклами более низкой частоты, поэтому у приемника не так много информации, чтобы различать 0 и 1 бит. Также обратите внимание, что форма волны несколько искажена, это не чистая синусоида.

Выходной сигнал при подаче битов со скоростью 600 бод (т.е. прямоугольная волна 300 Гц).
Выходной сигнал при подаче битов со скоростью 600 бод (т.е. прямоугольная волна 300 Гц).

Сердцем этой платы является генератор с частотной манипуляцией, который генерирует переменную выходную частоту [2]. Бит входных данных выбирает одно из двух управляющих напряжений для генератора, управляя его выходной частотой.

Генератор - довольно распространенный схема на транзисторной паре. На приведенной ниже диаграмме показано, как все работает. (Он использует PNP-транзисторы и работает от -12 вольт, поэтому земля — ​​это более высокое напряжение, что может немного сбить с толку.) Предположим, транзистор T1 включен, а T2 выключен. Конденсатор C2 разряжается через резистор R2, как показано на рисунке. Когда его напряжение достигает примерно -0,6 вольт, включается T2. Это подтянет правую сторону C1 к земле; ранее она была на -12 вольт из-за R4. Это заставляет левую сторону C1 подскочить примерно до +12 вольт, отключая T1.

Затем процесс повторяется с другой стороны, при этом C1 разряжается через R1, пока T1 не выключится, а T2 не включится. В результате контур колеблется. Скорость разряда регулируется значениями R1 и R2 и управляющим напряжением; более низкое напряжение приведет к более быстрой разрядке конденсаторов и, следовательно, к более частым колебаниям.

Осциллограммы генератора, показывающие чередующиеся циклы затухания.
Осциллограммы генератора, показывающие чередующиеся циклы затухания.

Кривые выше показывают действие генератора, производящего голубой выходной сигнал. Желтая кривая показывает напряжение на левой стороне C2, розовая кривая показывает напряжение на левой стороне C1, а синяя кривая показывает напряжение на правой стороне C2. Розовые и синие кривые показывают чередующиеся циклы разряда конденсаторов; чем быстрее разрядка, тем выше выходная частота.

Схема генератора в основе платы.
Схема генератора в основе платы.

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

Прямоугольный сигнал и результаты после фильтрации.
Прямоугольный сигнал и результаты после фильтрации.

Схема задержки

Другая интересная схема принимает разрешающий сигнал и выводит этот сигнал с задержкой на 13 миллисекунд. Когда я производил реверс-инжиниринг этой схемы (ниже), я решил, что она просто буферизует сигнал, но для этого она показалась слишком сложной. Я измерил ее поведение и обнаружил, что она реализует задержку.

Восстановленная схема, показывающая схему задержки 13 мс на плате модема.
Восстановленная схема, показывающая схему задержки 13 мс на плате модема.

Схема содержит несколько буферов, но в основе ее лежит резисторно-конденсаторная задержка. Когда активируется линия включения, конденсатор медленно подтягивается до -12 В через резисторы, создавая задержку. На фото ниже показан конденсатор задержки и связанные с ним резисторы.

Диод (стеклянный цилиндр с полосками), резисторы (коричневые компоненты с полосками) и конденсатор (большой металлический цилиндр) создают задержку.
Диод (стеклянный цилиндр с полосками), резисторы (коричневые компоненты с полосками) и конденсатор (большой металлический цилиндр) создают задержку.

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

Осциллограмма схемы задержки.
Осциллограмма схемы задержки.

Я не знаю, зачем нужна эта схема задержки. Может быть, это дает осциллятору время на то, чтобы успокоиться после включения? Может быть, протокол модема использует 13 миллисекунд сигнала для обозначения начала нового сообщения?

Некоторые сведения о телепроцессинге

Если вы пользовались компьютерами в 1990-х годах, то, вероятно, использовали модем для коммутируемого доступа, подобный приведенному ниже, чтобы вызывать провайдера, например AOL, по своей телефонной линии. Название «модем» является сокращением от MOdulator-DEModulator, поскольку он модулирует аналоговый сигнал для кодирования цифровых битов, а также демодулирует полученный сигнал обратно в цифровой. Таким образом, модем обеспечивал связь между цифровыми сигналами вашего компьютера и аналоговыми частотами, передаваемыми по телефонным линиям.

Модем Hayes 1982 г. Фото Aeroid (CC BY-SA 4.0).
Модем Hayes 1982 г. Фото Aeroid (CC BY-SA 4.0).

Однако история модемов уходит корнями гораздо глубже. IBM представила то, что они называли «телепроцессингом», в начале 1940-х годов, преобразовывая данные с перфокарт на бумажную ленту и отправляя их по телеграфным линиям для армии США [1]. В начале 1950-х годов устройство под названием Data Transceiver удалило промежуточную бумажную ленту из процесса, подключившись напрямую к телефонной линии. С появлением мэйнфрейма IBM System / 360 в 1964 году телепроцессинг получил широкое распространение и использовался для многих приложений, таких как удаленный ввод данных и удаленные запросы. Банки и авиалинии активно применяли телепроцессинг. Системы разделения времени позволяли пользователям получать доступ к мэйнфреймам через удаленные терминалы, что-то вроде облачных вычислений. Телепроцессинг использовался даже на Олимпийских играх, данные передавались между удаленными местами и центральным компьютером, который вычислял баллы.

В то время модемы были большими шкафами. Плата, которую я исследовал, могла использоваться в блоке управления передачей IBM 1026 (см. ниже) [3]. Это недорогое устройство было разработано, чтобы «сделать скромный старт в удовлетворении ваших потребностей в передаче данных ... пока не придет время перейти на более мощные блоки управления передачей». Он мог подключать компьютер, такой как IBM 1401, к одной линии связи.

Блок управления передачей IBM 1026. Фото из Музея компьютерной истории.
Блок управления передачей IBM 1026. Фото из Музея компьютерной истории.

Более крупные объекты могли использовать блок управления передачей IBM 1448 (см. ниже). Этот шкаф размером с холодильник имел высоту 5 футов и поддерживал до 40 каналов связи.

Блок управления передачей IBM 1448 был большим шкафом. Фотография из руководства IBM 1448 Transmission Control Unit.
Блок управления передачей IBM 1448 был большим шкафом. Фотография из руководства IBM 1448 Transmission Control Unit.

В настоящее время люди часто используют кабельный модем или DSL-модем для подключения к Интернету. К счастью, технологии значительно улучшились, и эти модемы не такие большие, как в 1960-х годах. Скорости также значительно улучшились; современное сетевое соединение со скоростью 180 Мбит / с в 300 000 раз быстрее, чем плата модема на 600 бод, которую я исследовал. С такой скоростью веб-страница, которая сейчас загружается за секунду, грузилась бы почти 3 месяца!

Заключение

Вам может показаться чрезмерно подробным анализ какой-то случайной печатной платы. Но мне было любопытно узнать о ней из-за ее необычного трансформатора. Я также подумал, что было бы интересно провести реинжиниринг платы, чтобы посмотреть, как IBM делала аналоговые схемы в 1960-х годах. Надеюсь, вам понравился этот взгляд на винтажную плату модема.

Примечания и ссылки

  1. Для получения дополнительной информации см. Введение в телепроцессинг. Техническая информация приведена в Справочнике по телепроцессингу — Общие сведения на странице 7-7, где деталь 373807 (моя плата) указана в качестве платы передатчика типа 2A. Затем на странице 7-30 описываются некоторые характеристики этого типа модема. IBM Teleprocessing 1940-1960 предоставляет исторический взгляд. ↩ ↩

  2. Генератор по сути является генератором, управляемым напряжением (VCO). Однако, поскольку для этого требуется всего два разных входных напряжения (около -2,5 и -9 вольт), схема не так сложна, как типичный VCO, который требует широкого диапазона входов и должен иметь линейный отклик. ↩

  3. Модемная карта, которую я исследовал, могла использоваться с системой передачи данных IBM 1050 или 1060, которая, как я полагаю, была подсистемой удаленного терминала. Он также может использоваться с блоками управления передачей IBM 1448 и IBM 1026. (IBM 1448 подключен к компьютеру IBM 1410 или IBM 7010.) ↩

Источник: https://habr.com/ru/company/timeweb/blog/589115/


Интересные статьи

Интересные статьи

2021 год — знаковый для Python: в рейтинге популярности TIOBE он занял первое место. Поэтому сегодня публикуем статистику зарплат разработчика на Python за последние 10 лет. Возьмём условного Pyt...
Источник От игровых ноутбуков на новых GPU от Nvidia до компьютеров с двумя экранами — составили список геймерских лэптопов, которые мы хотим протестировать в 2021 году больше всего. ...
Осенью желтеют листья, зимой выпадает первый снег, с началом весны зацветают нарциссы, летом дни долгие и жаркие — в умеренных широтах Европы и Америки четыре поры г...
Привет, Хабр! Я люблю считать и собирать данные! 2020 год состоял из 8784, 4874 из которых я смог учесть в собранной мною статистике. Я знаю как потратил 55% всего времен...
Реверс-инжиниринг протокола Ngrok v2ngrok — это сервис, позволяющий создавать туннели на локальный компьютер пользователя. Иными словами, резервируется публичный адрес, все обращения по кот...