Разработка архитектуры вычислительного средства в программной среде ORCAD для функции
Общая структура микропроцессора. Жизненный цикл программного обеспечения. Проектирование схемы операционного блока, создание временных диаграмм с использованием средств Microsoft Office и в среде OrCAD. Разработка алгоритма хранения значений констант.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 24.07.2013 |
Размер файла | 839,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
41
Размещено на http://www.allbest.ru/
Курсовой проект
на тему
Разработка архитектуры вычислительного средства в программной среде ORCAD для функции
АННОТАЦИЯ
В данном курсовом проекте необходимо ознакомиться с арифметическими и логическими принципами работы компьютера, а также закрепить полученные знания о базовых логических элементах.
На основе полученных сведений реализовать схему операционного блока в соответствии с полученным заданием. Затем получить временные диаграммы этого блока. Также, необходимо создать алгоритм поиска неисправностей.
Для реализации поставленных задач будут использоваться стандартные средства Microsoft Office Word, графический редактор и программная среда OrCAD, позволяющая моделировать электронные и логические схемы.
ВВЕДЕНИЕ
Вычислительная техника - область техники, объединяющая средства автоматизации математических вычислений и обработки информации. Под вычислительной техникой принято также понимать науку о принципах построения, действия и проектирования этих средств. Развитие вычислительной техники идет по пути увеличения быстродействия машин, объема «памяти» запоминающих устройств и совершенствования процесса обмена информацией между машиной и тем, кто ее использует. Это сопровождается совершенствованием микроэлектронной элементной базы, быстрым развитием микропроцессорной техники.
Влияние элементной базы на развитие вычислительной техники столь велико, что в зависимости от типа применяемых элементов различают поколения вычислительных машин. Сейчас готовятся ЭВМ пятого поколения, в которых используются большие интегральные схемы, где один монокристалл содержит десятки тысяч элементов. Современные средства вычислительной техники обеспечивают многопрограммную обработку информации, т. е. одновременную работу машины по нескольким программам.
Развитие математического обеспечения вычислительной техники связано с созданием эффективных систем программирования, основанных на универсальных и специализированных алгоритмических языках, и операционных систем, эффективно организующих вычислительный процесс в целом, включая взаимодействие между пользователем и машиной. Развитие математического обеспечения, в свою очередь, оказывает большое влияние на принципы построения машин. Наряду с развитием средств вычислительной техники происходит непрерывное расширение области их применения. Главные направления использования этих средств: решение математических, технических и логических задач, моделирование сложных систем, обработка данных измерений, обработка экономико-статистических данных и поиск информации.
Средства вычислительной техники широко используются при управлении технологическими процессами и производством в целом, в проектных и конструкторских работах, в информационно-справочных и обучающих системах. Без них немыслимо создание автоматизированных систем управления, систем автоматизированного проектирования, автоматизированных систем научных исследований.
С каждым новым поколением ЭВМ увеличивались быстродействие и надежность их работы при уменьшении стоимости и размеров, совершенствовались устройства ввода и вывода информации. В соответствии с трактовкой компьютера -- как технической модели информационной функции человека -- устройства ввода приближаются к естественному для человека восприятию информации (зрительному, звуковому) и, следовательно, операция по ее вводу в компьютер становится все более удобной для человека.
Современный компьютер -- это универсальное, многофункциональное, электронное автоматическое устройство для работы с информацией. Компьютеры в современном обществе взяли на себя значительную часть работ, связанных с информацией. По историческим меркам компьютерные технологии обработки информации еще очень молоды и находятся в самом начале своего развития. Еще ни одно государство на Земле не создало информационного общества. Еще много потоков информации, не вовлеченных в сферу действия компьютеров. Компьютерные технологии сегодня преобразуют или вытесняют старые, докомпьютерные технологии обработки информации.
Текущий этап завершится построением в индустриально развитых странах глобальных всемирных сетей для хранения и обмена информацией, доступных каждой организации и каждому члену общества. Надо только помнить, что компьютерам следует поручать то, что они могут делать лучше человека и не употреблять во вред человеку, обществу.
1.ОБЩИЙ РАЗДЕЛ
1.1 Основные понятия о компьютерных системах и информационных технологиях
Процесс взаимодействия человека с ЭВМ насчитывает уже более 40лет. До недавнего времени в этом процессе могли участвовать только специалисты - инженеры, математики - программисты, операторы. В последние годы произошли кардинальные изменения в области вычислительной техники. Благодаря разработке и внедрению микропроцессоров в структуру ЭВМ появились малогабаритные, удобные для пользователя персональные компьютеры. Ситуация изменилась, в роли пользователя может быть не только специалист по вычислительной технике, но и любой человек, будь то школьник или домохозяйка, врач или учитель, рабочий или инженер.
Задача управления системой возлагается на центральный процессор (ЦП), который связан с памятью и системой ввода-вывода через каналы памяти и ввода-вывода соответственно. ЦП считывает из памяти команды, которые образуют программу, и декодирует их. В соответствии с результатом декодирования команд он осуществляет выборку данных из памяти портов ввода, обрабатывает их и пересылает обратно в память или порты вывода. Существует также возможность ввода-вывода данных из памяти на внешние устройства и обратно, минуя ЦП. Этот механизм называется прямым доступом к памяти (ПДП).
С точки зрения пользователя при выборе микропроцессора целесообразно располагать некоторыми обобщенными комплексными характеристиками возможностей микропроцессора. Разработчик нуждается в уяснении и понимании лишь тех компонентов микропроцессора, которые явно отражаются в программах и должны быть учтены при разработке схем и программ функционирования системы. Такие характеристики определяются понятием архитектуры микропроцессора.
Архитектура типичной небольшой вычислительной системы на основе микроЭВМ показана на рис. 1.1. Такая микроЭВМ содержит все 5 основных блоков цифровой машины: устройство ввода информации, управляющее устройство (УУ), арифметико-логическое устройство (АЛУ) (входящие в состав микропроцессора), запоминающие устройства (ЗУ) и устройство вывода информации.
Рис. 1.1. Архитектура типового микропроцессора.
Микропроцессор координирует работу всех устройств цифровой системы с помощью шины управления (ШУ). Помимо ШУ имеется 16-разрядная адресная шина (ША), которая служит для выбора определенной ячейки памяти, порта ввода или порта вывода. По 8-разрядной информационной шине или шине данных (ШД) осуществляется двунаправленная пересылка данных к микропроцессору и от микропроцессора. Важно отметить, что МП может посылать информацию в память микроЭВМ или к одному из портов вывода, а также получать информацию из памяти или от одного из портов ввода.
Постоянное запоминающее устройство (ПЗУ) в микроЭВМ содержит некоторую программу (на практике программу инициализации ЭВМ). Программы могут быть загружены в запоминающее устройство с произвольной выборкой (ЗУПВ) и из внешнего запоминающего устройства (ВЗУ). Это программы пользователя.
Подчеркнем еще раз, что именно микропроцессор является ядром системы и осуществляет управление всеми операциями. Его работа представляет последовательную реализацию микропроцедур выборки-дешифрации-исполнения. Однако фактическая последовательность операций в МПС определяется командами, записанными в памяти программ.
Таким образом, в МПС микропроцессор выполняет следующие функции:
- выборку команд программы из основной памяти;
- дешифрацию команд;
- выполнение арифметических, логических и других операций, закодированных в командах;
- управление пересылкой информации между регистрами и основной памятью, между устройствами ввода/вывода;
- отработку сигналов от устройств ввода/вывода, в том числе реализацию прерываний с этих устройств;
- управление и координацию работы основных узлов МП.
Существует несколько подходов к классификации микропроцессоров по типу архитектуры. Так, выделяют МП с CISC (Complete Instruction Set Computer) архитектурой, характеризуемой полным набором команд, и RISC (Reduce Instruction Set Computer) архитектурой, которая определяет систему с сокращенным набором команд одинакового формата, выполняемых за один такт МП.
Определяя в качестве основной характеристики МП разрядность, выделяют следующие типы МП архитектуры:
- с фиксированной разрядностью и списком команд (однокристальные);
- с наращиваемой разрядностью (секционные) и микропрограммным управлением.
Анализируя адресные пространства программ и данных, определяют МП с архитектурой фон Неймана (память программ и память данных находятся в едином пространстве и нет никаких признаков, указывающих на тип информации в ячейке памяти) и МП с архитектурой Гарвардской лаборатории (память программ и память данных разделены, имеют свои адресные пространства и способы доступа к ним).
В микропроцессорах используют два метода выработки совокупности функциональных управляющих сигналов: программный и микропрограммный.
Выполнение операций в машине сводится к элементарным преобразованиям информации (передача информации между узлами в блоках, сдвиг информации в узлах, логические поразрядные операции, проверка условий и т.д.) в логических элементах, узлах и блоках под воздействием функциональных управляющих сигналов блоков (устройств) управления. Элементарные преобразования, неразложимые на более простые, выполняются в течение одного такта сигналов синхронизации и называются микрооперациями.
В аппаратных (схемных) устройствах управления каждой операции соответствует свой набор логических схем, вырабатывающих определенные функциональные сигналы для выполнения микроопераций в определенные моменты времени. При этом способе построения устройства управления реализация микроопераций достигается за счет однажды соединенных между собой логических схем, поэтому ЭВМ с аппаратным устройством управления называют ЭВМ с жесткой логикой управления. Это понятие относится к фиксации системы команд в структуре связей ЭВМ и означает практическую невозможность каких-либо изменений в системе команд ЭВМ после ее изготовления.
При микропрограммной реализации устройства управления в состав последнего вводится ЗУ, каждый разряд выходного кода которого определяет появление определенного функционального сигнала управления. Поэтому каждой микрооперации ставится в соответствие свой информационный код - микрокоманда. Набор микрокоманд и последовательность их реализации обеспечивают выполнение любой сложной операции. Набор микроопераций называют микропрограммами. Способ управления операциями путем последовательного считывания и интерпретации микрокоманд из ЗУ (наиболее часто в виде микропрограммного ЗУ используют быстродействующие программируемые логические матрицы), а также использования кодов микрокоманд для генерации функциональных управляющих сигналов называют микропрограммным, а микроЭВМ с таким способом управления - микропрограммными или с хранимой (гибкой) логикой управления.
К микропрограммам предъявляют требования функциональной полноты и минимальности. Первое требование необходимо для обеспечения возможности разработки микропрограмм любых машинных операций, а второе связано с желанием уменьшить объем используемого оборудования. Учет фактора быстродействия ведет к расширению микропрограмм, поскольку усложнение последних позволяет сократить время выполнения команд программы.
Преобразование информации выполняется в универсальном арифметико-логическом блоке микропроцессора. Он обычно строится на основе комбинационных логических схем.
Для ускорения выполнения определенных операций вводятся дополнительно специальные операционные узлы (например, циклические сдвигатели). Кроме того, в состав микропроцессорного комплекта (МПК) БИС вводятся специализированные оперативные блоки арифметических расширителей.
Операционные возможности микропроцессора можно расширить за счет увеличения числа регистров. Если в регистровом буфере закрепление функций регистров отсутствует, то их можно использовать как для хранения данных, так и для хранения адресов. Подобные регистры микропроцессора называются регистрами общего назначения (РОН). По мере развития технологии реально осуществлено изготовление в микропроцессоре 16, 32 и более регистров.
В целом же, принцип микропрограммного управления (ПМУ) включает следующие позиции:
1) любая операция, реализуемая устройством, является последовательностью элементарных действий - микроопераций;
2) для управления порядком следования микроопераций используются логические условия;
3) процесс выполнения операций в устройстве описывается в форме алгоритма, представляемого в терминах микроопераций и логических условий, называемого микропрограммой;
4) микропрограмма используется как форма представления функции устройства, на основе которой определяются структура и порядок функционирования устройства во времени.
ПМУ обеспечивает гибкость микропроцессорной системы и позволяет осуществлять проблемную ориентацию микро- и миниЭВМ.
Для взаимодействия с различными модулями в ЭВМ должны быть средства идентификации ячеек внешней памяти, ячеек внутренней памяти, регистров МП и регистров устройств ввода/вывода. Поэтому каждой из запоминающих ячеек присваивается адрес, т.е. однозначная комбинация бит. Количество бит определяет число идентифицируемых ячеек. Обычно ЭВМ имеет различные адресные пространства памяти и регистров МП, а иногда - отдельные адресные пространства регистров устройств ввода/вывода и внутренней памяти. Кроме того, память хранит как данные, так и команды. Поэтому для ЭВМ разработано множество способов обращения к памяти, называемых режимами адресации.
Режим адресации памяти - это процедура или схема преобразования адресной информации об операнде в его исполнительный адрес.
Все способы адресации памяти можно разделить на:
1) прямой, когда исполнительный адрес берется непосредственно из команды или вычисляется с использованием значения, указанного в команде, и содержимого какого-либо регистра (прямая адресация, регистровая, базовая, индексная и т.д.);
2) косвенный, который предполагает, что в команде содержится значение косвенного адреса, т.е. адреса ячейки памяти, в которой находится окончательный исполнительный адрес (косвенная адресация).
В каждой микроЭВМ реализованы только некоторые режимы адресации, использование которых, как правило, определяется архитектурой МП.
Число персональных компьютеров как в мире, так и, в частности, в России стремительно растет; рынок ПК - самый перспективный и доходный среди остальных рынков вычислительной техники. В северной Америке и Западной Европе процент семей, имеющих ПК, приближается к 30. Без сомнения, в наши дни каждый должен изучить и понять компьютер не только теоретически, но, что наиболее важно, и практически.
Анализ новых решений построения структуры компьютера показывает, что процессор, память, устройства ввода - вывода составляют основу любого компьютера. Рассмотрим наиболее распространенную структурную схему, которая лежит в основе наиболее часто встречающихся моделей компьютеров, в частности персональных.
Современный компьютер можно представить в большинстве случаев упрощенной структурной схемой, где выделены центральная и периферийная части. К центральной части относятся процессор и внутренняя память, к периферийной части - устройства ввода-вывода и внешняя память. В основу упрощенной структурной схемы заложены принципы магистральности, модульности, микропрограммирумостью.
Не следует надеяться, что развитие вычислительной техники как-то кардинально изменит наше существование. Компьютер не более (но и не менее) чем один из мощных двигателей прогресса (как энергетика, металлургия, химия, машиностроение), который берет на свои "железные плечи" такую важную функцию, как рутину обработки информации. Эта рутина всегда и везде сопровождает самые высокие полеты человеческой мысли. Именно в этой рутине очень часто тонут дерзкие решения, недоступные компьютеру. Поэтому так важно " свалить" на компьютер рутинные операции, чтобы освободить человека для его истинного предназначения-творчества.
Будущее микропроцессорной техники связано сегодня с двумя новыми направлениями - нанотехнологиями и квантовыми вычислительными системами. Эти пока еще главным образом теоретические исследования касаются использования в качестве компонентов логических схем молекул и даже субатомных частиц: основой для вычислений должны служить не электрические цепи, как сейчас, а положение отдельных атомов или направление вращения электронов. Если "микроскопические" компьютеры будут созданы, то они обойдут современные машины по многим параметрам.
1.2 Технические средства вычислительных систем
Магистраль или системная шина - это набор электронных линий, связывающих воедино по адресации памяти, передачи данных и служебных сигналов процессор, память и периферийные устройства.
Системная магистраль осуществляет обмен данными между процессором или ОЗУ с одной стороны и контроллерами внешних устройств компьютера с другой стороны.
Обмен информацией между отдельными устройствами ЭВМ производится по трем многоразрядным шинам, соединяющим все модули
Шины представляют собой многопроводные линии. Тип системных шин, применяемых в компьютерах с невысокой производительностью - ISA. Это дешевая но "малоинтеллектуальная" шина. Она может обеспечивать обмен с клавиатурой, дисплеем (алфавитно-цифровым), дисководами для гибких дискет, принтерами и модемами. Однако ее возможностей не достаточно для работы с дисководами для жестких дисков, видеоконтроллерами, адаптерами локальных сетей и т.п.
Шина MCA - более производительная, но не совместима с ISA, поэтому не нашла широкого применения.
Шина EISA - совместима с ISA , значительно дороже, чем ISA и не всегда обеспечивая нужную скорость обмена.
Шина VESA (VL) - более дешевая шина, используется в сочетании с ISA или с EISA.
Шина PCI - конкурент шины VESA , используется в PENTIUM в сочетании с ISA или EISA.
Рис 1.2. Магистрально-модульный принцип
Как уже было сказано, подключение отдельных модулей компьютера к магистрали на физическом уровне осуществляется с помощью контроллеров, а на программном обеспечивается драйверами. Контроллер принимает сигнал от процессора и дешифрует его, чтобы соответствующее устройство смогло принять этот сигнал и отреагировать на него. За реакцию устройства процессор не отвечает - это функция контроллера. Поэтому внешние устройства ЭВМ заменяемы, и набор таких модулей произволен.
Шина данных
По этой шине данные передаются между различными устройствами. Например, считанные из оперативной памяти данные могут быть переданы процессору для обработки, а затем полученные данные могут быть отправлены обратно в оперативную память для хранения. Таким образом, данные по шине данных могут передаваться от устройства к устройству в любом направлении, т. е. шина данных является двунаправленной.
Разрядность шины данных определяется разрядностью процессора, т.е. количеством двоичных разрядов, которые процессор обрабатывает за один такт. Разрядность процессоров постоянно увеличивалась по мере развития компьютерной техники.
За 25 лет, со времени создания первого персонального компьютера (1975г.), разрядность шины данных увеличилась с 8 до 64 бит.
К основным режимам работы процессора с использованием шины передачи данных можно отнести следующие: запись/чтение данных из оперативной памяти и из внешних запоминающих устройств, чтение данных с устройств ввода, пересылка данных на устройства вывода.
Шина адреса
Шина адреса предназначена для передачи по ней адреса того устройства (или той ячейки памяти), к которому обращается процессор. Адрес на нее выдает всегда только процессор. По шине данных передается вся информация. При операции записи информацию на нее выставляет процессор, а считывает то устройство (например, память или принтер), адрес которого выставлен на шине адреса. При операции чтения информацию выставляет устройство, адрес которого выставлен на шине адреса, а считывает процессор.
Таким образом, каждое устройство или ячейка оперативной памяти имеет свой адрес. Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам (однонаправленная шина).
Разрядность шины адреса определяет адресное пространство процессора, т.е. количество ячеек оперативной памяти, которые могут иметь уникальные адреса.
В персональных компьютерах величина адресного пространства процессора и величина фактически установленной оперативной памяти практически всегда различаются. Несмотря на то, что общий объем адресуемой памяти достигает 4 Гбайт, величина фактически установленной оперативной памяти может быть значительно меньше - 32 Мбайта.
Аппаратно на системных платах реализуются шины различных типов. В компьютерах РС/286 использовалась шина ISA (Industry Standard Architecture), имевшая 16-разрядную шину данных и 24-разрядную шину адреса. В компьютерах РС/386 и РС/486 используется шина EISA (Extended Industry Standard Architecture), имеющая 32-разрядные шины данных и адреса. В компьютерах PC/ Pentium используется шина PCI (Peripheral Component Interconnect), имеющая 64-разрядную шину данных и 32-разрядную шину адреса.
Шина управления
По шине управления передаются сигналы такие, например, как сигналы чтения, записи, готовности, определяющие характер обмена информацией по магистрали. Сигналы управления определяют, какую операцию считывание или запись информации из памяти нужно производить, синхронизируют обмен информацией между устройствами. Кроме того, каждое внешнее устройство, которому нужно обратиться к процессору, имеет на этой шине собственную линию. Когда периферийное устройство «хочет обратиться» к процессору, оно устанавливает на этой линии специальный сигнал (сигнал прерывания), заметив который, процессор прерывает выполняемые в этот момент действия и обращается (командой чтения или записи) к устройству.
Рассмотрим в качестве примера, как процессор читает содержимое ячейки памяти (см. таблицу). Убедившись, что шина в данный момент свободна, процессор помещает на шину адреса требуемый адрес и устанавливает необходимую служебную информацию (операция - чтение, устройство - ОЗУ и т.п.) на шину управления. Теперь ему остается только ожидать ответа от ОЗУ. Последний, “увидев” на шине обращенный к нему запрос на чтение информации, извлекает содержимое необходимой ячейки и помещает его на шину данных. Разумеется, реальный процесс значительно подробнее.
Особо отметим, что обмен по шине при определенных условиях и при наличии определенного вспомогательного оборудования может происходить и без непосредственного участия процессора, например, между устройством ввода и внутренней памятью.
Подчеркнем также, что описанная нами функциональная схема на практике может быть значительно сложнее. Современный компьютер может содержать несколько согласованно работающих процессоров, прямые информационные каналы между отдельными устройствами, несколько взаимодействующих магистралей и т.д. Тем не менее, если понимать наиболее общую схему, то разобраться в конкретной компьютерной системе будет уже легче.
Магистральная структура позволяет легко подсоединять к компьютеру именно те внешние устройства, которые нужны для данного пользователя. Благодаря ей удается скомпоновать из стандартных блоков любую индивидуальную конфигурацию компьютера.
Таким образом, все устройства (модули) компьютера подключаются к магистрали. Однако, непосредственно к магистрали можно подключить лишь процессор и оперативную память, остальные устройства подключаются с помощью специальных согласующих устройств - контроллеров (контроллер клавиатуры, контроллер дисководов, видеоадаптер и т.д.)
2.АРИФМЕТИЧЕСКИЕ И ЛОГИЧЕСКИЕ ОСНОВЫ ЭВМ
2.1 Преобразование чисел Х1 и Х2 из 16-ричной системы счисления в двоичную и выполнение над ними вычислительных операций в двоичной системе счисления
Выполнить операцию X1? X2, при X1=01, X2=CF.
Преобразуем числа Х1 и Х2 из шестнадцатеричной системы счисления в двоичную с помощью таблицы 2.
Таблица 2. Связь двоичной и шестнадцатеричной систем счисления
Двоичная |
0000 |
0001 |
0010 |
0011 |
0100 |
0101 |
0110 |
0111 |
|
Шестнадцатеричная |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
Двоичная |
1000 |
1001 |
1010 |
1011 |
1100 |
1101 |
1110 |
1111 |
|
Шестнадцатеричная |
8 |
9 |
A |
B |
C |
D |
E |
F |
Таким образом: Х1=0116=000000012; Х2=СF16=110011112.
Для выполнения операции необходимо выполнить дизъюнкцию чисел Х1 и Х2.
Получаем: 00000001 ? 11001111=11001111.
Реализовать данную схему следует с использованием логических элементов «ИЛИ». Схема реализации заданных операций представлена на рисунке 2.1.
Рис. 2.1. Схема операционного блока.
На входы X10-X17 подаём 00000001 (X1) а на входы X20-X27 подаём 11001111 (X2).. Результат на выходах при данных входных параметрах: S0=1, S1=1, S2=0, S3=0, S4=1, S5=1, S6=1, S7=1.
Временная диаграмма работы схемы представлена на рисунке 2.2.
Рис. 2.2. Временная диаграмма работы блока
2.2 Структурная схема операционного блока и ее компоненты для выполнения выражения
Необходимо составить схему операционного блока для логической формулы:
, (1)
где xi - двоичные числа, над которыми выполняются логические или арифметические операции, Y - результат выполнения этих операций.
Для операций сложения и вычитания чисел используем восьмиразрядный сумматор, построенный на основе полных сумматоров (рис 2.3).
Рис 2.3. Условное обозначение полного сумматора.
Двоичный полный сумматор работает в соответствии с таблицей 3.
Таблица 3. Таблица истинности полного сумматора
A |
B |
Pn-1 |
P |
S |
|
0 |
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
0 |
1 |
|
0 |
1 |
0 |
0 |
1 |
|
0 |
1 |
1 |
1 |
0 |
|
1 |
0 |
0 |
0 |
1 |
|
1 |
0 |
1 |
1 |
0 |
|
1 |
1 |
0 |
1 |
0 |
|
1 |
1 |
1 |
1 |
1 |
Операцию вычитания можно выполнить, если инвертировать число, из которого вычитаем, произвести сложение полученного инвертированного числа со вторым числом, и результат сложение инвертировать. Для этого перед входами А[i] и на выходах S восьмиразрядного сумматора следует поставить элемент «НЕ». Следовательно, необходим логический элемент «НЕ» (рис 2.4), который работает в соответствии с таблицей 4.
Рис 2.4. Условное обозначение логического элемента «НЕ».
Таблица 4. Таблица истинности логического элемента «НЕ»
X |
Y |
|
0 |
1 |
|
1 |
0 |
Для операции поразрядной дизъюнкции используем логический элемент «И» (рис 2.5) работающий в соответствии с таблицей 5.
Рис 2.5. Условное обозначение логического элемента «ИЛИ».
Таблица 5. Таблица истинности логического элемента «ИЛИ»
X1 |
X2 |
Y |
|
0 |
0 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
1 |
Построим схему на основе вышеописанных логических элементов, реализующую формулу (1).
Так как в заданном выражении стоят скобки, то выполняться в первую очередь будет то, что в скобках.
Порядок выполнения действий:
1. Инвертирование X1;
2. Сложение X1 и X2.Результат Y0;
3. Инвертирование результата суммы X1 и X2;
4. Сложение X3 и X4.Результат Y1;
5. Выполнение операции «ИЛИ» над Y0 и Y1;
На основе логических элементов, описанных выше, и с соблюдением порядка действий строим схему (рис. 2.6).
Рис. 2.6. Схема реализации формулы.
2.3 Схема и работа ОБ и использование результата вычислений для декодирования результата Y
В данном подразделе необходимо составить схему для выполнения хранения констант Х1, Х2, Х3, Х4 которая осуществляется с помощью регистра приема, хранения, выдачи кодов. Регистр приема, хранения, выдачи кодов строится на основе двух компонентов: синхронного RS-триггера и логического элемента «И», а также двух синхроимпульсов ПК (прямого) и ОК (обратного).
Триггер называется синхронным (синхронизируемым), если для изменения состояния триггера используется синхронизирующий сигнал. Для повышения помехоустойчивости и для устранения «состязаний» используют синхронный RS-триггер(рис.2.7).
Размещено на http://www.allbest.ru/
41
Размещено на http://www.allbest.ru/
Рис. 2.7. Условное обозначение синхронного RS-триггера
Состояние синхронного RS-триггера может измениться только при установлении логической единицы на входе синхронизации С. В этом случае элементы И «открываются» и управляющие сигналы поступают на входы асинхронного триггера. Отметим, что такая синхронизация называется статической.
Переключение синхронного RS-триггера происходит по заднему фронту импульса, когда на вход синхронизации С подается логическая единица.
Так как константы, которые требуется хранить, представляют собой восьмиразрядное двоичное число, то для создания регистра необходимо 8 RS-триггеров и 16 элементов «И». Схема такого регистра для хранения только одной константы предоставлена на рисунке 2.8.
Рис. 2.8. Регистр приема, хранения, и выдачи кодов
2.4 Составление временных диаграмм работы ОБ
В этом подразделе нам необходимо нарисовать алгоритм работы и временные диаграммы к полной схеме задания 2.2.
Исходные данные: X1=01, X2=СF, X3=33, X4=31;
X1 = 0116 = 000000012
X2 = CF16 = 110011112
X3 = 3316 = 001100112
X4 = 3116 = 001100012
Рис. 2.9. Алгоритм работы ОБ
Временные диаграммы данного операционного блока, выполняющего операции , при данных значениях X1, X2, X3, X4.
Рис. 2.10. Временные диаграммы
3.ТЕХНОЛОГИЯ ПРОГРАММИРОВАНИЯ
3.1 Жизненый цикл программного обеспечения
Одним из ключевых понятий управления проектами, в том числе в приложении к индустрии программного обеспечения, является жизненный цикл проекта (Project Lifecycle Management - PLM).
В общем случае, жизненный цикл определяется моделью и описывается в форме методологии (метода).Модель или парадигма жизненного цикла определяет концептуальный взгляд на организацию жизненного цикла и, часто, основные фазы жизненного цикла и принципы перехода между ними. Методология (метод) задает комплекс работ, их детальное содержание и ролевую ответственность специалистов на всех этапах выбранной модели жизненного цикла, обычно определяет и саму модель, а также рекомендует практики (best practices), позволяющие максимально эффективно воспользоваться соответствующей методологией и ее моделью.
В индустрии программного обеспечения можно (так как это уже конкретная область приложения концепций и практик проектного управления) и необходимо (для обеспечения возможности управления) более четкое разграничение фаз проекта (что не подразумевает их линейного и последовательного выполнения).
Ниже приведены определения <модели> жизненного цикла программной системы, даваемые, например, в различных вариантах стандартов ГОСТ:
Модель жизненного цикла - структура, состоящая из процессов, работ и задач, включающих в себя разработку, эксплуатацию и сопровождение программного продукта, охватывающая жизнь системы от установления требований к ней до прекращения ее использования [ГОСТ 12207, 1999].
Жизненный цикл автоматизированной системы (АС) - совокупность взаимосвязанных процессов создания и последовательного изменения состояния АС, от формирования исходных требований к ней до окончания эксплуатации и утилизации комплекса средств автоматизации АС [ГОСТ 34, 1990].
Один из них - ГОСТ Р ИСО/МЭК 12207 является переводом международного стандарта ISO/IEC 12207, на основе которого, в свою очередь, создан соответствующий стандарт IEEE 12207. Второй - в рамках семейства ГОСТ 34 - разрабатывался в СССР самостоятельно, как стандарт на содержание и оформление документов на программные системы в рамках Единой системы программной документации (ЕСПД) и Единой системы конструкторской документации (ЕСКД). В последние годы, акцент делается на стандарты ГОСТ, соответствующие международным стандартам. В то же время, 34-я серия является важным дополнительным источником информации для разработки и стандартизации внутрикорпоративных документов и формирования целостного понимания и видения концепций жизненного цикла в области программного обеспечения.
В определённом контексте, “модель” и “методология” могут использоваться взаимозаменяемым образом, например, когда мы обсуждаем разграничение фаз проекта. Говоря “жизненный цикл” мы, в первую очередь, подразумеваем “модель жизненного цикла”. Несмотря на данное в стандартах 12207 определение модели жизненного цикла, все же, модель чаще подразумевает именно общий принцип организации жизненного цикла, чем детализацию соответствующих работ. Соответственно, определение и выбор модели, в первую очередь, касается вопросов определенности и стабильности требований, жесткости и детализированности плана работ, а также частоты сборки работающих версий создаваемой программной системы.
Скотт Амблер (Scott W. Ambler) [Ambler, 2005], автор концепций и практик гибкого моделирования (Agile Modeling) и Enterprise Unified Process (расширение Rational Unified Process), предлагает следующие уровни жизненного цикла, определяемые соответствующим содержанием работ (см. рис.1):
Жизненный цикл разработки программного обеспечения - проектная деятельность по разработке и развертыванию программных систем
Жизненный цикл программной системы - включает разработку, развертывание, поддержку и сопровождение
Жизненный цикл информационных технологий (ИТ) - включает всю деятельность ИТ-департамента
Жизненный цикл организации/бизнеса - охватывает всю деятельность организации в целом
В данном контексте, SWEBOK описывает области знаний жизненного цикла системы и жизненного цикла разработки программного обеспечения. В свою очередь, как упоминается в SWEBOK, одним из фундаментальных взглядов на жизненный цикл является стандарт процессов жизненного цикла ISO/IEC, IEEE, ГОСТ Р ИСО/МЭК 12207.
Стандарт 12207: Процессы жизненного цикла программного обеспечения
В 1997 году Международная Организация по Стандартизации - ИСО (International Organization for Standardization - ISO) и Международная Электротехническая Комиссия - МЭК (International Electrotechnical Commission - IEC) создали Совместный Технический Комитет по Информационным Технологиям - Joint Technical Committee (JTC1) on Information Technology. Содержание работ JTC1 определено как “стандартизация в области систем и оборудования информационных технологий (включая микропроцессорные системы)”. В 1989 году этот комитет инициировал разработку стандарта ISO/IEC 12207, создав для этого подкомитет SC7 (SuСommittee 7) по программной инженерии. Соответствующий стандарт впервые был опубликован 1-го августа 1995 года под заголовком “Software Life Cycle Processes” - “Процессы жизненного цикла программного обеспечения”. Национальный стандарт [ГОСТ 12207, 1999] получил название “Процессы жизненного цикла программных средств”.
Цель разработки данного стандарта была определена как создание общего фреймворка по организации жизненного цикла программного обеспечения для формирования общего понимания жизненного цикла ПО всеми заинтересованными сторонами и участниками процесса разработки приобретения, поставки, эксплуатации, поддержки и сопровождения программных систем, а также возможности управления, контроля и совершенствования процессов жизненного цикла.
Данный стандарт определяет жизненный цикл как структуру декомпозиции работ. Детализация, техники и метрики проведения работ - вопрос программной инженерии. Организация последовательности работ - модель жизненного цикла. Совокупность моделей, процессов, техник и организации проектной группы задаются методологией. В частности, выбор и применение метрик оценки качества программной системы и процессов находятся за рамками стандарта 12207, а концепция совершенствования процессов рассматривается в стандарте ISO/IEC 15504 “Information Technology - Software Process Assessment” (“Оценка процессов <в области> программного обеспечения”).
Необходимо отметить заложенные в стандарте ключевые концепции рассмотрения жизненного цикла программных систем.
Организация стандарта и архитектура жизненного цикла
Стандарт определяет область его применения, дает ряд важных определений (таких, как заказчик, разработчик, договор, оценка, выпуск - релиз, программный продукт, аттестация и т.п.), процессы жизненного цикла и включает ряд примечаний по процессу и вопросам адаптации стандарта.
Стандарт описывает 17 процессов жизненного цикла, распределенных по трем категориям - группам процессов (названия представлены с указанием номеров разделов стандарта, следуя определениям на русском и английском языке, определяемыми [ГОСТ 12207, 1999] и оригинальной версией ISO/IEC 12207, соответственно):
· Вспомогательные процессы жизненного цикла
· Документирование
· Управление конфигурацией
· Обеспечение качества
· Верификация
· Аттестация
· Совместный анализ
· Аудит
· Решение проблем
Организационные процессы жизненного цикла
· Управление
· Создание инфраструктуры
· Усовершенствование
· Обучение
Стандарт определяет высокоуровневую архитектуру жизненного цикла. Жизненный цикл начинается с идеи или потребности, которую необходимо удовлетворить с использованием программных средств (может быть и не только их). Архитектура строится как набор процессов и взаимных связей между ними. Например, основные процессы жизненного цикла обращаются к вспомогательным процессам, в то время, как организационные процессы действуют на всем протяжении жизненного цикла и связаны с основными процессами.
Дерево процессов жизненного цикла представляет собой структуру декомпозиции жизненного цикла на соответствующие процессы (группы процессов). Декомпозиция процессов строится на основе двух важнейших принципов, определяющих правила разбиения (partitioning) жизненного цикла на составляющие процессы. Эти принципы: Модульность
· задачи в процессе являются функционально связанными;
· связь между процессами - минимальна;
· если функция используется более, чем одним процессом, она сама является процессом;
· если Процесс Y используется Процессом X и только им, значит Процесс Y принадлежит (является его частью или его задачей) Процессу X, за исключением случаев потенциального использования Процесса Y в других процессах в будущем.
Ответственность
· каждый процесс находится под ответственностью конкретного лица (управляется и/или контролируется им), определенного для заданного жизненного цикла, например, в виде роли в проектной команде;
· функция, чьи части находятся в компетенции различных лиц, не может рассматриваться как самостоятельный процесс.
Рассмотрим вкратце, какие работы составляют процессы жизненного цикла, помня, что полное определение работ, как и определение составляющих их задач, дано непосредственно в стандарте. Ниже приведен краткий обзор основных процессов жизненного цикла, явно демонстрирующий связь вопросов, касающихся непосредственно самой программной системы, с системными аспектами ее функционирования и обеспечения ее эксплуатации.
Основные процессы жизненного цикла
Приобретение
Процесс приобретения (как его называют в ГОСТ - “заказа”) определяет работы и задачи заказчика, приобретающего программное обеспечение или услуги, связанные с ПО, на основе контрактных отношений. Процесс приобретения состоит из следующих работ (названия ГОСТ 12207 даны в скобках, если предлагают другой перевод названий работ оригинального стандарта):
· Inititation - инициирование (подготовка)
· Request-for-proposal preparation - подготовка запроса на предложение (подготовка заявки на подряд)
· Contract preparation and update -подготовка и корректировка договора
· Supplier monitoring - мониторинг поставщика (надзор за поставщиком)
· Acceptance and completion - приемка и завершение (приемка и закрытие договора)
Все работы проводятся в рамках проектного подхода.
Поставка
Процесс поставки, в свою очередь, определяет работы и задачи поставщика. Работы также проводятся с использованием проектного подхода. Процесс включает следующие работы:
· Inititation - инициирование (подготовка)
· Preparation of response - подготовка предложения (подготовка ответа)
· Contract - разработка контракта (подготовка договора)
· Planning - планирование
· Execution and control - выполнение и контроль
· Review and evaluation -проверка и оценка
· Delivery and completion - поставка и завершение (поставка и закрытие договора)
Разработка
Процесс разработки определяет работы и задачи разработчика. Процесс состоит из следующих работ:
· Process implementation - определение процесса (подготовка процесса)
· System requirements analysis - анализ системных требований (анализ требований к системе)
· System design - проектирование системы (проектирование системной архитектуры)
· Software requirements analysis - анализ программных требований (анализ требований к программным средствам)
· Software architectural design - проектирование программной архитектуры
· Software detailed design - детальное проектирование программной системы (техническое проектирование программных средств)
· Software coding and testing - кодирование и тестирование (программирование и тестирование программных средств)
· Software integration - интеграция программной системы (сборка программных средств)
· Software qualification testing - квалификационные испытания программных средств
· System integration - интеграция системы в целом (сборка системы)
· System qualification testing - квалификационные испытания системы
· Software installation - установка (ввод в действие)
· Software acceptance support - обеспечение приемки программных средств
Стандарт отмечает, что работы проводятся с использованием проектного подхода и могут пересекаться по времени, т.е. проводиться одновременно или с наложением, а также могут предполагать рекурсию и разбиение на итерации.
Эксплуатация
Процесс разработки определяет работы и задачи оператора службы поддержки. Процесс включает следующие работы:
· Process implementation - определение процесса (подготовка процесса)
· Operational testing - операционное тестирование (эксплуатационные испытания)
· System operation - эксплуатация системы
· User support - поддержка пользователя
Сопровождение
Процесс разработки определяет работы и задачи, проводимые специалистами службы сопровождения. Процесс включает следующие работы:
· Process implementation - определение процесса (подготовка процесса)
· Problem and modification analysis - анализ проблем и изменений
· Modification implementation - внесение изменений
· Maintenance review/acceptance - проверка и приемка при сопровождении
· Migration - миграция (перенос)
· Software retirement - вывод программной системы из эксплуатации (снятие с эксплуатации)
Важно понимать, что стандарт 12207 не определяет последовательность и разбиение выполнения процессов во времени, адресуя этот вопрос также работам по адаптации стандарта к конкретным условиям и окружению и применению выбранных моделей, практик, техник и т.п.
Адаптация стандарта подразумевает применение требований стандарта к конкретному проекту или проектам, например, в рамках создания внутрикорпоративных регламентов ведения проектов программного обеспечения.
Адаптация включает следующие виды работ:
· Определение исходной информации для адаптации стандарта
· Определение условий выполнения проекта
· Отбор процессов, работ и задач, используемых в проекте или соответствующих регламентах
· Документирование требований, решений и процессов, связанных с адаптацией и полученных в ее результате
Адаптация также подразумевает выбор модели (или комбинации моделей) жизненного цикла, а также применение соответствующих методологий, детализирующих процедуры выполнения процессов, работ и задач в рамках заданных границ (содержания) жизненного цикла программного обеспечения и организационной структуры и ролевой ответственности в конкретной организации (ее подразделении) и/или в проектной группе.
Необходимо отметить, что существует еще один стандарт жизненного цикла - ISO/IEC 15288 (выпущен в 2002 году), фокусирующийся на вопросах организации процессов жизненного цикла системного уровня (Life Cycle Processes - System) и включающий специальный процесс - “Tailoring”, т.е. настройку, адаптацию жизненного цикла к конкретным требованиям и ограничениям, существующим или принятым в конкретной организации/подразделении или для заданного проекта.
Заключение
В рамках данного курсового проекта были раскрыты следующие теоретические вопросы: «Системная магистраль», «Общая структура микропроцессора» и «Жизненный цикл программного обеспечения». В ходе работы мы познакомились с арифметическими и логическими принципами работы компьютера, а также изучили базовые логические элементы.
Была спроектирована схема операционного блока по заданному уравнению и нарисованы временные диаграммы как с использованием средств Microsoft Office, так и в программной среде OrCAD. Также был описан алгоритм хранения значений констант. Временные диаграммы построены на основании поданных на входы заданных в рамках курсовой работы значений Х1, Х2, Х3, Х4.
СПИСОК ЛИТЕРАТУРЫ
1. Брай М. Информатика: основополагающее введение: 4 ч.: [пер. с нем.]/ М. Брай. - М: Диалог - МИФИ, 1998.-224 с.
2. Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: учебник для вузов/ В.Л. Бройдо.- 2-е изд. - СПб.: Питер, 2005. - 703 с.
3. Иванова Г.С. Технология программирования: учебник для студ. вузов/ Г.С. Иванова - М.: Изд-во МГТУ им. Н.Э.Баумана., 2002. - 560 с.
4. Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учеб. пособ. для студ. вузов/ А.П. Пятибратов. - М: Финансы и статистика, 2002. -545 с.
5. Цилькер Б.Я. Организация ЭВМ и систем: учебник для вузов/ Б.Я. Цилькер, С.А Орлов. - СПб.: Питер, 2006.
ПРИЛОЖЕНИЯ
Приложение 1
Структурная схема ОБ
Приложение 2
программный схема алгоритм микропроцессор
Временные диаграммы ОБ
Размещено на Allbest.ru
Подобные документы
Основные характеристики системы автоматизированнного проектирования OrCAD. Этапы создания символьного элемента, графической схемы. Этапы моделирования схемы. Пример создания базовой ячейки матричного умножителя. Создание иерархической структуры.
курсовая работа [149,5 K], добавлен 14.02.2009Преимущества и недостатки моделирования электрических цепей на компьютерах. Создание упрощенной кинематической схемы магнитофона в программной среде AutoCAD путем построения примитивов. Проектирование электрической схемы, ее оптимизация и спецификация.
курсовая работа [1,2 M], добавлен 06.07.2011Разработка алгоритма работы. Выбор и обоснование структурной схемы. Разработка функциональной схемы блока ввода и блока вывода. Проектирование принципиальной схемы блока ввода и блока вывода, расчет элементов. Разработка программного обеспечения.
курсовая работа [1,7 M], добавлен 25.12.2011Разработка модуля автоматизации продажи автозапчастей. Проектирование информационной системы на основе базы данных в среде Microsoft SQL Server 2008. Структуры диалога и программного обеспечения. Описание запросов и отчетов к БД. Создание средств защиты.
курсовая работа [1,1 M], добавлен 10.12.2014Разработка функциональной модели предметной области. Построение UML диаграмм в среде Pacestar UML Diagrammer. Выбор программных средств разработки. Разработка логической и физической модели данных. Разработка клиентского приложения ИС в среде Access.
курсовая работа [2,2 M], добавлен 09.03.2011Требования, предъявляемые к разрабатываемой системе. Разработка программного обеспечения автоматизированной системы управления технологическим процессом производства полимерной обуви в программной среде Trace Mode. Выбор комплекса технических средств.
курсовая работа [3,6 M], добавлен 21.01.2015Классификация средств создания электронных наглядных пособий. Методы и этапы разработки программы для виртуальной лабораторной работы на тему "Колебания материальной точки на жестком стержне в вязкой среде". Техническое описание программного продукта.
курсовая работа [1,0 M], добавлен 27.11.2010Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.
курсовая работа [2,8 M], добавлен 15.05.2014Реализация схемы минимума матрицы в среде САПР- Active HDL (Aldec) и разработка VERILOG-кода схемы. Описание модуля и числовые примеры работы схемы. Разработка и описание фрагментов кода. Разработка временных диаграмм и рассмотрение их примеров.
курсовая работа [291,4 K], добавлен 11.11.2021Использование пакета прикладных программ OrCad 9.2 для моделирования работы электронного прибора: создание электрической схемы, оптимизация, трассирование печатных плат, создание набора полной технической документации по устройству; ускорение разработки.
практическая работа [885,4 K], добавлен 17.09.2012