Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Структурная организация эвм. Организация связи между блоками эвм. Типы интерфейсов

Поиск

Синтез микропрограммного автомата Мура по граф-схеме алгоритма.

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

Для синтеза автомата Мура необходимо выполнить разметку граф-схемы алгоритма. Она выполняется по следующим правилам:

1). Символом «а0» обозначается начальная и конечная вершина.

2). Символами «а1», «а2», …«аN» обозначаются остальные вершины.

3). Ни одна из вершин не должна обладать одинаковым состоянием (символом) (кроме «а0»)

4). Ни одна из вершин не должна иметь 2 и больше состояний.

Разберем пример.

Задание: Синтезировать автомат Мура по граф-схеме алгоритма суммирования:

В алгоритме прямоугольниками и буквами “Y” отмечены процессы (например: суммирование, перемещение, вычитание и т.д.) Ромбами и буквами “X” обозначены условные переходы. Как правило, переход вниз или вправо обозначает переход при 1, влево – при 0.

Итак, первое, что необходимо сделать – разметить состояния автомата (а0, а1…). Размечаются только процессы. Условия не размечаются. Разметка выполняется по правилам выше.

После того как граф-схема алгоритма (ГСА) размечена, необходимо вычислить количество разрядов, необходимое для кодирования всех состояний автомата. В нашем случае у нас 7 состояний. По формуле n=log2(Na), где Na– количество состояний. Причем, nокругляется в большую сторону. В нашем случае n=3. Следовательно для кодирования будут использованы 3 сигнала: Р1, Р2, Р3.

Для синтеза автомата Мура необходимо выполнить разметку граф-схемы алгоритма. Она выполняется по следующим правилам:

1). Символом «а0» обозначается начальная и конечная вершина.

2). Символами «а1», «а2», …«аN» обозначаются остальные вершины.

3). Ни одна из вершин не должна обладать одинаковым состоянием (символом) (кроме «а0»)

4). Ни одна из вершин не должна иметь 2 и больше состояний.

Разберем пример.

Задание: Синтезировать автомат Мура по граф-схеме алгоритма суммирования:

В алгоритме прямоугольниками и буквами “Y” отмечены процессы (например: суммирование, перемещение, вычитание и т.д.) Ромбами и буквами “X” обозначены условные переходы. Как правило, переход вниз или вправо обозначает переход при 1, влево – при 0.

Итак, первое, что необходимо сделать – разметить состояния автомата (а0, а1…). Размечаются только процессы. Условия не размечаются. Разметка выполняется по правилам выше.


 

 

После того как граф-схема алгоритма (ГСА) размечена, необходимо вычислить количество разрядов, необходимое для кодирования всех состояний автомата. В нашем случае у нас 7 состояний. По формуле n=log2(Na), где Na– количество состояний. В нашем случае n=3. Следовательно для кодирования будут использованы 3 сигнала: Р1, Р2, Р3.

Составим карту Карно.

p1\p2p3        
  a0 a2 a6 a4
  a1 a3 a7 a5

а7 (111) склеивается с а6 (110). У них одна последняя цифра отличается. Поэтому она заменяется на «х» и тогда получается а6 (11х). Далее а7(111) склеивается с а3(011), но уже по первой цифре и получается а3(х11). Затем а7(111) с а5 (101) и получается а5 (1х1). Нетрудно заметить, что склеиваются только соседние состояния с а7.

Теперь надо составить уравнения работы этого автомата (включают уравнения состояний и уравнения работы триггеров). Рассмотрим работу этого автомата на D-триггерах

y1 = y2 = a1

y3 = a2+a6

y4 = a3

y5 = a4

y6 = a5

D1 = a1*х1’*x2+ a2*x2 + a3*x3’ + a3*x1*x3 + a4*x3’ + a4*x3*x1

D2 = a1*x1 + a1*x1’*x2’ + a2*x2’ + a3*x1*x3 + a4*x3*x1

D3 = a0*z + a1*x1’*x2’ + a2*x2’ + a3*x3’ + a4*x3’

