Ознакомление с микроконтроллерами TMS320F28xx(x) фирмы Texas Instruments

Ознакомление с микроконтроллерами TMS320F28xx(x) фирмы Texas Instruments

Цель: Простыми словами рассказать об DSP микроконтроллерах Texas Instruments семейства TMS320F28xx(x). Статья направлена для с целью поверхностного знакомства. Статья про чип TMS320F28xxx первая, так как я только не давно начал на практике к ним подходить, и в статье может быть кое что ещё «сыро». Однако, написанного тут должно быть достаточно, чтобы понять, что из себя представляет данное семейство DSP-микроконтроллеров, а также для чего его можно применить на практике. Будет только поверхностная информация, аналоги которой также можно найти в интернете. Так как на русском языке таких статей не так уж и много, то эта статья восполнит этот маленикий пробел. Статья будет затрагивать основы для работы с чипами TMS320F2808 и TMS320F28335.

Texas Instruments – американская фирма с центральным офисом в Далласе

DSP – семейство контроллера

TMS320F28xx(x) – название чипа

Общая информация: В обзоре будут рассматриваться 2 чипа, похожих по своим параметрам и наиболее популярные и, следовательно, и легко приобретаемые:

— TMS320F2808 — C2000 32 bit 28x Fixed-point Series

— TMS320F28335 — C2000 32 bit 28x Delfino™ Floating-point Series

Между собой два микроконтроллера TMS320F2808 и TMS320F28335 во многом идентичные, только TMS320F2808 немного скромней, а TMS320F28335 более навороченный, и об этом будет сказано ниже.

TMS320F28xx(x) – это одночиповое решение: Digital Signal Controller (DSC) + Digital Signal Processor (DSP) и все это иногда называют DSP и иногда для простоты восприятия «микроконтроллер».

На самом деле существует кроме C2000 еще и другие архитектуры(C5000, C6000), но мы их рассматривать тут не будем.

Микросхемы серии TMS320F28xx(x) – это вид цифровых сигнальных процессоров, с 32х битной шиной и имеет большой перечень микроконтроллеров в своём семействе.  Вы всегда сможете найти информацию более детально на сайте TI в раздела семейства TMS320F28 ядра C2000. C2000 – это дешевые и мощные DSP, с вычислительной мощностью у TMS320F2808 = 100MIPS и у TMS320F28335 = 150MIPS. Некоторые из этих микроконтроллеров, например TMS320F28335, содержат «плавающую точку», в то время как у TMS320F2808 фиксированная точку.

Заметка: На сайте TI постоянно что-то меняется, так что используйте поиск.

Основные параметры, TMS320F2833x:

 

Семейство TMS320F28xxx из года в год пополняется новыми чипами, это можно увидеть из следующей  картинки, она хоть и старая, но поясняющая политику компании Texas Instruments в отношении микроконтроллеров этого семейства.

 

Тут вы можете и оценить стоимость. Надо заметить, что сейчас цена существенно изменилась (информация на 2008г). Например, TMS320F2808 стоит около 11$.

 

Возможности DSP микроконтроллера — F280x, F2801x, C280x

• High-Performance Static CMOS Technology

  • – 100 MHz (10-ns Cycle Time)
  • – 60 MHz (16.67-ns Cycle Time)
  • – Low-Power (1.8-V Core, 3.3-V I/O)Design

• JTAG Boundary Scan Support (1)

• High-Performance 32-Bit CPU ( TMS320C28x™)

  • – 16 x 16 and 32 x 32 MAC Operations
  • – 16 x 16 Dual MAC
  • – Harvard Bus Architecture
  • – Atomic Operations
  • – Fast Interrupt Response and Processing
  • – Unified Memory Programming Model
  • – Code-Efficient (in C/C++ and Assembly)

• On-Chip Memory

  • – F2809: 128K x 16 Flash, 18K x 16 SARAM
  • F2808: 64K x 16 Flash, 18K x 16 SARAM
  • F2806: 32K x 16 Flash, 10K x 16 SARAM
  • F2802: 32K x 16 Flash, 6K x 16 SARAM
  • F2801: 16K x 16 Flash, 6K x 16 SARAM
  • – 1K x 16 OTP ROM (Flash Devices Only)
  • – C2802: 32K x 16 ROM, 6K x 16 SARAM — 12.5 MSPS (F2809 only) 160 ns

