ДИПЛОМНАЯ РАБОТА
Создание информационно-справочной подсистемы САПРконструкторско-технологического назначения. Интегральные микросхемы
СОДЕРЖАНИЕ
ПЕРЕЧЕНЬУСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, ЕДИНИЦ, СОКРАЩЕНИЙ И ТЕРМИНОВ
ВВЕДЕНИЕ8
1.АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ
1.1 Наименование, область применения, цель создания информационно-справочной подсистем САПР конструкторско-технологического назначения
1.2 Задачи,решаемые подсистемой
1.3Функциональные требования к подсистеме
2. ОБЗОР ОБЬЕКТОВПОДЛЕЖАЩИХ ОБРАБОТКЕ ИНФОРМАЦИОННО-СПРАВОЧНОЙ СИСТЕМЫ
2.1Классификация интегральных микросхем
2.2Условно-графическое изображение цифровых микросхем
2.3 Диодно-транзисторная логика (ДТЛ)
2.4Транзисторно-транзисторная логика (ТТЛ)
2.4.1 Логические уровни ТТЛ микросхем
2.4.2Семейства ТТЛ микросхем
2.5 Логикана комплементарных МОП транзисторах (КМДП)
2.5.1 Особенности примененияКМОП микросхем
2.5.2 Логические уровни КМОПмикросхем
2.5.3 Семейства КМОП микросхем
3. ИНФОРМАЦИОННО-СПРАВОЧНАЯСИСТЕМА
3.1Определение и классификация БД
3.2 КомпиляторVisual C++, версия 6
ВЫВОДЫ
ПЕРЕЧЕНЬССЫЛОК
ПРИЛОЖЕНИЕ А
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, ЕДИНИЦ, СОКРАЩЕНИЙ ИТЕРМИНОВБД– База данныхЭВМ– Электронно-вычислительная машина
САПР – Система автоматизации производства
МДП – метал диэлектрик полупроводник
МОП – метал окись полупроводник
КМОП — комплиментарный метал окись полупроводник
РТЛ – резистивно–транзисторная логика
ДТЛ – диодно–транзисторная логика
ТТЛ – транзисторно–транзисторная логика
ЭСЛ – эмиттерно–связанная логика
И2Л – интегральная инжекционная логика
СУБД – система управления БД
ВВЕДЕНИЕ
Различные возможности и границы применения вычислительной техникидля автоматизации проектирования определяются уровнем формализациинаучно-технических знаний в конкретной отрасли. Чем глубже разработана теориятого или иного класса технических систем, тем больше объективных возможностейсуществуют для автоматизации процесса их проектирования. Применение ЭВМ припроектно-конструкторских работах в своем развитии прошло несколько стадий ипретерпело значительные изменения.
С появлением вычислительной техники был сделан акцент наавтоматизацию проектных задач, имеющих четко выраженный расчетный характер,когда реализовывались методики, ориентированные на ручное проектирование.Затем, по мере накопления опыта, стали создавать программы автоматизированныхрасчетов на основе методов вычислительной математики (параметрическаяоптимизация, метод конечных элементов и т. п.).
С внедрением специализированных терминальных устройств появляютсяуниверсальные программы для ЭВМ для решения как расчетных, так и некоторыхрутинных проектных задач (изготовление чертежей, спецификаций, текстовыхдокументов и т. п.). В последние годы большое внимание уделяется автоматизациирасчетно-конструкторских работ при проектировании типовых узлов и агрегатов,когда синтез конструкции проводится эвристически, а основные параметрывыбираются и оптимизируются в интерактивном режиме диалога проектировщика иЭВМ.
Современное производство достигло той стадии развития, на которойтехнологические процессы представляют собой сложные последовательностиопераций, требующие точного представления, учета и распределения. Ручное илиавтоматизированное исполнение этих операций на уровне представлениязатруднительно. Решение этих задач возможно при использованииинформационно-справочной подсистем САПР конструкторско-технологическогоназначения.
Внедрение информационно-справочных подсистем САПРконструкторско-технологического назначения на первых этапах развития промышленностиповысило производительность труда, так как дало возможность в автоматизированномрежиме производить управление информацией на разных стадиях производства, атакже в различных его отделах.
Для обработки и хранения информации на всехстадиях производства применяются информационно-справочные системы. Которыесодержат информацию об объектах используемых на производстве, иххарактеристику, назначение, маркировку и т.д.
1. АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ
1.1 Наименование, область применения, цель созданияинформационно-справочной подсистем САПР конструкторско-технологическогоназначения
Разрабатываемая подсистема, называемая «Информационно-справочнаяподсистема САПР конструкторско-технологического назначения. «Интегральные микросхемы»предназначена для учета, сбора, содержания справочной информации дляконструкторско-технологических целей. Цель разработки – обеспечитьинформационно-справочную подсистему, которая обеспечит автоматизированныйдоступ и учет информации с помощью разработанной специально для этих целей базойданных (БД). Информационно-справочная подсистема должна использоваться в целяхпредоставления информации сразу по мере ее необходимости, должна быть такжефункция добавления информации, так как жесткая БД быстро устареет и в ней пропадетнеобходимость.
На этапах создания такой БД возникают некоторые проблемы:
1. нужноучесть доступ к БД различных категорий рабочих;
2. отображаемаяинформация должна быть наиболее полной;
3. БД недолжна содержать данные, которые не принадлежат данной подсистеме.
1.2 Задачи решаемые подсистемой
Задачи, решаемые подсистемой, заключаются в обеспечении информацией об объектах, подлежащих дляразработки систем или их технологического обеспечения. Из всех задач, которыедолжны решаться подобными системами следует выделить следующие:
– Обеспечениераспределения микросхем по типу, корпусу, параметрам и т.д.
– Возможностьдобавления и корректировки информации в данной подсистеме
– Обеспечениелегкости работы и поиска информации
– Предоставлениенаиболее полной информации об объектах
– Учетимеющихся в наличии микросхем
1.3 Функциональные требования к подсистеме
Подсистема должна обеспечивать следующие функциональные возможностиавтоматизированная система учёта интегральных микросхем:
1) добавление новых объектов в базу данных (БД);
2) изменение характеристик объектов базы данных;
3) удаление объектов из базы данных.
При добавлении базы данных выбор общих характеристик (наименование,код, и т.п.) объекта возлагается на оператора. Параметры учета о измененииколичества и наличие микросхем на производстве оператор использующий даннуюподсистему не имеет право менять эти параметры вручную.
Подсистема обеспечивает обновление существующих микросхем за счётобъектно-ориентированной структуры программного комплекса – перекомпоновка безизменения базовых объектов программного комплекса.
2. ОБЗОР ОБЬЕКТОВ ПОДЛЕЖАЩИХ ОБРАБОТКЕ ИНФОРМАЦИОННО-СПРАВОЧНОЙСИСТЕМЫ
2.1 Классификация и обозначения цифровых микросхем
Интегральная микросхема это микроэлектронноеизделие, состоящее из активных (транзисторов) и пассивных (диодов, резисторов,конденсаторов) элементов, а также из соединяющих их проводников, котороеизготавливается в едином технологическом процессе в объеме полупроводника илина поверхности диэлектрического основания, заключено в корпус и представляетсобой неразделимое целое. Иногда ее называют интегральной схема, иногдамикросхемой, соответственно, возможны сокращенные обозначения ИМС, ИС, МС.
По технологии изготовления микросхемы делятся натри разновидности: полупроводниковые (самые распространенные), пленочные (почтине выпускаются) и гибридные (выпускают немного и выпуск сокращают).
В полупроводниковых микросхемах все элементы и ихсоединения изготавливаются в объеме (внутри) и частично на поверхностиполупроводника. Иногда полупроводниковую микросхему называют твердотельнойсхемой, что является буквальным переводом с английского языка (solid state).
В пленочной микросхеме все элементы и ихсоединения выполнены в виде пленок из проводящих и диэлектрических материаловна диэлектрическом основании. В этих микросхемах нет транзисторов и диодов.
В гибридных микросхемах пассивные элементы исоединительные проводники изготавливают по пленочной технологии, а бескорпусныетранзисторы и диоды, изготовленные отдельно по полупроводниковой технологии,соединяют тонкими проводами диаметром 0,04 мм с контактными площадками.
По функциональному назначению микросхемы делятсяна две категории:
– аналоговые, обрабатывающие сигналы,изменяющиеся по закону непрерывной функции;
– цифровые, обрабатывающие цифровые сигналы.
Транзисторы, применяющиеся в цифровыхмикросхемах, бывают двух типов:
– обычные (n–p–n или p–n–p) биполярныетранзисторы;
– полевые (униполярные) транзисторы.
В цифровых микросхемах применяются полевыетранзисторы только с изолированным затвором, имеющие структуру: металл(затвор), диэлектрик (изоляция затвора), полупроводник (канал, сток–исток),сокращенно МДП, а так как в качестве диэлектрика обычно используется окиськремния, то обычно эти транзисторы, а также микросхемы на них сокращенноназывают МОП. Чаще всего в цифровых микросхемах используют пары МОПтранзисторов, дополняющие друг друга по проводимости канала, такие микросхемыназывают КМОП от слова комплиментарный, что означает дополняющий.
В зависимости от элементов, на которых собранывходные и выходные каскады микросхем, от схемных особенностей этих каскадовцифровые микросхемы делятся на несколько групп или, так называемых«логик» (здесь под словом «логика» подразумеваетсялогический элемент или электронный ключ):
1. РТЛ, – резистивно–транзисторная логика, вкоторой на входах стоит резистивный сумматор токов, реализующий дляположительной логики функцию ИЛИ; выходной каскад собран на транзисторноминверторе;
2. ДТЛ, – диодно–транзисторная логика, в которойна входах стоит несколько диодов, реализующих функцию И или ИЛИ; выходнойкаскад на транзисторах;
3. ТТЛ, – транзисторно–транзисторная логика, влогических элементах которой ко входам подключены эмиттеры многоэмиттерноготранзистора; с помощью этого многоэмиттерного транзистора реализуется функцияИ; выходной каскад собран на транзисторах;
4. ЭСЛ, – эмиттерно–связанная логика, в которойна входах стоят транзисторы, эмиттеры которых связаны друг с другом;
5. nМОП, pМОП, – МОП логика, все элементы которойвыполнены на МОП транзисторах с проводимостью канала n–типа (n–МОП) или p–типа(p–МОП);
6. КМОП, – логика, все элементы которой выполненына двух типах МОП транзисторов nМОП и pМОП, дополняющих друг друга, т.е.комплиментарных;
7. И2Л, – интегральная инжекционнаялогика, в которой отсутствуют резисторы; инжекция носителей в область базытранзистора осуществляется с помощью активных генераторов тока, выполненных наp–n–p транзисторах, тогда как сам базовый инвертор, – на n–p–n транзисторах.
По принятой у нас системе обозначение микросхемыдолжно состоять из четырех основных элементов:
1) цифра, соответствующаяконструктивно–технологической группе (1, 5, 6, 7, – полупроводниковыемикросхемы, из них 7, – бескорпусные; 2, 4, 8, – гибридные микросхемы; 3, –прочие, в том числе пленочные, вакуумные, керамические и т.д.);
2) две, а в последнее время три цифры,обозначающие порядковый номер разработки серии микросхем;
3) две буквы, обозначающие функциональноеназначение микросхемы; первая буква соответствует подгруппе (сейчасдевятнадцать подгрупп), вторая, – виду (от трех до семнадцати видов вподгруппе);
4) порядковый номер разработки данной микросхемывнутри своего вида в данной серии.
Номером серии микросхемы считают первые три иличетыре цифры. Для микросхем, используемых в устройствах широкого применения,перед номером серии ставится буква К. Для характеристики материала и типакорпуса микросхемы после буквы К могут быть добавлены следующие буквы: Р, – дляпластмассового корпуса второго вида, М, – для керамического, металлического истеклокерамического корпуса второго типа. В конце обозначения микросхемы можетбыть добавлена буква, конкретизирующая один из основных ее параметров.
Например: КМ155ЛА3, К561ИЕ33, 564ЛА7, КР565РУ8Г.
Корпуса цифровых микросхем бывают в основном двухвидов:
1. Планарные (плоские), у этих микросхем условноеобозначение корпуса начинается с цифры 4; выводы числом от четырнадцати досорока двух расположены с двух сторон микросхемы с шагом 1.25 мм, прямые, припаиваются, как правило, к дорожкам печатной платы на стороне установки микросхем;такие корпуса часто называют SOIC (small outline integrated cirquit, –микросхема в малом корпусе с выводами, не лежащими в одну линию). Иногда такойтип корпуса называют сокращенно, – SO.
/>
Рисунок 2.1 — Планарныйкорпус микросхемы
2. Корпус dip – dual in line package, – в две линии расположенныевыводы (иногда этот тип корпуса называют DIL, иногда, чтобы указать, что корпусизготовлен из пластмассы – PDIP, plastic DIP), – корпус микросхемы, у которойобозначение корпуса начинается с цифры 2; выводы числом от четырнадцати досорока двух с двух сторон микросхемы с шагом обычно 2,5 мм, изогнутые под углом 900, припаиваются только в отверстиях печатных плат.
/>
Рисунок 2.2 — DIP корпусмикросхемы
Отечественные ТТЛ микросхемы в планарных корпусахчасто имеют в обозначении серии вторую цифру 3 (133, 136), они обычновыпускаются для специального применения при температуре от – 60 0C до 125 0C, а в dip–корпусах имеют вторую цифру 5 (155,1531), выпускаются дляширокого применения при температуре от – 10 0C до 70 0C.
Среди миниатюризированных современных корпусовмикросхем, предназначенных для припаивания только на стороне установкимикросхем, можно в качестве примера привести следующие:
– SOIC – small outline integrated circuit,при обозначении SN…DW
/>
Рисунок2.3 — SOIC –small outline integrated circuit, приобозначенииSN…DW
В Европе в обозначении ТТЛ микросхем имеютсячисла 54 для микросхем специального (военного) применения, и 74, – для широкого(гражданского) применения. Буквы в конце зарубежных обозначений означают: L, –низкое потребление мощности, но низкое быстродействие; H, – высокоебыстродействие, но и большое потребление мощности; S, – с диодами Шоттки(Sсhottky); A, – улучшенные, перспективные от слова Advance (вольный перевод«аванс»); F, – быстрые от слова Fast – быстрый.
В обозначение зарубежных КМОП (CMOS) микросхемобычно входит число 40 (CD4011B).
/>
2.2 Условно-графическое изображение цифровыхмикросхем
Цифровая или микропроцессорная микросхема, ееэлемент или компонент; цифровая микросборка, ее элемент или компонентобозначаются на принципиальных схемах условно-графическим обозначением всоответствии с ГОСТ2.743-91. Условно-графическое обозначение микросхемы имеетформу прямоугольника, к которому подводят линии выводов. Условно-графическоеобозначение микросхемы может содержать три поля: основное и два дополнительных,которые располагают слева и справа от основного (рисунок 1). В первой строкеосновного поля условно-графическое обозначение помещают обозначение функции,выполняемой элементом. В последующих строках основного поля располагаютинформацию по ГОСТ 2.708.
/>
Рисунок 2.4.Условно-графическое изображение цифровых микросхем
В дополнительных полях помещают информацию оназначениях выводов (метки выводов, указатели). Дополнительные поля наусловно-графическом изображении цифровых микросхем могут отсутствовать. Входына условно-графическом изображении цифровых микросхем располагают слева, авыходы — справа. Номера выводов микросхем помещают над линией вывода ближе кизображению микросхемы.
2.3 Диодно-транзисторная логика (ДТЛ)
Наиболее простой логический элемент получаетсяпри помощи диодов. Схема такого элемента приведена на рисунке 1.
/>
Рисунок 2.5.Принципиальная схема логического элемента «2И», выполненного надиодах
В этой схеме при подаче нулевого потенциала налюбой из входов (или на оба сразу) через резистор будет протекать ток и на егосопротивлении возникнет падение напряжения. В результате на выходе схемыединичный потенциал будет только если подать единичный потенциал сразу на обавхода микросхемы. То есть схема реализует функцию «2И».
Количество входов элемента «И» зависитот количества диодов. Если использовать два диода, то получится элемент«2И», если три диода — то «3И», если четыре диода, то«4И», и так далее. В микросхемах выпускается максимальный элемент«8И».
Приведенная схема обладает таким недостатком, каксмещение логических уровней на выходе микросхемы. Напряжение нуля и напряжениеединицы на выходе схемы выше входных уровней на 0.7 В. Это вызвано падениемнапряжения на входных диодах. Скомпенсировать это смещение уровней можнодиодом, включенном на выходе схемы, как это показано на рисунке 2.
/>/>
Рисунок 2.6Принципиальная схема усовершенствованного логического элемента «2И»,выполненного на диодах
В этой схеме логические уровни на входе и выходесхемы одинаковы. Более того, схема на рисунке 2 будет нечувствительна не толькок входным напряжениям, большим напряжения питания схемы, но и к отрицательнымвходным напряжениям. Диоды выдерживают напряжение до сотен вольт. Поэтому такаясхема до сих пор используется для защиты цифровых устройств от перегрузок понапряжению, возникающих, например, в цепях, выходящих за пределы устройства.Естественно, что для защиты одного входа достаточно одного диода на входеэлемента. В результате получается только схема защиты без функции«И».
Однако новая схема не может каскадироваться, таккак вырабатывает только вытекающий ток, а для следующего каскада требуетсявтекающий выходной ток схемы. Поэтому к схеме диодного логического элемента«И» обычно подключается двухтактный усилитель на биполярных транзисторах.Схема такого элемента приведена на рисунке 2.7.
/>
Рисунок 2.7.Принципиальная схема базового элемента ДТЛ микросхемы
Усилитель, использованный в схеме на рисунке 3,позволяет вырабатывать как втекающий, так и вытекающий выходной ток. Тем неменее следует помнить, что это источник напряжения, и если не ограничитьвыходной ток микросхемы, то можно вывести ее из строя.
Приведенный на рисунке 3 логический элементиспользуется в таких современных сериях микросхем как 555, 533, 1531, 1533. Вэтих сериях микросхем для повышения быстродействия применяются транзисторы идиоды Шоттки.
Обратите внимание, что транзистор VT1 инвертируетсигнал на выходе элемента «И». То есть вместо логической 1 на выходеприсутствует логический 0. И наоборот вместо логического нуля на выходеприсутствует логическая единица, а схема в целом реализует функцию «2И-НЕ»:
/>/>
Условно-графическое изображение такогологического элемента показано на рисунке 4, а таблица истинности приведена втаблице 1.
/>
Рисунок 2.8.Условно-графическое изображение элемента «2И-НЕ».
/>
Таблица 2.1. Таблицаистинности схемы, выполняющей логическую функцию «2И-НЕ»x1 x2 F 1 1 1 1 1 1 1
На основе базового элемента строится и инвертор.В этом случае на входе используется только один диод. Схема ДТЛ инвертораприведена на рисунке 5.
/>
Рисунок 2.9.Принципиальная схема инвертора ДТЛ микросхемы
В состав современных серий микросхем кромеэлементов «И» входят логические элементы «ИЛИ» транзисторыVT2 соединяются параллельно в точках «а» и «б», показанныхна рисунке 3, а выходной каскад используется один. Схема логического элемента«2ИЛИ-НЕ» приведена на рисунке 6.
/>
Рисунок 2.10.Принципиальная схема логического элемента «2ИЛИ-НЕ» ДТЛ микросхемы
Схемы «ИЛИ-НЕ» в этих сериях микросхемимеет обозначение ЛЕ. Например схема К555ЛЕ1 содержит в одном корпусе четыреэлемента «2ИЛИ-НЕ». Таблица истинности, реализуемая этой схемой,приведена в таблице 2, а условно-графическое изображение такого элементапоказано на рисунке 7.
/>/>
Рисунок 2.11.Условно-графическое изображение элемента «2ИЛИ-НЕ»
/>
Таблица 2.2 Таблицаистинности схемы, выполняющей логическую функцию «2ИЛИ-НЕ»x1 x2 F 1 1 1 1 1
2.4 Транзисторно-транзисторная логика (ТТЛ)
В ТТЛ схемах вместо параллельного соединениядиодов используется многоэмиттерный транзистор. Физика работы этого элемента неотличается от работы диодного элемента «2И». Высокий потенциал навыходе многоэмиттерного транзистора получается только в том случае, когда наобоих входах элемента (эмиттерах транзистора) присутствует высокий потенциал(то есть нет эмиттерного тока). Принципиальная схема типового элемента ТТЛмикросхемы приведена на рисунке 1.
/>
Рисунок 2.12.Принципиальная схема типового элемента ТТЛ микросхемы
Умощняющий усилитель, как и вдиодно-транзисторном элементе, инвертирует сигнал на выходе схемы. По такойсхеме выполнены базовые элементы микросхем серий 155, 131, 155 и 531. Схемы«И-НЕ» в этих сериях микросхем обычно имеет обозначение ЛА. Например,схема К531ЛА3 содержит в одном корпусе четыре элемента «2И-НЕ».Таблица истинности, реализуемая этой схемой, приведена в таблице 1, аусловно-графическое обозначение этих элементов приведено на рисунке 2.
/>
Рисунок 2.13Условно-графическое изображение элемента «2И-НЕ»
Таблица 2.3. Таблицаистинности схемы, выполняющей логическую функцию «2И-НЕ»x1 x2 F 1 1 1 1 1 1 1
На основе базового элемента строится и инвертор.В этом случае на входе используется только один диод. Схема ТТЛ инвертораприведена на рисунке 3.
/>
Рисунок 2.14.Принципиальная схема инвертора ТТЛ микросхемы
При необходимости объединения несколькихлогических элементов «И» по схеме «ИЛИ» (или при реализациилогических элементов «ИЛИ») транзисторы VT2 соединяются параллельно вточках «а» и «б», показанных на рисунке 8, а выходнойкаскад используется один. В результате быстродействие такого достаточносложного элемента получается точно таким же как и у одиночного элемента«2И-НЕ». Принципиальная схема логического элемента«2И-2ИЛИ-НЕ» приведена на рисунке 4.
/>
Рисунок 2.15.Принципиальная схема ТТЛ микросхемы «2И-2ИЛИ-НЕ»
Использование таких элементов будет показанопозднее, а условно-графическое изображение элемента «2И-2ИЛИ-НЕ»приведено на рисунке 5. Такие элементы содержатся в цифровых микросхемах собозначением ЛР.
/>
Рисунок 2.16.Условно-графическое обозначение элемента «2И-2ИЛИ-НЕ» ТТЛ микросхем
Схемы «ИЛИ-НЕ» в ТТЛ сериях микросхемобычно имеет обозначение ЛЕ. Например схема К1531ЛЕ5 содержит в одном корпусечетыре элемента «2ИЛИ-НЕ».
Так как и в схемах ТТЛ и в схемах ДТЛиспользуется одинаковый выходной усилитель, то и уровни логических сигналов вэтих схемах одинаковы. Поэтому часто говорят, что это ТТЛ микросхемы, неуточняя по какой схеме выполнен входной каскад этих микросхем. Более того!Появились КМОП микросхемы, совместимые с ТТЛ микросхемами по логическимуровням, например К1564 (иностранный аналог SN74HCT) или К1594 (иностранныйаналог SN74АСT).
/>2.4.1 Логические уровниТТЛ микросхем
В настоящее время применяются два вида ТТЛмикросхем — с пяти и и с трёхвольтовым питанием, но, независимо от напряженияпитания микросхем, логические уровни нуля и единицы на выходе этих микросхемсовпадают. Поэтому дополнительного согласования между ТТЛ микросхемами обычно нетребуется. Допустимый уровень напряжения на выходе цифровой ТТЛ микросхемыпоказан на рисунке 6.
/>
Рисунок 2.17. Уровнилогических сигналов на выходе цифровых ТТЛ микросхем
Как уже говорилось ранее, напряжение на входецифровой микросхемы по сравнению с выходом обычно допускается в большихпределах. Границы уровней логического нуля и единицы для ТТЛ микросхемприведена на рисунке 7.
/>
Рисунок 2.18. Уровнилогических сигналов на входе цифровых ТТЛ микросхем
2.4.2 Семейства ТТЛ микросхем
Первые ТТЛ микросхемы оказались на редкостьудачным решением, поэтому их можно встретить в аппаратуре, работающей до сихпор. Это семейство микросхем серии К155. Стандартные ТТЛ микросхемы — этомикросхемы, питающиеся от источника напряжения +5В. Зарубежные ТТЛ микросхемыполучили название SN74. Конкретные микросхемы этой серии обозначаются цифровымномером микросхемы, следующим за названием серии. Например, в микросхеме SN74S00содержится четыре логических элемента «2И-НЕ». Аналогичные микросхемыс расширенным температурным диапазоном получили название SN54 (отечественныйвариант — серия микросхем К133).
Отечественные микросхемы, совместимые с SN74выпускались в составе серий К134 (низкое быстродействие низкое потребление — SN74L), К155 (среднее быстродействие среднее потребление — SN74) и К131(высокое быстродействие и большое потребление). Затем были выпущены микросхемыповышенного быстродействия с диодами Шоттки. В названии зарубежных микросхем вобозначении серии появилась буква S. Отечественные серии микросхем сменилицифру 1 на цифру 5. Выпускаются микросхемы серий К555 (низкое быстродействиенизкое потребление — SN74LS) и К531 (высокое быстродействие и большое потребление- SN74S).
В настоящее время отечественная промышленностьпроизводит микросхемы серий К1533 (низкое быстродействие низкое потребление — SN74ALS) и К1531 (высокое быстродействие и большое потребление — SN74F).
В Европе производится трехвольтовый вариант ТТЛмикросхем — SN74ALB
/>2.5 Логика накомплементарных МОП транзисторах (КМДП)
Микросхемы на комплементарных транзисторахстроятся на основе МОП транзисторов с n- и p-каналами. Один и тот же потенциалоткрывает транзистор с n-каналом и закрывает транзистор с p-каналом. Приформировании логической единицы открыт верхний транзистор, а нижний закрыт. Врезультате ток через микросхему не протекает. При формировании логического нуляоткрыт нижний транзистор, а верхний закрыт. И в этом случае ток через микросхемуне протекает. Простейший логический элемент — это инвертор. Его схема приведенана рисунке 1.
/>
Рисунок 2.19.Принципиальная схема инвертора, выполненного на комплементарных МОПтранзисторах
На этой схеме для упрощения понимания принциповработы микросхемы не показаны защитные и паразитные диоды. Особенностьюмикросхем на комплементарных МОП транзисторах является то, что в этихмикросхемах в статическом режиме ток практически не потребляется. Потреблениетока происходит только в момент переключения микросхемы из единичного состоянияв нулевое и наоборот. Этим током производится перезаряд паразитной ёмкостинагрузки.
Схема логического элемента«И-НЕ» на КМОП микросхемах практически совпадает с упрощенной схемой«И» на ключах с электронным управлением, которую мы рассматривалиранее. Отличие заключается в том, что нагрузка подключается не к общему проводусхемы, а к источнику питания. Принципиальная схема элемента «2И-НЕ»,выполненного на комплементарных МОП транзисторах приведена на рисунке 2.
/>
Рисунок 2.20Принципиальная схема элемента «2И-НЕ», выполненного на комплементарныхМОП транзисторах
В этой схеме можно было бы применить в верхнемплече обыкновенный резистор, однако при формировании низкого уровня схемапостоянно потребляла бы ток. Вместо этого, в качестве нагрузки используютсяp-МОП транзисторы. Эти транзисторы образуют активную нагрузку. Если на выходетребуется сформировать высокий потенциал, то транзисторы открываются, а еслинизкий — то закрываются.
В приведённой на рисунке 2 схеме ток от источникапитания на выход микросхемы будет поступать через один из транзисторов, еслихотя бы на одном из входов (или на обоих сразу) будет присутствовать низкийпотенциал (уровень логического нуля). Если же на обоих входах будетприсутствовать уровень логической единицы, то оба p-МОП транзистора будутзакрыты и на выходе микросхемы сформируется низкий потенциал. В этой схеме, также как и в схеме на рисунке 1, если транзисторы верхнего плеча будут открыты, тотранзисторы нижнего плеча будут закрыты, поэтому в статическом состоянии токмикросхемой от источника питания потребляться не будет.
Условно-графическое изображение такогологического элемента показано на рисунке 3, а таблица истинности приведена втаблице 1. В таблице 1 входы обозначены как x1 и x2, а выход — F.
/>
Рисунок 3.Условно-графическое изображение элемента «2И-НЕ»
Таблица 2.5 Таблицаистинности схемы, выполняющей логическую функцию «2И-НЕ»x1 x2 F 1 1 1 1 1 1 1
Логический элемент «ИЛИ-НЕ», выполненный на КМОПтранзисторах, представляет собой параллельное соединение ключей с электроннымуправлением. Отличие от схемы «2ИЛИ», рассмотренной ранее,заключается в том, что нагрузка подключается не к общему проводу схемы, а кисточнику питания. Вместо резистора в качестве нагрузки используются p-МОПтранзисторы. Принципиальная схема элемента «2ИЛИ-НЕ», выполненного накомплементарных МОП транзисторах приведена на рисунке 4.
/>
Рисунок 2.21.Принципиальная схема элемента «2ИЛИ-НЕ», выполненного на комплементарныхМОП транзисторах
В схеме логического элемента «2ИЛИ-НЕ»в качестве нагрузки используются последовательно включенные p-МОП транзисторы.В ней ток от источника питания на выход микросхемы будет поступать только есливсе транзистора в верхнем плече будут открыты, т.е. если сразу на всех входахбудет присутствовать низкий потенциал (уровень логического нуля). Если же хотябы на одном из входов будет присутствовать уровень логической единицы, товерхнее плечо будет закрыто и ток от источника питания поступать на выходмикросхемы не будет.
Таблица истинности, реализуемая этой схемой,приведена в таблице 2, а условно-графическое обозначение этих элементовприведено на рисунке 5.
/>
Рисунок 2.22.Условно-графическое изображение элемента «2ИЛИ-НЕ»
Таблица 2.6 Таблицаистинности схемы, выполняющей логическую функцию «2ИЛИ-НЕ»x1 x2 F 1 1 1 1 1
В настоящее время именно КМОП микросхемы получилинаибольшее развитие. Причём наблюдается постоянная тенденция к снижениюнапряжения питания. Первые серии микросхем такие как К1561 (иностранный аналогC4000В) обладали достаточно широким диапазоном изменения напряжения питания (3..18В).При этом при понижении напряжения питания у конкретной микросхемы понижается еёпредельная частота работы. В дальнейшем, по мере совершенствования технологиипроизводства, появились улучшенные микросхемы с лучшими частотными свойствами именьшим напряжением питания.
2.5.1 Особенности применения КМОП микросхем
Первой и основной особенностью КМОП микросхемявляется большое входное сопротивление этих микросхем. В результате на входэтой цифровой микросхемы может наводиться любое напряжение, в том числе иравное половине напряжения питания, и храниться на нём достаточно долго. Приподаче на вход КМОП микросхемы половины питания открываются транзисторы как вверхнем, так и в нижнем плече выходного каскада микросхемы, в результатемикросхема начинает потреблять недопустимо большой ток и может выйти из строя.Вывод: входы цифровых микросхем ни в коем случае нельзя оставлятьнеподключенными.
Второй особенностью КМОП микросхем является то,что они могут работать при отключенном питании. Однако работают они чаще всегонеправильно. Эта особенность связана с конструкцией входного каскада КМОП микросхем.Полная схема КМОП инвертора приведена на рисунке 6.
/>
Рисунок 2.23. Полнаясхема КМОП инвертора
Диоды VD1 и VD2 были введены для защиты входногокаскада от пробоя статическим электричеством. В то же самое время при подаче навход микросхемы высокого потенциала он через диод VD1 попадёт на шину питаниямикросхемы, и так как она потребляет достаточно малый ток, то микросхема начнётработать. Однако в ряде случаев тока может не хватить. В результате микросхемаможет работать неправильно. Вывод: при неправильной работе микросхемы тщательнопроверьте питание микросхемы, особенно выводы корпуса. При плохо пропаянномвыводе отрицательного питания его потенциал будет отличаться от потенциалаобщего провода схемы.
Третья особенность КМОП микросхем связана спаразитными диодами VD3 и VD4, которые могут быть пробиты при неправильноподключенном источнике питания (микросхемы ТТЛ выдерживают кратковременнуюпереполюсовку питания). Для защиты микросхем от переполюсовки питания следует вцепи питания предусмотреть защитный диод.
Четвёртая особенность КМОП микросхем — этопротекание импульсного тока по цепи питания при переключении микросхемы изнулевого состояния в единичное и наоборот. В результате при переходе с ТТЛмикросхем на КМОП резко увеличивается уровень помех. В ряде случаев это важно иприходится отказываться от применения КМОП микросхем в пользу ТТЛ или BICMOS.
/>
2.5.2 Логические уровни КМОП микросхем
Логические уровни КМОП микросхем существенноотличаются от логических уровней ТТЛ микросхем. При отсутствии тока нагрузкинапряжение на выходе КМОП микросхемы совпадает с напряжением питания(логический уровень единицы) или с потенциалом общего провода (логическийуровень нуля). При увеличении тока нагрузки напряжение логической единицы можетуменьшается до 2,8В (Uп=15В) от напряжения питания. Допустимыйуровень напряжения на выходе цифровой КМОП микросхемы (серия микросхем К561)при пятивольтовом питании показан на рисунке 7.
/>
Рисунок 2.24 Уровнилогических сигналов на выходе цифровых КМОП микросхем
Как уже говорилось ранее, напряжение на входецифровой микросхемы по сравнению с выходом обычно допускается в большихпределах. Для КМОП микросхем договорились о 30% запасе. Границы уровнейлогического нуля и единицы для КМОП микросхем при пятивольтовом питанииприведена на рисунке 8.
/>
Рисунок 2.25 Уровнилогических сигналов на входе цифровых КМОП микросхем
При уменьшении напряжения питания границылогического нуля и логической единицы можно определить точно так же (разделитьнапряжение питания на 3).
/>2.5.3 Семейства КМОП микросхем
Первые КМОП микросхемы не имели защитных диодовна входе, поэтому их монтаж представлял значительные трудности. Это семействомикросхем серии К172. Следующее улучшенное семейство микросхем серии К176получило эти защитные диоды. Оно достаточно распространено и в настоящее время.Серия К1561 завершает развитие первого поколения КМОП микросхем. В этомсемействе было достигнуто быстродействие на уровне 90нс и диапазон изменениянапряжения питания 3..15В. Так как в настоящее время распространена иностраннаяаппаратура, то приведу иностранный аналог этих микросхем — C4000В.
Дальнейшим развитием КМОП микросхем стала серияSN74HC. Эти микросхемы отечественного аналога не имеют. Они обладаютбыстродействием 27нс и могут работать в диапазоне напряжений 2..6В. Онисовпадают по цоколёвке и функциональному ряду с ТТЛ микросхемами, но несовместимы с ними по логическим уровням, поэтому одновременно были разработанымикросхемы серии SN74HCT (отечественный аналог — К1564), совместимые с ТТЛмикросхемами и по логическим уровням.
В это время наметился переход на трёхвольтовоепитание. Для него были разработаны микросхемы SN74ALVC с временем задержкисигнала 5,5нс и диапазоном питания 1,65..3,6В. Эти же микросхемы способныработать и при 2,5 вольтовом питании. Время задержки сигнала при этомувеличивается до 9нс.
Наиболее перспективным семейством КМОП микросхемсчитается семейство SN74AUC с временем задержки сигнала 1,9нс и диапазоном питания0,8..2,7В.
3. ИНФОРМАЦИОННО-СПРАВОЧНАЯ СИСТЕМА
3.1 Определение и классификация БД
База данных – это информационная модель предметной области,совокупность взаимосвязанных, хранящихся вместе данных при наличии такойминимальной избыточности, которая допускает их использование оптимальнымобразом для одного или нескольких приложений. Данные (файлы) хранятся вовнешней памяти и используются в качестве входной информации для решения задач.
СУБД — это программа, с помощью которой реализуется централизованноеуправление данными, хранимыми в базе, доступ к ним, поддержка их в актуальномсостоянии.
Системы управления базами данных можноклассифицировать по способу установления связей между данными, характерувыполняемых ими функций, сфере применения, числу поддерживаемых моделей данных,характеру используемого языка общения с базой данных и другим параметрам.
Классификация СУБД:
– повыполняемым функциям СУБД подразделяются на операционные и информационные;
– посфере применения СУБД подразделяются на универсальные ипроблемно-ориентированные;
– поиспользуемому языку общения СУБД подразделяются на замкнутые, имеющиесобственные самостоятельные языки общения пользователей с базами данных, иоткрытые, в которых для общения с базой данных используется язык программирования,расширенный операторами языка манипулирования данными;
– почислу поддерживаемых уровней моделей данных СУБД подразделяются на одно-,двух-, трехуровневые системы;
– поспособу установления связей между данными различают реляционные, иерархическиеи сетевые базы данных;
– поспособу организации хранения данных и выполнения функций обработки базы данныхподразделяются на централизованные и распределенные.
Системы централизованных баз данных ссетевым доступом предполагают две основные архитектуры – файл-сервер иликлиент-сервер.
Архитектура файл-сервер. Предполагает выделение одной из машин сети вкачестве центральной (главный сервер файлов), где хранится совместноиспользуемая централизованная база данных. Все другие машины исполняют рольрабочих станций. Файлы базы данных в соответствии с пользовательскими запросамипередаются на рабочие станции, где в основном и производится их обработка. Прибольшой интенсивности доступа к одним и тем же данным производительностьинформационной системы падает.
Архитектура клиент-сервер. Эта модель взаимодействия компьютеров в сети длясовременных СУБД фактически стала стандартом. Каждый из подключенных к сети исоставляющих эту архитектуру компьютеров играет свою роль: сервер владеет ираспоряжается информационными ресурсами системы, клиент имеет возможностьпользоваться ими. Помимо хранения централизованной базы данных сервер базыданных обеспечивает выполнение основного объема обработки данных. Запрос наданные, выдаваемый клиентом (рабочей станцией), порождает поиск и извлечениеданных на сервере. Извлеченные данные транспортируются по сети от сервера кклиенту. Спецификой архитектуры клиент-сервер является использование языказапроса SQL.
Сервер базы данных представляет собой СУБД, параллельно обрабатывающуюзапросы, поступившие со всех рабочих станций. Как правило, клиент и сервертерриториально отделены друг от друга, и в этом случае они образуют системураспределенной обработки данных.
Характеристиками СУБД являются:
– производительность;
– обеспечениецелостности данных на уровне баз данных;
– обеспечениебезопасности данных;
– возможностьработы в многопользовательских средах;
– возможностьимпорта и экспорта данных;
– обеспечениедоступа к данным с помощью языка SQL;
– возможностьсоставления запросов;
– наличиеинструментальных средств разработки прикладных программ.
Производительность СУБД оценивается:
– временемвыполнения запросов;
– скоростьюпоиска информации;
– временемимпортирования баз данных из других форматов;
– скоростьювыполнения операций (таких как обновление, вставка, удаление);
– временемгенерации отчета и другими показателями.
Безопасность данных достигается:
– шифрованиемприкладных программ;
– шифрованиемданных;
– защитойданных паролем;
– ограничениемдоступа к базе данных (к таблице, к словарю и т.д.).
Обеспечение целостности данных подразумевает наличие средств, позволяющихудостовериться, что информация в базе данных всегда остается корректной иполной. Целостность данных должна обеспечиваться независимо от того, какимобразом данные заносятся в память (в интерактивном режиме, посредством импортаили с помощью специальной программы). Используемые в настоящее время СУБДобладают средствами обеспечения целостности данных и надежной безопасности.
Система управления базами данных управляет данными во внешнейпамяти, обеспечивает надежное хранение данных и поддержку соответствующихязыков базы данных. Важной функцией СУБД является функция управления буферамиоперативной памяти. Обычно СУБД работают с базами данных больших размеров,часто превышающими размеры оперативной памяти ЭВМ. В развитых СУБДподдерживается свой набор буферов оперативной памяти с собственной дисциплинойих замены.
Наибольшее распространение в настоящее время получили системыуправления базами данных Microsoft Access и Oracle.
Этапами работы в СУБД являются:
– созданиеструктуры базы данных, т.е. определение перечня полей, из которых состоиткаждая запись таблицы, типов и размеров полей (числовой, текстовый, логическийи т.д.), определение ключевых полей для обеспечения необходимых связей междуданными и таблицами;
– вводи редактирование данных в таблицах баз данных с помощью представляемой поумолчанию стандартной формы в виде таблицы и с помощью экранных форм,специально создаваемых пользователем;
– обработкаданных, содержащихся в таблицах, на основе запросов и на основе программы;
– выводинформации из ЭВМ с использованием отчетов и без использования отчетов.
Реализуются названные этапы работы спомощью различных команд.
Централизованная база данных обеспечивает простоту управления,улучшенное использование данных на местах при выполнении дистанционныхзапросов, более высокую степень одновременности обработки, меньшие затраты наобработку.
Распределенная база данных предполагает хранение и выполнениефункций управления данными в нескольких узлах и передачу данных между этимиузлами в процессе выполнения запросов. В такой базе данных не только различныеее таблицы могут храниться на разных компьютерах, но и разные фрагменты однойтаблицы. При этом для пользователя не имеет значения как организовано хранениеданных, он работает с такой базой, как с централизованной.
Известны три типа моделей описания базданных – иерархическая, сетевая и реляционная, основное различие между которымисостоит в характере описания взаимосвязей и взаимодействия между объектами иатрибутами базы данных.
Иерархическая модель предполагает использование для описания базыданных древовидных структур, состоящих из определенного числа уровней. «Дерево»представляет собой иерархию элементов, называемых узлами. Под элементамипонимается список, совокупность, набор атрибутов, элементов, описывающихобъекты.
В качестве примера простой иерархической структуры можно привестиадминистративную структуру высшего учебного заведения, элементами которойявляются: «Университет – Факультет – Группа». На каждом уровне иерархии даннойструктуры могут быть использованы различные атрибуты. Например, атрибутамитретьего уровня могут быть: специализация группы, численный состав, фамилиястаросты группы и другие.
В данной модели имеется корневой узел или просто корень –«Университет», который находится на самом верхнем уровне иерархии, а потому неимеет узлов, стоящих выше его. Каждый узел модели имеет только один исходный,находящийся по отношению к нему на более высоком уровне, а на последующихуровнях классификации он может иметь один, два или большее количество узлов,либо не иметь их вообще.
Принципы иерархии:
– иерархиявсегда начинается с корневой вершины (или главного узла);
– исходныйузел, из которого строится дерево, называется корневым узлом или просто корнем,причем одно дерево может иметь только один корень;
– узелможет содержать один или несколько атрибутов, описывающих находящийся в немобъект;
– порожденныеузлы могут встраиваться в «дерево» как в горизонтальном направлении, так и ввертикальном;
– доступк порожденным узлам возможен только через исходный узел, поэтому существуеттолько один путь доступа к каждому узлу.
Достоинством модели является простота еепостроения, легкость понимания сути принципа иерархии, наличие промышленныхСУБД, поддерживающих данную модель. Недостатком является сложность операций повключению в иерархию информации о новых объектах базы данных и удалениюустаревшей информации.
Сетевая модель описывает элементарные данные и отношениямежду ними в виде ориентированной сети. Это такие отношения между объектами,когда каждый порожденный элемент имеет более одного исходного и может бытьсвязан с любым другим элементом структуры. Например, в структуре управленияучебным заведением порожденный элемент «Студент» может иметь не один, а дваисходных элемента: «Студент – Учебная группа», и «Студент – Комната вобщежитии».
Сетевые структуры могут бытьмногоуровневыми и иметь разную степень сложности. Схема, в которой присутствуетхотя бы одна связь «многие ко многим» и которая требует для своей реализациииспользования сложных методов, является сложной схемой.
База данных, описываемая сетевой моделью,состоит из областей, каждая из которых состоит из записей, а последние, в своюочередь, состоят из полей. Недостатком сетевой модели является ее сложность,возможность потери независимости данных при реорганизации базы данных. Припоявлении новых пользователей, новых приложений и новых видов запросовпроисходит рост базы данных, что может привести к нарушению логическогопредставления данных.
Реляционная модель имеет в своей основе понятие «отношения»,и ее данные формируются в виде таблиц. Отношение – это двумерная таблица,имеющая сове название, в которой минимальным объектом действий, сохраняющим ееструктуру, является строка таблицы (кортеж), состоящая из ячеек таблицы –полей.
Каждый столбец таблицы соответствуеттолько одной компоненте этого отношения. С логической точки зрения реляционнаябаза данных представляется множеством двумерных таблиц различного предметногонаполнения.
В зависимости от содержания отношенияреляционной базы данных бывают объективными и связными. Объективные отношенияхранят данные о каком-либо одном объекте, экземпляре сущности. В них один изатрибутов однозначно определяет объект и называется ключом отношения илипервичным атрибутом (для удобства он записывается в первом столбце таблицы).Остальные атрибуты функционально зависят от этого ключа. В объективномотношении не может быть дублирующих объектов и в этом – основное ограниченияреляционной базы данных. Связное отношение хранит ключи нескольких объектныхотношений, по которым между ними устанавливаются связи.
Если набор атрибутов базы данных заранеене фиксирован, то возможны различные варианты их группировки, однако, независимоот выбранного способа, должны соблюдаться единые требования. В частности, еслибаза данных содержит множество отношений, то они должны иметь минимальнуюизбыточность представления информации; атрибуты, включаемые в базу данных,должны обеспечивать выполнение массовых расчетов; при добавлении в базу данныхновых атрибутов перестройка наборов отношений должна быть минимальной.
К числу достоинств реляционной моделиотносятся: простота построения, доступность понимания, возможность эксплуатациибазы данных без знания методов и способов ее построения, независимость данных,гибкость структуры и другие. Недостатками модели являются: низкаяпроизводительность по сравнению с иерархической и сетевой моделями, сложностьпрограммного обеспечения, избыточность.
3.2 Компилятор Visual C++, версия 6
– Стандартныйвариант
– Профессиональныйвариант
– Корпоративныйвариант
– Инструментыразработчика
· Интегрированныйотладчик
· Встроенныередакторы ресурсов
· Дополнительныеутилиты
– Возможностикомпилятора
· Средстваавтоматизации и макросы
· ClassView
· Настраиваемыепанели инструментов и меню
· Рабочиепространства и файлы проектов
· Предварительноскомпилированные файлы заголовков
· MFC
· Макроподстановкафункций
– Опциикомпиляции
· General
· Debug
· C/C++
· Link
· Resources
· MIDL
· Browse Info
· Custom Build
Новая версия VisualC++ позволет создавать любые приложения дляWindows95, 98 и NT с использованием новейших программных технологий и методик.Пакет программ MicrosoftVisualC++ версии 6 поставляется в трех различныхвариантах: стандартном, профессиональном и корпоративном.
Стандартный вариант VisualC++ (ранее он назывался учебным)содержит почти все те же средства, что и профессиональный, но в отличие отпоследнего в нем отсутствуют модуль Profiler, несколько мастеров, возможностипо оптимизации кода и статической компоновке библиотеки MFC, некоторые менееважные функции. Этот вариант в наибольшей мере подходит для студентов и иныхкатегорий индивидуальных пользователей, чему, в частности, способствует и сравнительнонизкая его цена. Лицензионное соглашение стандартного варианта программы в новойверсии, в отличие от старой, разрешает ее использование для создания коммерческихпрограммных продуктов.
Профессиональный вариант В этом варианте программы можно создаватьполнофункциональные графические и консольные приложения для всех платформWin32, включая Windows95, 98 и NT. Перечислим новые возможностипрофессионального варианта:
– •поддержка автоматического дополнения выражений (технология IntelHSense);
– • шаблоныOLEDB; • средства визуального проектирования приложений, работающих с базами данных
– •(без возможности модификации данных).
Корпоративный вариант С помощью корпоративного варианта VisualC++вы можете создавать приложения типа клиент/сервер для работы в Internet или в корпоративнойсреде (intranet). Приобретая корпоративный вариант программы, вы получаете в своераспоряжение не только все возможности профессионального варианта, но и ряд дополнительныхсредств, включая:
• Microsoft Transaction Server;
• средства визуального проектирования приложений, работающих с базамиданных;
• модуль SQL Editor;
• модуль SQL Debugger;
• классы библиотеки MFC для доступа к базам данных;
• ADO Data-Bound Dialog Wizard;
• Поддержка технологии Remote Automation;
• Visual SourceSafe.
Компилятор MicrosoftVisualC++ содержит также средства, позволяющиев среде Windows разрабатывать приложения для других платформ, в том числе дляAppleMacintosh. Кроме того, программа снабжена редакторами растровых изображений,значков, указателей мыши, меню и диалоговых окон, позволяющими работать с перечисленнымиресурсами непосредственно в интегрированной среде.
Коснувшись темы интеграции, следует упомянуть о мастере ClassWizard,помогающем в кратчайшие сроки создавать приложения OLE с использованием библиотекиMFC. Инструменты разработчика Новая версия компилятора MicrosoftVisualC++содержит множество интегрированных средств визуального программирования. Ниже перечисленыутилиты, которые вы можете использовать непосредственно из VisualC++. Интегрированныйотладчик Разработчики компании Microsoft встроили первоначальный отладчикCodeView непосредственно в среду VisualC++. Команды отладки вызываются из меню Debug.Встроенный отладчик позволяет пошагово выполнять программу, просматривать и изменятьзначения переменных и многое другое.
Встроенные редакторы ресурсов позволяют создавать и модифицироватьресурсы Windows, такие как растровые изображения, указатели мыши, значки, меню,диалоговые окна и т.д. Редактор диалоговых окон — это достаточно удобное средство,позволяющее легко и быстро создавать сложные диалоговые окна. С помощью этого редакторав разрабатываемое диалоговое окно можно включить любые элементы управления(например, надписи, кнопки, флажки, списки и т.д.). При этом вы можете изменятькак внешний вид элементов управления, так и их свойства (наряду со свойствами самогодиалогового окна). Редактор изображений позволяет быстро создавать и редактироватьсобственные растровые изображения, значки и указатели мыши. Пользовательские ресурсыданного типа сохраняются в файле с расширением RC и включаются в файлы сценариевресурсов. Редактор двоичных кодов позволяет вносить изменения непосредственно вдвоичный код ресурса. Редактор двоичных кодов следует использовать только для просмотраресурсов или внесения мелких изменений в те из них, тип которых не поддерживаетсяв VisualC++. Редактор строк представляет собой ресурс, содержащий список идентификаторови значений всех строковых надписей, используемых в приложении. К примеру, в этойтаблице могут храниться сообщения, отображаемые в строке состояния. Каждое приложениесодержит единственную таблицу строк. Наличие единой таблицы позволяет легко менятьязык интерфейса программы — для этого достаточно перевести на другой язык строкитаблицы, не затрагивая код программы.
Дополнительные утилиты ActiveX Control Test Container С помощью этойутилиты, разработанной специалистами Microsoft, вы можете быстро протестироватьсозданные вами элементы управления. При этом можно изменять их свойства и характеристики.APITextViewer Данная утилита позволяет просматривать объявления констант,функций и типов данных Win32 API, а также копировать эти объявления в приложенияVisualBasic или в буфер обмена. AVIEditor Эта утилита позволяет просматривать,редактировать и объединять AVI-файлы. DataObjectViewer Утилита DataObjectViewerотображает список форматов данных, предлагаемых объектами ActiveX и OLE,которые находятся в буфере обмена или участвуют в операции перетаскивания (drag-and-drop).DDESpy эта утилита предназначена для отслеживания всех DDE-сообщений. DocFileViewerэта утилита отображает содержимое составных OLE-документов. ErrorLookup ErrorLookupэта утилита позволяет просматривать и анализировать всевозможные сообщения об ошибках.HeapWalkUtility Эта утилита выводит список блоков памяти, размещенных в указаннойдинамической области (куче). HelpWorkshop Эта утилита позволяет создавать и редактироватьфайлы справки. OLE Client/Server, Tools иView Утилита OLEViewer отображает информациюоб объектах ActiveX и OLE, инсталлированных на вашем компьютере. Эта утилита такжепозволяет редактировать реестр и просматривать библиотеки типов. Утилиты OLEClient и OLE Server предназначены для тестирования OLEклиентов и серверов. TheProcessViewerЭта утилита позволяет следить за состоянием выполняющихся процессов и потоков. ROTViewerЭта утилита отображает информацию об объектах ActiveX и OLE, в данный момент загруженныхв память. Spy++ Эта утилита выводит сведения о выполняющихся процессах,потоках, существующих окнах и оконных сообщениях. StressUtility Эта утилита позволяетзахватывать системные ресурсы и используется для тестирования системы в ситуациях,связанных с недостатком системных ресурсов. В число захватываемых ресурсов входятглобальная и пользовательская динамические области (кучи), динамическая областьGDI, свободные области дисков и дескрипторы файлов. Утилита Stress может выделятьфиксированное количество ресурсов, а также производить выделение в ответ на получениеразличных сообщений. Кроме того, утилита способна вести журнал событий, что помогаетобнаруживать и воспроизводить аварийные ситуации в работе программы. MFC TracerЭта утилита позволяет устанавливать флаги трассировки в файле AFX.INI. С помощьюданных флагов можно выбрать типы сообщений, которые будут посылаться приложениемв окно отладки. Таким образом, утилита Tracer является средством отладки. UUIDGeneratorЭта утилита предназначена для генерации универсального уникального идентификатора(UUID), который позволяет клиентским и серверным приложениям распознавать друг друга.WinDiff Эта утилита дает возможность сравнивать содержимое файлов и папок. ZoomingЭту утилиту можно использовать для захвата и просмотра в увеличенном виде выбраннойобласти на рабочем столе.
Компилятор VisualC++ содержит много новых инструментальных средстви улучшенных возможностей. В следующих параграфах дается их краткий обзор. Средстваавтоматизации и макросы С помощью сценариев VisualBasic вы можете автоматизироватьвыполнение рутинных и повторяющихся задач. VisualC++ позволяет записывать в макрокомандахсамые разные операции со своими компонентами, включая открытие, редактирование изакрытие документов, изменение размеров окон. Можно также создавать надстроечныемодули, интегрируя их в среду с использованием объектной модели VisualC++. ClassViewВкладка ClassView теперь позволяет работать с классами Java так же, как с классамиC++.
Вы можете просматривать и редактировать интерфейсы СОМ-объектов,созданных на базе MFC или ALT, а также разбивать классы по папкам удобным для васобразом. Стало легче настраивать панели инструментов и меню в соответствии с вашимипредпочтениями. В частности, вы можете выполнять следующие действия:
– добавлятьменю в панель инструментов;
– добавлятьи удалять команды меню и кнопки панели инструментов;
– заменятькнопки панели инструментов соответствующими командами меню;
– создаватькопии команд меню или кнопок панелей инструментов на разных панелях, с тем чтобыоблегчить доступ к ним в разных ситуациях;
– создаватьновые панели инструментов и меню;
– настраиватьвнешний вид существующих панелей инструментов и меню;
– назначатькоманды меню новым кнопкам панелей инструментов.
Файлы рабочего пространства теперь имеют расширение DSW(раньше использовалосьрасширение MDP). Создаваемые проекты записываются в файлы двух типов:внутренние (DSP) и внешние (МАК). Файлы с расширением DSP создаются при выборе новогопроекта или при открытии файла проекта, созданного в ранней версии программы. Чтобысохранить проект во внешнем файле с расширением МАК, используйте команду ExportMakefile из меню Project. Проекты теперь могут содержать активные документы,например электронные таблицы или текстовые документы Word. Вы можете редактироватьих, даже не покидая VisualStudio. Когда создается новое рабочее пространство,VisualC++ создает файл имя_рабочегo_npocmpaнcтвa.DSW. Эти файлы больше не содержатданных, специфичных для вашего компьютера. Предварительно скомпилированные файлызаголовков VisualC++ помещает описания типов данных, прототипы функций, внешниессылки и объявления функций-членов в специальные файлы, называемые файлами заголовков.Эти файлы содержат важные определения, необходимые во многих местах программы.Части файлов заголовков обычно повторно компилируются при компиляции каждого извключающих их модулей. К сожалению, повторная компиляция значительно замедляет работукомпилятора.
VisualC++ позволяет существенно ускорить этот процесс за счет возможностипредварительной компиляции файлов заголовков. Хотя идея не нова, для ее реализацииспециалисты Microsoft использовали принципиально новый подход. Предварительной компиляцииможет подвергнуться только «стабильная» часть файла; оставшаяся же часть,которая впоследствии может модифицироваться, будет компилироваться вместе с приложением.
Это средство удобно применять, например, в том случае, когда в процессеразработки приложения приходится часто изменять программный код, сохраняя описаниеклассов. Предварительная компиляция файлов заголовков приведет к значительному ускорениюработы с программой и в тех случаях, когда заголовки заключают в себе больше программногокода, чем основной модуль.
Компилятор VisualC++ предполагает, что текущее состояние рабочей средыидентично тому, которое было при компиляции заголовков. В случае обнаружения каких-либоконфликтов будет выдано предупреждающее сообщение. Такие ситуации могут возникатьпри изменении модели использования памяти, значений предопределенных констант илиопций отладки/компиляции.
В отличие от многих других компиляторов C++, VisualC++ не ограничиваетсяпредварительной компиляцией только файлов заголовков. Благодаря возможности проводитькомпиляцию до заданной точки программы вы можете предварительно скомпилировать дажекакую-нибудь часть основного модуля. В целом, процедура предварительной компиляциииспользуется для тех частей программного кода, которые вы считаете стабильными;таким образом значительно сокращается время компиляции частей программы,изменяемых в процессе работы над ней.
Приложения Windows просты в использовании, но создавать их довольносложно. Программистам приходится изучать сотни различных API-функций. Чтобы облегчитьих труд, специалисты Microsoft разработали библиотеку MicrosoftFoundationClasses—MFC. Используя готовые классы C++, можно гораздо быстрее и проще решать многиезадачи. Библиотека MFC существенно облегчает программирование в среде Windows.Те, кто обладает достаточным опытом программирования на C++, могут дорабатыватьклассы или создавать новые, производные от существующих.
Классы библиотеки MFC используются как для управления объектамиWindows, так и для решения определенных общесистемных задач. Например, в библиотекеимеются классы для управления файлами, строками, временем, обработкой исключенийи другие.
По сути, в MFC представлены практически все функции WindowsAPI. В библиотекеимеются средства обработки сообщений, диагностики ошибок и другие средства,обычные для приложений Windows. MFC обладает следующими преимуществами.
– Представленныйнабор функций и классов отличается логичностью и полнотой. Библиотека MFCоткрывает доступ ко всем часто используемым функциям WindowsAPI, включая функцииуправления окнами приложений, сообщениями, элементами управления, меню,диалоговыми окнами, объектами GDI (GraphicsDeviceInterface— интерфейс графическихустройств), такими как шрифты, кисти, перья и растровые изображения, функции работыс документами и многое другое.
– ФункцииMFC легко изучать. Специалисты Microsoft приложили все усилия для того, чтобы именафункций MFC и связанных с ними параметров были максимально близки к их эквивалентамиз WindowsAPI. Благодаря этому программисты легко смогут разобраться в их назначении.
– Программныйкод библиотеки достаточно эффективен. Скорость выполнения приложений,основанных на MFC, будет примерно такой же, как и скорость выполнения приложений,написанных на С с использованием стандартных функций WindowsAPI, а дополнительныезатраты оперативной памяти будут весьма незначительными.
– • MFCсодержит средства автоматического управления сообщениями. Библиотека MFC устраняетнеобходимость в организации цикла обработки сообщений — распространенного источникаошибок в Windows-приложениях. В MFC предусмотрен автоматический контроль за появлениемкаждого сообщения. Вместо использования стандартного блока switch/case все сообщенияWindows связываются с функциямичленами, выполняющими соответствующую обработку.
– MFCпозволяет организовать автоматический контроль за выполнением функций. Эта возможностьреализуется за счет того, что вы можете записывать в отдельный файл информацию оразличных объектах и контролировать значения переменных-членов объекта в удобномдля понимания формате.
– MFCимеет четкий механизм обработки исключительных ситуаций. Библиотека MFC была разработанатаким образом, чтобы держать под контролем появление таких ситуаций. Это позволяетобъектам MFC восстанавливать работу после появления ошибок типа«outofmemory» (нехватка памяти), неправильного выбора команд меню илипроблем с загрузкой файлов либо ресурсов.
– MFCобеспечивает динамическое определение типов объектов. Это чрезвычайно мощное программноесредство, позволяющее отложить проверку типа динамически созданного объекта до моментавыполнения программы. Благодаря этому вы можете свободно манипулировать объектами,не заботясь о предварительном описании типа данных. Поскольку информация о типеобъекта возвращается во время выполнения программы, программист освобождается отцелого этапа работы, связанного с типизацией объектов.
– MFCможет использоваться совместно с подпрограммами, написанными на языке С. Важнойособенностью библиотеки MFC является то, что она может«сосуществовать» с приложениями, основанными на WindowsAPI. В одной итой же программе программист может использовать классы MFC и вызывать функцииWindowsAPI. Такая прозрачность среды достигается за счет согласованности программныхобозначений в обеих архитектурах. Другими словами, файлы заголовков, типы и глобальныеконстанты MFC не конфликтуют с именами из WindowsAPI. Еще одним ключевым моментом,обеспечивающим такое взаимодействие, является согласованность механизмов управленияпамятью.
– MFCможет быть использована для создания программ, работающих в среде MSDOS. БиблиотекаMFC была создана специально для разработки приложений в среде Windows. В то же времямногие классы предоставляют объекты, часто используемые для ввода/вывода файлови манипулирования строковыми данными. Такие классы общего назначения могут применятьсяв приложениях как Windows, так и MS-DOS.
Макроподстановка функций Компилятор MicrosoftVisualC++поддерживает возможность макроподстановки функций. Это означает, что вызов любойфункции с любым набором инструкций может быть заменен непосредственной подстановкойтела функции. Многие компиляторы C++ разрешают производить макроподстановку толькодля функций, содержащих определенные операторы и выражения. Например, иногда оказываетсяневозможной макроподстановка функций, содержащих операторы switch, while и for.VisualC++ не накладывает ограничений на содержимое функций. Чтобы задать параметрымакроподстановки, выберите в меню Project команду Settings, затем активизируйтевкладку C/C++ и, наконец, выберите элемент Optimizations из списка Category.
Компилятор MicrosoftVisualC++ предоставляет огромные возможности вплане оптимизации приложений, в результате чего вы можете получить выигрыш как вотношении размера программы, так и в отношении скорости ее выполнения,независимо от того, что представляет собой ваше приложение. Перечисленные ниже опциикомпиляции позволяют оптимизировать программный код, сокращая его размер, времявыполнения и время компиляции. Чтобы получить к этим опциям доступ, нужно в менюProject выбрать команду Settings.
На вкладке General можно включить или отключить возможность использованиябиблиотеки MFC (список MicrosoftFoundationClasses). Здесь также можно указать папки,в которые компилятор будет помещать промежуточные (поле Intermediatefiles) и выходные (поле Outputfiles) файлы.
Debug а вкладке Debug можно указать местонахождение исполняемого файлаи рабочей папки, задать аргументы командной строки, а также путь и имя удаленногоисполняемого файла на сетевом диске. Кроме того, в списке Category можно выбратьэлемент AdditionalDLLs, предназначенный для задания дополнительных библиотек динамическойкомпоновки (DLL).
Вкладка C/C++ содержитследующиекатегорииопций: General, C++ Language,Code Generation, Customize, Listing Files, Optimizations, Precompiled Headers и Preprocessor.В полеProjectOptions отображается командная строка проекта.
Опции категории General позволяют установить уровень контроля за ошибками(список Warninglevel), указать, какую отладочную информацию следует включать(список Debuginfo), выбрать тип оптимизации при компиляции (список Optimizations)и задать директивы препроцессора (поле Preprocessordefinitions).
Опции категории C++ Languageпозволяют выбрать способ представления указателейна члены классов (группа Pointer-to-member representation), включить обработку исключительныхситуаций (Enable exception handling), разрешить проверку типов объектов на этапевыполнения (EnableRun-timeTypeInformation) и запретить замещение конструкторов привызове виртуальных функций (Disableconstructiondisplacements).
Опции категории CodeGeneration позволяют задать тип процессора, накоторый должен ориентироваться компилятор (список Processor), выбрать тип соглашенияо вызовах функций (список Callingconvention), указать тип компоновки динамическихбиблиотек (список Useruntimelibrary) и установить порядок выравнивания полей структурированныхпеременных (список Structmemberalignment).
В категории Customize можно задать следующие опции:
– Disablelanguageextensions(компиляция производится в соответствии с правилами ANSIС, а не MicrosoftС);
– Enablefunction-levellinking(функции при компиляции обрабатываются особым образом, что позволяет компоновщикуупорядочивать их и исключать неиспользуемые);
– Eliminateduplicatestrings(втаблицу строк модуля не включаются повторяющиеся строки);
– Enableminimalrebuild(позволяеткомпилятору обнаруживать изменения в объявлениях классов C++ и выявлять необходимостьповторной компиляции исходных файлов);
– Enableincrementalcompilation(даетвозможность компилировать только те функции, код которых изменился с момента последнейкомпиляции);
– Suppressstartupbannerandinformationmessages(впроцессе компиляции запрещается вывод сообщения с информацией об авторских правахи номере версии компилятора).
ListingFiles Опции категории ListingFiles позволяют задавать сведения,необходимые для создания SBRфайла (группа Generatebrowseinfo), который используетсяпри построении специальной базы данных с информацией о всех классах, функциях,переменных и константах программы. Кроме того, в этой категории можно указать,следует ли создавать файл с ассемблерным кодом программы, какого он должен бытьтипа и где располагаться (список Listingfiletype и поле Listingfilename).
Опции категории Optimizationsпозволяют устанавливать различные параметрыоптимизации программного кода (список Optimizations). Также можно указать,каким образом следует выполнять макроподстановку функций (список Inlinefunctionexpansion).
Опции категории PrecompiledHeaders определяют, следует ли использоватьфайлы предварительно скомпилированных заголовков (файлы с расширением РСН).Наличие таких файлов ускоряет процесс компиляции и компоновки. После компиляциивсего приложения эти файлы следует удалить из папки проекта, поскольку они занимаюточень много места.
Опции категории Preprocessor позволяют задавать параметры работы препроцессора.Здесь же можно указать дополнительные папки для включаемых файлов заголовков(поле Additional #include directories), а также установить опцию Ignorestandard include paths, которая служит указанием игнорировать папки,перечисленные в переменных среды PATHили INCLUDE.
Вкладка Link содержит опции пяти категорий: General, Customize,Debug, Inputи Output.
В категории General в поле Outputfilename можно задать имя и расширениевыходного файла. Как правило, для файла проекта используется расширение ЕХЕ. В полеObject/librarymodules указываются объектные и библиотечные файлы, компонуемые вместес проектом. Также могут быть установлены следующие опции:
– Generatedebuginfo(висполняемый файл включается отладочная информация);
– Linkincrementally(частичнаякомпоновка; эта опция доступна, если в категории Customize установлен флажок Useprogramdatabase);
– Enableprofiling(висполняемый файл включается информация для профилировщика);
– Ignorealldefaultlibraries(удаляютсявсе стандартные библиотеки из списка библиотек, который просматривается компоновщикомпри разрешении внешних ссылок);
– Generatemapfile(создаетсяМАР-файл проекта).
– Customize
В категории Customize можно установить такие опции:
– Linkincrementally(аналогичнаодноименной опции из категории General);
– Useprogramdatabase(вслужебную базу данных программы помещается отладочная информация);
– Outputfilename(задаетимя выходного файла);
– Printingprogressmessages(впроцессе компиляций выводятся сообщения о ходе компоновки);
– Suppressstartupbanner(аналогичнаподобной опции категории Customize вкладки C/C++).
Категории Debug позволяют указать, следует ли генерировать МАР-файлпроекта, а также задают различные параметры отладки.
Посредством опций категории Input приводится различная информация обобъектных и библиотечных файлах, компонуемых вместе с проектом.
Опции категории Output позволяют задать базовый адрес программы(Baseaddress), точку входа (Entry-pointsymbol), объем виртуальной и физической памяти,выделяемой для стека (группа Stackallocations), и номер версии проекта (группа Versioninformation).
Вкладка Resources позволяет указать имя файла ресурсов (обычно этофайл с расширением RES) и задать некоторые дополнительные параметры, такие как языкпредставления ресурсов, папки включаемых файлов и макросы препроцессора.
Вкладка MIDL предназначена для задания различных параметров генерациибиблиотеки типов. BrowseInfo На вкладке BrowseInfo можно указать имя файла базыданных, содержащей описания классов, функций, констант и переменных программы.
Вкладка CustomBuild предназначена для задания дополнительных командкомпиляции, которые будут выполняться над выходным файлом.
ВЫВОДЫ
В бакалаврской работе было рассмотрено методы созданиеинформационно-справочной подсистем САПР конструкторско-технологическогоназначения. Были рассмотрены всевозможные комбинации технических средств длявыполнения и исполнения данной работы. Для данной системы была выбрана БДреляционной модели.
Реляционная модель имеет в своей основе понятие «отношения», и ееданные формируются в виде таблиц. Отношение – это двумерная таблица, имеющаясвое название, в которой минимальным объектом действий, сохраняющим ее структуру,является строка таблицы (кортеж), состоящая из ячеек таблицы – полей.
Каждый столбец таблицы соответствуеттолько одной компоненте этого отношения. С логической точки зрения реляционнаябаза данных представляется множеством двумерных таблиц различного предметногонаполнения.
Для реализации данной БД можно было выбрать любой языкпрограммирования, но был выбран VisualC++ стандартный вариант. Стандартный вариант VisualC++(ранее он назывался учебным) содержит почти все те же средства, что и профессиональный,но в отличие от последнего в нем отсутствуют модуль Profiler, несколькомастеров, возможности по оптимизации кода и статической компоновке библиотекиMFC, некоторые менее важные функции.
ПЕРЕЧЕНЬ ССЫЛОК
1. «Микроэлектроника:Учеб. пособие для втузов. В 9 кн. /под ред. Л.А. Коледова. Кн. 4. Гибридныеинтегральные микросхемы/ Л.А. Коледов, Э.М. Ильина. – М.: Высш. шк., 1987.
2. МалышевИ.А. „Технология производства интегральных микросхем“. – М.: Радио исвязь, 1991.
3. КурносовА.И. „Технология производства полупроводниковых приборов и интегральныхмикросхем“. – М., 1979.
4. С.А. Бирюков. Цифровые устройства наМОП-интегральных микросхемах. „Радио и связь“, 1996 г., 192 с.
5.Н.А. Елагин, А.В. Ростов. Конструкции и технологиив помощь любителям электроники. „СОЛОН-Р“, М., 2001 г., 106 с.
6. В.Л. Шило. Популярные цифровые микросхемы.»Радио и связь”, 1989 г., 352 с.
7. www.chertegey.net.ru
8. www.cosmos.rcnet.ru
9. www.lanit.ru
10. www.sapr.km.ru
11. Веретенникова Е.И., Патрушина С.М.,Савельева Н.Г. Информатика: Учебное пособие. Серия «Учебный курс». – Ростовн/Д: Издательский центр «МарТ», 2002.
12. Могилев А.В. Информатика: Учеб. пособиедля студ. пед. вузов / А.В. Моглиев, Н.И. Пак, Е.К. Хеннер; Под ред. Е.К.Хеннера.- 2-е изд., стер. – М.: Издательский центр «Академия», 2003.