Эти уравнения определяют работу автомата. Найдём в них похожие элементы. После этого можно приступать к построению.

 

 


 

Назначение ОЗУ

· Хранение данных и команд для дальнейшей их передачи процессору для обработки. Информация может поступать из оперативной памяти не сразу на обработку процессору, а в более быструю, чем ОЗУ, кэш-память процессора.

· Хранение результатов вычислений, произведенных процессором.

· Считывание (или запись) содержимого ячеек.

Особенности работы ОЗУ

Оперативная память может сохранять данные лишь при включенном компьютере. Поэтому при его выключении обрабатываемые данные следует сохранять на жестком диске или другом носителе информации. При запуске программ информация поступает в ОЗУ, например, с жесткого диска компьютера. Пока идет работа с программой она присутствуют в оперативной памяти (обычно). Как только работа с ней закончена, данные перезаписываются на жесткий диск. Другими словами, потоки информации в оперативной памяти очень динамичны.

ОЗУ представляет собой запоминающее устройство с произвольным доступом. Это означает, что прочитать/записать данные можно из любой ячейки ОЗУ в любой момент времени. Для сравнения, например, магнитная лента является запоминающим устройством с последовательным доступом.

Типы оперативной памяти

Принято выделять два вида оперативной памяти: статическую (SRAM) и динамическую (DRAM). SRAM используется в качестве кэш-памяти процессора, а DRAM - непосредственно в роли оперативной памяти компьютера.

SRAM состоит из триггеров. Триггеры могут находиться лишь в двух состояниях: «включен» или «выключен» (хранение бита). Триггер не хранит заряд, поэтому переключение между состояниями происходит очень быстро. Однако триггеры требуют более сложную технологию производства. Это неминуемо отражается на цене устройства. Во-вторых, триггер, состоящий из группы транзисторов и связей между ними, занимает много места (на микроуровне), в результате SRAM получается достаточно большим устройством.

В DRAM нет триггеров, а бит сохраняется за счет использования одного транзистора и одного конденсатора. Получается дешевле и компактней. Однако конденсаторы хранят заряд, а процесс зарядки-разрядки более длительный, чем переключение триггера. Как следствие, DRAM работает медленнее. Второй минус – это самопроизвольная разрядка конденсаторов. Для поддержания заряда его регенерируют через определенные промежутки времени, на что тратится дополнительное время.

Основными характеристиками ОЗУ являются информационная емкость и быстродействие. Емкость оперативной памяти на сегодняшний день выражается в гигабайтах.


Назначение ОЗУ

· Хранение данных и команд для дальнейшей их передачи процессору для обработки. Информация может поступать из оперативной памяти не сразу на обработку процессору, а в более быструю, чем ОЗУ, кэш-память процессора.

· Хранение результатов вычислений, произведенных процессором.

· Считывание (или запись) содержимого ячеек.

Особенности работы ОЗУ

Оперативная память может сохранять данные лишь при включенном компьютере. Поэтому при его выключении обрабатываемые данные следует сохранять на жестком диске или другом носителе информации. При запуске программ информация поступает в ОЗУ, например, с жесткого диска компьютера. Пока идет работа с программой она присутствуют в оперативной памяти (обычно). Как только работа с ней закончена, данные перезаписываются на жесткий диск. Другими словами, потоки информации в оперативной памяти очень динамичны.

ОЗУ представляет собой запоминающее устройство с произвольным доступом. Это означает, что прочитать/записать данные можно из любой ячейки ОЗУ в любой момент времени. Для сравнения, например, магнитная лента является запоминающим устройством с последовательным доступом.

Типы оперативной памяти

Принято выделять два вида оперативной памяти: статическую (SRAM) и динамическую (DRAM). SRAM используется в качестве кэш-памяти процессора, а DRAM - непосредственно в роли оперативной памяти компьютера.

SRAM состоит из триггеров. Триггеры могут находиться лишь в двух состояниях: «включен» или «выключен» (хранение бита). Триггер не хранит заряд, поэтому переключение между состояниями происходит очень быстро. Однако триггеры требуют более сложную технологию производства. Это неминуемо отражается на цене устройства. Во-вторых, триггер, состоящий из группы транзисторов и связей между ними, занимает много места (на микроуровне), в результате SRAM получается достаточно большим устройством.