• Boot ROM (4K x 16) 267 ns

  • – With Software Boot Modes (via SCI, SPI, CAN, I2C, and Parallel I/O)
  • – Standard Math Tables

• Clock and System Control

  • – Dynamic PLL Ratio Changes Supported
  • – On-Chip Oscillator
  • – Watchdog Timer Module

• Any GPIO A Pin Can Be Connected to One of the Three External Core Interrupts

• Peripheral Interrupt Expansion (PIE) Block That

  • – Protects Flash/OTP/L0/L1 Blocks
  • – Prevents Firmware Reverse Engineering

• Three 32-Bit CPU Timers

  • – Up to 6 HRPWM Outputs With 150-ps MEP
  • – Up to 16 PWM Outputs

 

• Enhanced Control Peripherals Resolution

  • – Up to Four Capture Inputs
  • – Up to Two Quadrature Encoder Interfaces
  • – Up to Six 32-bit/Six 16-bit Timers

• Serial Port Peripherals

  • – Up to 4 SPI Modules
  • – Up to 2 SCI (UART) Modules
  • – Up to 2 CAN Modules
  • – One Inter-Integrated-Circuit (I2C) Bus

• 12-Bit ADC, 16 Channels

  • – 2 x 8 Channel Input Multiplexer
  • – Two Sample-and-Hold F2801x: 16K x 16 Flash, 6K x 16 SARAM
  • – Single/Simultaneous Conversions
  • – Fast Conversion Rate: C2801: 16K x 16 ROM, 6K x 16 SARAM 80 ns
  • — 6.25 MSPS (280x)
  • — 3.75 MSPS (F2801x)
  • – Internal or External Reference

• Up to 35 Individually Programmable, Multiplexed GPIO Pins With Input Filtering

• Advanced Emulation Features

  • – Analysis and Breakpoint Functions
  • – Real-Time Debug via Hardware

• Development Support Includes

  • – ANSI C/C++ Compiler/Assembler/Linker
  • – Code Composer Studio™ IDE
  • – DSP/BIOS™ Supports All 43 Peripheral Interrupts
  • – Digital Motor Control and Digital Power Software Libraries

• Low-Power Modes and Power Savings

  • – IDLE, STANDBY, HALT Modes Supported (1) IEEE Standard 1149.1-1990 Standard Test Access Port and Boundary Scan Architecture
  • – Disable Individual Peripheral Clocks

• 128-Bit Security Key/Lock

 

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

Более наглядная и полная таблица, находится на сайте Texas Instruments.

 

Аббревиатура — DSP — ”Digital Signal Controller”.

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

TMS320F28xxx принадлежит к группе устройств, которая называется: “Digital Signal Controller (DSC)”. В компьютерном восприятии, иногда люди подразумевают его как: “Microprocessor”, “Microcomputer” или “Microcontroller” для специфического описания электронного устройства. Тогда как он называется как цифровой сигнальный процессор — “Digital Signal Processors (DSP)”.

Чтобы избегать путаницы в будущем, давайте введем более точные определения:

  • • Microprocessor (μP)
  • • Micro Computer
  • • Microcontroller (μC)
  • • Digital Signal Processor (DSP)
  • • Digital Signal Controller (DSC)

 

Нас интересует: что такое MicrocontrollerC):

– Центральное устройство для объединения устройств или устройств с малым или большим количеством других микросхем:

– Оперирующее другими устройствами, через встроенную периферию:

– Могут иметь любую из базовых архитектур:

» „Von Neumann“- Архитектура

» „Harvard“ – Архитектура

 

Нужно ещё кое-что пояснить относительно строения архитектур:

– „Von Neumann“ — Архитектура:

» Общая область памяти между кодом и данными

» Общая шина память между кодом и данными

» Например: Семейство Intel‘s x86 Pentium Processor

 

– „Harvard“ – Архитектура:

» Две или более независимых области памяти для кода и данных

