Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным


НазваниеУчебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным
страница5/10
ТипУчебное пособие
1   2   3   4   5   6   7   8   9   10
Часть 3 Мультимедийная процессорная система «DE2-70 Media Computer»
3.1 Назначение и возможности учебного стенда Altera® DE2-70
Внешний вид стенда Altera® DE2-70 приведен на рис. 3.1. Стенд предназначен для учебных целей. Он может быть использован для выполнения лабораторных работ и курсовых проектов по дисциплинам: «Схемотехника ЭВМ», «Теория автоматов», «Организация ЭВМ», «Периферийные устройства ЭВМ», «Компьютерная графика», «Встроенные системы».


Рис. 3.1 – Внешний вид стенда DE2-70
В состав стенда входит программируемая логическая интегральная схема (ПЛИС) Altera Cyclone® II 2C70 FPGA и большое количество дополнительных компонентов, позволяющих создавать на базе стенда широкий диапазон различных проектов. Причем, проекты могут представлять собой как простые схемы, реализованные внутри кристалла ПЛИС, так и сложные аппаратно - программные комплексы, включающие полный набор технических средств стенда.

Стенд подключается к инструментальному компьютеру через USB разъем. На инструментальном компьютере устанавливается пакет Quartus II, с помощью которого создается проект и выполняется программирование кристалла. Для отладки программ, разработанных для созданных в кристалле процессорных систем, используется приложение Altera Monitor Program (AMP), описанное во второй части настоящего пособия.

В состав стенда также входит:

  • энергонезависимая конфигурационная память EPCS16, позволяющая сохранять файл конфигурации ПЛИС, который может автоматически загружаться после включения питания стенда;

  • встроенный программатор USB Blaster, поддерживающий два режима работы и предназначенный для программирования кристалла ПЛИС и для управления проектами со стороны инструментального компьютера;

  • микросхема синхронной статической памяти (SSRAM) емкостью 2 мегабайта;

  • две микросхемы синхронной динамической памяти (SDRAM), емкостью 32 мегабайта каждая;

  • микросхема флеш памяти емкостью 8 мегабайт;

  • разъём для подключения SD карт памяти;

  • четыре кнопки;

  • восемнадцать переключателей;

  • восемнадцать красных светодиодов;

  • девять зеленых светодиодов;

  • восемь 7-сегментных индикаторов;

  • жидкокристаллический монитор, позволяющий отображать две строки по 16 символов;

  • 50 мегагерцовый и 28,6 мегагерцовый резонаторы, для формирования тактовых сигналов;

  • 24 битный аудиокодек, соединенный с разъемами линейного входа, выхода и микрофона;

  • 10 битный цифро-аналоговый преобразователь, для формирования видеосигнала для VGA монитора, соединенный с соответствующим внешним разъёмом;

  • два телевизионных декодера (NTSC/PAL/SECAM), соединенных с соответствующими разъёмами;

  • 10/100 Ethernet контроллер, соединенный с соответствующим разъемом;

  • USB Host/Slave контроллер с разъемами типа A и B;

  • приемопередатчик интерфейса RS-232, с девятиконтактным разъемом;

  • разъём PS/2, для подключения мыши и клавиатуры к создаваемым на стенде проектам;

  • инфракрасный приемопередатчик;

  • два 40 контактных разъема расширения с диодной защитой;

  • SMA разъём, для подключения внешнего источника тактовых сигналов.


Программируемый кристалл Altera Cyclone® II 2C70 FPGA содержит 896 внешних выводов, 622 из которых может назначаться пользователем в его собственных проектах. Большое количество выводов позволяет выполнить соединения всех компонентов стенда с кристаллом ПЛИС, обеспечивая тем самым максимальную гибкость стенда. На рис. 3.2 приведена блок схема стенда DE2-70. Пользователь создает свой проект путем программирования кристалла с помощью встроенного программатора USB Blaster.



Рис. 3.2 – Блок схема стенда DE2-70
В состав ПЛИС входит почти 70 000 логических элементов, 250 блоков встроенной памяти, организованной по 4кбит, 150 встроенных умножителей, 4 блока управления тактированием [4]. Этих средств вполне достаточно для реализации на кристалле различных аппаратно - программных систем, содержащих как процессоры общего назначения, такие как Nios II, так и специализированные сигнальные процессоры, а также большой набор различных контроллеров, в том числе разработанных самим пользователем.

Библиотека системы автоматизированного проектирования Quartus II содержит большое количество базовых элементов, включая мегафункции и макрофункции, а также ядра интеллектуальной собственности (IP ядра), созданные как компанией Altera, так и компаниями партнерами. Их применение в проектах пользователя значительно расширяет возможности проектирования и ускоряет выполнение проекта.

Одним из проектов, реализованных на учебном стенде, является мультимедийная процессорная система, названная «DE2-70 Media Computer». Эта система разработана компанией Altera в учебных целях. Именно она используется в лабораторных работах по дисциплине «Организация ЭВМ и систем». Файл программирования кристалла ПЛИС, который реализует эту процессорную систему, может быть найден в разделе University Program на сайте компании Altera [10].
3.2. Содержание процессорной системы «DE2-70 Media Computer»


Рис. 3.3 – Процессорная система, реализованная на стенде DE2-70
Блок-схема процессорной системы «DE2-70 Media Computer» из [11], показана на рис.3.3. Она включает процессор Nios II, память для хранения программ и данных, порт ввода/вывода аудиоинформации, порт вывода видеоинформации, осуществляющий вывод как графической, так и символьной информации. В состав системы входит также последовательный порт PS/2, жидкокристаллический дисплей, отображающий две строки по 16 символов, параллельные порты, соединенные с переключателями, кнопками и светодиодами, модуль таймера и последовательный порт RS 232. Как показано на рис. 3.3, процессор и контроллеры устройств ввода/вывода реализованы внутри кристалла Cyclone II на стенде DE2-70. Ниже описываются компоненты процессорной системы.
3.2.1. Процессор Nios II
Процессор Nios II является целочисленным 32-битным процессором с RISC архитектурой, который может быть реализован в кристаллах FPGA фирмы Altera. Возможна реализация трёх версий процессора. Это экономная версия(/e), стандартная(/s), быстрая(/f). Представленная в описании процессорная система включает процессор Nios II/s стандартной версии. Возможности процессора вполне достаточны для использования созданной на его основе системы в лабораторных работах. Процессорная система «DE2-70 Media Computer» включает модуль аппаратной реализации арифметики с плавающей запятой, который описывается в разделе 3.4.7. Этот модуль понадобится для обработки мультимедийной информации.

Более подробное описание процессора Nios II содержится в части 4 настоящего учебного пособия. Также оно может быть найдено в руководстве [3], которое представлено в разделе University Program на сайте Altera.

Как показано на рис. 3.3, процессор Nios II может быть сброшен нажатием кнопки KEY0 на плате. Механизм сброса обсуждается в разделе 3.3. Все устройства ввода/вывода в процессорной системе доступны процессору как устройства, отображенные на память. Это означает, что они используют единое адресное пространство, разделяемое с оперативной памятью. Используемый устройствами диапазон адресов, приводится в следующих подразделах пособия.

3.2.2. Компоненты памяти
Процессорная система содержит три типа памяти: синхронную динамическую память (SDRAM), статическую память (SRAM) и память, реализованную на кристалле (On-chip memory).
3.2.2.1. SDRAM
Контроллер SDRAM обеспечивает интерфейс с 64-мб синхронной динамической памятью на плате, которая организована как 16M x 32 бита. Эта память доступна процессору с использованием операций чтения/записи слова (32 бита), полуслова (16 бит), или байта. Адресное пространство SDRAM имеет диапазон 0x00000000 - 0x03FFFFFF.
3.2.2.2. SRAM
Контроллер статической памяти SRAM обеспечивает 32-битный интерфейс с синхронной статической памятью на плате DE2-70. Кристалл статической памяти организован как 1M x 16 бит, но он доступен процессору с использованием слов (32 бит), полуслов (16 бит), байтов. Статическая память имеет адреса в диапазоне 0x8000000 - 0x081FFFFF.
3.2.2.3. Память, реализованная внутри кристалла
Процессорная система включает 8 кб памяти, реализуемой внутри кристалла Cyclone II. Эта память организована как 8K x 8 бит. Диапазон адресов от 0x9000000 до 0x9001FFF. Память используется как текстовый буфер для порта вывода видеоинформации, который описывается в разделе 3.4.2.2.
3.2.3. Параллельные порты
Процессорная система включает несколько параллельных портов, которые поддерживают ввод, вывод и двунаправленную передачу данных между процессором Nios II и периферийными устройствами. Как показано на рис. 3.4, каждый параллельный порт ввода/вывода может содержать до четырех 32-битных регистров. Параллельные порты вывода информации

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



Рис. 3.4 – Регистры параллельного порта ввода вывода

Регистр данных параллельного порта доступен по адресу Base. Регистр направления доступен по адресу Base+4. Некоторые из параллельных портов в процессорной системе имеют регистры, адресуемые Base+8 и Base, как показано на рис.3.4. Эти регистры предназначены для реализации обмена в режиме прерываний. Они обсуждаются в разделе 3.3.1.
3.2.3.1. Параллельные порты красных и зеленых светодиодов
Красные светодиоды LEDR17-0 и зеленые светодиоды LEDG8-0 на стенде управляются каждый своим портом, как показано на рис.3.5. Порт, соединенный с LEDR, содержит только записываемый 18-битный регистр данных, который имеет адрес 0x10000000. Порт для LEDG имеет 9-битный регистр данных, который доступен по адресу 0x10000010. Эти два регистра могут быть записаны, используя пословный доступ. Старшие биты в этих регистрах не используются.



Рис. 3.5 – Порты вывода информации на светодиоды

3.2.3.2. Параллельные порты 7-сегментных индикаторов
В процессорной системе содержатся два параллельных порта, соединенных с 7-сегментными индикаторами на плате, каждый из которых управляется 32-битным, доступным по записи регистром данных. Как показано на рис. 3.6., регистр с адресом 0x10000020 управляет цифрами HEX3-HEX0, а регистр с адресом 0x10000030 управляет цифрами HEX7-HEX4. Данные могут быть записаны в регистры, используя пословную операцию. Они непосредственно управляют сегментами каждого индикатора в соответствии со схемой, приведенной на правой стороне рис. 3.6.



Рис. 3.6 – Порты управления 7-сегментными индикаторами

3.2.3.3. Параллельный порт переключателей
Переключатели SW17-0 на плате DЕ2-70 соединены с входным параллельным портом. Как показано на рис. 3.7, этот порт содержит 18-битный регистр данных, доступный только для чтения по адресу 0x10000040.



Рис. 3.7 – Параллельный порт ввода с переключателей
3.2.3.4. Параллельный порт для связи с кнопками
Параллельный порт, соединенный с кнопками KEY3-1 на плате DE2-70, содержит три трехразрядных регистра, как показано на рис. 3.8. Эти регистры имеют базовые адреса от 0x10000050 до 0x1000005c. Они могут быть доступны, используя операции со словами. Доступный по чтению регистр данных обеспечивает ввод значения, задаваемого кнопками KEY3, KEY2, KEY1. Нулевой бит регистра данных не используется. Как было сказано в разделе 3.2.1., соответствующая кнопка KEY0 зарезервирована для выполнения сброса процессорной системы. Другие два регистра, показанные на рис. 3.8, доступны по адресам 0x10000058 и 0x1000005С. Они описаны в разделе 3.3.1.1.


Рис. 3.8. Регистры параллельного ввода с кнопок
3.2.3.5. Параллельные порты расширения


Рис. 3.9 – Разъемы расширения JP1 и JP2

Процессорная система включает два двунаправленных параллельных порта, которые соединены с разъемами расширениями JP1 и JP2 на плате. Каждый из этих параллельных портов включает четыре 32-битных регистра, которые были приведены на рис. 3.4. Базовые адреса регистров, соединенных с портами JP1 и JP2, 0x10000060 и 0x10000070, соответственно. Рис. 3.9. отражает назначение контактов разъемов расширения JP1 и JP2 и показывает соответствие битов регистров данных параллельных портов и контактов на разъемах. Как следует из рисунка, бит D0 параллельного порта JP1 соединен с контактом в верхнем правом углу разъема. Бит D1 соединен с контактом, который расположен ниже предыдущего. Следует отметить, что некоторые контакты разъемов JP1 и JP2 не используются как контакты ввода/вывода, и поэтому они не используются в параллельных портах. Только 32 контакта из 36 контактов каждого разъема могут быть использованы.
3.2.3.6. Использование параллельных портов в программах на языке ассемблер и C
Процессорная система «DE2-70 Media Computer» представляет удобную платформу для получения первого опыта отладки программ, написанных на ассемблере или на языке С. Простые примеры таких программ приведены в листингах 3 и 4. Обе программы выполняют одинаковые действия, иллюстрируя использование параллельных портов в программах на языках ассемблер и С.

Программа, приведенная в листинге 3, отображает значение, задаваемое переключателями SW17-0, на красных светодиодах, а состояние кнопок на зеленых светодиодах. Она также отображает циклически сдвигаемое в регистре процессора значение на 7-сегментных индикаторах HEX7-HEX4 и HEX3-HEX0. Этот двоичный набор сдвигается вправо путем выполнения команды циклического сдвига. В программе используется цикл задержки, чтобы замедлить сдвиг для удобства визуального наблюдения. Отображаемый набор на 7-сегментных индикаторах может быть изменен с помощью переключателей SW17-0, посредством нажатия любой из кнопок KEY3, KEY2, KEY1. Следует напомнить, что кнопка KEY0 используется для сброса процессора. Файлы с исходными кодами программ, показанных в листингах 3 и 4, входят в состав приложения AMP. Они могут быть найдены в разделе «Sample programs» под именем «Getting Started».
прямая соединительная линия 1Листинг 3. Пример программы на ассемблере, использующей параллельные порты

/*****************************************************************************

* Эта программа демонстрирует использование параллельных портов в процессорной

* системе "DE2-70 Media Computer"

*

* Она выполняет следующее:

* 1. Выводит состояние SW переключателей на красные светодиоды LEDR

* 2. Выводит состояние кнопок KEY на зеленые светодиоды LEDG

* 3. Выводит сдвигаемый набор на HEX индикаторы

* 4. Если нажаты кнопки KEY[3..1], для задания набора используются SW переключатели

*****************************************************************************

.text /* далее следует исполнимый код */

.global _start /* объявляем метку _start глобальной */

_start:
/* инициализируем базовые адреса параллельных портов */

movia r15, 0x10000040 /* базовый адрес SW переключателей */

movia r16, 0x10000000 /* базовый адрес красных светодиодов LEDR */

movia r17, 0x10000050 /* базовый адрес кнопок KEY */

movia r18, 0x10000010 /* базовый адрес зеленых светодиодов LEDG */

movia r20, 0x10000020 /* базовый адрес индикаторов HEX3_HEX0 */

movia r21, 0x10000030 /* базовый адрес индикаторов HEX7_HEX4 */

movia r19, HEX_bits

ldw r6, 0(r19) /* загружаем в r6 набор для отображения на HEX индикаторах */
DO_DISPLAY:

ldwio r4, 0(r15) /* загружаем в r4 состояние SW переключателей */

stwio r4, 0(r16) /* выводим на красные светодиоды LEDR */
ldwio r5, 0(r17) /* загружаем в r5 состояние кнопок KEY */

stwio r5, 0(r18) /* выводим на зеленые светодиоды LEDG */

beq r5, r0, NO_BUTTON

mov r6, r4 /* копируем состояние SW переключателей в r6 */

WAIT:

ldwio r5, 0(r17) /* загружаем в r5 состояние кнопок KEY */

bne r5, r0, WAIT /* ждем отпускания кнопок */

NO_BUTTON:

stwio r6, 0(r20) /* выводим на HEX3 ... HEX0 */

stwio r6, 0(r21) /* выводим на HEX7 ... HEX4 */

roli r6, r6, 1 /* сдвигаем выводимый набор */
movia r7, 100000 /* реализуем задержку в r7 */

DELAY:

subi r7, r7, 1

bne r7, r0, DELAY
br DO_DISPLAY
/**********************************************************************

.data /* сегмент данных */
HEX_bits:

.word 0x0000000F /* набор для вывода на HEX */
прямая соединительная линия 2

Лпрямая соединительная линия 28истинг 4. Пример программы на С, использующей параллельные порты

/*****************************************************************************

* Эта программа демонстрирует использование параллельных портов в процессорной системе

* "DE2-70 Media Computer"

*

* Она выполняет следующее:

* 1. Выводит состояние SW переключателей на красные светодиоды LEDR

* 2. Выводит состояние кнопок KEY на зеленые светодиоды LEDG

* 3. Выводит сдвигаемый набор на HEX индикаторы

* 4. Если нажаты кнопки KEY[3..1], для задания набора используются SW переключатели

*****************************************************************************
int main(void)

{

/* Объявляем указатели на регистры портов вв/выв(это означает, что команды ldwio и stwio будут использоваться вместо команд ldw и stw)

*/