В DRAM нет триггеров, а бит сохраняется за счет использования одного транзистора и одного конденсатора. Получается дешевле и компактней. Однако конденсаторы хранят заряд, а процесс зарядки-разрядки более длительный, чем переключение триггера. Как следствие, DRAM работает медленнее. Второй минус – это самопроизвольная разрядка конденсаторов. Для поддержания заряда его регенерируют через определенные промежутки времени, на что тратится дополнительное время.

Основными характеристиками ОЗУ являются информационная емкость и быстродействие. Емкость оперативной памяти на сегодняшний день выражается в гигабайтах.

 

Структура запоминающего устройства с двухкоординатной выборкой:

Код адреса разделяется на 2 части, каждая из которых подается на дешифраторы X и Y. При обращении информация замыкается или считывается из одного из 2m запоминающих элементов. Записывается и считывается один разряд 2m/2 2m/2=2m

Достоинство используются два простых дешифратора вместо одного сложного 210 =1024

25 25 = 32 32 =1024

числа выходов дешифраторов

число выхода дешифратора

Недостатки 1)сложные элементы памяти, допускающие двухкоординатную выборку.

· 2) необходимо использовать несколько корпусов ОЗУ для запоминания многоразрядного слова.


 

Назначение ОЗУ

· Хранение данных и команд для дальнейшей их передачи процессору для обработки. Информация может поступать из оперативной памяти не сразу на обработку процессору, а в более быструю, чем ОЗУ, кэш-память процессора.

· Хранение результатов вычислений, произведенных процессором.

· Считывание (или запись) содержимого ячеек.

Особенности работы ОЗУ

Оперативная память может сохранять данные лишь при включенном компьютере. Поэтому при его выключении обрабатываемые данные следует сохранять на жестком диске или другом носителе информации. При запуске программ информация поступает в ОЗУ, например, с жесткого диска компьютера. Пока идет работа с программой она присутствуют в оперативной памяти (обычно). Как только работа с ней закончена, данные перезаписываются на жесткий диск. Другими словами, потоки информации в оперативной памяти очень динамичны.

ОЗУ представляет собой запоминающее устройство с произвольным доступом. Это означает, что прочитать/записать данные можно из любой ячейки ОЗУ в любой момент времени. Для сравнения, например, магнитная лента является запоминающим устройством с последовательным доступом.

Типы оперативной памяти

Принято выделять два вида оперативной памяти: статическую (SRAM) и динамическую (DRAM). SRAM используется в качестве кэш-памяти процессора, а DRAM - непосредственно в роли оперативной памяти компьютера.

SRAM состоит из триггеров. Триггеры могут находиться лишь в двух состояниях: «включен» или «выключен» (хранение бита). Триггер не хранит заряд, поэтому переключение между состояниями происходит очень быстро. Однако триггеры требуют более сложную технологию производства. Это неминуемо отражается на цене устройства. Во-вторых, триггер, состоящий из группы транзисторов и связей между ними, занимает много места (на микроуровне), в результате SRAM получается достаточно большим устройством.

В DRAM нет триггеров, а бит сохраняется за счет использования одного транзистора и одного конденсатора. Получается дешевле и компактней. Однако конденсаторы хранят заряд, а процесс зарядки-разрядки более длительный, чем переключение триггера. Как следствие, DRAM работает медленнее. Второй минус – это самопроизвольная разрядка конденсаторов. Для поддержания заряда его регенерируют через определенные промежутки времени, на что тратится дополнительное время.

Основными характеристиками ОЗУ являются информационная емкость и быстродействие. Емкость оперативной памяти на сегодняшний день выражается в гигабайтах.

