Научная статья на тему 'Гибкая структура ввода/вывода микроконтроллеров'

Гибкая структура ввода/вывода микроконтроллеров Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
149
47
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Глубоков Алексей, Грэм Кларк

В последнее время фиксируются две тенденции: во-первых, продолжается снижение стоимости полупроводниковых компонентов, и, во-вторых, современные микроконтроллеры выполняют все большее количество функций. Сегодня у типового микроконтроллера имеется как минимум три 16-разрядных таймера с множеством каналов ввода/вывода, выходы ШИМ и несколько 8-разрядных таймеров, а также различные последовательные порты, выводы внешних прерываний и аналоговые порты ввода/вывода, такие как АЦП и Ц АП. Разумеется, они могут использоваться и для стандартного цифрового ввода/вывода. Это означает, что у современных микроконтроллеров каждый вывод может выполнять несколько специальных функций.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Гибкая структура ввода/вывода микроконтроллеров»

Гибкая структура

ввода/вывода микроконтроллеров

Грэм КлАрК (Graeme CLARK) Алексей ГлУБоКов

в последнее время фиксируются две тенденции: во-первых, продолжается снижение стоимости полупроводниковых компонентов, и, во-вторых, современные микроконтроллеры выполняют все большее количество функций. Сегодня у типового микроконтроллера имеется как минимум три 16-разрядных таймера с множеством каналов ввода/вывода, выходы ШИМ и несколько 8-разрядных таймеров, а также различные последовательные порты, выводы внешних прерываний и аналоговые порты ввода/вывода, такие как АЦП и ЦАП. разумеется, они могут использоваться и для стандартного цифрового ввода/вывода. Это означает, что у современных микроконтроллеров каждый вывод может выполнять несколько специальных функций.

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

Есть и другие аспекты — например, компоновка печатной платы для минимизации длины токоведущих дорожек (из соображений ЭМС и для экономии меди), а также соблюдение ограничений на размеры и вес конструкции. В одной конструкции может иметь смысл выбрать конфигурацию, в которой последовательный интерфейс будет располагаться в левом верхнем углу ИС, а контакты для регистрации данных — в правом нижнем, но допустим и другой вариант —

переместить последовательный интерфейс в правый нижний угол и заменить его выводами внешних прерываний.

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

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

выводам функции периферийного ввода/ вывода микроконтроллера. Такой контроллер (рис. 1) станет очередной вехой на пути к созданию по-настоящему гибких микроконтроллеров.

Вывод каждого специализированного функционального блока (например, схемы обработки прерываний IRQ, последовательного интерфейса или выхода таймера) может располагаться на одном из множества выводов по всем четырем сторонам микросхемы. Например, в изображенном на рис. 2 80-вы-водном микроконтроллере роль вывода прерывания IRQ7 может играть один из 7 различных выводов по периметру микросхемы. Перечень выводов, которые могут использоваться в качестве вывода IRQ7, приведен ниже. Итак, доступ к каждому специализированному функциональному блоку устройства может быть реализован через несколько различных выводов.

PMC Setting 1

SCI

function

PMC Setting 2

IIC pin

С

Analog с Pin

ппппппппп

Port 2 II Port 3 1

- тз о

о Q. СЛ

00 О тэ о

о СТ1

| Port 8 11 Port 7 —

System Pin E8 pin

Timer

function

Interrupt Input , function

IIC pin

Analog I Pin

ППП ППП ПП1 1

| Port 2 || Port3

= “0

с с

CL

UJ

1= □Q TJ о

1= I- с о О Л СП

1= 1 Port 8 II Port 7

uuuuuuuuu

Timer

function

1 SCI I function

System Pin E8 pin

P93 С

PA0/AN0_2 С PA1/AN1_2 Z PA2/AN2_2 С PA3/AN3_2 С PA4/AN8 С PA5/AN9 с PA6/AN10 С PA7/AN11 С AV*a С

PB0/AN0 С PB1/AN1 С PB2/AN2 С PB3/AN3 с PB4/AN4 с PB5/AN5 С

пппппппппппппппппппп,