volatile int * red_LED_ptr = (int *) 0x10000000; //адрес красных светодиодов LEDR

volatile int * green_LED_ptr = (int *) 0x10000010; //адрес зеленых светодиодов LEDG

volatile int * HEX3_HEX0_ptr = (int *) 0x10000020; //адрес HEX3_HEX0

volatile int * HEX7_HEX4_ptr = (int *) 0x10000030; //адрес HEX7_HEX4

volatile int * SW_switch_ptr = (int *) 0x10000040; //адрес переключателей SW

volatile int * KEY_ptr = (int *) 0x10000050; // адрес кнопок KEY
int HEX_bits = 0x0000000F; // набор для вывода на HEX индикаторы

int SW_value, KEY_value, delay_count;
while(1)

{

SW_value = *(SW_switch_ptr); // читаем состояние SW переключателей

*(red_LED_ptr) = SW_value; // выводим на красные светодиоды LEDR
KEY_value = *(KEY_ptr); // читаем состояние кнопок KEY

*(green_LED_ptr) = KEY_value; // выводим на зеленые светодиоды LEDR

if (KEY_value != 0) // проверяем была ли нажата кнопка {

HEX_bits = SW_value; //устанавливаем набор используя SW values

while (*KEY_ptr); // ожидаем отпускания кнопки

}

*(HEX3_HEX0_ptr) = HEX_bits; // выводим набор на HEX3 ... HEX0

*(HEX7_HEX4_ptr) = HEX_bits; // выводим набор на HEX7 ... HEX4
/* циклически сдвигаем набор, выводимый на HEX индикаторы */

if (HEX_bits & 0x80000000)

HEX_bits = (HEX_bits << 1) | 1;

else

HEX_bits = HEX_bits << 1;
for (delay_count = 500000; delay_count != 0; --delay_count); // цикл задержки

}

}прямая соединительная линия 48
1   2   3   4   5   6   7   8   9   10

Похожие:

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие Издательство Иркутского государственного технического университета 2012
Тимофеева С. С. Защита литосферы и обращение с опасными отходами : учеб пособие. – Иркутск : Изд-во Иргту, 2012. – 159 с

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие Москва «Альтаир» 2010 удк 349. 6(470)(075) ббк 67. 407 Я 7
Негосударственное (частное) образовательное учреждение дополнительного профессионального образования (повышения квалификации) специалистов...

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие. М.: Издательство Московского университета, 2004
«Вся Россия», «Моя провинция», «Новости – время местное» и др Представлены также некоторые особенности совместной работы журналистов...

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие Москва 2008
Юдин В. П. Профсоюзная работа в школе. Учебное пособие. Москва, Издательство мгоу, 2008. 126 с

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие Издательство Казанского (Приволжского) федерального университета 2014
Учебное пособие предназначено для студентов, аспирантов, преподавателей юридических учебных заведений, работников судов, адвокатуры,...

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие Издательство Казанского (Приволжского) федерального университета 2014
Учебное пособие предназначено для студентов, аспирантов, преподавателей юридических учебных заведений, работников судов, адвокатуры,...

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебное пособие для бакалавров направления подготовки 230700. 62...
Учебное пособие для бакалавров направления подготовки 230700. 62 «Прикладная информатика в области экономики»

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconПермский филиал Факультет бизнес-информатики Кафедра информационных...
Описание процесса разработки системы поддержки принятия решений в управлении персоналом 38

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебно-методическое пособие Красноярск сфу 2012 удк 625. 7: 338(075) ббк 65. 315. 373
Г12 Экономика отрасли (Экономика дорожного строительства): учебно-методическое пособие [Текст] / сост. В. В. Гавриш, Е. В. Гуторин....

Учебное пособие Москва Издательство Московского государственного университета леса 2012 удк 004. 896(075) Е92 Разработано в соответствии с Федеральным государственным  iconУчебно-методическое пособие Красноярск сфу 2012 удк 625. 7: 338(075) ббк 65. 315. 373
Г12 Экономика отрасли (Экономика дорожного строительства): учебно-методическое пособие [Текст] / сост. В. В. Гавриш, Е. В. Гуторин....

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск