CraftDuino v2.0
  • - это CraftDuino - наш вариант полностью Arduino-совместимой платы.
  • CraftDuino - настоящий конструктор, для очень быстрого прототипирования и реализации идей.
  • Любая возможность автоматизировать что-то с лёгкостью реализуется с CraftDuino!
Просто добавьте CraftDuino!

Новогоднее исследование ADSL-роутера на базе Linux - 0x1 - разбираем :)


0x0 — введение
0x1 — разбираем :)

Вот и 1-е января 2011-го года! И если Вы уже немного отошли от новогоднего застолья и Вам не хочется выходить из дома, то самое время зажечь на столе лампу, взглянуть за окно и насладиться домашним уютом в этот замечательный зимний день. Домашние тапочки, горячий чай, спокойствие и покой… Теперь, можно приступить к исследованию мира встраиваемых систем, шаг за шагом продвигаясь через дебри электронных схем, листинги кода и готичные экраны nix-овой консоли.
Сегодня займёмся разборкой своего подопытного устройства.
Для этого нам понадобятся всего-лишь две отвёртки — плоская и крестовая.
Итак, в качестве подопытного у нас ADSL-модем:
ZTE ZXDSL831AII
почти идентичный ADSL-модему D-link DSL-2500U.

Вот, что входит в комплект модема:

* модем
* блок питания
* сплиттер
* два телефонных провода (RJ-11)
* патчкорд (RJ-45)
* USB-кабель типа A-B

Как видите — просто куча бонусов :) Тот же USB-кабель можно использовать для подключения Arduino/CraftDuino — красота :)

Внешний вид самого модема:


сверху:


со стороны разъёмов:


Пора разбирать :)

Ещё раз повторяю, что эксперименты над своим оборудованием Вы совершаете на свой страх и риск.

Перевернём модем днищем вверх, плоской отвёрткой отколупнём полусферы резиновых ножек и увидим головки саморезов под крестовую отвёртку.


Выкручиваем саморезы и аккуратно снимаем крышку. Обратите внимание — со стороны светодиодов находятся две защёлки:


Видим плату, которая больше ничем не закреплена, вынимаем её из корпуса:


Обратите внимание на разрез платы, который отделяет высоковольную часть (60В телефонной линии) от остальной схемы.

Самое интересное на этой схеме — это три больших микросхемы в центре:
— это центральный процессор
— микросхема ОЗУ (RAM)
— микросхема флеш-памяти (FLASH)


Т.е. имеем вполне полноценный одноплатный компьютер!
Обратите внимание, на 4-пиновый разъём в левом нижнем углу (это если смотреть по фотографии — на самом деле — судя по шелкографии (надписям) на плате — её нужно рассматривать разъёмами к себе)
Так вот, этот разъём, помеченный на плате, как J5 — это выведенный последовательный порт!

Замечу, что в других модемах служебные разъёмы скорее всего не будут напаены и придётся делать это самостоятельно.
К сожалению, в рассматриваемой модеме не выведен JTAG (специальный интерфейс для отладки). Поэтому пока его рассматривать не будем.

Интерфейс JTAG (Joint Test Action Group) служит для тестирования печатных плат с помощью функции граничного сканирования (boundary scan), программирования энергонезависимой памяти и отладки процессора (debug).
Для подключения к LPT-порту есть простая схема из нескольких резисторов.


Распиновка J5
1-GND
2-TX
3-RX
4-Vcc



Рассмотрим наши микросхемы внимательнее и попробуем погуглить, что же нам досталось:


смотрим маркировку микросхем, вспоминаем ключевое слово: datasheet (техническое описание) и используем гугл ;)

Итог поисков:

наш процессор — Broadcom BCM6338:
производитель: broadcom
datasheet (единственное, что нашлось)

BCM6338 — ADSL2+ Router Solution

The BCM6338 combines an ADSL2+ transceiver and analog front end (AFE) with a high-performance MIPS32 CPU, a 10/100 Ethernet interface, and a USB 1.1 interface into a single high-performance, cost-effective monolithic device.

Single-chip ADSL2+ bridge/router solution with seamless, multiuser support of Ethernet and USB home LAN technologies


BCM6338 — сочетает в себе высокопроизводительный центральный процессор 280DMIPS MIPS32, приёмо-передатчик ADSL2+, а так же интерфейсы 10/100 Ethernet и USB 1.1.

MIPS (англ. Microprocessor without Interlocked Pipeline Stages) — микропроцессор, разработанный компанией MIPS Computer Systems (в настоящее время MIPS Technologies) в соответствии с концепцией проектирования процессоров RISC (то есть для процессоров с сокращенным набором команд).

В настоящее время различные реализации MIPS используются, в основном, во встроенных системах, например, в устройствах Windows CE, маршрутизаторах, шлюзах, xDSL и кабельных модемах, карманных компьютерах, а также в игровых консолях(Sony PlayStation 2).

