Использование последовательного периферийного интерфейса (SPI) для связи процессора и внешних устройств
Передача информации между центральным процессором и периферией. Параллельное подключение устройств к шине последовательного периферийного интерфейса (SPI). Гибкость протокола для передачи битов. Использование интерфейса SPI для внутренней коммуникации.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 02.07.2018 |
Размер файла | 68,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Использование последовательного периферийного интерфейса (SPI) для связи процессора и внешних устройств
Степаненко С.В., Шевченко О.Г., Meister E.
ДонНТУ - Universitat Stuttgart IPVS
При разработке различных устройств обязательно возникает проблема передачи информации между центральным процессором и периферией. Под периферией можно понимать как дополнительные процессоры, так и различные внешние устройства, например карты памяти. Одним из интерфейсов, который может использоваться для этой цели, является последовательный периферийный интерфейс (англ. Serial Peripheral Interface SPI).
В ходе научного сотрудничества со Штутгартским университетом была поставлена задача исследовать целесообразность применения SPI как основного интерфейса обмена информацией между внутренними устройствами робота.
SPI - популярный интерфейс для последовательного обмена данными между микросхемами. Интерфейс SPI относится к самым широко-используемым интерфейсам для соединения микросхем. Изначально он был представлен компанией Motorola, а в настоящее время используется в продукции многих производителей. Его наименование является аббревиатурой от «Serial Peripheral Interface Bus», что отражает его предназначение - шина для подключения внешних устройств. Шина SPI организована по принципу «ведущий-подчиненный». SPI также иногда называют четырёхпроводным (англ. four-wire) интерфейсом [1].
В отличие от стандартного последовательного порта (англ. standard serial port), SPI является синхронным интерфейсом, в котором любая передача синхронизирована с общим тактовым сигналом, генерируемым ведущим устройством (процессором). Принимающая периферия (ведомая) синхронизирует получение битовой последовательности с тактовым сигналом. К одному последовательному периферийному интерфейсу ведущего устройства-микросхемы может присоединяться несколько микросхем. Ведущее устройство выбирает ведомое для передачи, активируя сигнал «выбор кристалла» (англ. chip select) на ведомой микросхеме. Периферия, не выбранная процессором, не принимает участия в передаче по SPI.
В SPI используются четыре цифровых сигнала:
- MOSI или SI - выход ведущего, вход ведомого (англ. Master Out Slave In). Служит для передачи данных от ведущего устройства ведомому.
- MISO или SO - вход ведущего, выход ведомого (англ. Master In Slave Out). Служит для передачи данных от ведомого устройства ведущему.
- SCLK или SCK - последовательный тактовый сигнал (англ. Serial CLocK). Служит для передачи тактового сигнала для ведомых устройств.
- ~CS или ~SS - выбор микросхемы, выбор ведомого (англ. Chip or Slave Select).
Самое простое подключение, в котором участвуют только две микросхемы, показано на рисунке 1. Здесь, ведущий шины передает данные по линии MOSI синхронно со сгенерированным им же сигналом SCLK, а подчиненный захватывает переданные биты данных по определенным фронтам принятого сигнала синхронизации. Одновременно с этим подчиненный отправляет свою посылку данных. Чтобы подчиненная МС принимала и передавала данные, помимо наличия сигнала синхронизации, необходимо также, чтобы линия SS была переведена в низкое состояние. В противном случае, подчиненная МС будет неактивна [2].
центральный процессор интерфейс периферийный
Рисунок 1 - Простейшее подключение к шине SPI
В ходе исследований были разработаны подпрограммы работы с файловыми системами класса FAT на картах памяти типов MMC и SD (включая также карты нового типа высокой ёмкости - SDHC). Данные подпрограммы предназначены для работы на процессоре архитектуры ARM под управлением операционной системы реального времени SymbricatorOS. Эффективность использования SPI доказана возможностью работы с картами памяти на любой частоте, вплоть до верхнего предела рабочей частоты карты в 25 МГц [4].
Было решено, что центральным процессором в роботе будет процессор семейства ADI Blackfin. Данные процессоры также имеют интерфейс SPI, но могут работать только в качестве ведущих устройств. При этом к процессору можно подключить до 8 ведомых устройств, выбор устройства осуществляется низким уровнем на соответствующем выводе ~SS (~CS) [5]. Пример параллельного подключения устройств показан на рисунке 2.
Рисунок 2 - Параллельное подключение устройств к шине SPI
Процессоры семейства Blackfin работают с операционной системой ?Clinux (от англ. MicroController Linux) - Linux-подобной встраиваемой операционной системой для микроконтроллеров, не имеющих блока управления памятью [6].
Была протестирована работа с картами памяти по шине SPI и на этом процессоре. К преимуществам можно отнести простоту управления картами памяти в режиме SPI.
Опробована возможность передачи информации между несколькими устройствами: процессорами Blackfin (ведущий), ARM (ведомый), MSP (ведомый), карта памяти (ведомая).
После всех исследований стало возможным более полно определить достоинства и недостатки интерфейса SPI по сравнению с другими интерфейсами, которые можно использовать для тех же целей (например I2C Inter-Integrated Circuit, CAN - Controller-area network, RS-232 и другие).
Преимущества:
- Полная дуплексная связь.
- Более высокая пропускная способность, чем у I2C или SMBus .
- Гибкость протокола для передачи битов: не ограничивается 8-разрядными словами; произвольный выбор размера сообщений, содержания и цели.
- Чрезвычайно простой аппаратный интерфейс.
- Потребление меньшего количества электроэнергии, чем необходимо для I2C или SMBus благодаря меньшей схеме.
- Отсутствие конфликтных ситуаций общего доступа к шине и связанных с ними режимов обнаружения ошибок.
- Ведомые устройства используют сигнал синхронизации ведущего, и поэтому не нужна высокая точность синхронизации.
- Ведомым устройствам не нужен уникальный адрес - в отличие от I2C, GPIB или SCSI.
- Не нужны приемопередатчики
- Используется намного меньше выводов микросхем, контактов в разъемах и кабелей, чем у параллельных интерфейсов.
- Используется всего один «уникальный» сигнал на устройство (выбор кристалла), остальные являются общими.
- Сигналы однонаправлены, позволяющие легко реализовать гальваническую развязку.
Недостатки:
- Нет аппаратного управления потоком
- Нет аппаратного подтверждения приёма от ведомого устройства
- Поддерживается только одно ведущее устройство
- Нет официального стандарта
- Передача только на короткие расстояния по сравнению с RS-232, RS-485 или CAN-BUS
После анализа недостатков стало ясно, что для поставленной задачи - связи процессора и периферийных устройств робота, интерфейс SPI подходит больше остальных, и было принято решение в дальнейшей разработке проекта для внутренней коммуникации использовать именно интерфейс SPI.
Ссылки на літературу
1. SPI - PICmicro Serial Peripheral Interface [Электронный ресурс]. - Режим доступа: http://ww1.microchip.com/downloads/en/DeviceDoc/spi.pdf
2. Serial Peripheral Interface [Электронный ресурс]. - Режим доступа: http://ru.wikipedia.org/wiki/Serial_Peripheral_Interface
3. Последовательный интерфейс SPI [Электронный ресурс]. - Режим доступа: http://www.gaw.ru/html.cgi/txt/interface/spi/index.htm
4. JEDEC MMC 4.4 Standard Pg.7 [Электронный ресурс]: 2008. - Режим доступа: http://www.jedec.org/download/search/JESD84-A44.pdf
5. ADSP-BF561: Blackfin Symmetric Multi-Processor for Consumer Multimedia [Электронный ресурс]: 2009. - Режим доступа:
http://www.analog.com/static/imported-files/data_sheets/ADSP-BF561.pdf
6. Open Source Software on the Blackfin Processor [Электронный ресурс]. - Режим доступа: http://docs.blackfin.uclinux.org/doku.php
Размещено на Allbest.ur
...Подобные документы
Дизайн интерфейса приложения как связь человека и персонального компьютера. Adobe Photoshop и его возможности, анализ функциональности и содержание главных операций. Используемые инструменты для разработки дизайна интерфейса текстового редактора.
контрольная работа [407,5 K], добавлен 12.10.2015Последовательный интерфейс для передачи данных. Синхронный и асинхронный режимы передачи данных. Формат асинхронной посылки. Постоянная активность канала связи при синхронном режиме передачи. Реализация последовательного интерфейса на физическом уровне.
реферат [106,9 K], добавлен 28.04.2010Понятие и виды пользовательского интерфейса, его совершенствование с помощью новых технологий. Характеристика приборной панели управления современного автомобиля и пультов дистанционного управления. Использование клавиатуры, особенности интерфейса WIMP.
курсовая работа [1,4 M], добавлен 15.12.2011Особенности работы микро ЭВМ, которая сопровождается интенсивным обменом информацией между МП, ЗУ и УВВ. Характеристика функций интерфейса: дешифрация адреса устройств, синхронизация обмена информацией, согласование форматов слов, дешифрация кода команды.
контрольная работа [183,1 K], добавлен 22.08.2010История создания и развития интерфейса АТА. Компоновка, режим безопасности, функции, команды. Особенности технологии интеллектуального IDE-интерфейса. Сравнительные характеристики различных интерфейсов, используемых для подключения дисковых устройств.
курсовая работа [75,7 K], добавлен 17.06.2013Уровни архитектуры IP-телефонии. Особенности передачи речевой информации по IP–сетям. Влияние операционной системы. Количество передаваемых в пакете кадров. Взаимодействие модулей УШ и модуля протокола RTP. Информация конфигурации и контроля модуля УШ.
отчет по практике [128,4 K], добавлен 22.07.2012Обоснование выбора программно-технических средств. Надежность программы и состав технических средств. Разработка структурной схемы программы, алгоритмического и программного интерфейса. Технология разработки интерфейса пользователя и программных модулей.
дипломная работа [3,2 M], добавлен 22.01.2013Критерии и порядок выбора интерфейса веб-сайта. Характеристики, которые определяют успешность пользовательского интерфейса. Структура навигационной системы. Графический дизайн и выбор цветовой схемы. Техническая реализация интерфейса сайта на сегодня.
реферат [164,8 K], добавлен 24.02.2011Принципы Дж. фон Неймана: однородности памяти, адресности, программного управления, двоичного кодирования. Назначение периферийного оборудования. Устройства ввода, вывода, обмена, хранения информации. Способы их функционирования. Сравнение шин ISA и EISA.
курсовая работа [26,7 K], добавлен 07.11.2014Особенности процесса взаимодействия пользователя с компьютером. Графический интерфейс ОС Windows, его преимущества и недостатки. Основы простейшего SILK-интерфейса. Основные черты и специфика структуры WIMP-интерфейса. Общепринятые соглашения для меню.
реферат [26,8 K], добавлен 02.10.2012Обеспечение непосредственной связи контроллера прямого доступа к памяти (ПДП) и памяти микроЭВМ. Совместное использование шин системного интерфейса процессором и контроллером. Последовательность и алгоритм программирования контроллера прямого доступа.
реферат [122,6 K], добавлен 13.11.2009Истоки зарождения интерфейса Parallel ATA. Показатели жестких дисков. Преимущества интерфейса SATA над PATA. Обратная совместимость. Данные интерфейса SATA. Физический уровень. Канальный уровень. Транспортный и прикладной уровни. Перспективы развития.
реферат [377,5 K], добавлен 14.11.2008Общий вид вычислительной системы. Начальная последовательность действий. Элементы организации основных блоков ЭВМ. Архитектурная организация процессора ЭВМ. Организация систем адресации и команд ЭВМ. Система внешних устройств. Средства вывода информации.
курсовая работа [39,5 K], добавлен 28.01.2012Структура взаимодействия входной и выходной информации. Требования к программно-аппаратному окружению, к эргономике и технической эстетике интерфейса пользователя. Эскиз и спецификация типовых объектов управления графического интерфейса, тестирование.
курсовая работа [2,0 M], добавлен 16.02.2016Описание высокоскоростной последовательной шины FireWire: ее составляющие, спецификации, принцип работы, кабели и разъемы, топология. Уровни реализации протокола IEEE 1394: транзакции, связи и физический. Использование внешних дисковых устройств.
реферат [1,5 M], добавлен 15.07.2012Использование стандартных библиотек Windows. Установка и настройка дополнительных устройств ввода/вывода. Использование камеры, динамиков, сканера, дисков и портов ввода/вывода. Драйверы внешних устройств. Безопасность данных в операционных системах.
контрольная работа [1,8 M], добавлен 13.10.2022Федеральная служба судебных приставов как федеральный орган исполнительной власти. Основные этапы разработки интерфейса в виде веб-сервиса. Общая характеристика схемы интерфейса "Пристав" для удаленного просмотра соединений таблиц из единой базы данных.
отчет по практике [1,0 M], добавлен 07.08.2013Стандартный интерфейс IEC 625-1 для программируемых приборов. Логическая организация интерфейса. Протокол сигналов для установления связи по магистрали IEC. Условия функционирования приборов в системе. Коды и форматы, физическая реализация интерфейса.
контрольная работа [102,4 K], добавлен 23.01.2014Обзор технологии COM (Component Object Technology). Особенности графического интерфейса пользователя и методы его реализации. Интерфейс операционных систем Microsoft Windows: работа с папками, файлами и окнами, использование буфера обмена, проводник.
контрольная работа [6,4 M], добавлен 16.04.2011Приобретение навыков самостоятельной работы по сопряжению макета на базе микроконтроллера AVR АТMEGA128 с компьютером. Принципы управления двунаправленным обменом данными. Программирование последовательного интерфейса в операционных системах Windows.
лабораторная работа [365,4 K], добавлен 16.06.2011