ЗУ со стековой организацией широко используется при построении системы прерываний ЭВМ, а также при программировании алгоритмов, связанных с обработкой данных типа вектор, массив (переменных с индексами). Стековые ЗУ обеспечивают запись, чтение информации в соответствии с правилом: последним пришёл, первым вышел (LIFO). В них при обращении доступна только одна ячейка – т.н. вершина стека. При записи в стек слово сначала записывается в вершину стека, а затем проталкивается внутрь ЗУ и т.д. при записи очередных слов. При выполнении операции чтения слово сначала выталкивается в вершину стека, а затем подаётся на выходную шину ЗУ.

Технически такая память может быть реализована на основе сдвиговых регистров в количестве n – штук: количество сдвиговых регистров определяется разрядностью ячеек – n. Разрядность регистров сдвига определяется ёмкостью стека. Такая организация стека называется магазинной (стековой) памятью (рисунок 1). Одна из основных проблем магазинных ЗУ – переполнение стека, которое ведёт к потере информации, поэтому не допустимо. Следить за возможным переполнением должен сам программист.

чт (pop)
зп (push)
Е-1
 
 
сдвиг
зп
чт
вых
вх
1 вершина стека n
1 n
1 n
1 n
Е=2m
БУ
Рисунок 1 – Структура магазинных ЗУ

Недостаток ЗУ магазинного типа – большие затраты оборудования и, следовательно, высокая удельная стоимость: сдвиговые регистры сложнее обычных.

Стековые ЗУ по этой причине (с целью экономии оборудования) обычно организуются другим способом: вместо сдвига информации в них используется подвижный указатель вершины стека (УС). Структура стекового ЗУ представлена на рисунке 2. Операция записи осуществляется по сигналу ЗП: 1) ЗП: [УС]:=ВХ; 2) УС:=УС+1, т.е. сначала производится запись слова в вершину стека (в ячейку, на которую указывает УС), а затем УС инкрементируется.

E-1
вх n
зп (push)
чт (pop)
БУ
E-1
 
±1
m
n вых
вх n
1 n
1 n
1 n
УС
УС
 
  n вых
вершина стека
1 n
1 n
Рисунок 2  

Операция чтения реализуется по сигналу чтения ЧТ: 1) УС:=УС-1; 2) ВЫХ:= [УС]. Технически УС реализуется на основе реверсивного счетчика. Следует отметить, что запоминающая часть стековых ЗУ обычно располагается в адресном пространстве ОП: часть ячеек ОП отводится под стек.

 


 

Моделирование данных XML

Техника моделирования данных является таким же необходимым инструментом управления XML-данными, как данными и в традиционных базах данных. Поэтому понятие модели данных по необходимости фигурирует в документации стандартов XML. Нужно, однако, заметить, что авторы стандартов XML употребляют "старомодную" трактовку понятия модели данных как структуры конкретного XML-документа, а не как инструмента моделирования таких информационных ресурсов. Одно из следствий такого подхода состоит в том, что остается в стороне вопрос о стандартизации операционных возможностей средств управления XML-данными.

Хотя понятие модели данных упоминалось в прошлые годы в спецификациях ряда стандартов платформы XML, проблемы моделирования данных не были здесь основательно проработаны. Единой функционально полной, охватывающей как структурные, так и операционные возможности, специфицированной в явном виде модели данных, на которой бы базировались все стандарты платформы, не существует до сих пор и похоже, что в близкое время она вряд ли сможет появиться. Никакой деятельности в этом направлении в консорциуме пока не ведется. Вопросы моделирования данных обсуждаются лишь автономно в рамках спецификаций некоторых стандартов. При этом авторы имеют в виду только структурные аспекты моделирования данных. Исключение составляет стандарт DOM, определяющий API для репозиториев XML- и HTML-документов. Заметим, что хотя DOM может применяться к XML-данным, он не является стандартом платформы XML (приложением XML), а относится к ее окружению. В рамках проекта языка запросов XQuery опубликовано несколько документов. Среди них документы посвящены спецификации модели данных. Судя по наименованиям этих документов, авторы полагают, вероятно, что к модели данных имеет отношение лишь первый из этих документов, с чем нельзя согласиться.

 


 

Модель данных

Используемая в XSLT модель данных аналогична используемой в XPath с определенными дополнениями, описанными в этом разделе. XSLT оперирует с исходными, конечными документами и документами стилей, используя одну и ту же модель данных. Любые два XML документа, имеющие одно и то же дерево, будут обрабатываться XSLT одинаковым образом.

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

Непосредственный потомок корневого узла

Обычные ограничения для непосредственного потомка корневого узла на конечное дерево не распространяется. Конечное дерево может иметь в качестве непосредственных потомкоы любую последовательность узлов, которые можно использовать как узел элемента. В частности, оно может иметь непосредственным потомком текстовый узел и любое количество узлов элементов. Если вывод осуществляется с помощью метода output из XML (см. главу [16 Вывод]), то может оказаться, что конечное дерево не является корректным XML документом. Однако оно корректной внешней общей разобранной сущностью будет всегда.

Если исходное дерево создано разбором корректного XML документа, корневой узел в исходном дереве автоматически удовлетворяет обычным ограничениям: непосредственным потомком не может быть текстовый узел, а может быть только один элемент. Когда исходное дерево создано как-нибудь иначе, например, с помощью DOM, то обычные ограничения ни на исходное дерево, ни на конечное не действуют.

Базовый URI

С каждым узлом связан URI, называемый его базовым URI, который используется для преобразования значений атрибутов, являющихся относительными URI, в абсолютные URI. Если элемент или инструкция обработки найдены во внешней сущности, то базовым URI для такого элемента или инструкции обработки будет URI этой внешней сущности. В противном случае базовым является URI самого документа. Базовым URI для узла документа является URI сущности документа. Базовым URI для текстового узла, узла комментария, узла атрибута и узла пространства имен является базовый URI родителя этого узла.

Неразобранные сущности

Корневой узел имеет схему отображения, которая определяет URI для каждой неразобранной сущности, декларированной в DTD данного документа. Этот URI создается из системного идентификатора и публичного идентификатора, указанного в декларации сущности. Чтобы для сущности найти URI, XSLT процессор может воспользоваться публичным идентификатором, вместо того чтобы обращаться к URI, указанному в системном идентификаторе. Если XSLT процессор для построения данного URI не пользуется публичным идентификатором, то он обязан воспользоваться системным идентификатором. Если системный идентификатор является относительным URI, он должен быть преобразован в абсолютный URI, используя в качестве базового URI того ресурса, который содержит декларацию данной сущности [RFC2396].

Удаление пробельных символов

После построения дерева исходного документа или документа стиля, но перед какой-либо его обработкой XSLT процессором, выполняется очистка (stripping) некоторых текстовых узлов. Текстовый узел вычищается только тогда, когда он содержит одни пробельные символы. При очистке текстовый узел удаляется из дерева документа. На вход процедура очистки получает перечень названий элементов, для которых следует сохранить пробельные символы. Процедура очистки применяется как для стилей, так и для исходных документов, однако перечень названий элементов, сохраняющих пробельные символы, для стилей и исходных документов определяется отдельно.

Трансформации дерева

Трансформация дерева конструирует результирующее дерево/result tree. В XSL это дерево называется дерево элементов и атрибутов с объектами, изначально находящимися в пространстве имён "объекта форматирования".

В этом дереве объект форматирования представлен как элемент XML со свойствами, представленными набором пар атрибут-значение XML. Содержимое объекта форматирования это содержимое элемента XML. Трансформация дерева определена в Рекомендациях XSLT [XSLT].

Таблица стилей XSL используется в дереве трансформации. Таблица стилей содержит набор правил конструирования дерева. Правила конструирования дерева состоят из двух частей: патэрна, который подставляется в элементы дерева-источника, и шаблона, который конструирует части результирующего дерева. Это позволяет применять таблицу стилей к широкому классу документов, имеющих похожие структуры деревьев-источников.

