VoIP-маршрутизатор

Заказчик

Компания-разработчик VoIP-систем.

Проект

Разработка аналогового телефонного адаптера (АТА) для передачи речевого сигнала по IP-сетям.

Задача

Разработать устройство для VoIP-телефонии на базе процессора Blackfin BF527. Оно должно иметь два FXS-порта, один порт FXO, два Ethernet-порта и три порта USB-host. Программное обеспечение должно быть реализовано на базе OC Linux.

Решение

Общая схема инфраструктуры:

Основные задачи по разработке:

  • Выбор и оптимизация стоимости элементной базы
  • Разработка принципиальной схемы
  • Проработка конструктивных особенностей и трассировка печатной платы
  • Отладка опытных образцов
  • Разработка и тестирование программного обеспечения

1. Аппаратная платформа

Перед стартом проекта была выбрана и оптимизирована элементная база, что позволило минимизировать себестоимость устройства при массовом производстве.

В качестве центрального процессора системы был выбран ADSP-BF527 семейства Blackfin компании Analog Devices. Характеристики: рабочая частота в 500 МГц, богатая периферия, DSP-подобные инструкции для обработки аудио/видео, интегрированный контроллер Ethernet.

В устройстве были реализованы следующие интерфейсы:

  • 1 x 100/10Mbit Ethernet
  • 1 x 100/10Mbit Ethernet + PoE IEEE 802.3e
  • 3 х USB 2.0 Host
  • 1 x RS-232
  • 1 x FXO
  • 2 x FXS

Краткое описание интерфейсов FXS и FXO:

  • FXS — голосовой интерфейс для подключения стационарного телефона (аббревиатура FXS применима к любому оборудованию, которое телефон распознает как АТС).
  • FXO — разъем для аналоговой телефонной линии.

Интерфейсы FXS и FXO были реализованы на чипах компании Zarlink:

  • Чип Zarlink Le89316 реализует один порт FXS и один FXO
  • Чип Zarlink Le89116 реализует один порт FXO

Оба чипа имеют одинаковые интерфейсы.

Для передачи звука использовался интерфейс TDM (многоканальный режим передачи звука с разделением каналов по времени). Управление портами и потоком реализовано посредством интерфейса MPI, который физически совпадает с интерфейсом SPI. Интерфейс MPI разработан для реализации удаленного запуска процедур.

Ethernet-чип подключен по интерфейсу RMII, конфигурируется через SMI-интерфейс, включает в себя два PHY 100/10 Мб/с и единый MAC. Отличительная особенность микросхемы состоит в том, что она генерирует частоту 50 МГц для процессора, таким образом отпадает необходимость во внешнем генераторе.

В связи с тем, что BF527 не поддерживает аппаратный SMI-интерфейс, он был реализован программно, как на уровне загрузчика, так и на уровне ядра Linux.

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

2. Программное обеспечение

Компания Analog Devices обеспечивает техническую поддержку двух основных подходов в проектировании программного обеспечения для процессоров Blackfin. Первый из них — метод с использованием среды разработки Analog Devices VisualDSP, он применяется при разработке глубоко встраиваемых систем с жесткими требованиями к режиму реального времени. Второй подход — это использование операционной системы uCLinux, которая дает все преимущества полноценной операционной системы за счет повышенных требований к памяти и производительности. Для данного проекта было выбрано решение на базе uCLinux, исходя из наличия хорошей поддержки сетевых подсистем, в том числе и IEE802.3 и стека USB-Host для устройств класса USB Mass-Storage.

Компания Analog Devices развивает дистрибутив uCLinux (blackfin.uclinux.org). В ходе выполнения проекта использовалась версия 2010R1-RC1.

Также в проекте применялось следующее открытое программное обеспечение:

  • Ядро Linux v. 2.6.34
  • Начальный загрузчик U-boot

Преимущества

  • Большое количество доступных портов
  • Низкая стоимость конечного продукта