Программируемые системные приборы фирмы STMicroelectronics. Часть 1. Введение в PSD

№ 3’2003
PDF версия
Цель данной статьи - дать общее представление о программируемых системных приборах (PSD-приборах), их возможностях и преимуществах. В последующих статьях планируется подробнее описать основные приборы PSD, особенности их архитектуры и работы.

Цель данной статьи — дать общее представление о программируемых системных приборах (PSD-приборах), их возможностях и преимуществах. В последующих статьях планируется подробнее описать основные приборы PSD, особенности их архитектуры и работы.

Все статьи цикла:

Уверен, что подавляющее большинство читателей согласны с тем, что разработчикам, изготовителям микроконтроллерных систем и их потребителям, в особенности в условиях России, необходимо, как минимум:

  • расширять области применения микроконтроллерных систем;
  • расширять функциональные возможности микроконтроллеров;
  • повышать надежность работы и сроки их эксплуатации и
  • снижать, снижать и снижать:
    – стоимость аппаратной составляющей микроконтроллерной системы за счет применения недорогих компонентов и уменьшения количества используемых компонентов;

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

    – производственные затраты на изготовление корпусов, печатных плат, монтаж;

    – длительность производственного цикла и т. д.

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

Тем не менее, хочу обратить внимание читателей на программируемые системные приборы Easy FLASH™ PSD (EasyFLASH Programmable System Device — в дальнейшем PSD), разработанные фирмой STMicroelectronics в последние годы прошлого века, активно используемые зарубежными фирмами и, на мой взгляд, незаслуженно обойденные вниманием в нашей стране.

Системные приборы — это общее обозначение группы приборов, которые подразделяются на несколько семейств. Под термином «системные» специалисты фирмы подразумевают такие приборы, которые в первую очередь способны:

  • заменить всю системную логику, необходимую для реализации законченной микроконтроллерной системы на основе практически любых 8- или 16-разрядных микроконтроллеров, как с мультиплексируемыми, так и немультиплексируемыми шинами;
  • расширить объем системной памяти (как памяти программ, так и памяти данных);
  • расширить возможности работы с периферией;
  • обеспечить возможность внутрисистемного программирования (ISP) и программирования в условиях применения (IAP).

По утверждению специалистов фирмы STMicroelectronics, PSD стали первыми конфигурируемыми системами памяти микроконтроллеров, обеспечивающими внутрисистемное программирование (ISP) полностью пустых (незапрограммированных) приборов. Особенность ISP-программированияпрограммирования через 4-выводной стандартный или расширенный 6-выводной JTAG-порт — прямая, без задействования процессора микроконтроллера, запись потока кодов, данных и конфигурации непосредственно в PSD. Это позволяетпаять на схемную печатную плату пустые приборы и программировать их за 10–30 секунд (в зависимости от объема памяти) в самом конце сборочной линии по завершении процесса сборки, устраняя таким образом потребность в предварительном накапливании и хранении заранее запрограммированных приборов и ихмаркировке, исключая влияние температуры пайки на записываемую информацию.

Другой отличительной особенностью PSD является наличие параллельных маcсивов Flash-памяти (основной и вторичной), поддерживающих перепрограммирование в условиях применения (IAP) и обеспечивающихвыполнение процессором микроконтроллера программы из одного массива памяти во время модификации другой. Такое программирование может быть выполнено с использованием практически любой коммуникационной среды, включая Интернет.

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

Каждый прибор располагает двумя программируемыми логическими матрицами: первой, присущей всем PSD — PLD декодирования (Decode PLD — DPLD), и второй, которая в зависимости от семейства может быть PLD общего назначения (General Purpose PLD — GPLD) или комплексной (развитой) PLD (Complex PLD — CPLD). Программированием PLD декодирования обеспечивается конфигурирование прибора под интерфейс практически любого 8-разрядного (серии PSD8xx/9xx) или 16-разрядного микроконтроллера (серия PSD4000). Именно на PLD декодирования возлагается задача преобразования сигналов управления, характерных для микроконтроллеров разных фирм, в сигналы, необходимые для организации совместной работы PSD и микроконтроллера (табл. 1).

