ИК приёмник на основе микроконтроллера Atmel

Автор работы: Пользователь скрыл имя, 09 Октября 2012 в 19:02, дипломная работа

Описание работы

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

Файлы: 23 файла

0 Аннотация.doc

— 43.50 Кб (Просмотреть файл, Скачать файл)

0 Аннотация2.doc

— 20.50 Кб (Просмотреть файл, Скачать файл)

1,2. Введение + функ.doc

— 490.50 Кб (Скачать файл)

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

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

 

Рисунок 2.7 -- Программируемая (универсальная) электронная система

 

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

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

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

 

2.4 Обзор существующих моделей микроконтроллеров и их производителей

 

Микроконтроллеры представляют собой  законченную микропроцессорную  систему обработки информации, которая  реализована в виде одной большой интегральной микросхемы. С появлением однокристальных микро-ЭВМ связывают начало эры компьютерной автоматизации в области управления. По-видимому, это обстоятельство и определило термин «микроконтроллер» (англ. «control» - управление).

Впоследствии расширение сферы использования микроконтроллеров повлекло за собой развитие их архитектуры за счет размещения на кристалле периферийных устройств (модулей), отражающих своими функциональными возможностями специфику решаемых задач. По этой же причине появились не только семейства микроконтроллеров, которые объединяют родственные микроконтроллер (с одинаковой системой команд, разрядностью), но и стали выделяться подвиды микроконтроллеров: коммуникационные, для управления и т.д. Из всех видов сверхбольших интегральных микросхем микроконтроллеры обладают наибольшей специализацией и разнообразием функций, используемых во встроенных системах управления, в том числе в бытовых приборах. Общее число типов кристаллов с различными системами команд превышает 500, и все они, в силу существования изделий с их использованием, имеют свою устойчивую долю рынка. Ввиду огромного количества объектов, управление которыми обеспечивается с помощью микроконтроллеров, годовой объем их выпуска превышает 2 миллиарда экземпляров,  что на порядок превосходя объем выпуска микропроцессоров общего применения. Весьма широкой является также номенклатура выпускаемых микроконтроллеров, которая содержит несколько тысяч типов. Наиболее популярные семейства микроконтроллеров будут охвачены ниже по тексту [11].

AVR-контроллеры семейства AT90 (Atmel). AVR имеет гарвардскую архитектуру, 32 8-битных регистра общего назначения, объединённых в регистровый файл. Система команд микроконтроллеров  AVR весьма развита и насчитывает  в различных моделях от 90 до 133 различных инструкций. Большинство команд занимает только 1 ячейку памяти (16 бит). Большинство команд выполняется за 1 такт. микроконтроллеры семейства  MCS-51.

PIC-контроллеры (Microchip);  Отличительной  особенностью PIC-контроллеров является  хорошая преемственность различных семейств. Это и программная совместимость (единая бесплатная среда разработки MPLAB IDE, С-компиляторы от GCC), и совместимость по выводам, по периферии, по напряжениям питания, по средствам разработки, по библиотекам и стекам наиболее популярных коммуникационных протоколов. Номенклатура насчитывает более 500 различных контроллеров со всевозможными вариациями периферии, памяти, количеством выводов, производительностью,

