7
Введение
Данная книга является результатом обобщения
материалов учебных
курсов, связанных с микропроцессорной техникой и информационно-
управляющими системами, которые читаются на кафедре вычислительной
техники СПбГУ ИТМО в течение ряда лет. Первая часть книги базируется на
курсе лекций «Информационно-управляющие системы» и
содержит обзорный
материал, позволяющий понять основные особенности встраиваемых систем.
Во второй части книги подробно рассматривается типичный контроллер на
примере учебного микропроцессорного стенда SDK-1.1, дано описание
основных блоков, разобраны примеры программ, описан инструментарий для
программирования.
При описании различных блоков, мы старались вначале
делать общее описание (принцип работы, концепцию) и только затем
описывать особенности конкретной реализации.
Целью создания данной книги явилась необходимость собрать в одном
издании обширную и разнородную информацию о типовых аппаратных и
программных решениях в области построения
встраиваемых вычислительных
систем, полезную студентам при изучении курса «Информационно-
управляющие системы», а также специальных курсов магистерской подготовки.
Хочется заметить, что эта книга не рассматривается в качестве
единственного пособия для изучения курса студентами. Настоятельно
рекомендуется изучение дополнительной литературы.
Авторы надеются,
что студенты, изучающие данное пособие, стремятся
стать высококвалифицированными специалистами в области вычислительной
техники. Для того чтобы стать таким специалистом мало знать конкретные
технологии,
мало уметь программировать, нужно
научиться получать новые
знания, понимать
суть предмета и выстроить у себя в голове
систему знаний.
К сожалению, в современной литературе по вычислительной технике в
основном освещаются практические вопросы, даются рецепты «Как сделать?»,
не объясняя никаким образом, почему именно так следует это делать. Мы
рекомендуем
ряд книг, которые содержат по большей части именно суть и
концепции, а не только практические рекомендации и примеры.
По вопросам организации современных вычислительных устройств мы
рекомендуем книгу «Архитектура компьютера» Таненбаума [49]. Тем, кто
хочет глубже изучить язык программирования Си, необходимый для
выполнения ряда лабораторных работ, можно рекомендовать книги Кернигана
и Ричи «Язык программирования Си» [39] и Кернигана и Пайка «Практика
программирования» [38]. Для
более
глубокого
изучения
языков
программирования, их
отличий и принципов построения, рекомендуется
знакомство с книгами Н.Н. Непейводы [42, 43] и Роберта У. Себесты [47]. Для
8
того чтобы понять особенности проектирования систем и научиться
эффективно управлять проектами
1
рекомендуем книги Демарко [32, 33] и
Фредерика Брукса [27]. О принципах создания сложных систем можно узнать
из книги Г. Буча «Объектно-ориентированный
анализ и проектирование с
примерами на языке C++» [28].
Материал данного курса, безусловно, выходит за рамки области
встраиваемых вычислительных систем. Необходимо понимать,
что в основе
вычислительной
техники
лежит
сравнительно
небольшой
объем
фундаментальных знаний, которые являются универсальными и применимы в
различных областях. Вам нужно попытаться добраться именно до таких знаний.
1
Не забывайте, что вы будущие руководители!