В некоторых реализациях XSL/XSLT результат конструирования дерева может быть выведен как документ XML. Это позволяет выводить XML-документ, который содержит объекты форматирования и свойства форматирования. Такая возможность ни обязательна для процессора XSL, ни навязывается ему. Бывают, однако, случаи, когда это имеет важное значение, как при подготовке сервером ввода для известного клиента; например, способ, которым сервер WAP (http://www.wapforum.org/faqs/index.htm) подготавливает специальный вывод для ручных WAP- устройств. Для сохранения доступности дизайнеры Web-систем не должны создавать архитектуры, требующие наличия (или использующие) передачу документов, содержащих объекты форматирования и свойства, если только передатчик не знает, что клиент может принимать объекты форматирования и свойства, или что передаваемый документ содержит ссылку на документ(ы)-источник(и), используемый при конструировании документа с объектами форматирования и свойствами.

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


 

Экономический аспект

Открытая архитектура позволяет строить и модернизировать системы наиболее экономичным способом. Источники экономической эффективности состоят:

· в отсутствии необходимости разработки дополнительных интерфейсов к программным и аппаратным средствам;

· в возможности повторного использования компьютерных программ при переходе с одной платформы на другую.

Инновационный аспект

Важнейшим аспектом принципа открытой архитектуры является ее инновационный характер. без использования перспективных стандартов невозможен выпуск конкурентосопособной компьютерной и телекоммуникационной продукции.

Новые протоколы передачи данных и аппаратные решения базируются на общепринятых стандартах с опубликованными спецификациями. Это делает простым их внедрение, а также замещение ими устаревших продуктов.

 

.

Спецификация шины PCI

частота шины — 33,33 МГц или 66,66 МГц, передача синхронная;

разрядность шины — 32 или 64 бита, шина мультиплексированная (адрес и данные передаются по одним и тем же линиям);

пиковая пропускная способность для 32-разрядного варианта, работающего на частоте 33,33 МГц — 133 МБ в секунду;

адресное пространство памяти — 32 бита (4 байта);

адресное пространство портов ввода-вывода — 32 бита (4 байта);

конфигурационное адресное пространство (для одной функции) 256 байт;

напряжение 3,3 или 5 вольт.

PCI 2.0

Первая версия базового стандарта, получившая широкое распространение, использовались как карты, так и слоты с сигнальным напряжением только 5 вольт. Пиковая пропускная способность — 133 Мбайт/с;

PCI 2.1 — 3.0

Отличались от версии 2.0 возможностью одновременной работы нескольких шинных задатчиков (англ. bus-master т. н. конкурентный режим), а также появлением универсальных карт расширения, способных работать как в слотах использующих напряжение 5 вольт, так и в слотах использующих 3,3 вольта (с частотой 33 и 66 МГц соответственно). Пиковая пропускная способность для 33 МГц — 133 Мбайт/с, а для 66 МГц — 266 Мбайт/с;

PCI 64

Расширение базового стандарта PCI, появившееся в версии 2.1, удваивающее число линий данных, и, следовательно, пропускную способность. Слот PCI64 является удлинённой версией обычного PCI-слота. Формально совместимость 32-битных карт с 64-битным слотами (при условии наличия общего поддерживаемого сигнального напряжения) полная, а совместимость 64-битной карты с 32-битным слотами является ограниченной (в любом случае произойдёт потеря производительности). Работает на тактовой частоте 33 МГц. Пиковая пропускная способность — 266 Мбайт/с;

Версия 1 — использует слот PCI 64-бита и напряжение 5 вольт;

Версия 2 — использует слот PCI 64-бита и напряжение 3,3 вольта;

PCI 66

Версия PCI 66 является работающим на тактовой частоте 66 МГц развитием PCI 64; использует напряжение 3,3 вольта в слоте; карты имеют универсальный, либо 3,3 В форм-фактор. Пиковая пропускная способность — 533 Мбайт/с;

PCI 64/66

Комбинация PCI 64 и PCI 66, позволяет вчетверо увеличить скорость передачи данных по сравнению с базовым стандартом PCI; использует 64-битные 3,3 вольтовые слоты, совместимые только с универсальными и 3,3 вольтовые 32-битные карты расширения. Карты стандарта PCI64/66 имеют либо универсальный (но имеющий ограниченную совместимость с 32-битными слотами) либо 3,3 вольтовый форм-фактор (последний вариант принципиально не совместим с 32-битными 33 МГц слотами популярных стандартов). Пиковая пропускная способность — 533 Мбайт/с;

PCI-X

Развитие версии PCI 64. Для всех вариантов шины существуют следующие ограничения по количеству подключаемых к каждой шине устройств: 66 МГц — 4, 100 МГц — 2, 133 МГц — 1 (или 2, если одно или оба устройства не находятся на платах расширения, а уже интегрированы на одну плату вместе с контроллером), 266, 533 МГц и выше — 1;

Разработка шины PCI началась весной 1991 года как внутренний проект корпорации Intel (Release 0.1). Специалисты компании поставили перед собой цель разработать недорогое решение, которое бы позволило полностью реализовать возможности нового поколения процессоров 486/Pentium/P6 (вот уже половина ответа). Особенно подчеркивалось, что разработка проводилась "с нуля", а не была попыткой установки новых "заплат" на существующие решения. В результате шина PCI появилась в июне 1992 года (R1.0). Разработчики Intel отказались от использования шины процессора и ввели еще одну "антресольную" (mezzanine) шину.

Благодаря такому решению шина получилась, во-первых, процессоро-независимой (в отличие от VLbus), а во-вторых, могла работать параллельно с шиной процессора, не обращаясь к ней за запросами. Например, процессор работает себе с кэшем или системной памятью, а в это время по сети на винчестер пишется информация. Просто здорово! На самом деле идиллии, конечно, не получается, но загрузка шины процессора снижается здорово. Кроме того, стандарт шины был объявлен открытым и передан PCI Special Interest Group, которая продолжила работу по совершенствованию шины (в настоящее время доступен R2.1), и в этом, пожалуй, вторая половина ответа на вопрос "почему PCI?"

Основные возможности шины следующие.

· Синхронный 32-х или 64-х разрядный обмен данными (правда, насколько мне известно, 64-разрядная шина в настоящее время используется только в Alpha-системах и серверах на базе процессоров Intel Xeon, но, в принципе, за ней будущее). При этом для уменьшения числа контактов (и стоимости) используется мультиплексирование, то есть адрес и данные передаются по одним и тем же линиям.

· Поддержка 5V и 3.3V логики. Разъемы для 5 и 3.3V плат различаются расположением ключей

Существуют и универсальные платы, поддерживающие оба напряжения. Заметим, что частота 66MHz поддерживается только 3.3V логикой.

· Частота работы шины 33MHz или 66MHz (в версии 2.1) позволяет обеспечить широкий диапазон пропускных способностей (с использованием пакетного режима):

o 132 МВ/сек при 32-bit/33MHz;

o 264 MB/сек при 32-bit/66MHz;

o 264 MB/сек при 64-bit/33MHz;

o 528 МВ/сек при 64-bit/66MHz.

При этом для работы шины на частоте 66MHz необходимо, чтобы все периферийные устройства работали на этой частоте.

· Полная поддержка multiply bus master (например, несколько контроллеров жестких дисков могут одновременно работать на шине).

· Поддержка write-back и write-through кэша.

· Автоматическое конфигурирование карт расширения при включении питания.

· Спецификация шины позволяет комбинировать до восьми функций на одной карте (например, видео + звук и т.д.).

· Шина позволяет устанавливать до 4 слотов расширения, однако возможно использование моста PCI-PCI для увеличения количества карт расширения.

· PCI-устройства оборудованы таймером, который используется для определения максимального промежутка времени, в течении которого устройство может занимать шину.

При разработке шины в ее архитектуру были заложены передовые технические решения, позволяющие повысить пропускную способность.

Шина поддерживает метод передачи данных, называемый "linear burst" (метод линейных пакетов). Этот метод предполагает, что пакет информации считывается (или записывается) "одним куском", то есть адрес автоматически увеличивается для следующего байта. Естественным образом при этом увеличивается скорость передачи собственно данных за счет уменьшения числа передаваемых адресов.

Шина PCI является той черепахой, на которой стоят слоны, поддерживающие "Землю" - архитектуру Microsoft/Intel Plug and Play (PnP) PC architecture. Спецификация шины PCI определяет три типа ресурсов: два обычных (диапазон памяти и диапазон ввода/вывода, как их называет компания Microsoft) и configuration space - "конфигурационное пространство".

Конфигурационное пространство состоит из трех регионов:

· заголовка, независимого от устройства (device-independent header region);

· региона, определяемого типом устройства (header-type region);

· региона, определяемого пользователем (user-defined region).

В заголовке содержится информация о производителе и типе устройства - поле Class Code (сетевой адаптер, контроллер диска, мультимедиа и т.д.) и прочая служебная информация.

Следующий регион содержит регистры диапазонов памяти и ввода/вывода, которые позволяют динамически выделять устройству область системной памяти и адресного пространства. В зависимости от реализации системы конфигурация устройств производится либо BIOS (при выполнении POST - power-on self test), либо программно. Базовый регистр expansion ROM аналогично позволяет отображать ROM устройства в системную память. Поле CIS (Card Information Structure) pointer используется картами cardbus (PCMCIA R3.0). С Subsystem vendor/Subsystem ID все понятно, а последние 4 байта региона используются для определения прерывания и времени запроса/владения.

Конфигурирование

PCI-устройства с точки зрения пользователя самонастраиваемы (plug and play). После старта компьютера, системное программное обеспечение обследует конфигурационное пространство PCI каждого устройства, подключённого к шине и распределяет ресурсы. Каждое устройство может затребовать до семи диапазонов в адресном прострастве памяти PCI или в адресном пространстве ввода-вывода PCI. Кроме того, устройства могут иметь ПЗУ, содержащее исполняемый код для процессоров x86 или PA-RISC, Open Firmware (системное ПО компьютеров на базе SPARC) или драйвер EFI.

Настройка прерываний осуществляется также системным программным обеспечением (в отличии от шины ISA, где настройка прерываний осуществлялась переключателями на карте). Запрос на прерывание на шине PCI передаётся с помощью изменения уровня сигнала на одной из линий IRQ, поэтому имеется возможность работы нескольких устройств с одной линией запроса прерывания; обычно системное ПО пытается выделить каждому устройству отдельное прерывание для увеличения производительности.


 

Специальный цикл (0001)

AD15-AD0 Описание
0x0000 Processor Shutdown (процессор прекращает работу)
0x0001 Processor Halt (останов процессора)
0x0002 x86 Specific Code (специальный код для машин на архитектуре Intel x86)
0x0003 to 0xFFFF Reserved (зарезервировано)

ü Команды ассемблера для управления вводом/выводом.

INN - ввести. Это двухбайтовая команда. Байт информации, размещенный на шине данных портом ввода, адрес которого задан вторым байтом команды IN, загружается в аккумулятор А. Пример:INN- ввести из порта с адресом ЕО байт информации. Если порт установил на шине данных, например, байт 18. то после выполнения этой команды в аккумуляторе А будет число 18.

OUTN- вывести. Это двухбайтовая команда. Содержимое аккумулятора А выдается на шину данных и помещается в порт вывода с адресом, заданным вторым байтом команды OUT.Пример:OUTEl - вывести из аккумулятора А его содержимое в порт вывода с адресом Е1. Если в аккумуляторе А до выполнения было, например, число 20, то после выполнения этой команда в выводом порте будет число 20.

ü Драйверы

Драйвер— это компьютерная программа, с помощью которой другая программа (обычно операционная система) получает доступ к аппаратному обеспечению некоторого устройства. В общем случае, для использования любого устройства (как внешнего, так и внутреннего) необходим драйвер. Обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для некоторых устройств (таких, как видеокарта или принтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.

Операционная система управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд. Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Эта идеология называется «абстрагирование от аппаратного обеспечения».

Драйвер состоит из нескольких функций, которые обрабатывают определенные события операционной системы. Обычно это 7 основных событий:

· загрузка драйве



Поделиться:


Последнее изменение этой страницы: 2016-08-06; просмотров: 396; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.215.30 (0.012 с.)