Микроконтроллеры MSP430  (RISC контроллер с системой команд близкой к PDP-11. Данные микроконтроллеры характеризуются сверхнизким потреблением, наличием различных периферийных устройств и широко используются в портативных приборах – мультиметрах, датчиках.  По сравнению с семействами AVR и PIC используют 16-ти битную арифметику и ортогональную систему команд с разнообразными способами адресации.

Микроконтроллеры семейства  ARM (ARM).  Компания ARM не является производителем микропроцессоров как таковым, однако лицензирует собственную технологию третьим фирмам, таким как Atmel, Cirrus Logic, Intel, Marvell, NXP, Samsung, Qualcomm, Sony Ericsson, Texas Instruments которые, собственно, и воплощают её в чипах. Технология ARM оказалась весьма успешной и в настоящее время является доминирующей микропроцессорной архитектурой для портативных цифровых устройств.

Микроконтроллеры SX18, SX28 (Scenix). Микроконтроллеры данного семейства являются самыми быстродействующими 8-разрядными микроконтроллерами общего назначения в мире (до 100 MIPS)

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

Помимо того, микроконтроллеры семейства  MCS-51 на сегодняшний день являются самыми простыми для освоения и понимания.

 Распространению этого микропроцессорного  ядра способствовали несколько  обстоятельств. Когда корпорация Intel представила 8051, потребители микроконтроллеров были уже неплохо знакомы с предыдущим поколениями — ядрами Intel 8041 и 8048. Удачное сочетание разнообразной периферии в одном кристалле, понятная архитектура и достаточно гибкая система команд 8051, а также вера в стабильность Intel послужили скорейшему успеху новинки, широкому внедрению во множестве разработок еще в начале жизненного пути семейства.

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

Среди них - Philips, Atmel, Maxim/Dallas, Analog Devices, Winbond и множество других. Зачастую производители перемещали акцент в новом изделии: добавляли хорошо известное микропроцессорное ядро к собственной оригинальной, уникальной периферии, а не наоборот. Так поступила корпорация Analog Devices с семейством микроконтроллеров ADuC. Обладая технологией производства высококачественных аналого-цифровых преобразователей, инженеры Analog Devices создали однокристальные системы сбора и обработки аналоговых сигналов на основе ядер 8051 (ADuC8xxx) и ARM (ADuC7xxx), причем так, что влияние контроллерной части микросхемы не сказывается на качестве аналого-цифрового преобразования. 

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

В настоящее время  на рынке  существует довольно большое  представительство модулей так  называемого “быстрого старта” (StartKit), которые позволяют за короткий промежуток времени освоить технологию проектирования на базе  конкретной модели процессора. Не исключение и процессоры MCS -51.

 

2.5 Архитектура AVR контроллеров

 

Большую долю рынка 32-разрядных  контроллеров в настоящее время  захватили микросхемы на базе ядер ARM7, ARM9 и ARM11. ATMEL также производит контроллеры  на базе ядер ARM7 и ARM9. Несмотря на это, в 2001 году корпорация начала разработку принципиально новой 32-разрядной RISC-архитектуры. Основной целью было повышение вычислительной производительности за такт процессора. Задача формулировалась как разработка процессора, который сможет решать сложные задачи цифровой обработки информации при малом потреблении энергии — требование разработчиков мобильных устройств. Ядро должно одновременно выполнять задачи MPU и DSP в рамках одной программной и инструментальной базы. В дополнение к производительному ядру контроллеры нового поколения имеют высокоскоростную периферию, в частности, два контроллера 10/100 Мб/с MAC и High-Speed USB (480 Мб/с). В последующих версиях контроллеров будет добавляет хост-контроллер USB (480 Мб/с), поддерживающий режим OTG (On The Go) [12].

Архитектура AVR32 разработана  в норвежском городе Тронхейм, там  же, где созданы 8-разрядные AVR-контроллеры. В разработке участвовала команда  из двадцати инженеров и программистов. В результате 4-летней работы над  такими алгоритмами, как вычисление суммы абсолютных разностей (SAD) и обратное дискретное косинусное преобразование (IDCP), был достигнут 35% прирост эффективности на один такт процессора по сравнению с ядром ARM11. Это означает возможность декодировать в реальном времени видеофрагмент MPEG-4 разрешением QVGA с частой 30 кадров в секунду при частоте ядра 100 MГц, в то время как ARM11 для решения этой задачи требуется частота 150–170 MГц.

На ядре AVR32 разрабатывается  семейство контроллеров с аббревиатурой AP (Application Processor). Микросхемы выпускаются в корпусах BGA и TQFP.

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

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

 

Рисунок 2.8 -- Схема конвейера AVR32

 

На третьем этапе  происходит декодирование команды. В зависимости от содержания команды  она попадает в целочисленный  модуль, который состоит из трех конвейеров:

- конвейер умножения, состоящий из двух блоков умножения;

- конвейер АЛУ, состоящий из двух блоков вычислений;

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

Конвейер данных имеет  доступ к сопроцессору для параллельного выполнения матричных и векторных операций.

Три перечисленных конвейера  поддерживают одновременное исполнение независимых инструкций с изменением последовательности. Это означает, что пока модуль умножения в течение 32 тактов занят, в модуле АЛУ может выполняться следующая операция.

Конвейеры соединены  шинами, позволяющими передавать данные непосредственно от одного модуля к  другому без загрузки дополнительных ресурсов. Например, результат суммирования из блока АЛУ2 сразу после завершения выполнения операции пересылается на вход модуля умножения 1, АЛУ1 и блок адресации данных (Data Address). Такой механизм позволяет экономить 3 такта, которые требуются для программной пересылки данных на вход конвейера. На рисунке 2.9 изображена диаграмма плотности кодов для ядер AVR32 и ARM Thumb. Ядра тестировались на пяти тестовых кодах:

- ConsumerMark;

- NetMark;

- TeleMark;

- AutoMark;

- OAMark.

Рисунок 2.9 -- Плотность кода AVR32 AP в тестах EEMBC (оптимизация по длине)

Работа с сопроцессором  реализована через конвейер данных, что минимизирует задержки во время выполнения команд сопроцессором.

AVR32 работает с расширенным  набором RISC-команд. Команды могут  иметь длину 16 или 32 бита и  следовать общим потоком. В  отличие от архитектуры ARM, у  этого ядра нет необходимости переключаться между двумя режимами. Все команды распознаются непосредственно в конвейере.

В набор команд AVR32 входят инструкции для операций с множественными данными (Single Instruction Multiply Data), позволяющие  в четыре раза увеличить производительность некоторых DSP алгоритмов, которые требуют выполнения одинаковых операций с потоком данных. Например, при декодировании видео формата MPEG производится расчет восьмибитных сумм абсолютных разностей (SAD). Для этого четыре 8-битных пикселя загружаются из памяти одной операцией, затем выполняется пакетное вычитание беззнаковых байтов с проверкой переопустошения, сложение байтов внутри старшей и младшей пар и распаковка их в полуслова. Затем для вычисления значения SAD все значения складываются.

3. Схетехн. проект.doc

— 324.50 Кб (Просмотреть файл, Скачать файл)

4. Конструкторско-технологическое пр.doc

— 895.50 Кб (Просмотреть файл, Скачать файл)

5 Разработка и отладка ПО2.doc

— 335.50 Кб (Скачать файл)

6. Рассчет экономики.doc

— 143.50 Кб (Просмотреть файл, Скачать файл)

7. ТБ и экология.doc

— 87.50 Кб (Просмотреть файл, Скачать файл)

8. Заключение.doc

— 51.00 Кб (Просмотреть файл, Скачать файл)

9. Литер (пример).doc

— 51.00 Кб (Просмотреть файл, Скачать файл)

9. Литер.doc

— 56.50 Кб (Просмотреть файл, Скачать файл)

A1-2.sdd

— 42.83 Кб (Скачать файл)

A1.sdd

— 51.34 Кб (Скачать файл)

Структурная.sdd

— 3.41 Кб (Скачать файл)

Элекстромонтажная.sdd

— 1.42 Кб (Скачать файл)

электромонт.sdd

— 798.53 Кб (Скачать файл)

Перечень.tdd

— 7.59 Кб (Скачать файл)

A1.vsd

— 16.00 Кб (Скачать файл)

Пакет.vsd

— 42.50 Кб (Скачать файл)

Плакат.vsd

— 1.62 Мб (Скачать файл)

плакат2(штамп к плакату).vsd

— 113.50 Кб (Скачать файл)

Структ.vsd

— 45.50 Кб (Скачать файл)

схема_программы.vsd

— 177.00 Кб (Скачать файл)

Информация о работе ИК приёмник на основе микроконтроллера Atmel