Таблица 1. 8- и 16-разрядные микроконтроллеры, поддерживаемые приборами PSD
8-разрядные (PSD серий PSD8xx/PSD9xx) 16-разрядные (PSD серии PSD4000)
Микроконтроллеры 8031/51 фирм Intel, Philips, Dallas, Atmel Corp., ISSI, OKI и другие производные от архитектуры 8031/51 Infineon – семейство C500
Dallas Semiconductor – 80C320 Motorola – 68HC05, 68HC11, 68HC08
Hitachi – серии H8/300, H8S/2100 Intel – 80C198 и 188, 80C151, 251, 930 и 931
STMicroelectronics – ST9 NEC – 784xxx
Mitsubishi – M37702M2, 38002 и 38007 Analog Devices – AduC812
Zilog – семейства Z80 и Z180 OKI – 66572 и 6657
ADSP – 21061 Neuron 3150 (Motorola, Toshiba и Cypress) и многие другие
Intel – 80186, 80196, 80296 и 386EX Motorola – 68HC12, 812, 912, 16, 683XX и M-Core
Philips – C51XA Infineon – приборы C16X
Hitachi – серия H8 STMicroelectronics – ST10
Zilog – Z280/380, Z89371 Toshiba – TMP900, TMPR3904AF
Microchip – PIC17C4xx TI – серии TMS320 и многие другие

PLD декодирования отвечает и за управление распределением памяти, и за организацию доступа к регистрам. Блоки Flash-памяти PSD могут быть отображены в любом месте пространства адресов микроконтроллера. Необходимо отметить, что наличие в приборах PSD 8-разрядного регистра страниц позволяет до 256 крат расширить адресное пространство системы.

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

Основные характеристики приборов серий PSD8xx/PSD9xx и PSD4000
Блок-схема прибора серии PSD9xx

Память

Два массива Flash-памяти, обеспечивающих программирование в условиях применения (IAP):

  • до 4 Мбит (PSD8xx/PSD9xx) и до 8 Мбит (PSD4000) основной Flash-памяти программ:
    – версии с – временем обращения 70, 90 и 120 нс;
  • 256 кбит (PSD8xx/PSD9xx) и до 512 Кбит (PSD4000) вторичной (параллельной) загрузочной памяти Flash или EEPROM.
  • SRAM емкостью до 256 кбит (с внешней батареей).

Программируемая логика

  • PLD декодирования (DPLD):
    – логика декодирования внутренних адресов;

    – гибкое распределение памяти и выбор кристаллов в любой области адресного пространства.
  • PLD общего назначения:
    – приборы семейства PSD9XX и PSD41XXG располагают простой комбинаторной PLD с количеством выходов до 24;

    – приборы семейства PSD8XX располагают сложной PLD с количеством входов до 82 и c 16 выходами, а также макроячейками с 24 входами и 24 выходами.

Порты I/O

  • До 52 выводов портов, конфигурируемых индивидуально в качестве:
    – I/O микроконтроллеров;

    – I/O PLD;

    – выходов зафиксированных адресов;

    – I/O специальных функций;

    – выходов с открытым стоком.

Регистр страниц

  • 8-разрядный регистр страниц в 256 раз расширяет адресуемое пространство.

Интерфейс шин микроконтроллеров

  • Приборы серий PSD8xx/PSD9xx конфигурируются под 8-разрядные микроконтроллеры с мультиплексируемыми и немультиплексируемыми шинами адресов/данных.
  • Приборы серии PSD4000 конфигурируются под 16-разрядные микроконтроллеры с мультиплексируемыми и немультиплексируемыми шинами адресов/данных. Обеспечивается работа с 32-разрядными микроконтроллерами в 16-разрядном режиме шины.

Модуль управления потреблением (PMU)

  • Детектирует активность микроконтроллера для переключения автоматического режима Power Down. Ток в режиме Standby не превышает 75 и 25 мкА (PSD8xx/PSD9xx) и 100 и 50 мкА (PSD4000) у приборов с напряжением питания 5 и 3 В соответственно.

Порт внутрисистемного программирования JTAG

  • Стандартный 4-выводной или расширенный 6-выводной JTAG-совместимый (IEEE 1149.1) интерфейс:
    – быстрое –начальное программирование (от 10 до 30 с, в зависимости от объема Flash-памяти) установленных на плату приборов;

    – исключает складское хранение заранее запрограммированных приборов;

    – исключает использование дорогих и относительно ненадежных установочных панелек.

Программирование в условиях применения (IAP)

  • Дистанционное обновление программных средств удаленного устройства в условиях применения практически по любому каналу связи.
  • Параллельная Flash-память поддерживает режим одновременного чтения и записи Flash-памяти.
  • Автоматическое распределение памяти.
  • Позволяет организовать разделение пространств памяти программ и данных, характерное для ряда микроконтроллеров.