» Две или более независимых системных шины памяти для кода и данных

 

Микроконтроллеры бывают с обеими архитектурами Von Neumann и Harvard. У TMS320F28xx(x) — архитектура гарвардского типа (Harvard).

Выглядит примерно так:

 

 Функционально, схему микроконтроллера можно разделить следующим образом:

 

Что такое Микрокомпьютер «Micro Computer»:

– Микрокомпьютер => Микропроцессор(μP) + Память + Периферия.

Пример: Ваш Desktop –PC

 

Что такое MicroprocessorP):

Периферия:

– Digital Input / Output Lines

– Analogue to Digital Converter (ADC)

– Digital to Analogue Converter (DAC)

– Timer / Counter units

– Pulse Width Modulation ( PWM) Output Lines

– Digital Capture Input Lines

– Network Interface Units:

» Serial Communication Interface (SCI) — UART

» Serial Peripheral Interface ( SPI)

» Inter Integrated Circuit ( I2C) – Bus

» Controller Area Network (CAN)

» Local Interconnect Network (LIN)

» Universal Serial Bus (USB)

» Local / Wide Area Networks (LAN, WAN)

– Graphical Output Devices

 

Что такое Digital Signal Processor (DSP)

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

– Схож с Microprocessor(μP), то есть как ядро компьютерной системы.

– Дополнительный Hardware Units, для быстрого вычисления математических операций:

» Дополнительный Hardware Multiply Unit(s)

» Дополнительный Pointer Arithmetic Unit(s)

» Дополнительный Bus Systems for parallel access

» Дополнительный Hardware Shifter для масштабирования и/или умножения/деления на 2n

 

DSP очень часто содержит в себе алгоритмы:

— Finite Impulse Response Filter

— Infinite Impulse Response Filter

— Convolution

— Discrete Fourier Transform

— Discrete Cosine Transform

 

Что такое DSP TMS320F28xx(x):

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

Например, АЦП у них столь мудреный и гибкий, что некоторые вещи в силу своей неожиданности просто не сразу могут усесться в голове, в общем понимании. Так что, не брезгуйте  спрашивать у людей, кто уже сталкивался с TMS320F28xx(x), это сэкономит ваше время.

 

Какие есть среды разработки под эти чипы:

На сайте Texas Instruments можно найти среду разработки CCS. Эта среда содержит в своем составе компилятор языка C/C++, а также конфигуратор для выбора отладчика или симулятора. Программа программатор, также входит в состав CCS.

Скачать можно по ссылке — http://www.ti.com/tool/ccstudio.

 

Прошивка и загрузка программы:

Фирма Texas Instruments предусмотрела много разных возможностей, вплоть до загрузки чипа с любой коммуникационной периферии. Перед загрузкой программы, она должна быть предварительно записана в микроконтроллер, для этого в составе CCS есть предназначенная для этого утилита и вызывается она с рабочего проекта. Однако версия на сайте, имеет ограничение по объему, до 32к. Если вам понадобится полная версия, там же на сайте можно её сразу купить.

Для примера возьмем TMS320F2833х (как более привлекательное семейство), и ознакомимся с ним.

 

Таким образом видно, что средствами микроконтроллера представлена возможность загружаться почти с всей коммуникационной периферии, I/O-шины  и памяти.

Кроме всего, в дополнение всего вышесказанного, я хотел бы поделиться ссылкой на одну интересную е-книгу – TMS320F2812 DIGITAL PROCESSOR — IMPLIMENTATION TUTORIAL  (если ссылка будет битая – гугл в помощь) в которой некоторые моменты расписаны лучше, чем в даташите.

 

7 комментариев

  1. Прицепил архив с призентациями по SYSBIOS_6.50 (http://www.uschema.com/all/ppt_SYSBIOS_rev6_50.zip) он же SYS/BIOS или DSP/BIOS(ранее так назывался). Очень интересные и детальные призентации от Texas Instruments.
    В примерах рассматривается часто TMS320C6xxx, но также для TMS320F28xxx полностью подходит, особенн если просто для ознакомления в целях общего понимания.

Добавить комментарий