Булах Дмитрий Александрович
к.т.н., доцент кафедры ПКИМС

Программные средства САПР

Курс "Программные средства САПР" читается студентам 3 курса, обучающиимся на кафедре ПКИМС(группы ЭН-34, ЭН-35), в пятом (осеннем) семестре.

План курса:

  • 8 лекций;
  • 8 лабораторных работ.

Самостоятельная работа к лекциям не предусмотрена

Изучение дисцины "Программные средства САПР" заканчивается экзаменом.


КРАТКАЯ АННОТАЦИЯ

Материал данного курса приближает студентов к суровым реалиям настоящей разработки программного обеспечения.

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

Тематика лабораторных работ сводится к разработке уже не только консольных, но и имеющих графический интерфейс пользователя программ c применением Windows API и библиотеки OpenGL.

Материалы к лекциям

Лекция Рассматриваемые вопросы Презентация PDF

Лекция 1

Основы построения программ с графическим интерфейсом пользователя

Основные отличия между консольными программами и программаи, имеющими графический интерфейс пользователя на примере ОС Windows. Функция WinMain, создание окна, оконные процедуры, обработка сообщений.


Лекция 2

Этапы сборки ПО

Этапы получения исполняемого модуля: препроцессинг, компиляция, линковка.


Лекция 3

Аппаратные средства САПР

Основные вопросы использования аппаратных средств в САПР.


Лекция 4

Лингвистические средства САПР

Языки, используемые в САПР как для разработки ПО, так и для проектирования.


Лекция 5

ПО на этапе схемотехнического проектирования

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


Лекция 6

Програмные средства САПР на логическом этапе

Логический этап: языки описания схем, симуляторы, графические постпроцессоры. Представление математических моделей логических схем. Алгоритмы моделирования цифровых схем.


Лекция 7

Програмные средства САПР на топологическом и компонентном этапах

Компонентное проектирование: генерация сетки, визуализация данных. Топологическое проектирование: редактирование и анализ топологии.


Лекция 8

Программные средства для проектировщика

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


Тематика лабораторных работ

Все лабораторные работы выполняются в лабораториях ВЦ МИЭТ в ОС Windows 7, используется интегрированная среда разработки Microsoft Visual Studio 2017.

Лабораторная работа Рассматриваемые вопросы Материалы

Лабораторная работа №1

Волновой алгоритм

Реализация волнового алгоритма в консольном приложении.

Не предусмотрены

Лабораторная работа №2

Основы Windows API

Создание окна. Основы обработки сообщений. Базовые средства API для вывода графики. Основные диалоги. Работа с мышью. Таймеры.

Задание повышенной сложности для ЭН-34:

  • Задание сдано

Задание повышенной сложности для ЭН-35:

  • Задание сдано

Сделал для вас мануал:
Создание проекта WinAPI в MS Visual Studio 2017


Каркас приложения

Лабораторная работа №3

WinAPI. Тема "Схематик"

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

Задания повышенной сложности для ЭН-34:

  • Задание 1 сдано
  • Задание 2 сдано

Задания повышенной сложности для ЭН-35:

  • Задание 1 не сдано
  • Задание 2 сдано


Задания для
ЭН-34


Задания для
ЭН-35

Лабораторная работа №4

WinAPI. Тема "Постпроцессор"

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

Входные файлы можно скачать тут

Задания повышенной сложности для ЭН-34:

  • Задание 1 не сдано
  • Задание 2 не сдано

Задания повышенной сложности для ЭН-35:

  • Задание 1 не сдано
  • Задание 2 не сдано

Лабораторная работа №5

Основы OpenGL

Основы работы с библиотекой OpenGL. 2D и 3D приложения. Основные примитивы. Пользовательский воод. Работа с клавиатурой и мышью.

Если у вас не установлена библиотека glut, взять её вы можете по этой ссылке


Каркас 2D-приложения



Каркас 3D-приложения

Лабораторная работа №6

OpenGL. Тема "Поверхность"

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

Задания повышенной сложности для ЭН-34:

  • Задание не сдано

Входные данных для ЭН-34 лежат тут

Задания повышенной сложности для ЭН-35:

  • Задание не сдано

Входные данных для ЭН-35 лежат тут


Лабораторная работа №7

OpenGL Тема "3D сетка"

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

Комплект входных данных для ЭН-34 можно скачать тут

Комплект входных данных для ЭН-35 можно скачать тут


Лабораторная работа №8

Визуализация волнового алгоритма

Дополнение программного кода волнового алгоритма кодом визуализации результатов его работы с использованием OpenGL


Ваши преподаватели

Лектор

Булах Дмитрий Александрович

к.т.н., доцент кафедры ПКИМС

Помогают на лабораторных работах

...
Преподаватель не назначен
...
Жестков Сергей Геннадьевич
магистрант каф. ПКИМС

группа ПКИМС-24
...
Жестков Сергей Геннадьевич
магистрант каф. ПКИМС

группа ПКИМС-14
...
Кожаева Татьяна Дмитриевна
магистрантка каф. ПКИМСгруппа ПКИМС-14
...
Поздняков Виктор Александрович
магистрант каф. ПКИМС

группа ПКИМС-24
Жестков Сергей Геннадьевич
студент каф. ПКИМС

группа ЭКТ-42
Кожаева Татьяна Дмитриевна
студентка каф. ПКИМСгруппа ЭКТ-42
Лапин Александр Владимирович
аспирант кафедры ПКИМС
Лапин Александр Владимирович
аспирант кафедры ПКИМС

14 октября 2019Успеваемость

Итоговая аттестация

Рекомендуемая литература

Н. А. Литвиненко
Технология программирования на C++. Win32 API-приложения.

Фень Юань
Программирование графики для Windows.

М. Ву,
Т. Девис,
Дж. Нейдер,
Д. Шрайнер
OpenGL. Руководство по программированию.