Количество циклов стирания/записи

– Flash-память — минимум 100 000.

– PLD — минимум 1000.

Диапазон рабочих температур

  • Коммерческий — от 0 до 70 °C.
  • Промышленный — от –40 до 85 °C.
  • Автомобильный — от –40 до 125 °C.

Корпуса

  • 52-выводные корпуса PLCC и PQFP, 80-выводной корпус TQFP у приборов серий PSD8xx/PSD9xx.
  • 80-выводной корпус TQFP (12х12 мм) у приборов серии PSD4000.

Лидирующая роль PSD-приборов по областям применения (по данным фирмы STMicroelectronics)

Серверы и рабочие станции

  • Управление средствами отображения и мониторинг (дисплеи).
  • Средства коммуникации.

Телекоммуникации и сети

  • Мосты и маршрутизаторы.
  • Цифровые коммутаторы.
  • Беспроводные модули приемопередатчиков.
  • ISDN или HDSL.

Плоские дисплеи LCD

Управление защитой, доступом и противопожарной защитой

  • Ридеры карт идентификации.
  • Пожарная сигнализация.
  • Системы обеспечения безопасности.
  • Системы внешнего и внутреннего наблюдения.

Принтеры

  • Высокопроизводительные принтеры.
  • Платы интерфейса.

Средства мониторинга, контроля состояния

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

Средства управления производственными процессами

  • Управление процессом, контроль и измерение.

Управление отображением информации

  • Дисплеи отображения текущего состояния.
  • Контроллеры мониторов.
  • Видеодисплеи.

Измерительное оборудование

  • Системы измерений.
  • Карманные и малогабаритные измерительные приборы.
  • Средства измерения радиации.
  • Средства измерения расстояний и длин.

Аппаратура сбора данных

Детекторы валют

Тормозные и антиблокировочные системы

Кассовые аппараты и терминалы

Системы управления освещением

Слуховые аппараты

Клавиатуры

Источники питания и UPS

Управление потоками жидкостей, газов, расходомеры

Датчики

VCD- и DVD-аппаратура и многое другое

И снова к тезисам «расширять…» и «снижать…»

Расширять

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

Большой объем Flash-памяти (существенно больший, чем у имеющихся на рынке микроконтроллеров), распределенный по двум параллельным массивам, предоставляет расширенные возможности:

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

Большой объем SRAM — средство расширения скорости пересылок данных, средство оперирования большими объемами данных.

При этом использование PSD позволяет расширять объемы памяти (как памяти программ и данных, так и оперативной, что определяется решаемыми системой задачами, например при записи изображений и звука)за счет внешних приборов памяти, чему способствует 8-разрядный регистр страниц, позволяющий в 256 раз расширить адресуемое пространство без использования внешней логики.

Снижение количества ИС системы приводит к снижению сложности и уменьшению размера печатной платы, в том числе количества слоев, уровня EMI излучения.

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

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

Учтите также экономию на использовании ранее наработанных программных средств для любимого вами микроконтроллера.

Внутрисистемное программирование запаянного на печатную плату PSD на конечном этапе сборки исключает:

  • использование достаточно дорогих и относительно ненадежных панелек для микросхем;
  • необходимость предварительного программирования и связанного с этим учета и хранения приборов;
  • возможность повреждения выводов микросхем при установке их в программатор и в панельку системы;
  • возможность повреждения записанных данных под воздействием температуры пайкиснижает затраты на этапе производства.

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

PSD могут работать как с микропроцессорами (в том числе без ROM) и микроконтроллерами, так и с процессорами цифровой обработки сигналов. Если быстродействия PSD достаточно, то он работает с процессором DSP таким же образом, как и с микроконтроллером, обеспечивая те же преимущества: большийобъем памяти и расширение возможностей ввода-вывода, возможность программирования внутри системы и в условиях применения.

DSP с более высоким быстродействием могут использовать PSD для хранения кодов программ, пересылаемых во встроенную в DSP быстродействующую SRAM. Большинство преимуществ применения PSD сохраняется и в этом случае. Прибор может заменить последовательные загрузочные Flash и EPROM, что предоставляет, кроме всего прочего, и преимущества параллельной загрузки.

