Комментарий к тексту диплома.
Alone Coder
Я решил, что имеет смысл опубликовать
материал моей дипломной работы, чтобы она
не пропала зря. Вдруг кому-нибудь поможет?
Однако, текст диплома в чистом виде мало
полезен, таких можно в инете грести лопа-
тами, поэтому мой - будет прокомментирован
от и до :)
Начнём сначала.
В институт (Рязанскую Государственную
Радиотехническую Академию) я поступил в
1997 году. Специальность моя была "Прог-
раммное обеспечение вычислительной техники
и автоматизированных систем" (2204.00)
Не спеша протекло время, и кончился пя-
ты курс. Мы сдали госэкзамен и отпраздно-
вали последний звонок. Вторая половина пя-
того года осталась на написание диплома.
Практика.
Диплом разрешалось писать по выбору -
либо на выпускающей кафедре (ВПМ), либо на
произвольном предприятии. Некоторые предп-
риятия развесили рекламу, в которой приг-
лашали к себе выпускников. Я отказался от
варианта написания на кафедре и пошёл пи-
сать диплом на РКБ "Глобус".Это РКБ распо-
ложено совсем рядом с моим домом,а в отде-
ле кадров работает моя тётя, поэтому выбор
мой должен быть вам понятен ;) Единствен-
ное замечание в том, что предприятие госу-
дарственное, с секретами,то есть много про
него писать не буду. Сами догадаетесь, что
не договорю :) А шпионы, надеюсь, не дога-
даются ;)
Итак, я заполнил документы,получил про-
пуск и получил место работы и руководите-
ля.Мне дали три темы на выбор,я выбрал ту,
которая мне ближе - программирование одно-
кристальной микроЭВМ. Справочник по этой
ЭВМ мне дали сразу.Ничего сложного для во-
сприятия в нём не оказалось.
──────────────────────────────────────────
Но я немного отступлю от темы и поста-
раюсь познакомить вас с людьми, имена ко-
торых встретятся в тексте:
- Дунин Владимир Евгеньевич - руководи-
тель дипломного проектирования.
- Минаев Антон Сергеевич - работает там
же, сильно помогал :)
- Парфилова Надежда Ивановна - консуль-
тант от кафедры.
- Быстрова Татьяна Михайловна - моя сес-
трёнка.
──────────────────────────────────────────
Был определён точный срок сдачи титуль-
ного листа. На листе должны были быть соб-
раны подписи трёх консультантов. В сущнос-
ти, это было несложно. Экономист и эколог
расписывались, проверив только, что в дип-
ломе предусмотрены главы по их предмету.
Консультанта по диплому достаточно было
просто поймать.
В институте выдавали бланк задания и
титульный лист диплома, которые было нужно
заполнить. Посовещавшись с В.Е., мы запол-
нили черновой вариант, который я потом по-
казал Н.И. и после пары замечаний перепи-
сал набело. Сложность была в том, что лист
задания включает в себя содержание будуще-
го диплома и полный перечень графического
материала. Предсказать их,когда диплом ещё
не начат,чрезвычайно сложно. Пришлось имп-
ровизировать на основе готовых, что навер-
няка и подразумевалось.
Дипломное проектирование.
Текст диплома писался по частям.
Первая часть - введение и технико-эко-
номическое обоснование (я даже не знаю,как
это расшифровывается) была написана ещё до
начала работы, во время преддипломной пра-
ктики. Так решил В.Е., и, я думаю, он был
прав.Надо же было с чего-то начинать.
Расчет времени измерения тоже писался
до завершения программы, по меньшей мере
частично.Это пришлось делать потому,что он
подводил теоретическую базу под неё, хотя
бы условно. С куска программы, отвечающего
за передачу/сжатие,я и начинал писать про-
грамму, причём на нём же и закончил - не
такой уж он оказался простой :) Кстати,
глазастый читатель сможет заметить в прог-
рамме многие обороты,присущие чисто спект-
румовскому программированию ;)
Экономическую часть и БЖД необходимо
было согласовывать с соответствующими пре-
подавателями, и поэтому они писались отде-
льно. Причем,написавший раньше получал вы-
году в том смысле, что ему пришлось меньше
стоять в очереди к преподавателю :) Осо-
бенно если учесть,что обоим преподавателям
нужно было показаться на глаза как минимум
несколько раз :)
Разумеется, эти две запутанные части на
NN процентов являлись повтором соответст-
вующий частей из дипломных работ прошлых
годов. Например, моя часть о БЖД перекоче-
вала из диплома Минаева А.С. :)
Экономический расчет - довольно сложен.
Дело в том, что рассчитанные по известным
методикам (из библиотечных книжек) значе-
ния приходилось аккуратно корректировать
так,чтобы кровь из носа,а программа окупа-
лась. То есть, стоила как можно дешевле и
имела положительную экономическую отдачу.
Более того,чтобы расчетный срок разработки
соответствовал действительному времени ди-
пломного проектирования.
Остальные части записки я даже не смогу
прокомментировать - ничего не помню из то-
го, какие события были с ними связаны! 8)
Так или иначе, но диплом получился средне-
го допустимого размера, не сильно раздутый
и не совсем уж пустой.Принципиальных огра-
ничений на размер нам не ставили, но пре-
дупредили - талмудов не писать! Для графо-
манов, правда, была определённая лазейка -
известно, что в текстовом редакторе Word
можно менять как размер шрифта, так и меж-
строчное расстояние, а с ними и ширину/вы-
соту используемой части страницы. Никто
особо не ругался за несоблюдение стандарт-
ных параметров листа, но Танюшка где-то
пронюхала про некий ГОСТ,на который следо-
вало ориентироваться. Параметры страницы в
моем дипломе были такие:
Верхнее поле: 1,5 см;
Нижнее поле: 1,5 см;
Левое поле: 2,5 см;
Правое поле: 1,25 см;
Номер - в правом верхнем углу (расстоя-
ние от верхнего края до колонтитула - 0,75
см, шрифт Times 14).Содержание - третья по
счёту страница, непронумерованная;
Шрифт для текста: Times New Roman 14;
Межстрочный интервал: полуторный;
Шрифт для программ: Courier New 10.
Межстрочный интервал: одинарный;
В чём измеряется размер шрифта в Ворде,
я не знаю :)
Оболочка журнала не позволила нам при-
вести диплом со всеми этими параметрами,
поэтому все специфические шрифты, формати-
рования и т.п.показаны цветом - получилось
даже чуть ли не лучше, чем было на самом
деле! ;)
После проверки консультантом от кафедры
(Н.И.) было выявлено довольно много недо-
чётов, и пришлось перепечатать и заменить
50 листов. Диплом к тому времени был уже
переплетён, и его расплели заново. Диплом
удалось сдать в срок, я был вторым после
старосты,кто успел это :) Правда,потом нам
назначили второй срок, но уже более жёст-
кий, на сдачу диплома со всеми подписями.
После этой сдачи диплом мы увидели бы то-
лько на столе комиссии во время защиты.
Защита.
Рассмотрим теперь мою речь. У меня
было два примера докладов в электронном
виде - один побольше, один поменьше. Я со-
вершенно не знал, какого размера должна
быть моя лекция, поэтому сначала написал,
сколько получилось. Дополнительным услови-
ем было также то, что доклад должен быть
основан на плакатах и обязательно должен
давать ссылки на все представленные плака-
ты (у меня их 7) в порядке их нумерации.
Что того хуже, в процессе доклада должен
демнстрироваться некий ролик, состав кото-
рого был никому не известен. Ходили слухи,
что он мог являться чем угодно - от анима-
ции до скриншотов,переключаемых кнопкой. У
меня не было анимации и даже идей по пово-
ду неё (изображать тыкание мышкой по опци-
ям не мог хотя бы потому, что у моей про-
граммы нет интерфейса по определению :)),
однако скриншотов у меня не было тоже, по
тем же причинам, и я решил собрать рисунки
из текста диплома и несколько дополнитель-
ных иллюстраций (штук десять в сумме).
Итак,первый вариант речи не ссылался ни
на рисунки, ни на плакаты:
──────────────────────────────────────────
Доклад, вариант 1 (8524 байта)
Введение
Темой данного дипломного проекта являе-
тся разработка программного обеспечения
для специализированного логического анали-
затора.
Логический анализатор представляет со-
бой устройство,служащее для считывания по-
следовательности логических уровней с нес-
кольких сигнальных линий одновременно. При
этом логический анализатор синхронизирует
начало считывания с моментом появления не-
которой заданной комбинации сигналов.
Разрабатываемый на предприятии РКБ<Гло-
бус> специализированный логический анали-
затор (сокращённо СЛА) предназначен для
использования в процессе наладки оборудо-
вания, подключаемого к шине межмодульного
интерфейса (ММИ), и ориентирован на снятие
сигналов с этой шины.
Применительно к данной задаче недостат-
ками серийно выпускаемых аналогов являет-
ся:
- громоздкость (например, отечественный
прибор <Анализатор временных диаграмм шес-
тнадцатиканальный 825> весит 25 килограмм)
- сложность подключения к шине (необхо-
димо разместить множество щупов)
- невозможность усовершенствования при-
бора на предприятии.
Особенность СЛА в том, что для достиже-
ния портативности он лишён устройства ин-
дикации, и роль этого устройства выполняет
персональная ЭВМ,подключаемая к СЛА по по-
следовательному интерфейсу RS-232.
СЛА управляется командами, подаваемыми
с ПЭВМ, и возвращает считанные данные на
ПЭВМ по тому же последовательному порту.
СЛА построен на базе однокристальной
микроЭВМ (сокращённо ОЭВМ) AT89C52 фирмы
Atmel. Эта микросхема входит в семейство
MCS-51, отечественные аналоги - семейство
МК51. На чертеже 2 приведена регистровая
модель, распределение памяти и структурная
схема этого микроконтроллера.
Микроконтроллер имеет 256 байт резиден-
тной памяти данных (сокращённо РПД) и 128
байт памяти регистров спецфункций (сокра-
щённо РСФ). Регистры доступны по адресу в
блоке РСФ. Верхняя половина РПД адресуется
только с помощью косвенной регистровой ад-
ресации.Микроконтроллер имеет средства ра-
боты с однобитными данными - некоторые ре-
гистры и адреса РПД допускают адресацию
отдельных битов. Имеется четыре двунаправ-
ленных 8-разрядных порта. Линии порта P3
могут использоваться для подключения пос-
ледовательного интерфейса и внешних источ-
ников прерываний. Через линии портов P0,P2
к микроконтроллеру можно подключить внеш-
нюю память данных (ВПД) или внешнюю память
команд.
Функциональная схема устройства показа-
на на чертеже 1.
[Ред: Все рисунки ищите далее]
Сигнал, снятый с шины, коммутируется на
регистр. Схема управления выдаёт стробы
записи содержимого регистра в двухпортовое
ОЗУ.Частоту задаёт таймер-счётчик 1. Запи-
сь в ОЗУ прекращается после переполнения
счётчика 3. Счётчик 3 запускается после
появления синхронизирующей комбинации, ко-
торую обнаруживает схема сравнения. Схема
сравнения запускается после переполнения
счётчика 2. Значения в счётчики и в схему
сравнения заносит микроконтроллер.
Преимуществами такого устройства СЛА
является:
- быстрота и надёжность подключения -
СЛА подключается к шине через один из сло-
тов.
- интерфейс пользователя - наглядный ди-
алог оператора с логическим анализатором
посредством ПЭВМ.
- возможность составления баз данных си-
гналов, что может позволить,например,прои-
зводить автоматический поиск неисправности
при отладке однотипных приборов.
Постановка задачи
В рамках данного дипломного проекта ре-
шалась задача написания и автономной отла-
дки программы для однокристальной микро-
ЭВМ, управляющей работой СЛА.
1. Программа должна обмениваться данными
с ПЭВМ по последовательному интерфейсу
RS-232 со скоростью 19200 бод.
2. Формат посылок между СЛА и ПЭВМ должен
соответствовать стандартам, принятым на
предприятии.
3. Программа должна выполнять следующие
основные функции:запуск и останов измере-
ния, задание режимов измерения, передача
данных измерения на ПЭВМ, самоконтроль и
выдача состояния логического анализатора.
4. Все действия должны производиться по
командам, передаваемым с ПЭВМ.
Реализация
После запуска и инициализации программа
должна входить в бесконечный цикл приёма и
обработки сообщений. Это показано на блок-
схеме общего алгоритма, на чертеже 3. Соо-
бщения принимаются кадрами, поэтому там же
приведён алгоритм приёма кадра с обработ-
кой ошибок,а также структура самого кадра.
По команде <запуск измерения>, подавае-
мой с ПЭВМ, программа заносит заданные ис-
ходные значения в таймеры-счётчики и в
схему сравнения, после чего запускается
схема управления считыванием в ОЗУ.
СЛА имеет несколько режимов синхрониза-
ции запуска: когда синхронизирующая комби-
нация приходится на начало,на середину или
на конец интервала измерения. Возможен та-
кже запуск с задержкой после синхронизиру-
ющей комбинации. Программа обработки кома-
нды <запуск измерения> пересчитывает вход-
ные данные - параметры этой команды,подан-
ной с ПЭВМ, в параметры схемы сравнения и
начальные значения таймеров,после чего вы-
даёт на схему управления импульс <пуск>.
Этот алгоритм и структура кадра команды
<запуск измерения> приведены на плакате 4.
Считывание либо останавливается автома-
тически после получения нужного числа то-
чек, либо прерывается командой с ПЭВМ <ос-
танов измерения>.
Во время ожидания окончания считывания
ПЭВМ передаёт запросы о состоянии логичес-
кого анализатора.
После считывания данных с шины к ОЗУ
получает доступ микроконтроллер.По команде
<читать канал> или <читать ОЗУ> данные из-
мерения передаются на ПЭВМ.
Расчёт общего времени измерения (куда
входит в том числе время ожидания запуска
и время прохождения запросов и ответных
сообщений) показал,что в процессе передачи
данных измерения желательно использовать
сжатие (то есть компрессию). На базе мето-
дов RLE мной был разработан метод, специа-
льно предназначенный для сжатия такого ро-
да информации,и оптимальный для реализации
на данном микроконтроллере.Результаты рас-
чёта времени измерения показаны на чертеже
5.
На графиках показана зависимость време-
ни измерения от относительной частоты из-
меряемого сигнала. Сигнал с более высокой
средней частотой хуже пакуется данным ме-
тодом, поэтому перед передачей происходит
подсчёт количества фронтов в сигнале на
интервале измерения, и если это количество
превышает предельное, передача идёт без
сжатия. А если сигнал постоянный,то он ко-
дируется одним байтом.
Сжатие происходит параллельно с переда-
чей данных на ПЭВМ.Алгоритм показан на че-
ртеже 6.
Вначале происходит анализ корректности
параметров команды, происходит анализ ста-
тистики сигнала,если он не был произведён.
На основании этого анализа выбирается ме-
тод кодирования (со сжатием или без сжа-
тия). Сжатие происходит сегментами по 128
байт. Кодируются длины последовательностей
одинаковых бит.Для повышения скорости гла-
вного цикла (так как подсчёт длины после-
довательности должен укладываться в проме-
жуток времени между передачей байт) циклы
подсчёта нулей и единиц реализованы разде-
льно.
Заключение (Экономика, БиЭП)
В экономической части рассчитаны затра-
ты на разработку устройства, а также подс-
читан срок окупаемости разработки. Резуль-
таты расчета окупаемости приведены на чер-
теже 7.
В разделе Безопасности и Экологичности
Проекта проведен анализ условий труда на
рабочем месте оператора. Сделаны выводы по
кондиционированию помещения и приведены
необходимые расчеты.
***
К сожалению, на данный момент система
наладки на основе специализированного ло-
гического анализатора разработана не пол-
ностью. Опытный образец устройства пока не
собран,что не позволило провести верифика-
цию в полном объёме.Программа отлаживалась
на модели,с помощью программного интерпре-
татора и специальной программы-генератора
тестирующих последовательностей,написанной
на Delphi. Результаты отладки приведены в
записке.
Преимуществами разработки устройств на
однокристальных микроЭВМ является:
- простота аппаратной части и поэтому
легкость настройки.
- распараллеливание разработки. Один ра-
зработчик может проектировать аппаратную
часть,другой - программу для микроконтрол-
лера, третий - программу для управляющей
ПЭВМ.
- гибкость - возможность модификации и
расширения функций программными средства-
ми.
Продолжением данной работы будет явля-
ться комплексная отладка программы в сос-
таве устройства, а также возможные модифи-
кации и расширение функций.
──────────────────────────────────────────
В институте выяснилось, что кнопкой пе-
реключать картинки нехорошо (в смысле ни-
как нельзя), то есть никуда не денешься, а
автоматизировать процесс придётся. Труд-
ность нашлась в том, что программа-демонс-
тратор была не моя, а Минаева (чего добру
пропадать, поюзали прошлогоднюю :). Тогда
Минаев отдал мне исходники, а с ними кучу
нестандартных компонентов для Delphi, ко-
торые ещё установить надо, а без них прог-
рамму не откомпилировать! Вставил таймер,
исправил...
Время, выделяемое для доклада,составля-
ет 7 минут. Я прочитал доклад с экрана и
решил, что 7 минут хватит. Тем не менее,
стоило мне попробовать рассказать его наи-
зусть (без бумажки, согласно предъявляемых
требований), и я понял, что в тексте есть
лишнее :)
В первую очередь я стал сокращать длин-
ные цепочки слов в труднозапоминающихся
фразах, а также убрал некоторые абзацы,на-
пример, выводы в конце.
Вычеркнул и стал учить...
У меня плохая память на текст (я плохой
зубр ;),поэтому сразу возникли места (обы-
чно начала абзацев), где спотыкаешься и не
помнишь, что дальше. (Вы мотайте на ус,са-
мим потом пригодится! :)) Я пометил такие
места на бумажке восклицательным знаком и
выучил особо. Потом расставил ссылки на
плакаты (номера двух плакатов пришлось по-
менять местами) и на картинки в демо-роли-
ке, исходя их предположения, что они будут
меняться равномерно (по 30 секунд на каж-
дую из 13 картинок).То есть на защите вре-
мя от времени я буду как бы кивать на эк-
ран. Исходя из тех же предположений,я выб-
росил части текста, не подходящие к рисун-
кам (и не жалко :)
Итак,точки в тексте,соответствующие на-
чалу демонтрации плакатов,я пометил цифра-
ми. Раскатал плакаты по столу, и,снимая по
очереди, пытался рассказать речь.
Картинки распределил примерно так: вна-
чале висит заголовок,потом - когда про не-
го рассказывают - "Анализатор 825",потом -
рисунок корпуса AT89C52 из документации,во
время показа функциональной схемы - струк-
турная схема, потом длинный пассаж иллюст-
рирует скриншот ассемблера, потом - табли-
ца команд и запросов,абзац о сжатии должна
была иллюстрировать схема формата сжатия,
дальше - скриншоты процесса отладки и в
конце концов - заключительный титр.
Этот доклад уже существенно меньше пре-
дыдущего:
──────────────────────────────────────────
Доклад, вариант 2 (5173 байта)
Логический анализатор представляет со-
бой устройство,служащее для считывания по-
следовательности логических уровней с нес-
кольких сигнальных линий одновременно, с
запуском по появлению некоторой заданной
синхронизирующей комбинации сигналов. Раз-
рабатываемый на предприятии РКБ <Глобус>
специализированный логический анализатор
(сокращённо СЛА) предназначен для исполь-
зования в процессе наладки оборудования,
подключаемого к шине межмодульного интер-
фейса (ММИ), и ориентирован на снятие сиг-
налов с этой шины.
Применительно к данной задаче недостат-
ками серийно выпускаемых аналогов являют-
ся:
- громоздкость (например, отечественный
прибор <Анализатор временных диаграмм шес-
тнадцатиканальный 825> весит 25 килограмм)
- сложность подключения к шине (необхо-
димо разместить множество щупов)
- невозможность усовершенствования при-
бора на предприятии.
Особенность СЛА в том, что для достиже-
ния портативности роль устройства индика-
ции выполняет персональная ЭВМ.
Чертеж 1
СЛА построен на базе однокристальной
микроЭВМ AT89C52 фирмы Atmel Микрокон-
троллер имеет 256 байт резидентной памяти
данных. Имеется четыре двунаправленных 8-
разрядных порта.Линии порта P3 могут испо-
льзоваться для подключения последователь-
ного интерфейса и внешних источников пре-
рываний. Через линии портов P0,P2 к микро-
контроллеру можно подключить внешнюю па-
мять данных или внешнюю память команд.
Функциональная схема устройства показа-
на на чертеже
Чертеж 2
Сигнал, снятый с шины, коммутируется на
регистр. Схема управления выдаёт стробы
записи содержимого регистра в двухпортовое
ОЗУ. Частоту задаёт таймер-счётчик 1. За-
пись в ОЗУ прекращается после переполнения
счётчика 3. Счётчик 3 запускается после
появления синхронизирующей комбинации, ко-
торую обнаруживает схема сравнения. Схема
сравнения запускается после переполнения
счётчика 2. Значения в счётчики и в схему
сравнения заносит микроконтроллер.
Преимуществами СЛА является:
- быстрота и надёжность подключения -
через разъем.
- наглядный диалог оператора с логичес-
ким анализатором посредством ПЭВМ.
- возможность составления баз данных си-
гналов - можно автоматизировать наладку
однотипных приборов.
В рамках данного дипломного проекта ре-
шалась задача написания и автономной отла-
дки программы для однокристальной микро-
ЭВМ,управляющей работой СЛА.Программа дол-
жна обмениваться данными с ПЭВМ по после-
довательному интерфейсу RS-232 со скорос-
тью 19200 бод. Основные функции: запуск и
останов измерения, задание режимов измере-
ния, передача данных измерения на ПЭВМ,са-
моконтроль и выдача состояния логического
анализатора.
Чертеж 3
После запуска и инициализации программа
должна входить в бесконечный цикл приёма и
обработки сообщений. Это показано на блок-
схеме общего алгоритма, на чертеже Со-
общения принимаются кадрами,поэтому там же
приведён алгоритм приёма кадра с обработ-
кой ошибок,а также структура самого кадра.
СЛА имеет несколько режимов синхрониза-
ции запуска: когда синхронизирующая комби-
нация приходится на начало,на середину или
на конец интервала измерения.Возможен так-
же запуск с задержкой после синхронизирую-
щей комбинации.Программа обработки команды
<запуск измерения> пересчитывает пара-
метры команды в параметры схемы сравнения
и начальные значения таймеров, после чего
выдаёт на схему управления импульс <пуск>.
Чертеж 4
После считывания данных с шины к ОЗУ
получает доступ микроконтроллер.По команде
<читать канал> или <читать ОЗУ> данные из-
мерения передаются на ПЭВМ.
Чертеж 5
Расчёт общего времени измерения по-
казал,что в процессе передачи данных изме-
рения желательно использовать сжатие. На
базе методов RLE мной был разработан ме-
тод, специально предназначенный для сжатия
такого рода информации, и оптимальный для
реализации на данном микроконтроллере.
На графиках показана зависимость време-
ни измерения от относительной частоты из-
меряемого сигнала. Сигнал с более высокой
средней частотой хуже пакуется данным ме-
тодом, поэтому перед передачей происходит
подсчёт количества фронтов в сигнале на
интервале измерения, и если это количество
превышает предельное, передача идёт без
сжатия. А если сигнал постоянный,то он ко-
дируется одним байтом.
Сжатие происходит параллельно с переда-
чей данных на ПЭВМ. Алгоритм показан на
чертеже
Чертеж 6
Сжатие происходит сегментами по 128
бит. Кодируются длины последовательностей
одинаковых бит.Для повышения скорости вну-
треннего цикла (так как он должен уклады-
ваться в промежуток времени между переда-
чей байт) циклы подсчёта нулей и единиц
реализованы раздельно.
Автономная отладка проводилась с помо-
щью программного интерпретатора и специа-
льной программы-генератора тестирующих по-
следовательностей, написанной на Delphi и
включающей анализ содержимого ответных со-
общений СЛА.Результаты отладки приведены в
работе.
В экономической части рассчитаны затра-
ты на разработку устройства, а также подс-
читан срок окупаемости разработки. Резуль-
таты расчета окупаемости приведены на чер-
теже.
Чертеж 7
Опытный образец устройства пока не соб-
ран.Продолжением данной работы будет явля-
ться комплексная отладка программы в сос-
таве устройства, а также возможные модифи-
кации и расширение функций.
На этом доклад закончен!
──────────────────────────────────────────
Я поймал маму и стал доходчиво излагать
текст. В третьей попытки получилось :) То-
лько в последний раз удалось обойтись без
заминок и отступлений. Дальше я поймал и
Таню - рассказал доклад и ей. Получилось:)
Оставалось не забыть речь до завтрашне-
го дня ;)
Я пошёл в институт с новой, синхронизи-
рованной под доклад, версией ролика, и,что
интересно, она не заработала! Причина была
только в том, что Минаев соригинальничал и
снабдил процесс переключения страничек ще-
лчком на доступном звуковом устройстве,при
отсутствии - на спикере. Через порт. И под
wINDOWS nt не прокатило, кто же знал!!!
Пришлось бегать домой, исправлять и нести
обратно!
Назавтра...
В списке на защиту в этот день я был
записан первым. Поэтому я оказался лишён
полезного удовольствия послушать других...
Защищаться мы должны были четвёрками. А
точнее, так.
Имелось два стенда для плакатов. На ка-
ждом стенде помещается шесть. (Мой седьмой
плакат с экономическим расчётом пришлось
прикрепить с перехлёстом и,кроме того,спу-
стить до самого пола.) Перед началом защи-
ты четвёрка расклеивает все свои плакаты
по стендам, входит комиссия, остаётся пер-
вый докладчик, объясняет комиссии свою ра-
боту, отвечает на вопросы и уходит. Прихо-
дят два юноши из дипломников, поворачивают
стенд, покидают зал, тут же входит второй
докладчик,защищается,уходит. Комиссия тоже
уходит отдыхать,но может пока полюбоваться
плакатами. Двое в это время ставят второй
стенд на место первого. Потом - защищаются
третий и четвёртый студенты, и,наконец,ко-
миссия уходит выставлять оценки. Когда она
возвращается,счастливых студентов расстав-
ляют в линейку и поздравляют с получением
почётного звания инженера :) Разумеется,
диплом выдадут потом :)
Итак, мы разместили плакаты по стендам
(при этом, разумеется, не хватило кнопок),
и я остался защищаться.
В комнате была комиссия и оператор. Ко-
миссия - целиком из наших преподавателей,
все свои, но всё-таки мне оказалось не по
себе ;) На первых словах я поперхнулся и
говорил не своим голосом,но потом смог вы-
ровняться и заговорил увереннее.В картинки
деморолика я не попал - точнее,попал толь-
ко в первую, с осциллографом, сказалось то
же волнение, но в выделенное время уложил-
ся! А это уже половина удачной защиты :)
Один человек из нашей группы не смог полу-
чить красный диплом именно потому, что не
смог хорошо прочитать доклад! (Но мне-то
красный диплом и не светил ;))
Вопросы комиссии строились следующим
образом.
Сначала был зачитан отзыв руководителя
дипломного проектирования (положительный).
Потом была оглашена рецензия (отрица-
тельная), и мне было предложено прокоммен-
тировать,почему в тексте не оформлена про-
граммная документация (подсказка: как она
должна быть оформлена,не знает никто ;), и
почему не приведены результаты отладки.
Реценцию я и сам читал,поэтому справед-
ливо возразил,что программная документация
будет оформлена после комплексной отладки,
а в прилагаемой пояснительной записке мож-
но ознакомиться с листингом и списком про-
цедур;заметил также,что результаты АВТОНО-
МНОЙ отладки в тексте всё-таки приведены,а
комплексная может состояться лишь после
сборки макета устройства, ни больше ни ме-
ньше.
Никто не стал спорить, и мне всё-таки
обратили внимание на недостатки работы
(один из членов комиссии обязан был прочи-
тать диплом). Недостатки оказались таковы-
ми:
1. Список сокращений приведён в конце,
что неудобно. Я согласился.
2. Показанная на одном из листов блок-
схема алгоритма не имеет выхода (что непо-
рядок, как тут же заметил присутствовавший
преподаватель структурного программирова-
ния). Я возразил, поскольку программа пре-
дставляет собой прошивку ПЗУ, из которого
выхода нет. А как же сброс, спросили меня?
На этом претензии закончились.
──────────────────────────────────────────
Надо сказать,что на самом деле в дипло-
ме оказалось больше недостатков, многие из
которых я обнаружил только сейчас %) В ос-
новном это ошибки и неряшливости в оформ-
лении:
- В содержании подпункты четвёртой гла-
вы нумеровались как 1.1, 1.2 и т.д. (обра-
тите внимание, эта ошибка - уже на 4-й
странице записки!!!)
- Некоторые таблицы остались непронуме-
рованы.
- Некоторые разрядности на шинах, изоб-
ражённых на функциональной схеме СЛА, при-
ведены неверно.
- В программе есть недосмотр - возмож-
но, в некоторых случаях неверно определяе-
тся длина блока при передаче.
- (самый весёлый :) отсутствуют 71-72
страницы! Дамп памяти оказался на пересе-
чении двух областей документа с независи-
мой нумерацией страниц (так,видимо,захотел
Word ;),и нумерация поехала при первой во-
зможности, не помогла даже проверка в три
пары глаз перед печатью!
──────────────────────────────────────────
Дальше начались собственно вопросы. Ко-
миссия не могла беседовать со студентами
подолгу, и поэтому были заданы вопросы то-
лько поверхностного характера:
1. Почему была выбрана именно эта мик-
росхема?
2. Почему был выбран именно этот алго-
ритм сжатия? Чем хуже Хаффман? (Объяснение
было в тексте, я только озвучил его.)
3. Почему не использовались языки высо-
кого уровня?
Всё оказалось предсказуемо, поэтому от-
ветить было не так уж и трудно :)
И мне поставили пятёрку :)
Happy end!
Желаю успехов в защите!
Alone Coder 7ix02