Renesas

H8STiny

80 pin version

=□ P26

□ P27 / IRQ7 =1 P11

=1 PS2 =1 P53

=1 P57/IRQ7 □ P17 / IRQ7 =] P16

Fixed Ports

рис. 1. Контроллер конфигурации периферии (PMC)

рис. 2. PMC — выбор контакта IRQ7

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 11 ’2009

Рис. 3. Уменьшение длины токоведущих дорожек и устранение необходимости в их пересечении

Customers' board

ппппппппппппппп.

H8S/20103 (H8S/Tiny 64 ріп)

IJUUUUUUUUUUUUULJ'

Модель A

----------o-

RXD input

Serial transmission

z2d Connector

oQ Switch O-Q Switch

oOLED

oQLED

Customers’ board

ппппппппппппппп.

H8S/20103 (H8S/Tiny 64 pin)

'uuuuuuuuuuuuuuu'

Модель В

/IRQ1

Connector

External interrupt

----Switch

О-П Switch

Port output

—oOLED oOLED

Customers' board

Customers’ board

*0

Connector

Модель С

External interrupt —Switch O-Q Switch

Port output

oOLED -O^ LED

H8S/20103 (H8S/Tiny 64 pin)

uuuuuuuuuuuuuuu'

Модель D

Connector

0-0 Switch 0-0 Switch

Port output

-oOLED -O^ LED

Рис. 4. Примеры компоновки

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

У каждого устройства есть ряд выводов системного назначения — Vcc, Vss, Reset, а также выводы аналоговых функциональных блоков (АЦП, интерфейс I2C). Их местоположение нельзя изменить: они привязаны к конкретным выводам микросхемы. Расположение выводов цифрового ввода/вывода также фиксировано, но выводы любого специализированного цифрового функционального блока — схемы внешних прерываний, ШИМ, входа таймера или последовательного порта — могут быть перемещены в различные точки по периметру микросхемы. Возможность выбора выводов микроконтроллера для доступа к периферийным функциям дает множество преимуществ.

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

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

Контроллер конфигурации периферии можно также использовать для реализации нескольких изделий на базе одного и того же программного обеспечения и с одинаковой компоновкой печатной платы. На рис. 4 приведено несколько простых примеров. В данном случае выводы 29 и 30 микроконтроллера соединяются с разнообразными простыми интерфейсами — переключателями, светодиодами и соединителем печатной платы.

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

В модели A установлен соединитель параллельного порта, а выводы приемной и передающей части одного из имеющихся

в устройстве SCI-интерфейсов (USART) перемещены с помощью контроллера конфигурации периферии на выводы 29 и 30.

В модели B к выводам 29 и 30 подсоединены переключатель и светодиод, вывод IRQ перемещен на контакт 30, а вывод 29 используется в качестве входа/выхода общего назначения, сигнал с которого управляет работой светодиода. SCI можно использовать, переместив его выводы на другие контакты микросхемы.

В модели C оба вывода используются в качестве входов/выходов общего назначения.

В модели D к данным выводам подсоединяется два светодиода, а выходные выводы одного из 16-разрядных таймеров перемещаются, чтобы работой каждого светодиода управлял сигнал с выхода ШИМ.

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

Еще интересней то, что это можно делать в динамическом режиме, то есть периферийные устройства можно использовать по-разному в одной и той же конструкции. Типичный пример — параллельные порты. Пусть у микросхемы имеется 3 аппаратных интерфейса SCI, но выводы каждого из них могут располагаться в различных местах микросхемы (до 6). Это означает, что в приложениях, где необходимо иметь большее количество последовательных интерфейсов, один и тот же SCI может обслуживать несколько последовательных интерфейсов, если только от них не требуется одновременная работа.

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

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

Микроконтроллеры семейства H8STiny компании Renesas — первые устройства нового поколения, содержащие контроллер конфигурации периферии. Гибкость, которую они обеспечивают, значительно облегчает процесс проектирования печатных плат и программного обеспечения и позволяет использовать одно и то же изделие в различных областях. ■

КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 11 '2009

www.kit-e.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.