Устройства PCI Express

Разработка программы реализации устройства передачи данных по шине PCI Express. Функциональная схема передачи данных по протоколу. Технические характеристики ПЛИСС. Разработка программного обеспечения, результаты тестовых испытаний и моделирования.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 05.05.2015
Размер файла 890,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Размещено на http://www.allbest.ru

ВВЕДЕНИЕ

PCI Express(также известная как 3GIO) -- компьютерная шина, использующая программную модель шины PCI и высокопроизводительный физический протокол, основанный на последовательной передаче данных.

Разработка стандарта PCI Express была начата фирмой Intel после отказа от шины InfiniBand. Официально первая базовая спецификация PCI Express появилась в июле 2002 года. Развитием стандарта PCI Express занимается организация PCI Special Interest Group.

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

Устройства PCI Express взаимодействуют между собой через среду, образованную коммутаторами, при этом каждое устройство напрямую связано соединением типа точка-точка с коммутатором.

Кроме того, шиной PCI Express поддерживается:

горячая замена карт;

гарантированная полоса пропускания (QoS);

управление энергопотреблением;

контроль целостности передаваемых данных.

Шина PCI Express нацелена на использование только в качестве локальной шины. Так как программная модель PCI Express во многом унаследована от PCI, то существующие системы и контроллеры могут быть доработаны для использования шины PCI Express заменой только физического уровня, без доработки программного обеспечения. Высокая пиковая производительность шины PCI Express позволяет использовать её вместо шин AGP и тем болееPCI и PCI-X. Де-факто PCI Express заменила эти шины в персональных компьютерах.

Кроме PCI Express существует ещё ряд высокоскоростных стандартизованных последовательных интерфейсов, вот только некоторые из них: HyperTransport, InfiniBand,RapidIO, и StarFabric. Каждый интерфейс имеет своих сторонников среди промышленных компаний, так как на разработку спецификаций протоколов уже ушли значительные суммы, и каждый консорциум стремится подчеркнуть преимущества именно своего интерфейса над другими.

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

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

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

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

Программируемая логическая интегральная схема -- электронный компонент, используемый для создания цифровых интегральных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задаётся посредством программирования (проектирования). Для программирования используются программаторы и отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры: Verilog, VHDL, AHDL и др. Альтернативой ПЛИС являются: программируемые логические контроллеры (ПЛК), базовые матричные кристаллы (БМК), требующие заводского производственного процесса для программирования; ASIC -- специализированные заказные большие интегральные схемы (БИС), которые при мелкосерийном и единичном производстве существенно дороже; специализированные компьютеры, процессоры (например, цифровой сигнальный процессор) илимикроконтроллеры, которые из-за программного способа реализации алгоритмов в работе медленнее ПЛИС.

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

ПЛИС широко используется для построения различных по сложности и по возможностям цифровых устройств.

Это приложения, где необходимо большое количество портов ввода-вывода (бывают ПЛИС с более чем 1000 выводов («пинов»)), цифровая обработка сигнала (ЦОС), цифровая видеоаудиоаппаратура, высокоскоростная передача данных, криптография, проектирование и прототипирование ASIC, в качестве мостов (коммутаторов) между системами с различной логикой и напряжением питания, реализация нейрочипов, моделирование квантовых вычислений.

1 РАЗРАБОТКА АЛГОРИТМА РАБОТЫ ПРОЕКТИРУЕМОГО УСТРОЙСТВА

В данной курсовой работе решается задача по реализации устройства передачи данных по шине PCI Express.

Для подключения устройства PCI Express используется двунаправленное последовательное соединение типа точка-точка, называемое линией (англ. lane -- полоса, ряд); это резко отличается от PCI, в которой все устройства подключаются к общей 32-разрядной параллельной двунаправленной шине.

Соединение (англ. link -- связь, соединение) между двумя устройствами PCI Express состоит из одной (x1) или нескольких (x2, x4, x8, x12, x16 и x32) двунаправленных последовательных линий. Каждое устройство должно поддерживать соединение по крайней мере с одной линией (x1).

На электрическом уровне каждое соединение использует низковольтную дифференциальную передачу сигнала (LVDS), приём и передача информации производится каждым устройством PCI Express по отдельным двум проводникам, таким образом, в простейшем случае, устройство подключается к коммутатору PCI Express всего лишь четырьмя проводниками.

Использование подобного подхода имеет следующие преимущества:

карта PCI Express помещается и корректно работает в любом слоте той же или большей пропускной способности (например, карта x1 будет работать в слотах x4 и x16);

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

В обоих случаях, на шине PCI Express будет использоваться максимальное количество линий, доступных как для карты, так и для слота. Однако это не позволяет устройству работать в слоте, предназначенном для карт с меньшей пропускной способностью шины PCI Express. Например, карта x4 физически не поместится в стандартный слот x1, несмотря на то, что она могла бы работать в слоте x1 с использованием только одной линии. На некоторых материнских платах можно встретить нестандартные слоты x1 и x4, у которых отсутствует крайняя перегородка, таким образом, в них можно устанавливать карты большей длины чем разъем. При этом не обеспечивается питание и заземление выступающей части карты, что может привести к различным проблемам.

PCI Express пересылает всю управляющую информацию, включая прерывания, через те же линии, что используются для передачи данных. Последовательный протокол никогда не может быть заблокирован, таким образом задержки шины PCI Express вполне сравнимы с таковыми для шины PCI (заметим, что шина PCI для передачи сигнала о запросе на прерывание использует отдельные физические линии IRQ#A, IRQ#B, IRQ#C, IRQ#D).

Во всех высокоскоростных последовательных протоколах (например, гигабитный Ethernet), информация о синхронизации должна быть встроена в передаваемый сигнал. На физическом уровне, PCI Express использует метод канального кодирования 8b/10b (8 бит в десяти, избыточность -- 20 %) для устранения постоянной составляющей в передаваемом сигнале и для встраивания информации о синхронизации в поток данных. В PCI Express 3.0 используется более экономное кодирование 128b/130b с избыточностью 1,5 %.

2. СИНТЕЗ СТРУКТУРНОЙ СХЕМЫ

Структурная схема интерфейса PCI Express представлена на рисунке

Рисунок 4 - Структурная схема интерфейса PCI Express

Данный интерфейс состоит из 3 логических уровней:

уровень транзакций;

канальный уровень;

физический уровень;

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

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

Рисунок 4 - структура пакетов для каждого уровня

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

3. СИНТЕЗ ФУНКЦИОНАЛЬНОЙ СХЕМЫ

Функциональная схема передачи данных по протоколу PCI Express представлена на рисунке:

Рисунок 4-

Со входа zapros поступает сигнал на демультиплексор. Если он равен 1, то информация поступает, в противном случае на выходе 0. В блоке demux реализован демультиплексор. В зависимости от адреса информация поступает на 1 из выходов. В регистре NEWCRC формируется алгоритм контрольной суммы который. На регистре Vyhod находится конечный результат сообщения которое передается абоненту.

4. ВЫБОР ЭЛЕМЕНТНОЙ БАЗЫ

Для данного интерфейса будем использовать ПЛИСС семейства AlteraCycloneV. Данная ПЛИСС поддерживает заданный нам интерфейс и обладает достаточной скоростью для реализации проекта.В отличии от других семейств серии Cyclone, являются адаптивные логические модули. Кроме этого, микросхемы семейства Cyclone V содержат блоки цифровой обработки сигналов переменной точности, блоки встроенного ОЗУ, высокоскоростные приемопередатчики, аппаратные IP-блоки (контроллеры PCI Express и контроллеры внешней синхронной памяти), и средства защиты проекта от несанкционированного копирования и модификации. Технические характеристики ПЛИСС представлены в таблице:

Напряжение питания

3.3 В

Макс. Рабочая частота

402 МГц

Блок памяти

12.7 Кб

Скорость передачи данных(SRIO)

1.25-3.1 Гбит/c

Таблица 1. Технические характеристики CycloneV

Структурная схема ПЛИСС представлена на рисунке 4:

Рисунок 4- структурная схема CycloneV

5.РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Используя программный пакет Quartus, реализуем аппаратно данное устройство. Рассмотрим отдельно каждый блок.

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

Рисунок -демультиплексор 4 на 1

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

Рисунок - регистры нахождения контрольной суммы

Блок VYHOD является регистром, в котором вся полученная информация собирается в кадр которая поступает на принимающую сторону.

Рисунок - регистры нахождения контрольной суммы

6. РЕЗУЛЬТАТ МОДЕЛИРОВАНИЯ

В зависимости от адреса на вход будет поступать то или иное сообщение. Если на входе zapros будет 1,значит есть сигнал и сообщения поступают, в противном случае сигнала нет. Зададим значение crc=000000000000011

Результаты тестовых испытаний представлены на рисунке:

программа данные express тестовый

Рисунок 5 - результаты моделирования

Как видно из рисунка в выходном регистре data в зависимости от адреса на входе address появилась информация которую мы хотели передать. На выходном регистре vyhod получилось значение 01.0000001100001111, что соответствует принятому сообщению (01) и алгоритму контрольной суммы (0000011111011110). Тоже самое и для других значений адреса.

ЗАКЛЮЧЕНИЕ

В данной курсовой работе было реализовано устройство передачи данных по шине PCI Express.

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

Размещено на Allbest.ru

...

Подобные документы

  • Структура модели на языке Express. Правила записи супертипов и подтипов. Разработка информационных моделей в рамках концепции CALS. Типы данных в языке Express. Структура портативного зарядного устройства ЗарядON. Изображение сущности на языке Express-G.

    курсовая работа [487,9 K], добавлен 18.01.2013

  • Проектирование программного модуля: сбор исходных материалов; описание входных и выходных данных; выбор программного обеспечения. Описание типов данных и реализация интерфейса программы. Тестирование программного модуля и разработка справочной системы.

    курсовая работа [81,7 K], добавлен 18.08.2014

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

    курсовая работа [754,8 K], добавлен 12.03.2009

  • Система сбора данных. Скорость передачи данных. Ячеистая структура сети ZigBee. Основные технические характеристики для ZigBee-модемов компании Telegesis. Изменение состояния цифровых выводов модема. Удаленные маршрутизаторы и конечные устройства.

    дипломная работа [1,4 M], добавлен 05.06.2011

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

    курсовая работа [728,2 K], добавлен 11.08.2012

  • Компьютерные сети и протоколы передачи данных. Устройства, взаимодействующие с компьютерными сетями при помощи протоколов передачи данных. Мобильные вычислительные устройства и операционные системы. Клиент-серверное приложение для управления расписанием.

    дипломная работа [1,8 M], добавлен 11.12.2015

  • Проектирование устройства для приема 8-разрядного параллельного кода данных из микропроцессорной системы по локальной компьютерной шине ISA и их передачи во внешнее устройство по последовательному интерфейсу с заданной скоростью и анализом готовности.

    контрольная работа [185,6 K], добавлен 19.11.2010

  • Выбор принципов проектирования устройства записи, хранения и передачи чисел. Разработка алгоритма выполнения операций, необходимых для обработки информации. Структурная схема устройства. Элементарная база, необходимая для разработки принципиальной схемы.

    курсовая работа [1,3 M], добавлен 16.08.2012

  • Разработка структурной и принципиальной схемы. Блок-схема основной программы и подпрограмм обработки прерываний. Имена переменных, используемых в них. Результаты моделирования работы устройства в программе ISIS пакета Рroteus. Разработка печатной платы.

    курсовая работа [1,5 M], добавлен 13.11.2016

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

    курсовая работа [2,0 M], добавлен 21.12.2012

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

    курсовая работа [412,8 K], добавлен 24.06.2013

  • Обоснование выбора используемого программного обеспечения. Входная и выходная информация. Реляционная модель базы данных предметной области. Создание модели информационной системы с помощью Run All Fusion Process Modeler r7. Результаты тестовых испытаний.

    курсовая работа [4,3 M], добавлен 12.04.2014

  • Беспроводные и проводные системы передачи данных. Методы обеспечения безошибочности передачи данных в сетях. Оценка зависимости показателей эффективности. Снижение вероятности появления ошибки сбора данных в соответствии с предъявленными требованиями.

    дипломная работа [309,0 K], добавлен 14.10.2014

  • Основания для выбора контроллера, который подключается по IDE-шине к устройству CD-ROM. Принцип действия устройства, описание структурной и принципиальной схемы. Выбор элементной базы. Алгоритм работы устройства, разработка программного обеспечения.

    курсовая работа [136,0 K], добавлен 23.12.2012

  • Разработка базы данных в СУБД Microsoft SQL Server 2008 Express для автоматизированного учета пассажирских перевозок по Ставропольскому краю и механизмов управления ими при помощи триггеров. Экономическая эффективность от внедрения программного продукта.

    курсовая работа [3,4 M], добавлен 22.06.2011

  • Разработка базы данных для ортопедического отделения больницы, которая имеет дополнительный триггер и процедуру для выполнения условия задачи. Использование программного продукта Oracle Application Express и языка MySql для создания базы данных.

    курсовая работа [208,6 K], добавлен 13.12.2014

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

    курсовая работа [816,5 K], добавлен 05.02.2018

  • Характеристика объекта компьютеризации. Выбор средств управления данными. Разработка моделей данных. Структура и функции частей программного обеспечения подсистемы. Выбор конфигурации и параметров сервера, рабочих станций, технологии передачи данных.

    курсовая работа [444,6 K], добавлен 28.01.2013

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

    курсовая работа [2,2 M], добавлен 25.12.2014

  • Понятие и классификация систем передачи данных. Характеристика беспроводных систем передачи данных. Особенности проводных систем передачи данных: оптико-волоконных и волоконно-коаксиальных систем, витой пары, проводов. Оценка производителей аппаратуры.

    курсовая работа [993,0 K], добавлен 04.03.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.