В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

  • Alliance Semicon
  • Altera
  • Amic
  • Analog Devices
  • Atmel
  • Austriamicrosystems
  • Avago
  • Cypress
  • Cree
  • Exar
  • Fairchild
  • Freescale
  •  
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации





    Главная страница > Компоненты > Freescale
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации


    Цифровые сигнальные процессоры семейства DSP56F800

  • Состав семейства DSP56F800
  • Аппаратные средства поддержки
  • Программные средства поддержки
  • DSP56F800 - это новое семейство 16-разрядных DSP фирмы Motorola. Выполненные по гибридной технологии процессоры этого семейства сочетают производительность и вычислительную мощность DSP, быструю встроенную FLASH-память программ и данных и периферийные узлы, характерные для встраиваемых микроконтроллеров.

    Ядро DSP56F800 (рис.1) имеет производительность до 40 MIPS при частоте кварцевого генератора 80 МГц.


    Рис.1 Ядро DSP56F800

            Арифметико-логическое устройство данных (Data ALU) содержит три 16-разрядных входных регистра и два 36-разрядных регистра-аккумулятора, умножитель-аккумулятор (MAC), два устройства сдвига (SHIFTER), устройство ограничения результата (LIMITER). Операции могут выполняться как над содержимым регистров ALU, так и над содержимым ячеек памяти. Возможно использование целочисленной арифметики (поддержка функций микроконтроллера) или арифметики над дробными числами (поддержка DSP-алгоритмов).

            Благодаря наличию трех адресных шин и четырех шин данных одновременно с выполнением текущей операции во входные регистры ALU могут загружаться из памяти два операнда.

            Устройство генерации адреса (AGU) содержит два ALU, что позволяет ему каждый машинный цикл генерировать по два адреса для блоков памяти программ или данных. При вычислении адресов возможно использование как линейной, так и модульной арифметики. Это позволяет без дополнительных затрат процессорного времени организовывать в памяти процессора циклические буферы.

            Программный контроллер (Program Controller) имеет в своем составе конвейер команд, дешифратор команд, контроллер прерываний, блок аппаратного выполнения циклов.

            Организация памяти позволяет называть DSP56F80x процессорами гарвардского типа, так как они имеют два независимых адресных пространства (по 64K байт каждое) для размещения кода программы и хранения данных.

            Часть памяти программ и часть памяти данных размещена непосредственно на кристалле, и, в свою очередь, каждый тип встроенной памяти состоит из двух блоков: RAM и FLASH.

            В таблице 1 представлены размеры встроенных на кристалл блоков памяти для различных DSP56F800.

    On-Chip Memory DSP56824 DSP56F801 DSP56F803 DSP56F805 DSP56F807 DSP56F826 DSP56F827
    Корпус 100LQFP 48LQFP 100LQFP 144LQFP 160LQFP 100LQFP 128LQFP
    Flash-память программ, KBytes - 16 64 64 120 63 126
    RAM-память программ, KBytes 1 2 1 1 4 1 2
    Flash Boot-блок F программ, Kbytes - 2 2 -
    RAM-память данных, Kbytes 3.5 2 4 4 8 8 8
    Flash-память данных, KBytes - 4 8 8 16 4 8
    Таймеры 3 16-разрядных таймера 1 Quad Timer module 2 Quad Timer module 4 Quad Timer module 4 Quad Timer module 1 Quad Timer module 1 Quad Timer module
    АЦП - Dual ADC Module
    (2x4 Input, 12 Bit)
    Dual ADC Module
    (2x4 Input, 12 Bit)
    Dual ADC Module
    (2x4 Input, 12 Bit)
    2x Dual ADC Module
    2 x (2x4 Input, 12 Bit)
    - 10 Input 12 Bit
    Модуль ШИМ - PWM module на 6 каналов PWM module на 6 каналов 2 x PWM module на 6 каналов 2 x PWM module на 6 каналов - -
    Дешифратор квадратурной импульсной последовательности - - Quadrature Decoder 2 x Quadrature Decoder 2 x Quadrature Decoder - -
    Последовательный аcинхронный интерфейс - SCI SCI 2 x SCI 2 x SCI SCI SCI
    Последовательный периферийный интерфейс 2 x SPI SPI SPI SPI SPI SPI SPI
    Последовательный синхронный интерфейс - - - - - SSI SSI
    Контроллер CAN-шины - - Spec. 2 A/B Spec. 2 A/B Spec. 2 A/B - -
    Календарь-часы - - - - - TOD -

            Кроме встроенной памяти, DSP56F800 дополнительно могут иметь внешнюю память программ и данных. При этом имеется возможность задавать различные режимы конфигурации памяти (вся память внешняя; или вся память внутренняя; или часть памяти внешняя, а часть - внутренняя). Программа может выполняться как из блоков RAM памяти программ , так и из блоков FLASH.

            Boot-блок памяти программ представляет собой блок FLASH-памяти, стираемый и программируемый независимо от основного массива встроенной FLASH-памяти программ. Это позволяет разместить в Boot-блоке программу контроля и загрузки содержимого основного блока FLASH-памяти программ, которая может вызываться, например, при срабатывании сторожевого таймера, или непосредственно из основной программы при необходимости обновить программный код процессора по одному из имеющихся интерфейсов (SCI, SPI, CAN).

            Все блоки FLASH-памяти на кристалле доступны для программирования через JTAG-интерфейс.

            Периферийные узлы, включенные в состав различных DSP56F800 и представленные в таблице 1, позволяют проектировать различные приложения без использования дополнительного микроконтроллера общего назначения.

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

            Сдвоенный модуль АЦП (Dual ADC module) содержит два мультиплексора на 4 входа, два устройства выборки и хранения и два 12-разрядных АЦП с минимальным временем преобразования 1,2 мкс. Набор регистров позволяет одновременно хранить результаты преобразования восьми измерений.

            Имеется возможность задавать последовательный или одновременный режимы работы двух АЦП. Независимо от этого схемотехника входных цепей позволяет каждую пару соседних аналоговых входов рассматривать или как два отдельных сигнала, или как один дифференциальный. Таким образом, возможно задавать различные режимы сканирования аналоговых входов, например, осуществлять последовательную выборку 8 аналоговых сигналов или иметь 4 дифференциальных сигнала и при помощи двух АЦП одновременно опрашивать сразу два из них. Возможно также иметь комбинации дифференциальных и одиночных сигналов.

            Результат преобразования может быть представлен как число со знаком или без знака и автоматически скорректирован путем вычитания заданного смещения.

            Имеется возможность синхронизировать запуск АЦП с работой модуля генерации управляющих ШИМ-сигналов.

            Модуль ШИМ (PWM module ) имеется в составе DSP56F801/803/805/807, ориентированных на управление электродвигателями. Этот модуль способен генерировать 6 независимых ШИМ-сигналов или 3 пары комплементарных ШИМ- сигналов. В последнем случае имеется возможность программировать длительность "мертвого времени" и задавать различные режимы вставки интервалов "мертвого времени" в зависимости от состояния входного сигнала, отражающего направление протекания тока в соответствующей фазе. Все это помогает приблизить форму напряжения на нагрузке к синусоидальной.

            Дешифратор квадратурной импульсной последовательности (Quadrature Decoder), которая может поступать с датчиков положения (например, c датчиков Холла), имеет в своем составе счетчик положения, счетчик числа оборотов и дифференциальный счетчик. Последний содержит код, пропорциональный скорости вращения. Дешифратор имеет в своем составе входной фильтр импульсных помех и специализированный сторожевой таймер, который позволяет устанавливать факт остановки двигателя.

            Последовательный аcинхронный интерфейс (Serial Communication Interface) позволяет выполнять обмен данными как в дуплексном, так и в полудуплексном режиме с использованием стандартного формата NRZ (старт-бит, 8 или 9 бит данных, бит паритета, стоп-бит(ы)). Возможно программирование полярности приемника и передатчика и очередности передаваемых бит. Предделитель тактовой частоты, которая имеет 13 разрядов, обеспечивает широкий диапазон скоростей обмена. Узел SCI может генерировать 8 различных прерываний и выводить процессор из режимов пониженного энергопотребления.

            Последовательный периферийный интерфейс (Serial Peripheral Interface) позволяет осуществлять синхронный дуплексный последовательный обмен данными с использованием четырех стандартных SPI выводов. Узел SPI может работать в режимах Master и Slave, имеет раздельные буферные регистры на прием и передачу. Количество разрядов в посылке программируется и может составлять от 2 до 16 бит. Максимальная частота обмена данными составляет 20 МГц и 40 МГц в режимах Master и Slave соответственно.

            Последовательный синхронный интерфейс (Synchronous Serial Interface) является дуплексным синхронным портом, позволяющим DSP связываться с другими последовательными устройствами, включая стандартные промышленные кодеки и другие процессоры, оснащенные узлом SPI. SSI содержит независимые блоки передатчика и приемника, которые тактируются раздельно, имеют в своем составе аппаратные буферы FIFO ( 7x16 бит) на прием и передачу и могут программироваться на обмен словами различной длины (8, 10, 12, 16 бит). При работе в сетевом режиме через порт SSI к DSP может быть подключено до 32-х последовательных устройств. Программируемый предделитель позволяет обмениваться данными на стандартных для промышленных кодеков частотах.

            Контроллер CAN-шины поддерживает Specification v.2 A/B фирмы Bosch.

            Календарь-часы (Time-of-Day) имеется только в составе DSP56F826. Этот модуль содержит отдельные счетчики и регистры предустановки для секунд, минут, часов и дней. Емкость календаря составляет 65535 дней или 179,5 лет. Возможно программирование в заданное время таких событий, как генерация сигнала тревоги или выход из режимов пониженного энергопотребления.

    АППАРАТНЫЕ СРЕДСТВА ПОДДЕРЖКИ

            Для быстрейшего освоения пользователями новых сигнальных процессоров фирма Motorola разработала и выпускает целевые платы (Evaluation Board) для каждого процессора семейства DSP56F80x.

            Предлагаемые платы кроме собственно кристалла, кварца и блока питания содержат:

    • дополнительную внешнюю память: 64K - память данных, 64K- память программ;

    • 4-канальный 10 битный ЦАП;
    • узел RS232;
    • узел CAN;
    • набор триггеров Шмитта с подстраиваемым порогом срабатывания для контроля уровней токов и напряжений в целевой системе;

    • наборы кнопок и светодиодов общего назначения.

            Вся эта периферия "не навязывается" пользователю, т. к. имеются разъемы, на которые выведены сигналы непосредственно с выводов DSP, а периферия на плате может отключаться при помощи перемычек.

            Программирование DSP и полноценная внутрисхемная отладка ведется через JTAG-интерфейс.

            В комплект поставки входит кабель, присоединяемый с одной стороны к LPT- порту компьютера, а c другой стороны к JTAG-разъему на плате.

    ПРОГРАММНЫЕ СРЕДСТВА ПОДДЕРЖКИ

            В качестве программного обеспечения для DSP56F80x фирма Metrowerks предлагает пакет CodeWarrior v.4.1

            Code Warrior включает интегрированную среду для создания проекта, ассемблер, оптимизированный компилятор С/C++, компоновщик; позволяет отлаживать программу как на уровне программного кода, так и в графическом режиме, имеет удобный пользовательский интерфейс и средства для связи с целевой платой через LPT-порт по JTAG-интерфейсу для загрузки и отладки программы в рабочей системе.

            Для работы с CodeWarrior разработана библиотека Embedded Software Development Kit (SDK), которая кроме драйверов периферийных устройств и многочисленных математических функций содержит библиотеки DSP-подпрограмм, модемных функций (V8bis, V22bis, V42bis), телефонных функций (DTMF, CPT, G.165, G711,G7.26 и др.), функций шифрования (DES, 3DES), подпрограмм управления двигателями.