Низкое энергопотребление и температурные характеристики встраиваемых MIPS-архитектур, широкие возможности внутренних функций делают этот микропроцессор универсальным для многих устройств.


смотрим далее:

ESMT M12L64164A -7T
— чип памяти:
SDRAM 1M x 16 Bit x 4 Banks, 143 MHz, TSOP 54
standard 3.3V power supply
54 Pin TSOP (Type II)
производитель: EliteMT (ESMT)
datasheet

чип предоставляет 64 Mbit == 8 MByte
Итого, у нас 8 Мегабайт оперативы :)

идём дальше:

MX29LV160CBTC-70G
— микросхема FLASH-памяти, объёмом 2Mb

MX29LV160C T/B is a 16-mega bit Flash memory
organized as 2M bytes of 8 bits or 1M words of 16 bits.
ресурс перезаписи у Flash-памяти:
100,000 minimum erase/program cycles

производитель: Macronix International
datasheet

Т.о. имеем одноплатный компьютер с центральным процессором Broadcom BCM6338 с частотой 240 Mhz и архитектурой MIPS, 8 Мегабайт оперативной памяти и 2 Мегабайта Flash-памяти.
Доступные интерфейсы:
Ethernet, USB 1.1, Serial.

читать далее: 0x2 — знакомимся с программной частью

Ссылки:
http://en.wikipedia.org/wiki/MIPS_architecture
http://ru.wikipedia.org/wiki/MIPS_(архитектура)
  • +1
  • 1 января 2011, 18:22
  • noonv

Комментарии (10)

RSS свернуть / развернуть
+
0
Интересно, какое максимальное кол-во ОЗУ способен переварить BCM6338? У меня с моим экземпляром была такая идея (в теории): нарастить ОЗУ, переделать USB порт с эмуляции ethernet на просто USB (интересно, там этот порт подключен напрямую, или через хитровывернутую микруху эмулирующую ethernet over USB?) и подключить к нему USB hub. Далее грузим минимальное ядро и через kexec грузим нормальное с USB флешки.
Эх, жаль datasheet на BCM6338 нет. :(
avatar

krmolot

  • 1 января 2011, 22:58
+
0
Не то что даташита нет — краткое описание есть download.siliconexpert.com/pdfs/2008/08/30/semi_ap/manual/brc/dsl/6338-pb00-r.pdf, но толку от него… А полного да, нету. А тут есть распиновка BCM6348SKFBG, по идее у BCM6338 такая-же.
avatar

rammires

  • 6 января 2011, 06:41
+
0
Сори, адрес не написал :( pudeev.livejournal.com/37410.html
avatar

rammires

  • 6 января 2011, 06:43
+
0
угу — видел.
avatar

noonv

  • 6 января 2011, 11:31
+
0
Спасибо. Но к сожалению без рентгена мне эта распиновка ничего не говорит. =) Правда и мопеда у меня сейчас поблизости не имеется.
п.с. Сейчас прошелся по wiki.openwrt.org/toh/start — там более 16 Мегабайт ОЗУ на BCM6338 не ставят, а жаль.
avatar

krmolot

  • 6 января 2011, 18:52
+
0
хм… собственно в статье этот документ и приводится ;)
avatar

noonv

  • 6 января 2011, 11:31
+
0
Вообще странно, у DSL-2540B, он на этом-же чипе, 16Мб ОЗУ, да и собственно та-же M12L64164A -7T или S25FL016A как у меня — тоже 16Мб. Интересно, а в модеме используется всего 8Мб. А можно-ли как-то «активировать» и вторые 8 метров? И кстати по usb — у меня d-link-2500u — , без usb, но на плате предусмотрены места и разводка для usb — просто не стоит разъем и несколько резюков/диодов. Может в курсе — какие у них должны быть номиналы?
avatar

rammires

  • 8 января 2011, 02:32
+
+1
Я имел в виду отпаять микросхему оперативной памяти и припаять на нее место более вместительную. Т.е., вместо 8 Мегабайт (не путайте с мегабитами) поставить… эээ ну, скажем, 32, или 64.* :D
А там такой облом. :(

* На подобии этого перца: www.dd-wrt.com/wiki/index.php/Увеличение_оперативной_памяти_D-Link_DIR-320
avatar

krmolot

  • 8 января 2011, 10:28
+
0
Ну вообще да, нагородил я там… Но вообще меня больше интересует вопрос объема ПЗУ — 2Мб — у 2500U прошивка почти один в один и судя по всему добавить туда еще что-то проблематично. Прошелся по bin-ам UPX-ом — как и предполагалось эффекта 0 — прошивка то и так сжатая lzma. Остается правда вариант избавиться от web-морды, там почти 900Кб html-ов, а настраивать если что через telnet…
avatar

rammires

  • 9 января 2011, 22:36
+
0
жестоко
avatar

Fractal_Flame

  • 2 января 2011, 17:02

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.