Научная статья на тему 'Новые технологии вычислительной техники в учебных планах кафедры информационных и управляющих систем СПбГПУ'

Новые технологии вычислительной техники в учебных планах кафедры информационных и управляющих систем СПбГПУ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
307
25
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УЧЕБНЫЙ ПЛАН / УЧЕБНАЯ ДИСЦИПЛИНА / ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА / УРОВНИ ПРОЕКТИРОВАНИЯ / ЯЗЫКИ ПРОЕКТИРОВАНИЯ ВТ / РЕДАКТОРЫ УРОВНЕЙ ПРОЕКТИРОВАНИЯ / ТЕСТИРОВАНИЕ / СИМУЛЯЦИЯ / КО-СИМУЛЯЦИЯ / СОВМЕСТНАЯ РАЗРАБОТКА / МИКРОСХЕМА ПРОГРАММИРУЕМОЙ ЛОГИКИ / ЦИФРОВОЙ СИГНАЛЬНЫЙ ПРОЦЕССОР / СРЕДА РАЗРАБОТКИ / СИСТЕМА НА КРИСТАЛЛЕ / CURRICULUM / COURSE / COMPUTER TECHNOLOGY / LEVELS OF DESIGN / HARDWARE DESCRIPTION LANGUAGES / LEVEL EDITORS OF DESIGN / TESTING / SIMULATION / CO-SIMULATION / THE JOINT DEVELOPMENT / CHIP PROGRAMMABLE LOGIC / DIGITAL SIGNAL PROCESSOR / THE DEVELOPMENT ENVIRONMENT / SYSTEM-ON-CHIP

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Амосов Владимир Владимирович, Вишневская Татьяна Александровна, Молодяков Сергей Александрович, Устинов Сергей Михайлович, Черноруцкий Игорь Георгиевич

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Амосов Владимир Владимирович, Вишневская Татьяна Александровна, Молодяков Сергей Александрович, Устинов Сергей Михайлович, Черноруцкий Игорь Георгиевич

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

New technologies of computer science in the curriculum department of Information and Control Systems SPbSPU

The problem of the study of modern computing technology at the University at special software profile considered. Using several disciplines shows how to build lab work related to the study of programmable logic, and digital signal processors.

Текст научной работы на тему «Новые технологии вычислительной техники в учебных планах кафедры информационных и управляющих систем СПбГПУ»

УДК 378.416

В.В. Амосов, Т.А. Вишневская, C-А. Молодяков, С.М. Устинов, И.Г. Черноруцкий

НОВЫЕ ТЕХНОЛОГИИ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ В УЧЕБНЫХ ПЛАНАХ КАФЕДРЫ ИНФОРМАЦИОННЫХ И УПРАВЛЯЮЩИХ СИСТЕМ СПБГПУ

V.V. Amosov, T.A. Vishnevskaya, S.A. Molodyakov,

S.M. Ustinov, I.G. Chernorutsky

NEW TECHNOLOGIES OF COMPUTER SCIENCE IN THE CURRICULUM DEPARTMENT OF INFORMATION AND CONTROL SYSTEMS SPbSPU

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

УЧЕБНЫЙ ПЛАН. УЧЕБНАЯ ДИСЦИПЛИНА. ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА. УРОВНИ ПРОЕКТИРОВАНИЯ. ЯЗЫКИ ПРОЕКТИРОВАНИЯ ВТ. РЕДАКТОРЫ УРОВНЕЙ ПРОЕКТИРОВАНИЯ. ТЕСТИРОВАНИЕ. СИМУЛЯЦИЯ. КО-СИМУЛЯЦИЯ. СОВМЕСТНАЯ РАЗРАБОТКА. МИКРОСХЕМА ПРОГРАММИРУЕМОЙ ЛОГИКИ. ЦИФРОВОЙ СИГНАЛЬНЫЙ ПРОЦЕССОР. СРЕДА РАЗРАБОТКИ. СИСТЕМА НА КРИСТАЛЛЕ.

The problem of the study of modern computing technology at the University at special software profile considered. Using several disciplines shows how to build lab work related to the study of programmable logic, and digital signal processors.

CURRICULUM. COURSE. COMPUTER TECHNOLOGY. LEVELS OF DESIGN. HARDWARE DESCRIPTION LANGUAGES. LEVEL EDITORS OF DESIGN. TESTING. SIMULATION. CO-SIMULATION. THE JOINT DEVELOPMENT. CHIP PROGRAMMABLE LOGIC. DIGITAL SIGNAL PROCESSOR. THE DEVELOPMENT ENVIRONMENT. SYSTEM-ON-CHIP.

Для современной вычислительной техники (ВТ) характерны непрерывное развитие, появление новых устройств и технологий. Программные средства интегрируются с аппаратными. Наблюдается повсеместная доступность любых элементов ВТ. Современный разработчик промышленных средств ВТ должен сочетать владение современными технологиями с широким кругозором, базовыми знаниями и фундаментальной подготовкой. Отсюда возникает вопрос: каким образом организовать учебный процесс, какие дисциплины изучать, какие темы и какие технологии рассматривать в отдельных дисциплинах? Федеральный государственный образовательный стандарт (ФГОС) [ 1 ] лишь очерчивает область учебных дисциплин

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

На кафедре информационных и управляющих систем (ИУС) СПбГПУ [2] в области ВТ систематически ведется детальный анализ новых технологий и инструментальных средств их поддержки. Перспективные для индустриальных применений инновации отбираются и ежегодно внедряются в учебный процесс.

С момента создания в 1949 году (переименовывалась в 1952 и 1966 годах) кафедра тесно сотрудничает с флагманами разработки больших и социально значимых проектов в области ВТ (в их числе, ОКБ «Импульс» [3] с 1961, ЗАО «Моторола» с 1995, «EMC» с 2009 и др). Ведущие сотрудники промышленных предприятий преподают на кафедре, а преподаватели кафедры непосредственно заняты в высокотехнологичных проектах предприятий. Студенты в рамках учебных практик и научно-исследовательских проектов участвуют в современных исследованиях и промышленных разработках. Важно, что обратной связью подобных контактов является корректировка учебных планов и программ дисциплин с целью учета требований промышленности к знаниям и умениям специалистов, подготавливаемых вузом.

В нашей статье описана организация и содержание отдельных рабочих планов учебных дисциплин (РПУД), связанных с изучением аппаратных средств ВТ.

Хотя на кафедре ИУС готовят бакалавров и магистров по двум направлениям федерального ГОС — 230100.62 «Информатика и вычислительная техника» и 231000. «Программная инженерия», тем не менее затрагиваемые в работе вопросы актуальны для организации учебного процесса и других направлений подготовки программистов.

Учебные планы и федеральный государственный образовательный стандарт

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

В соответствии с ФГОС все дисциплины разделяются на два уровня — общепрофессиональные дисциплины и специальные дисциплины. В дисциплинах первого уровня особое внимание уделяется изучению тем, которые необходимы для тестирования студентов [4]. Задача дисциплин второго уровня связана с изучением и овладением современными технологиями [5].

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

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

Табл. 1 иллюстрирует применение новых технологий в перечне учебных курсов. Следует заметить, что в учебных планах основное внимание уделено изучению базовых дисциплин, к которым относятся «Электротехника, электроника и схемотехника», «ЭВМ и периферийные устройства», «Микропроцессорные системы», «Архитектура вычислительных систем», «Сети и телекоммуникации». Знания, полученные студентами при изучении указанных дисциплин, используются при обучении на старших курсах по дисциплинам, которые связаны с проектированием и исследованием информационных и управляющих систем. Особенностью кафедры ИУС можно считать ориентацию новых учебных планов, созданных в соответствии с требованиями ФГОС, на подготовку студентов по магистерским программам «Технология разработки программных систем» и «Технология разработки и сопровождения качественного программного продукта». Поэтому даже при изучении дисциплин аппаратного цикла основное внимание уделено программным моделям, алгоритмам, библиотекам программ, поддерживающим разработку и проектирование устройств ВТ.

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

Таблица 1

Список дисциплин, связанных с изучением аппаратных средств вычислительной техники,

по ФГОС для направления подготовки 230100 кафедры ИУС

№ Дисциплина Семестр Всего час. Изучаемые инновации ВТ

1 Электротехника, электроника и схемотехника 2, 3, 4 396 Редакторы уровн. проектир. HDL. Программирование процессов. Совместная разработка ПО и аппаратуры [6] Co-simulation [7] SystemC [8]...

2 ЭВМ и периферийные устройства 3, 4 252 Отладочные модули ЦСП [9] VisualDSP [10] OpenMP [11] OpenCV [12] DirectSound, SSE...

3 Программное обеспечение POSIX GNU/Linux 3 126 Программирование ядра GNU/Linux, драйверы [13]

4 Микропроцессорные системы 5 144 Технология разработки ПО и систем на ЦСП [9, 10]

5 Архитектура вычислительных систем 5, 6 198 Технология имитационного моделирования. Распределенные вычислительные системы [14]

6 Сети и телекоммуникации 7,8 288 Моделирование в MatLab Simulink [15]. ПО для беспроводных систем с Bluetooth [16]

7 Технические средства АСОИУ 7 90 USB-камеры. Технология CUDA [17] MatchCad [18] ...

8 Цифровая обработка сигналов 5,6 180 Модули системы сбора данных National Instruments и среда разработки LabVIEW [19]

9 Проектирование систем реального времени 10 108 Отладочные модули Actel/ ARM. Встроенные ОС Linux [13]

10 Проектирование систем передачи данных 10 108 Проектирование новых протоколов систем телекоммуникаций

11 Технология проектирования «Система на кристалле» 11 72 Технология разработки [6]. Отладочные модули. Quartus [20]

12 Оптические процессоры 11 72 Среда моделированияGLSD [21]

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

Современные технологии проектирования в дисциплине «Электротехника, электроника и схемотехника»

Базовая, общепрофессиональная дисциплина «Электротехника, электроника и схемотехника» изучается в 2, 3, 4 семестрах, планы ее

изучения студентами достаточно подробно разработаны [1]. Однако при сохранении основных тем изучения найдены возможности рассмотрения новых технологий проектирования ВТ. Если во втором семестре в практических занятиях и лабораторных работах изучаются традиционные темы, то в последующих семестрах в лабораторный практикум введены новые современные средства разработки [6].

Очень важно при изучении любой дисциплины выйти на современный уровень ее развития. Вооружить студентов знаниями и навыками, при которых они в рамках научно-исследовательской работы на кафедре или у себя дома могли бы заниматься творчеством (в данном случае — создавать современные программно-аппаратные комплексы). Уделяя достаточное внимание основам промышленной электротехники и электроники, акцент в дисциплине сделали на схемотехнику основных узлов ВТ, редакторы системного и архитектурного уровней проектирования, языки проектирования (VHDL, Verilog HDL, SystemC), синтезируемость HDL-кода, инструментарий и траектории проектирования фирм Mentor Graphics, Altera, Cadence Design Systems, Synopsys и др., конфигурирование (программирование) проектов разной сложности на ПЛИС.

Каждая лабораторная работа — это создание проекта, сначала аппаратного, в дальнейшем программно-аппаратного (от простого к сложному, с охватом все большего числа уровней проектирования).

Используемая последовательность этапов проектирования (маршрут проектирования) сходна с практикой, применяемой в промышленности [6]: сначала разработка спецификации и функционального теста, затем системный, архитектурный и RTL (Register Transfer Level) уровни, после с помощью синтеза выходим на Gate-уровень, после которого возможны размещение и трассировка с получением временной модели проекта (рис. 1). Необходимо отметить, что при любой доработке проекта на каждом уровне с помощью разработанных тестов, симуляции и ко-симуляции [7] проводится тестирование как HDL-проекта, так и тестирование программ, написанных для этого проекта.

В результате использования современных языков моделирования (HDL) при проектировании узлов ВТ студенты получают опыт программирования параллельных и асинхронных взаимодействий процессов.

В рамках лабораторных работ студенты реализуют сначала аппаратно (VHDL-код), а затем

Рис. 1. Уровни проектирования устройства на ПЛИС

программно один и тот же алгоритм (например, LIFO, FIFO, CACHE, видеопамять ...). При программной реализации этот алгоритм описывается программой в командах данного процессора, которая размещается в VHDL-модели памяти. При этом используются либо поведенческая, либо структурная VHDL-модель процессора, VHDL-модель памяти и тактового генератора. Тестирование при аппаратной реализации алгоритма проводят с помощью симуляции, а при программной реализации с помощью ко-симуляции.

Поскольку современный разработчик программно-аппаратных комплексов должен уметь программно и аппаратно реализовать алгоритмы из спецификации, а также находить оптимальное сочетание программно и аппаратно реализованных алгоритмов, то становится актуальным изучение языка SystemC [8], реализованного в виде С++ библиотеки.

Студенты второго курса одновременно с обучением программированию на С++ в рамках дисциплины «Объектно ориентированное программирование» получают возможность в той же среде Visual C++ в рамках дисциплины «Электротехника, электроника и схемотехника» разработать SystemC-модели узлов ВТ. В рамках лабораторного практикума рассматривается вопрос синтеза этих моделей через переход к соответствующим VHDL- или Verilog HDL-моделям. Таким образом, дисциплина позволяет реализовать актуальную задачу совместной разработки программного обеспечения и аппаратуры.

Рассмотрим лабораторную работу «Таймер», в которой студенты знакомятся с инструментом HDL-дизайна. Инструмент позволяет описать проект на системном и архитектурном уровнях с помощью соответствующих редакторов, а также сгенерировать код по любому из языков проектирования.

Спецификация проекта «Таймер». Таймер выводит временные данные посредством двух шин на четыре бита, представляющих значения десятков и единиц (рис. 2). Имеется выход, который запускает звуковой сигнал (Alarm). Входные сигналы представлены шиной данных на 10 разрядов и управляющими входами — Start, Stop, Reset и Clock.

Для начала работы необходимо установить таймер в рабочее положение: подать на информационный вход число и нажать на кнопку Start. Работа таймера состоит в том, что с каждым синхроимпульсом Clock из числа вычитается единица. По завершении счета, т. е. при уменьшении числа до нуля, таймер выдает соответствующий сигнал (Alarm). Предусмотрена возможность временно приостановить работу таймера.

Таймер содержит входы: Start — для начала работы таймера; Stop — для временной остановки; Reset — для сброса значения таймера; d — информационный вход; Clk — синхронизация. На выходе получаем значение таймера (High — десятки, Low — единицы) и сигнал о завершении счета — Beep.

Таймер состоит из счетчика (Counter) и управляющего им устройства (Control). На вход тайме-

Рис. 2. Блок-схема таймера

ра поступает десятичное число d, поэтому необходим блок перевода его в двоичную систему (DtoB). Устройство управления (Control) устанавливает (сигнал Load) и сбрасывает (сигнал Clear) значение счетчика, сигнализирует о начале и остановке счета (сигнал Hold), подает сигнал о его завершении (Beep). Счетчик (Counter) выдает текущее значение, а также сообщает устройству управления о завершении счета (сигнал Zero). Блок DtoB конвертирует десятичное число в двоичное.

В ходе выполнения лабораторной работы студенты последовательно продвигаются по уровням и фазам проектирования (см. рис. 1). С помощью редактора Block Diagram создают описание проекта на системном уровне (см. рис. 2). С помощью редактора состояний State Diagram описывают блок Control на архитектурном уровне. Более подробно описывается его составное состояние Count. В результате получают HDL-код устройства.

В двух следующих лабораториях полученный проект тестируется с помощью симуляции (используется редактор алгоритмов Flow Chart [22]) и конфигурируется в заданную ПЛИС с помощью синтеза. Микросхемы ПЛИС, в которые загружается разработанный проект, расположены на отладочных модулях (табл. 2).

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

Применение отладочных модулей цифровых сигнальных процессоров (ЦСП) в дисциплинах «ЭВМ и периферийные устройства» и «Микропроцессорные системы»

Дисциплина «ЭВМ и периферийные устройства» изучается студентами на втором курсе. В первом семестре студенты приобретают базовые знания об ЭВМ, которые закрепляются в лабораторных работах практикой низкоуровневого программирования на языке Ассемблер. Во втором семестре изучаются современные процессоры и их окружение, в первую очередь — мультимедийное. Лабораторные работы посвящены освоению работы с периферией и программированию медийного ЦСП типа BlackFin [10]. Для самостоятельной разработки и отладки программ доступно средство VisualDSP++[10].

Дисциплина «Микропроцессорные системы» изучается в 5 семестре. В ней используются знания, приобретенные студентами в курсе «Операционные системы» (включая встроенный Linux). Итог практической работы студентов — курсовой проект, который предусматривает разработку программных средств для ЦСП. В этом случае используются отладочные модули не только с целочисленными процессорами BlackFin, но и с процессорами, работающими с числами с плавающей запятой, типа SHARC [10].

В табл. 3 охарактеризованы процессоры, которые используются в практических работах. Это современные процессоры фирмы Analog Devices [10]. Практически все современные технологии ВТ нашли свое применение в ЦСП: конвейерное выполнение команд, длинное командное слово,

Таблица 2

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

№ Тип ПЛИС модуля Элементы на плате

1 Altera Cyclone II Starter Development Kit DE1 50 МГц Память - 8-Mb SDRAM, 512-Kb SRAM, 4-Mb flash; USB-Blaster; audio-кодек 24-bit coder/decoder; коннекторы — VGA, RS-232, PS/2, два 40-pin внешних порта

2 Altera Cyclone III Starter Development Kit DE1 50 МГц

3 Altera Development Kit, Stratix IV Память — 2-Gb DDR3 SDRAM, 72-Mb QDR II SRAM; USB-Blaster; коннекторы: 10/100/1000 Ethernet, 36 transceiver channels; LCD дисплей

одна команда — много данных (Single Instruction Multiple Data SIMD), кэширование команд и данных, два уровня защиты (user/supervisor). Среди системных ресурсов следует выделить внутреннюю и внешнюю память (до 4ГБ), таймеры, контроллеры прерываний, контроллеры прямого доступа к памяти (ПДП) и flash-память, в которой может находиться загрузчик и встраиваемая операционная система. ЦСП в зависимости от типа могут включать разные интерфейсы внешних устройств (так ЦСП ADSP-BF537 включает полный набор интерфейсов).

Для разработки и отладки программ ЦСП компании Analog Devices используется интегрированная среда разработки проектов VisualDSP++ [10]. Эта среда включает ассемблер, архиватор (средство создания библиотек), компоновщик, загрузчик, потактовый симуля-тор уровня команд, компилятор С/С++ и библиотеку исполняемых функций С/С++, включающую функции ЦОС. При отладке С/С++ и ассемблерных программ в отладчике среды VisualDSP++ можно: просматривать смешанный код на С/С++ и ассемблере; устанавливать точки останова; производить трассировку выполнения команд; заполнять, выгружать и графически отображать содержимое памяти; выполнять отладку на уровне исходной программы.

Например, интересен материал лабораторной работы, посвященной особенностям пото-

кового программирования звука. Схема взаимодействия отдельных элементов ЦСП, размещенного на отладочном модуле EZ-KIT Lite ADSP-BF533, и ЭВМ приведена на рис. 3. Звук на отладочный модуль подается с выхода SB-бластера ЭВМ. В последовательном кодеке производится его оцифровка и с частотой 44 кГц стереоотсчеты поступают в последовательный интерфейс SPORT. С выхода SPORT по сигналу прерывания в режиме ПДП отсчеты записываются в буферную память процессора. Для вывода отсчетов достаточно переписать их в другой участок буферной памяти, и они через второй канал интерфейса SPORT и кодек будут поступать на динамик. Студент, используя подготовленный ранее шаблон программы, должен разработать (в среде VisualDSP++) программу обработки потока отсчетов. В шаблоне программы проводятся операции по инициализации элементов, но звуковые отсчеты не обрабатываются. Типовое задание: при превышении порога громкости отключить звук. Особенностями работы являются: предварительное тестирование диапазона изменения амплитуды отсчетов и разработка на основе результатов тестирования программы, время исполнения которой ограничено приходом следующего отсчета.

На основе использования отладочных модулей ЦСП разработана целая серия лабораторных работ, которая включает не только за-

Таблица 3

Цифровые сигнальные процессоры, используемые в лабораторных работах

Тип ЦСП Тактовая частота Элементы ЦСП Интерфейсы

ADSP-BF533 L 600 MHz СП целочисленные 16/32-bit Blackfin Внутренняя память; 32-разрядные таймеры; сторожевые таймеры; контроллер ПДП; внутренний и внешний контроллеры прерываний Параллельный порт PPI; последовательные интерфейсы SPI, Ethernet, SPORT, и UART (с поддержкой IrDA); JTAG интерфейс; программируемые порты ввода-вывода общего назначения GPIO

ADSP-BF535 ADSP-BF537 ADSP-BF561 two cores 200 MHz 600 MHz 600 MHz

ADSP-21160 ADSP-21161 ЦСП 100 MHz 100 MHz Г с плавающей запятой 32/64-bit SHa Таймер; контроллер ПДП; контроллер прерываний; двухпортовое запоминающее устройство SRAM IRC Последовательные порты SPORT; link-порты; JTAG-интерфейс; порт для взаимодействия с внешней памятью; многопроцессорный интерфейс

Рис. 3. Структурная схема лабораторной установки с использованием отладочного модуля EZ-KIT Lite ADSP-BF533

дания по изучению среды разработки VisualDSP и элементов процессоров, но и сложные итоговые задания, например: проигрывание Wav-файла через ЦСП, генерацию звука в ЦСП, передачу отсчетов в ЭВМ и проигрывание звука. Отладочные модули процессоров ADSP-BF533 и ADSP-BF561 имеют video-кодеки, поэтому студенты по своему желанию могут взять задания, связанные с обработкой потокового video.

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

Применение отладочных модулей программируемой логики в дисциплине «Технология проектирования "Система на кристалле"»

Дисциплина «Технология проектирования "Система на кристалле"» изучается студентами в первом семестре шестого курса. Она посвящена разработке программно-аппаратных комплексов системного уровня интеграции с использованием ПЛИС. Студенты получают навык конфигурирования устройства или процессора для целевой ПЛИС.

Лабораторный практикум включает четыре основных работы. В лабораторной работе № 1 предусматривается создание простой системы (счетчик событий) на кристалле платформы Altera. Студенты знакомятся со средой разработки Quartus II [20], изучают макетную плату Cyclone III (табл.2). В работе № 2 создается модель процессора Nios в среде Quartus. Студенты знакомятся со средой SOPC Builder [20], осваивают конфигурирование модели процессора Nios II для целевой макетной платы. Работа № 3 посвящена вопросу встраивания криптоядра в систему на основе процессора Nios II. В работе № 4 осуществляется встраивание ядра Linux, конфигурирование Microtronix Linux для использования с процессором Nios II, развертывание полученной системы на макетной плате, отладка собственного программного модуля.

Итоговым заданием является создание калькулятора двоичных чисел с выводом на HEX-дисплей. Для реализации проекта используется отладочный модуль Cyclone III (см. табл. 2). Ввод чисел осуществляется при помощи кнопок и переключателей на плате. Программа должна быть реализована в среде Nios II IDE с использованием языков Verilog/VHDL.

Во всех дисциплинах V и VI курсов, включая описанные выше, используются новые знания и технологии, полученные в процессе выполнения грантов и хоздоговорных работ. Так, при изучении дисциплины «Оптические процессоры» рассматриваются особенности проектирования и применения на крупнейших отече-

ственных радиотелескопах гибридных систем, включающих оптические процессоры, ПЛИС и ЦСП [23, 24].

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

Учебные планы предусматривают изучение таких инноваций, как автоматизированное про-

ектирование программно-аппаратных комплексов на основе использования редакторов уровня проектирования, HDL-языков моделирования, VHDL-моделей, симуляции, ко-симуляции и конфигурирования в ПЛИС на отладочном модуле; проектирование систем на кристалле; программирование ЦСП с использованием среды разработки VisualDSP, встроенной операционной системы Linux и модулей отладки; программирование с привлечением библиотек DirectSound, OpenCV, OpenMP, технологии CUDA и др. Изложенная методология может быть рекомендована как при определении набора изучаемых дисциплин, так и при насыщении лекционных и практических занятий. Преподаватели кафедры систематически анализируют и используют позитивный опыт других кафедр программистских специальностей нашего института [25] и других вузов Российский Федерации.

СПИСОК ЛИТЕРАТУРЫ

1. Российское образование. Федеральный портал.— [Электронный ресурс].— URL: http://www. edu.ru.

2. Сайт кафедры информационных и управляющих систем СПбГПУ.— [Электронный ресурс].— URL: ics.ftk.spbstu.ru.

3. Черноруцкий, И.Г. Кафедра ИУС — вчера, сегодня, завтра [Текст] / И.Г. Черноруцкий // Научно-технические ведомости СПбГПУ.— № 3(41) 2005.— С. 10-14.

4. Тестирование при государственной аккредитации.— [Электронный ресурс].— URL: att.nica.ru.

5. Тучкевич, Е.И. Технология формирований ключевых профессиональных компетенций при подготовке магистров по направлению «Дизайн» [Текст] / Е.И. Тучкевич // Научно-технические ведомости СПбГПУ.— № 4 (110) 2010. — С. 356-360.

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

6. Амосов, В.В. Схемотехника и средства проектирования цифровых устройств [Текст]. / В.В. Амосов // СПб.: БХВ-Петербург, 2007.— 542 с. — ISBN: 9785-9775-0018-0.

7. Co-simulation — overview [Электронный ресурс].— URL: www.flowmaster.com/

8. Standards SystemC [Электронный ресурс].— URL: www.accellera.org/downloads/ standards/systemc

9. Texas Instruments. Digital Signal Processors [Электронный ресурс].— URL: www.ti.com/lsds/ti/dsp/ overview.page

10. Описания сигнальных процессоров и среды разработки VisualDSP++ фирмы Analog Devices. [Электронный ресурс].— URL: www.analog.com/dsp

11. OpenMP Specifications. [Электронный ресурс].— URL: openmp.org/wp/

12. OpenCV. Open Source Computer Vision Library. [Электронный ресурс].— URL: opencv.org/

13. Introduction to GNU/Linux. [Электронный ресурс].— URL: www.ubuntugeek.com/introduction-to-gnulinux-pdf-guide.html

14. Радченко, Г.И. Распределенные вычислительные системы [Текст] / Г.И. Радченко // Челябинск: Фотохудожник, 2012. — 184 с.

15. MATLAB and Simulink. [Электронный ресурс].— URL: www.matlab.ru;www.mathworks.com

16. Спецификация беспроводных персональных сетей Bluetooth. [Электронный ресурс] — URL: www. bluetooth.com

17. Григорьев, А.В. Параллельное программирование с использованием технологии CUDA / А.В. Григорьев, И.С. Еремеев, М.И. Алексеева [Электронный ресурс].— URL: edu.chpc.ru/cuda/main.html

18. Руководство пользователя Mathcad. [Электронный ресурс].— URL: http://www.exponenta.ru/ soft/ mathcad/usersguide/0.asp

19. Модули системы сбора данных National Instruments и среда разработки LabVIEW [Электронный ресурс].— URL: russia.ni.com/

20. Описания отладочных модулей, среды разработки Quartus, системы проектирования SOPC Builder фирмы Altera [Электронный ресурс].— URL: www.altera.com/.

21. Среда моделирования GLAD — General Laser Analysis and Design. [Электронный ресурс].— URL:

www.aor.com

22. Редактор алгоритмов Flow Chart. [Электронный ресурс].— URL: flowchart.com

23. Молодяков, С.А. Системное проектирование оптоэлектронных процессоров обработки сигналов [Текст]. / С.А. Молодяков.— СПб.: Изд-во Политехн. ун-та, 2011.— 226 с.

24. Молодяков, С.А. Оптоэлектронные процессоры с ПЗС-фотоприемниками. Конвейерная обработка сигналов [Текст]. / С.А. Молодяков // Информационно-управляющие системы.— 2008.— № 6.— С. 2—8.

25. Сайт кафедры компьютерных систем и программных технологий СПбГПУ [Электронный ресурс].— URL: kspt.ftk.spbstu.ru.

АМОСОВ Владимир Владимирович — кандидат технических наук, доцент кафедры информационных и управляющих систем института информационных технологий и управления Санкт-Петербургского государственного политехнического университета. 195251, Политехническая ул., 21, ИИТУ, Санкт-Петербург, Россия (812)297-16-00 [email protected]

ВИШНЕВСКАЯ Тктьяна Александровна — доцент кафедры информационных и управляющих систем института информационных технологий и управления Санкт-Петербургского государственного политехнического университета.

195251, Политехническая ул., 21, ИИТУ , Санкт-Петербург, Россия

(812)297-16-00

[email protected]

МОЛОДЯКОВ Сергей Александрович — доктор технических наук, доцент кафедры информационных и управляющих систем института информационных технологий и управления Санкт-Петербургского государственного политехнического университета. 195251, Политехническая ул., 21, ИИТУ, Санкт-Петербург, Россия (812)297-16-00 [email protected]

УСТИНОВ Сергей Михайлович — доктор технических наук, профессор кафедры информационных

и управляющих систем института информационных технологий и управления Санкт-Петербургского

государственного политехнического университета.

195251, Политехническая ул., 21, ИИТУ, Санкт-Петербург, Россия

(812)297-16-00

[email protected]

ЧЕРНОРУЦКИЙ Игорь Георгиевич — доктор технических наук, профессор, директор института информационных технологий и управления Санкт-Петербургского государственного политехнического университета

195251, Политехническая ул., 21, ИИТУ, Санкт-Петербург, Россия

(812)297-16-28

[email protected]

© Санкт-Петербургский государственный политехнический университет, 2013

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