Возможность формирования в PSD сигналов выбора внешнего кристалла, PLD декодирование и демультиплексирование позволяют без использования склеивающей логики нарастить при необходимости объем системной RAM за счет внешнего кристалла памяти. Таким же образом может быть увеличено и количество I/O, за счет дополнения связки «микроконтроллер — PSD» дополнительным кристаллом ASIC или FPGA. Высокая гибкость макроячеек Flash приборов PSD позволяет организовать и межпроцессорную связь — связь между главным и вторым микроконтроллером (DSP или другой системной шиной).

Все в одном корпусе

И, повторюсь, при сохранении преимуществ использования PSD: большого объема SRAM и параллельных массивов Flash-памяти, расширения адресуемого пространства и возможностей I/O, возможность программирования внутри системы и в условиях применения.

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

Развитие PSD

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

Так, несмотря на возможность работы PSD с DSP-процессорами, для DSP фирмы Analog Devices были разработаны специальные приборы системной памяти — серия DSM21xx.

Здесь во главу угла было поставлено снижение стоимости PSD за счет исключения встроенной SRAM и, соответственно, сокращения площади кристалла. В то же время сохранилась возможность параллельной загрузки SRAM DSP, расширение I/O и, что, пожалуй, было наиболее важным, наличие большого объема гибкой параллельной Flash-памяти и программирование как внутрисистемное, так и в условиях применения.

Еще одним достаточно специализированным семейством стали приборы системной памяти для дисплеев LCD. Первый прибор семейства SSM1108 был разработан с учетом требований заказчика и в дополнение к указанным ранее функциональным блокам и возможностям были добавлены: 4 канала PWM, обеспечивающих управление уровнем подсветки, уровнями напряжений и т. п.; 2 канала данных дисплея (Display Data Channels — DDC); 2 канала интерфейса I2C — для управления периферией.

И серия DSM21xx, и серия SSMxxxx были ответом на требования, предъявляемые массовым заказчиком. Однако, учитывая, что ядро 8051 до сих пор остается самым популярным среди 8-разрядных микроконтроллеров (из 4 млрд штук потребления 15% составляют микроконтроллеры с ядром 8051), имея в виду колоссальный объем наработанных программных средств, специалисты фирмы STMicroelectronics сделали еще один шаг.

Этим шагом стало семейство микроконтроллеров µPSD32xx, в которых стандартное ядро микроконтроллера 8051 соединено с PSD, причем это соединение выполнено посадкой кристалла ядра 8051 на кристалл PSD (стековая архитектура). Такой технологический прием позволил создать микроконтроллер архитектуры 8051 с исключительно высокими для этой архитектуры характеристиками.

При напряжении питания 5 В микроконтроллеры семейства µPSD3xxx работают на частоте 40 МГц (3 MIPS), а при 3,3 В — на частоте 24 МГц (2 MIPS) (таблица 2).

Таблица 2. Сравнение микроконтроллеров семейства PSD3xxx с микроконтроллерами класса 8051 других фирм
STMicroelectronics Atmel MicroChip Atmel Philips Dallas (Maxim)
µPSD3234A µPSD3234B µPSD3233B ATmega103 PIC16F6720 T89C51RD2 P89C666 DS89C420
Основная Flash, кбайт 256 256 128 128 128 64 64 64
Вторичная память, кбайт 32 Flash 32 Flash 32 Flash 4 EEPROM 1 EEPROM 2 EEPROM 1 ROM 2 ROM
SRAM, Кбайт 8 8 8 4 4 1 8 1
Програм-мируемая логика Есть Есть Есть
ISP JTAG JTAG JTAG SPI 2 Wire UART UART UART
IAP USB, UART, I2C UART, I2C UART, I2C SPI, UART UART UART UART UART
USB Есть
ADC 4 канала 4 канала 4 канала 8 каналов 12 каналов
UART 2 2 2 1 2 1 1 2
PWM 5 5 5 4 5 5
GPIO До 50 До 50 До 50 До 48 До 52 До 32 До 32 До 32
DDC Есть Есть Есть
WDT/Vcc Mon Есть Есть Есть Есть Есть Есть Есть Есть
Интерфейс внешнего MCU Есть Есть, корпус 80 выводов Есть, корпус 80 выводов Есть Есть Есть Есть
Стоимость $$$ $$ $ $$$ $$$ $$ $$$$ $$$

Обратите внимание на нижнюю строку таблицы, качественно представляющую соотношение цен, указанных в таблице микроконтроллеров. По утверждению сотрудников STMicroelectronics, стоимость одного микроконтроллера семейства µPSD32xx, как минимум, на 1 доллар меньше стоимости микроконтроллера класса 8051 с самым большим, из имеющихся на рынке, объемом памяти. Напомню, что идеология PSD добавляет микроконтроллерам семейства µPSD3xxx дополнительные возможности, которых нет у традиционных 8-разрядных микроконтроллеров.

Теперь немного о перспективах развития PSD, о которых сообщает фирма STMicroelectronics.

В середине 2003 года фирма STMicroelectronics представит образцы микроконтроллеров семейства Turbo µPSD33xx. Отмечу лишь некоторые моменты: производительность на частоте 40 МГц возрастет до 10 MIPS, максимальный объем основной Flash-памяти достигнет 512 кбайт, количество макроячеек матрицы PLD увеличится до 32, разрешение 8-канального ADC достигнет 10 разрядов, число таймеров-счетчиков будет доведено до 9.

Что касается «классических PSD» (позволю себе использовать этот термин), фирма взялась за «выпрямление» этого направления. Как видно из основных характеристик PSD, основное отличие приборов серий PSD8xx и PSD9xx заключается в наличии у PSD8xx комплексной PLD, позволяющей организовывать ряд дополнительных периферийных функций, а у приборов серии PSD9xx — более простой комбинаторной PLD, предназначенной в первую очередь для формирования сигналов выбора внешних кристаллов. В связи с этим приборы этих двух серий даже в Data Sheet назывались по-разному— приборы серии PSD8xx чаще всего назывались внутрисистемно программируемой периферией (Flash In-System Programmable (ISP) Peripherals), а приборы серии PSD9xx назывались конфигурируемыми системами памяти (Configurable Memory System on a Chip).

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

Средства разработки

Вероятнее всего, разработчики систем на базе 8- и 16-разрядных микроконтроллеров не часто сталкиваются с конфигурированием программируемых логических матриц.

Специалисты фирмы STMicroelectronics, учитывая такую возможность, предложили пакет программных средств разработки PSDsoft Express, работающий в среде Windows (95, 98, NT). С помощью этого пакета конфигурирование PSD под выбранный микроконтроллер, распределение памяти, организация I/O — все необходимые функции реализуются методом «Point & Click» (считаю, что ближе всего по смыслу — «выдели и подключи»). По утверждению специалистов фирмы, время разработки законченной системы на основе «микроконтроллер + PSD» может составить порядка нескольких часов — не более.

Алгоритм разработки с использованием пакета PSDsoft Express

Основные возможности пакета программных средств PSDsoft Express:

  • средство разработки и программирования уровня «выдели и подключи»;
  • пошаговое программирование, позволяющее за несколько часов разработать сложный встраиваемый микроконтроллер с возможностями ISP/IAP-программирования;
  • программирование «одним щелчком мыши».

Еще одно дополнение по поводу пакета PSDsoft Express, его можно получить бесплатно на сайте фирмы STMicroelectronics (
www.st.com/psd), на сайте фирмы Консультационно-технического центра по микроконтроллерам (КТЦ-МК) (
www.cec-mc.ru) или на компакт-диске в фирме КТЦ-МК.

Специалистами фирмы STMicroelectronics разработаны и могут быть поставлены недорогие комплекты разработки с программатором JTAG FlashLINK™.

В комплект DK100, предназначенный для разработки систем на основе PSD серий PSD8xx/PSD9xx, стоящий порядка $100, входит программатор JTAG FlashLINK™, программные средства разработки, плата Kit с установленным микроконтроллером 8032 или 68HC11 и руководство пользователя. Комплект работает с любым персональным компьютером.

В комплект DK4000, предназначенный для разработки систем на основе PSD серии PSD4000, стоящий порядка $150, входит программатор JTAG FlashLINK™, программные средства разработки, плата Kit с установленным микроконтроллером ST10R167 фирмы STMicroelectronics или C167 фирмы Infineon, и руководство пользователя. Возможна поставка адаптера под микроконтроллер P51XA фирмы Philips. Комплект работает с любым персональным компьютером.

В комплект DK3200, предназначенный для разработки систем на основе микроконтроллеров семейства PSD32xx, стоящий порядка $150, входит программатор JTAG FlashLINK™, программные средства разработки с шаблонами проекта и примером программы, компилятор и отладчик Keil 8051, программные модули 8032 для USB, I2C, PWM, ADC, IAP, LCD, UART, таймеров; плата Kit, руководство пользователя и рекомендации по применению, DataSheet на µPSD. Программа Windows PC USB демонстрирует возможности USB, включая IAP.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *