Организация вычислительных систем и сетей

Классификация компьютеров по областям применения. Персональные компьютеры и рабочие станции. Функциональная и структурная организация процессоров. Системные и локальные шины. Топология локальных сетей. Методы доступа и протоколы передачи данных.

Рубрика Программирование, компьютеры и кибернетика
Вид учебное пособие
Язык русский
Дата добавления 28.06.2009
Размер файла 198,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Основная ее особенность состоит в том, что внешние х86-инструкции, поступающие на обработку в процессор, преобразуются во внутренние RISC86-инструкции, которые и исполняются процессором. Вместо того чтобы напрямую исполнять сложные х86-инструкции с переменной длиной от 1 до 15 байт, процессор обрабатывает поток простых RISC86-инструкций фиксированной длины.

В состав процессора AMD-K6-2 входят несколько основных модулей; L1-кэш данных (Level-One Dual Port Data Cache), Li-кэш инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache), модуль декодирования (Multiple Instruction Decoders), центральный планировщик (Centralized RISC86 Operation Scheduler), вычислительные блоки (Execution Units) и модуль предсказания переходов (Branch Logic).

L1-кэш инструкций и данных, предварительное декодирование. L1-кэш состоит из двух независимых блоков: L1-кэша данных (Level-One Dual Port Data Cache) и L1-кэша инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache). L1-кэш данных предназначен только для хранения данных и имеет объем 32 Кбайт- Несколько сложнее обстоит дело с L1-кэшем инструкций: наряду с инструкциями, для хранения которых предназначены 32 Кбайт памяти, в нем хранятся так называемые "биты преддекодирования" (predecode bits) -- для них отведено 20 Кбайт памяти. Дело в том, что после загрузки инструкции в L1-кэш инструкций выполняется ее предварительное декодирование (predecoding) -- к каждому байту инструкции добавляется пять бит (из этого и следует соотношение 32 Кбайт/20 Кбайт = 8/5), в которые записывается информация о количестве байт, оставшихся до начала следующей инструкции. Эта информация используется на этапе декодирования х86-инструкций в RISС8б-инструкции. После того, как L1 -кэш инструкций полностью заполнится данными, инструкции вместе с преддекодированными битами передаются в буфер инструкций (Instruction Buffer).

Модуль декодирования (Multiple Instruction Decoders), Модуль декодирования извлекает х86-инструкций (до 16 байт данных с инструкциями за один такт) с битами преддекодирования из буфера инструкций (Instruction Buffer), определяет границы инструкций и преобразует их в RISC86-инструкции. Непосредственно преобразованием занимаются четыре декодера; два для декодирования простых (Short Decoder #1, Short Decoder #2) и два для декодирования сложных х86-инструкций (Long Decoder, Vector Decoder). Одновременно могут работать либо два декодера Short Decoder #1 и Short Decoder #2, либо декодер Long Decoder, либо декодер Vector Decoder.

Два декодера Short Decoder #1 и Short Decoder #2 работают параллельно и обрабатывают наиболее часто используемые х86-инструкций -- move, shift, branch, ALU, FPU, а также инструкции из наборов команд ММХ и 3DNow! Декодеры Short Decoder #1 и Short Decoder #2 обрабатывают только часто используемые (most commonly-used) х86-инструкций длиной не более семи байт- Каждый может преобразовать только одну такую х86-инструкцию и сгенерировать 0 (например, при обработке х86-инструкций NOP), одну или две RISC86-инструкции за такт. Таким образом, за один такт оба декодера могут сгенерировать до 4 РISC86-инструкций.

Редко используемые инструкции (semi-commonly-used) длиной до семи байт и обычные инструкции (commonly-used) с длиной большей семи байт, но меньшей или равной 11 байтам обрабатываются декодером Long Decoder, который может декодировать только одну такую х86-инструкцию и сгенерировать до 4 RISC86-инструкций за такт. Все остальные преобразования (более сложные инструкции, прерывания, и. т. д.) выполняются декодером Vector Decoder. В этом случае Vector Decoder генерирует набор первых RISC86-инструкции и адрес заранее предопределенного набора последующих инструкций, который хранится в ROM-памяти (On-Chip ROM) и извлекается блоком RISC86 Sequencer.

Все наборы RISC86-операций, генерируемые декодерами и извлекаемые из On-Chip ROM всегда (!) состоят из групп, содержащих по четыре RISC86-операции. В том случае, если их получилось меньше, недостающее количество заполняется пустыми RISC86-инструкциями NOP. Например, если Long Decoder преобразовал х86-инструкцию в три RISC86-инструкции, то к ней добавляется одна RISC86-инструкция NOP. Получившийся лоток из таких групп поступает в буфер планировщика (Scheduler Buffer) -- за один такт всегда передается группа из четырех RISC-операций. Центральный планировщик (Centralized RISC86 Operation Scheduler). Планировщик -- это сердце процессора AMD-K6-2. Он следит за процессом исполнения RISK86-инструкций, приведением результата их исполнения к х86-архитектуре, а также возвращением результатов спекулятивного выполнения х86-инструкций в соответствии с их порядком поступления на вход процессора.

В буфере планировщика может одновременно содержаться до 24 RISC86-инструкций. Любая из них может быть в любой момент передана на исполнение соответствующему вычислительному блоку (store, load, branch, register X integer/multimedia, register Y integer/multimedia, floating-point), если, конечно, последний свободен. Таким образом, реализуется исполнение инструкций в порядке, отличном от порядка их поступления в буфер (out-of-order execution). В общей сложности планировщик может передать на выполнение шесть и завершить (retire) также шесть RISC86-инструкций за такт, Вычислительные блоки (Execution Units). Процессор AMD-K6-2 содержит 30 параллельных вычислительных блоков -- Store Unit, Load Unit, Integer X ALU, Integer Y ALU, MMX ALU (X), MMX ALU (Y), MMX/3DNow! Multiplier, 3DNow! ALU, FPU и Branch Unit. Каждый блок работает независимо от остальных, так что несколько блоков могут обрабатывать переданные им на исполнение RISC86-инструкции.

Integer, MMX- и 3DNow! - инструкции передаются по двум независимым шинам -- Register X Issue Bus и Register Y Issue Bus. При этом блоки Integer X ALU и MMX ALU (X) подключены только к шине Register X Issue Bus, a Integer Y ALU и MMX ALU (У) -- только к шине Register Y Issue Bus. А вот блоки MMX/3DNow! Multiplier и 3DNow! ALU подключены сразу к обеим шинам, как и блок MMX Shifter, функция которого заключается в том, чтобы переключать блоки MMX/3DNow! Multiplier и 3DNow! ALU между шинами.

Модуль предсказания переходов (Branch Logic). Назначение этого модуля, как следует из его названия, состоит в предсказании возможных переходов.

Во всех "старых процессорах AMD, Модуль вычислений с плавающей точкой был неконвейерным, что не позволяло начать выполнять новую команду пока не закончиться выполнение предыдущей. Это приводит к сильному падению производительности всей системы. До сих пор разработчики AMD не вносили никаких изменений в FPU, рассчитывая на свой блок 3Dnow!

в Athlone AMD впервые представляет новый, полностью конвейерный FPU модуль, позволяюший выполнять до трех операций за такт.

Обратите внимание на три вычислительных блока и на то, как модули Stack Map, Registry Rename, Scheduler с 36 входами и FPU Register File с 88 входами позволяют разделить вычисления между ними (рис. 4.18).

FPU в процессорах Pentium III и Celeron разделен на два модуля FADD и FMUL; первый, полностью конвейерный, выполняет простые вычисления, в то время как второй выполняет более сложные вычисления и не полностью конвейерный. Естественно, что наличие трех, полностью конвейерных модулей, вместо двух, из которых только один

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

По сравнению с FPU, целочисленные модули AMD всегда были достаточно производительными, но, несмотря на это, в Athlon произошли некоторые изменения.

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

Блок 3DNow! также претерпел ряд изменений. 19 новых SIMD инструкций были добавлены к оригинальному 3Dnow!, чтобы увеличить производительность целочисленных и вещественных операций. Также добавлены пять новых DSP инструкций предназначенных для использования в мультимедиа приложениях (МРЗ, АСЗ, Mpeg2 encoding и decoding). Используя расширенный набор 3Dnow! Инструкций, можно получить до 20% прироста производительности по сравнению с стандартным набором и около 50% по сравнению с приложениями, не использующими 3Dnow!

Одной из интересных особенностей нового процессора является применение новой архитектуры системной шины -- EV6. Такая же архитектура применяется в системах на процессорах Alpha. Применение EV6 связано с желанием AMD использовать Athlon в производительных многопроцессорных системах.

Сравнение EV6 и GTL+ (Pentium III и Celeron) показывает, что первая архитектура использует технологию Point to Point, в которой каждый процессор имеет свою отдельную часть шины, в то время, как в GTL+ процессоры должны делить одну "широкую" шину. Это объясняет, почему многопроцессорные системы на GTL+ шине очень трудно найти. EV6 поддерживает до 14 процессоров, но пока самые оптимальные теоретические расчеты предлагают использовать не более восьми процессоров.

Левая блок-схема показывает организацию EV6. Каждый процессор имеет собственную шину для соединения с логическими схемами, даже если в системе установлено несколько процессоров. На правой блок-схеме Вы можете видеть решение, основанное на GTL+ шине: ширина системной шины зафиксирована и делится между доступными ей процессорами

5. Принципы организации системы прерывания программ

5.1 Классы сигналов прерывания

Для обеспечения перехода от одной программы к другой в мультипрограммной ЭВМ вводится так называемый режим прерывания программ.

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

В зависимости от условий возникновения сигналы прерывания подразделяют на пять классов:

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

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

Внешнее прерывание возникает в случае появления сигналов от внешних объектов: датчиков времени (электронных часов), кнопок запросов на пультах инженера и оператора и других ЭВМ, подключенных к данной ЭВМ; аппаратуры передачи данных по линиям связи, от датчиков технологических процессов и т. п.

3. Прерывание от устройств ввода-вывода позволяет процессору получать информацию о состоянии каналов и периферийных устройств и отвечать на эти сигналы. Это прерывание от устройств ввода-вывода сформируется, когда канал и ПфУ не могут выполнить за данную операцию; при возникновении особой ситуации в процессе выполнения операции ввода-вывода (ошибка в информации, обрыв перфоленты и бумаги, замятие перфокарты и др.); в момент окончания операции ввода-вывода.

4. Прерывание при обращении к управляющим подпрограммам-диспетчеру в случаях, когда предусмотрено выполнение каких-либо действии по управлению ЭВМ и ВС. Например, если при выполнении рабочей программы нужно выполнить действие, выходящее за пределы возможностей системы команд ЭВМ, то процессор формирует запрос на прерывание в виде обращения к соответствующей подпрограмме, которая реализует затребованное действие, после чего управление вновь передается прерванной программе. Путем обращения к управляющим программам организуется ввод-вывод, перераспределение памяти, прекращается выполнение программы.

5.2 Распределение прерываний в ПК на базе процессоров х86

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

прерывания микропроцессора;

аппаратные;

программные;

операционной системы;

BASIC;

адресное и общего назначения.

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

Таблица 5.1.

Распределение аппаратных прерываний

Номер прерывания

Назначение

0

Системный таймер

1

Контролер клавиатуры

2

Сигнал возврата по кадру (видео), связан с 9

3

СОМ2/СОМ4

4

СОМ1/СОМ3

5

Свободен

6

Контролер FDD

7

LPT1

8

Часы реального времени с автономным питанием

9

Параллельна с 2

10

Свободен

11

Свободен

12

Контролер мыши PS/2

13

Математический сопроцессор

14

Контролер IDE HDD (первый канал)

15

Контролер IDE HDD (второй канал)

Программные прерывания являются часть программ ROM-BIOS. Сами подпрограммы BIOS, вызываемыми этими прерываниями, не могут быть изменены, однако векторы, указывающие на эти подпрограммы, могут быть изменены таким образом, что они будут указывать совсем на другие подпрограммы. Зарезервированные коды - 5, 16-28, 72.

Прерывания операционной системы (ОС) используются самой ОС. Многие программы и языки программирования для выполнения своих основных операций, особенно тех, которые связаны дисковым вводом-выводом, через прерывания ОС используют служебные функции ОС. Зарезервированные коды - 32-255 (используются 32-96).

Прерывания BASIC присваиваются самим BASIC и доступны тогда, когда используется BASIC. Зарезервированные коды - 128-240.

Адресные прерывания являются частью таблицы векторов прерываний и используются для хранения сегментных адресов. С этими прерываниями не связаны какие-либо действительные прерывания или подпрограммы обработки прерываний. Три из них связаны с тремя очень важными таблицами: таблицей инициализации изображения, основной таблицей диска и таблицей графических символов. Эти таблицы содержат параметры, используемые ROM-BIOS при процедурах начального запуска и при генерации графических символов. Зарезервированные коды - 29-31, 68,73.

Прерывания общего назначения устанавливаются нашими программами для временного использования. Зарезервированные коды - 96-106.

5.3 Приоритеты прерываний

Программы, выполнявшиеся до появления запросов прерывания, называют прерываемыми программами. Программы, за требованные запросами прерывания,-- прерывающими программами.

На рис. 5.1 приведена временная диаграмма прерывания текущей программы П1. При поступлении запроса прерывания (3П) процессор переходит к прерывающей программе П2 не сразу, так как требуется время на анализ системы на запрос прерывания. После перехода к прерывающей программе П2 в течение tз происходит запоминание состояния прерванной программы П1, а затем в течение tп исполняется прерывающая программа П2. Сразу после ее окончания в течение tв восстанавливается состояние прерванной программы П1 и ей передается управление. Сумма времени, затрачиваемого на запоминание состояния прерванной программы П1 и на возврат к ней, называют временем обслуживания программы. Время реакции tp и обслуживания tо=tз+tв характеризуют потери машинного времени на организацию процесса прерывания и быстродействия ЭВМ по обслуживанию запросов прерывания.

Максимальное количество программ, прерывающих друг друга вновь возникающими запросами, называют глубиной прерывания. Степень важности запросов на прерывания в общем случае зависит от времени их поступления в систему прерывания программ, характера источников запросов. Поэтому каждому источнику запросов на прерывания присваивается постоянный, как правило, уровень приоритетности, или глубина прерывании. Наивысшим приоритетом (нулевой уровень) прерывания обладают прерывания от схем контроля ЭВМ. Прерывания нулевого уровня могут прервать любую из программ, отвечающих, уровням 1, 2, ... , n при выделении (n+1) уровней.

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

Прерывания первого уровня могут прерывать любую из программ второго и третьего уровней приоритетности, но не могут прервать программу с нулевым уровнем приоритетности. На временной диаграмме (рис. 5.2) показано обслуживание запросов 3Пi с учетом их приоритетности.

В связи с введением приоритетов время реакции tр на отдельные запросы увеличивается.

5.4 Защита от прерывания

Процессор должен обеспечивать такой подход к запросам на прерывание, при котором прерывание по отдельным причинам может быть запрещено в течение некоторого промежутка времени, в то время как для других запросов прерывание разрешается. В современных ЭВМ наибольшее распространение получило программное управление приоритетом на основе маски-кода защиты от прерываний, представляющего собой двоичное число, разряды которого соответствуют отдельным причинам или уровням прерывании. Если разряд маски имеет значение 0, то соответствующая причина прерывания замаскирована и процессор не реагирует на данный запрос на прерывание. Если разряд маски равен 1, то соответствующая причина прерывания не замаскирована и процессор воспринимает данный запрос на прерывание.

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

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

Различают два метода обработки прерываний: с опросом и по вектору.

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

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

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

6. Организация памяти ПК

6.1 Иерархии памяти

В основе реализации иерархии памяти современных компьютеров лежат два принципа: принцип локальности обращений и соотношение стоимость/производительность. Принцип локальности обращений говорит о том, что большинство программ к счастью не выполняют обращений ко всем своим командам и данным равновероятно, а оказывают предпочтение некоторой части своего адресного пространства.

Иерархия памяти современных компьютеров строится на нескольких уровнях, причем более высокий уровень меньше по объему, быстрее и имеет большую стоимость в пересчете на байт, чем более низкий уровень. Уровни иерархии взаимосвязаны: все данные на одном уровне могут быть также найдены на более низком уровне, и все данные на этом более низком уровне могут быть найдены на следующем нижележащем уровне и так далее, пока мы не достигнем основания иерархии.

Иерархия памяти обычно состоит из многих уровней, но в каждый момент времени мы имеем дело только с двумя близлежащими уровнями. Минимальная единица информации, которая может либо присутствовать, либо отсутствовать в двухуровневой иерархии, называется блоком. Размер блока может быть либо фиксированным, либо переменным. Если этот размер зафиксирован, то объем памяти является кратным размеру блока.

Успешное или неуспешное обращение к более высокому уровню называются соответственно попаданием (hit) или промахом (miss). Попадание - есть обращение к объекту в памяти, который найден на более высоком уровне, в то время как промах означает, что он не найден на этом уровне. Доля попаданий (hit rate) или коэффициент попаданий (hit ratio) есть доля обращений, найденных на более высоком уровне. Иногда она представляется процентами. Доля промахов (miss rate) есть доля обращений, которые не найдены на более высоком уровне.

Поскольку повышение производительности является главной причиной появления иерархии памяти, частота попаданий и промахов является важной характеристикой. Время обращения при попадании (hit time) есть время обращения к более высокому уровню иерархии, которое включает в себя, в частности, и время, необходимое для определения того, является ли обращение попаданием или промахом. Потери на промах (miss penalty) есть время для замещения блока в более высоком уровне на блок из более низкого уровня плюс время для пересылки этого блока в требуемое устройство (обычно в процессор). Потери на промах далее включают в себя две компоненты: время доступа (access time) - время обращения к первому слову блока при промахе, и время пересылки (transfer time) - дополнительное время для пересылки оставшихся слов блока. Время доступа связано с задержкой памяти более низкого уровня, в то время как время пересылки связано с полосой пропускания канала между устройствами памяти двух смежных уровней.

Чтобы описать некоторый уровень иерархии памяти надо ответить на следующие четыре вопроса:

1. Где может размещаться блок на верхнем уровне иерархии? (размещение блока).

2. Как найти блок, когда он находится на верхнем уровне? (идентификация блока).

3. Какой блок должен быть замещен в случае промаха? (замещение блоков).

4. Что происходит во время записи? (стратегия записи).

6.2 Организация кэш-памяти

В разделе 4 было сказано несколько слов о кеш-памяти. Теперь более подробно познакомимся с ее организацией.

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

Принципы размещения блоков в кэш-памяти определяют три основных типа их организации:

Если каждый блок основной памяти имеет только одно фиксированное место, на котором он может появиться в кэш-памяти, то такая кэш-память называется кэшем с прямым отображением (direct mapped). Это наиболее простая организация кэш-памяти, при которой для отображение адресов блоков основной памяти на адреса кэш-памяти просто используются младшие разряды адреса блока. Таким образом, все блоки основной памяти, имеющие одинаковые младшие разряды в своем адресе, попадают в один блок кэш-памяти, т.е.

Если некоторый блок основной памяти может располагаться на любом месте кэш-памяти, то кэш называется полностью ассоциативным (fully associative).

Если некоторый блок основной памяти может располагаться на ограниченном множестве мест в кэш-памяти, то кэш называется множественно-ассоциативным (set associative). Обычно множество представляет собой группу из двух или большего числа блоков в кэше. Если множество состоит из n блоков, то такое размещение называется множественно-ассоциативным с n каналами (n-way set associative). Для размещения блока прежде всего необходимо определить множество. Множество определяется младшими разрядами адреса блока памяти (индексом):

Далее, блок может размещаться на любом месте данного множества.

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

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

Кроме того, необходим способ определения того, что блок кэш-памяти содержит достоверную или пригодную для использования информацию. Наиболее общим способом решения этой проблемы является добавление к тегу так называемого бита достоверности (valid bit).

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

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

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

Во втором случае, чтобы уменьшить вероятность выбрасывания информации, которая скоро может потребоваться, все обращения к блокам фиксируются. Заменяется тот блок, который не использовался дольше всех (LRU - Least-Recently Used).

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

При обращениях к кэш-памяти на реальных программах преобладают обращения по чтению. Все обращения за командами являются обращениями по чтению и большинство команд не пишут в память. Обычно операции записи составляют менее 10% общего трафика памяти. Желание сделать общий случай более быстрым означает оптимизацию кэш-памяти для выполнения операций чтения, однако при реализации высокопроизводительной обработки данных нельзя пренебрегать и скоростью операций записи.

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

Однако при выполнении операции записи ситуация коренным образом меняется. Именно процессор определяет размер записи (обычно от 1 до 8 байтов) и только эта часть блока может быть изменена. В общем случае это подразумевает выполнение над блоком последовательности операций чтение-модификация-запись: чтение оригинала блока, модификацию его части и запись нового значения блока. Более того, модификация блока не может начинаться до тех пор, пока проверяется тег, чтобы убедиться в том, что обращение является попаданием. Поскольку проверка тегов не может выполняться параллельно с другой работой, то операции записи отнимают больше времени, чем операции чтения.

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

сквозная запись (write through, store through) - информация записывается в два места: в блок кэш-памяти и в блок более низкого уровня памяти.

запись с обратным копированием (write back, copy back, store in) - информация записывается только в блок кэш-памяти. Модифицированный блок кэш-памяти записывается в основную память только когда он замещается. Для сокращения частоты копирования блоков при замещении обычно с каждым блоком кэш-памяти связывается так называемый бит модификации (dirty bit). Этот бит состояния показывает был ли модифицирован блок, находящийся в кэш-памяти. Если он не модифицировался, то обратное копирование отменяется, поскольку более низкий уровень содержит ту же самую информацию, что и кэш-память.

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

Когда процессор ожидает завершения записи при выполнении сквозной записи, то говорят, что он приостанавливается для записи (write stall). Общий прием минимизации остановов по записи связан с использованием буфера записи (write buffer), который позволяет процессору продолжить выполнение команд во время обновления содержимого памяти. Следует отметить, что остановы по записи могут возникать и при наличии буфера записи.

При промахе во время записи имеются две дополнительные возможности:

разместить запись в кэш-памяти (write allocate) (называется также выборкой при записи (fetch on write)). Блок загружается в кэш-память, вслед за чем выполняются действия аналогичные выполняющимся при выполнении записи с попаданием. Это похоже на промах при чтении.

не размещать запись в кэш-памяти (называется также записью в окружение (write around)). Блок модифицируется на более низком уровне и не загружается в кэш-память.

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

Формула для среднего времени доступа к памяти в системах с кэш-памятью выглядит следующим образом:

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

6.3 Организация оперативной памяти (RAM)

6.3.1 Типы и классификация ОП

Оперативная память (ОП) -- совокупность ОЗУ, объединенных в одну систему, управляемую процессором. Для обеспечения приспосабливаемости ЭВМ к конкретным потребностям пользователей применяют принцип блочного построения 0П. Так, например, на основе блоков 03У емкостью 128 и 256 Кслов можно построить ОП любой емкости. ОП заданной емкости, составленная из нескольких блоков ОЗУ, называется многоблочной 0П.

Функциональном отношении многоблочная ОП рассматривается как одно ОЗУ с емкостью, равной сумме емкостей блоков, и быстродействием, примерно равным быстродействию отдельного блока. Адрес ячеек такой 0П содержит адрес блока и адрес ячейки памяти в заданном блоке ОЗУ.

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

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

Из микросхем, памяти (RAM - Random Access Memory, память с произвольным доступом) используется два основных типа: статическая (SRAM - Static RAM) и динамическая (DRAM - Dynamic RAM).

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

Группа ячеек памяти с последовательными номерами Аб, Аб+1, Аб+2, ... , Аб+n, представляющая массив длиной (n+1), рассматривается как массив ячеек памяти с базовым адресом Аб (рис. 6.1).

Статическое распределение памяти основано на выделении ячеек ОП для массивов в процессе анализа и составления программы, т. е. до начала решения задачи и при выполнении программы базисные адреса сохраняют постоянные значения.

При статическом распределении ячеек памяти в массивах память используется неэффективно, так как в процессе решения задачи количество слов в массиве в большинстве случаев меньше длины массива ячеек с базовым адресом Аб. Поэтому этот способ применяют лишь в простейших системах программирования на небольших ЭВМ.

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

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

В динамической памяти ячейки построены на основе областей с накоплением зарядов, занимающих гораздо меньшую площадь, нежели 1Н1)иггеры, ч практически не потребляющих энергии при хранении. При записи бита в такую ячейку в ней (формируется электрический заряд, который сохраняется в течение нескольких миллисекунд; для постоянного сохранения заряда ячейки необходимо регенерировать - перезаписывать содержимое для восстановления 'зарядов. Ячейки микросхем динамической памяти организованы в виде прямоугольной (обычно - квадратной) матрицы; при обращении к микросхеме на ее входы вначале подается адрес строки матрицы, сопровождаемый сигналом RAS (Row Address Strobe - строб адреса строки), затем, через некоторое время - адрес столбца, сопровождаемый сигналом CAS (Column Address Strobe - строб адреса столбца). При каждом обращении к ячейке регенерируют все ячейки выбранной строки, поэтому для полной регенерации матрицы достаточно перебрать адреса строк. Ячейки динамической памяти имеют большее время срабатывания (десятки- сотни наносекунд), но большую удельную плотность (порядка десятков Мбит на корпус) и меньшее энергопотребление. Динамическая память используется в качестве основной.

Обычные виды SRAM и DRAM называют также асинхронными, потому что установка адреса, подача управляющих сигналов и чтение/запись данных могут выполняться в произвольные моменты времени - необходимо только соблюдение временных соотношений между этими сигналами. В эти временные соотношения включены так называемые охранные интервалы, необходимые для стабилизации сигналов, которые не позволяют достичь теоретически возможного быстродействия памяти. Существуют также синхронные виды памяти, получающие внешний синхросигнал, к импульсам которого жестко привязаны моменты подачи адресов и обмена данными; помимо экономии времени на охранных интервалах, они позволяют более полно использовать внутреннюю конвейеризацию и блочный доступ.

FPM DRAM (Fast Page Mode DRAM - динамическая память с быстрым страничным доступом) активно используется в последние несколько лет. Память со страничным доступом отличается от обычной динамической памяти тем, что после выбора строки матрицы и удержании RAS допускает многократную установку адреса столбца, стробируемого CAS, и также быструю регенерацию по схем.е "CAS прежде RAS". Первое позволяет ускорить блочные передачи, когда весь блок данных или его часть находятся внутри одной строки матрицы, называемой в этой системе страницей, а второе - снизить накладные расходы на регенерагщю памяти.

ED0 (Entended Data Out - расширенное время удержания данных на выходе) фактически представляют собой обычные микросхемы FРМ, на выходе которых установлены регистры-защелки данных. При страничном обмене такие микросхемы работают в режиме простого конвейера: удерживают на выходах данных содержимое последней выбранной ячейки, в то время как на их входы уже подается адрес следующей выбираемой ячейки. Это позволяет примерно на 15% по сравнению с FPM ускорить процесс считывания последовательных массивов данных. При случайной адресации такая память ничем не отличается от обычной.

BEDO (Burst EDO - EDO с блочным доступом) - память на основе EDO, работающая не одиночными, а пакетными циклами чтения/записи. Современные процессоры, благодаря внутреннему и внешнему кэшированию команд и данных, обмениваются с основной памятью преимущественно блоками слов максимальной ширины. В случае памяти BEDO отпадает необходимость постоянной подачи последовательных адресов на входы микросхем с соблюдением необходимых временных задержек - достаточно стробировать переход к очередному слову отдельным сигналом.

SDRAM (Synchronous DRAM - синхронная динамическая память) -память с синхронным доступом, работающая быстрее обычной асинхронной (EPM/EDO/BEDO). Помимо синхронного метода доступа, SDRAM использует внутреннее разделение массива памяти на два независимых банка, что позволяет совмещать выборку из одного банка с установкой адреса в другом банке. SDRAM также поддерживает блочный обмен. Основная выгода от использования SDRAM состоит в поддержке последовательного доступа в синхронном режиме, где не требуется дополнительных тактов ожидания. При случайном доступе SDRAM работает практически с той же скоростью, что и FPM/EDO.

PB SRAM (Pipelined Burst SRAM - статическая память с блочным конвейерным, доступом) - разновидность синхронных SRAM с внутренней конвейеризацией, за счет которой примерно вдвое повышается скорость обмена опоками данных.

Микросхемы памяти имеют четыре основные характеристики - тип, объем, структуру и время доступа. Тип обозначает статическую или динамическую память, объем показывает общую емкость микросхемы, а структура - количество ячеек памяти и разрядность каждой ячейки. Например, 28/32- выводные DIP- микросхемы SRAM имеют восьмиразрядную структуру (8k*8, 16k*8, 32k*8, 64k*8, 128k*8), и кэш для 486 объемом 256 кб будет состоять из восьми микросхем 32k*S или четырех микросхем 64k*8 (речь идет об области данных дополнительные микросхемы для хранения признаков (tag) могут иметь другую структуру). Две микросхемы по 128k*8 поставить уже нельзя, так как нужна 32- разрядная шина данных, что могут дать только четыре параллельных микросхемы. Распространенные РB SRAM в 100-выводных корпусах PQFP имеют 32-разрядную структуру 32k*32 или 64k*32 и используются по две или по четыре в платах для Pentuim.

Аналогично, 30-контактные SIMM имеют 8-разрядную структуру и ставятся с процессорами 286, 386SX и 486SLC по два, а с 386DX, 486DLC и обычными 486 - по четыре. 72-контактные SIMM имеют 32-разрядную структуру и могут ставиться с 486 по одному, а с Pentium и Pentium Pro -по два. 168- контактные DIMM имеют 64- разрядную структуры и ставятся в Pentium и Pentium Pro no одному. Установка модулей памяти или микросхем кэша в количестве больше минимального позволяет некоторым платам ускорить работу с ними, используя принцип /расслоения (Interleave - чередование).

Время доступа характеризует скорость работы микросхемы и обычно указывается в наносекундах через тире в конце наименования. На более медленных динамических микросхемах могут указываться только первые цифры (-7 вместо -70, -15 вместо -150), на более быстрых статических "-15" или "-20" обозначают реальное время доступа к ячейке. Часто на микросхемах указывается минимальное из всех возможных времен доступа - например, распространена маркировка 70 нс EDO DRAM, как 50, или 60 нс - как 45, хотя такой цикл достижим только в блочном. режиме, а в одиночном режиме микросхема по-прежнему срабатывает за 70 или 60 не. Аналогичная ситуация имеет место в маркировке РВ SRAM: 6 нс вместо 12, и 7 - вместо 15. Микросхемы SDRAM обычно маркируются временем доступа в блочном режиме (10 или 12 нс).

Тип модуля памяти DIP (Dual In line Package - корпус с двумя рядами выводов) - классические микросхемы, применявшиеся в блоках основной памяти XT и ранних AT, a сейчас - в блоках кэш-памяти. SIP (Single In line Package - корпус с одним рядом выводов) - микросхема с одним рядом выводов, устанавливаемая вертикально. SIPP (Single In line Pinned Package - модуль с одним рядом проволочных выводов) - модуль памяти, вставляемый в панель наподобие микросхем DIP/SIP; применялся в ранних А Т.

SIMM (Single In line Memory Module - модуль памяти с одним рядом контактов) - модуль памяти, вставляемый в зажимающий разъем; применяется во всех современных платах, а также во многих адаптерах, принтерах и прочих устройствах. SIMM имеет контакты с двух сторон модуля, но все они соединены между собой, образуя как бы один ряд контактов.

DIMM (Dual In line Memory Module - модуль памяти с двумя рядами контактов) - модуль памяти, похожий на SIMM, но с раздельными контактами (обычно 2 х 84), за счет чего увеличивается разрядность или число банков памяти в модуле. Применяется в основном в компьютерах Apple ч новых платах Р5 и Р6.

На SIMM в настоящее время устанавливаются преимущественно микросхемы FPM/EDO/BEDO, а на DIMM - EDO/BEDO/SDRAM.

СELP (Card Egde Low Profile - невысокая карта с ножевым разъемом на краю) - модуль внешней кэш-памяти, собранный на микросхемах SRAM (асинхронный) или РВ SRAM (синхронный). По внешнему виду похож на 72-контактный SIMM, имеет емкость 256 или 512 кб. Другое название -COAST (Cache On A Stick - буквально "кэш на палочке").

Модули динамической памяти, помимо памяти для данных, могут. иметь дополнительную память для хранения битов четности (Parity) для байтов данных - такие SIMM иногда называют 9- и 36- разрядными модулями (по одному биту четности на байт данных). Биты четности служат ()л.я контроля правильности считывания данных из модуля, позволяя обнаружить часть ошибок (но не все ошибки). Модули с четностью имеет смысл применять лишь там, где нуж,на очень высокая надежность - для обычных применений подходят и тщательно проверенные модули без четности, при условии, что системная плата поддерживает такие типы модулей.

Проще всего определить тип модуля по маркировке и количеству микросхем памяти на нем: например, если на 30-контактном SIMM две микросхемы одного типа и одна - другого, то две первых содержат (данные (каждая - по четыре разряда), а третья - биты четности (она одноразрядная). В 72- контактном SIMM с двенадцатью микросхемами восемь из них хранят данные, а четыре - биты четности. Модули с количеством микросхем 2, 4 или 8 не имеют памяти под четность.

Иногда на модули ставится так называемый имитатор четности -микросхема- сумматор, выдающая при считывании ячейки всегда правильный бит четности. В основном это предназначено для установки таких модулей в платы, где проверка четности не отключается; однако, cyщecmвyюm модули, где такой сумматор маркирован как "честная" микросхема памяти.

72-контактные SIMM имеют четыре специальных линии PD (Presence Deled - обнаружение наличия), на которых при помощи перемычек может быть установлено до 16 комбинаций сигналов. Линии PD используются некоторыми "Brand name"- платами для определения наличия модулей в разъемах и их параметров (объеми и быстродействия). Большинство универсальных плат производства "третьих фирм", как их выпускаемые ими SIMM, не используют линий PD.

В модулях DIMM, в соответствии со спецификацией JEDEC, технология PD реализуется при помощи перезаписываемого ПЗУ с последовательным доступом (Serial EEPROM) и носит название Serial Presence Detect (SPD). ПЗУ представляет собой 8- выводную микросхему, размещенную в углу платы DIMM, а его содержимое описывает конфигурацию и параметры модуля. Системные платы с чипсетами 440LХ/ВХ могут использовать SPD для настройки системы управления памятью. Некоторые системные платы могут обходиться без SPD, определяя конфигурацию модулей обычным путем - это стимулирует выпуск рядом производителей DIMM без ПЗУ, не удовлетворяющих спецификации JEDEC.

6.3.2 Адресация информации и обработка адресов

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

Рассмотрим способы адресации операндов и команд.

Непосредственная адресация

В коде команды (в коде одного или нескольких адресов) размещается непосредственный операнд, если число значащих цифр операнда не превышает длины адресной части команды. Такая адресация используется для хранения различного рода констант и находит широкое применение в универсальных ЭВМ в целях экономии ячеек ОП и уменьшения времени выполнения команды.

Прямая адресация

Исполнительный адрес - адрес ячейки ОП, в которой хранится адресуемое слово, совпадает с адресной частью команды. Этот метод используется в ЭВМ в комбинации с другими методами адресации.

Прямая регистровая адресация

В адресном поле команды содержится адрес R регистра СОЗУ процессора, в котором хранится операнд (рис. 6.2.).

При таком способе адресации быстродействие ЭВМ повышается, так как нет необходимости извлекать операнды из ОП и команда имеет более короткий формат, так как регистров в СОЗУ обычно значительно меньше, чем ячеек в оперативной памяти. Прямая регистровая адресация используется для операндов, многократно используемых при выполнении программ.

Подразумеваемая адресация

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

Косвенная адресация

В адресном поле команды указывается адрес ячейки оперативной памяти, содержащей другой адрес, который может быть исполнительным Аисп или еще одним косвенным адресом (так называемая многоступенчатая косвенная адресация). Таким образом, косвенная адресация (рис. 6.3) может быть определена как «адресация адреса».

Она используется в тех случаях, когда число разрядов в адресной части команды недостаточно для указания всех адресов оперативной памяти ЭВМ.

Косвенная регистровая адресация

При таком способе адресации в адресном поле команды число является адресом R регистра Рсозу, который содержит исполнительный адрес Аисп

При такой адресации необходимо сначала загрузить регистр R, а поэтому ее используют тогда, когда программа многократно использует один и тот же адрес ячейки.


Подобные документы

  • Особенности, отличия, топология и функционирование локальных компьютерных сетей. Программное обеспечение информационно-вычислительных сетей. Основные протоколы передачи данных, их установка и настройка. Аутентификация и авторизация; система Kerberos.

    курсовая работа [67,7 K], добавлен 20.07.2015

  • Классификация вычислительных сетей. Функции локальных вычислительных сетей: распределение данных, информационных и технических ресурсов, программ, обмен сообщениями по электронной почте. Построение сети, адресация и маршрутизаторы, топология сетей.

    доклад [23,2 K], добавлен 09.11.2009

  • Классификация вычислительных сетей. Основные причины широкого распространения локальных вычислительных сетей. Топология вычислительной сети. Обоснование дифференциального и интегрального исчисления. Характеристика основных правил дифференцирования.

    контрольная работа [292,0 K], добавлен 21.12.2010

  • Понятие и назначение локальных вычислительных сетей (ЛВС), их классификация. Топология сетей: "звезда", "кольцо", "общая шина", "дерево", их достоинства и недостатки. Устройства межсетевого интерфейса и их назначение: мосты, маршрутизаторы, шлюзы.

    реферат [112,1 K], добавлен 23.12.2008

  • Топология компьютерных сетей. Методы доступа к несущей в компьютерных сетях. Среды передачи данных, их характеристики. Структурная модель OSI, её уровни. Протокол IP, принципы маршрутизации пакетов. Физическая топология сети. Определение класса подсети.

    контрольная работа [101,8 K], добавлен 14.01.2011

  • Компьютерные сети и их классификация. Аппаратные средства компьютерных сетей и топологии локальных сетей. Технологии и протоколы вычислительных сетей. Адресация компьютеров в сети и основные сетевые протоколы. Достоинства использования сетевых технологий.

    курсовая работа [108,9 K], добавлен 22.04.2012

  • Назначение локальных сетей как комплекса оборудования и программного обеспечения, их технические средства, топология. Организация передачи данных в сети. История развития глобальных сетей, появление Интернета. Программно-техническая организация Интернета.

    реферат [40,8 K], добавлен 22.06.2014

  • Эволюция вычислительных систем. Базовые понятия и основные характеристики сетей передачи информации. Задачи, виды и топология локальных компьютерных сетей. Модель взаимодействия открытых систем. Средства обеспечения защиты данных. Адресация в IP-сетях.

    лекция [349,0 K], добавлен 29.07.2012

  • Архитектура персональных компьютеров, классификация сетей (глобальные, региональные, локальные), методы доступа к передаче данных и протоколы. Динамические структуры данных; списки, их основные виды и способы реализации; технологии программирования.

    шпаргалка [584,9 K], добавлен 09.03.2010

  • Общие принципы построения вычислительных сетей, их иерархия, архитектура. Каналы связи и коммуникационное оборудование. Эталонная модель взаимодействия открытых систем OSI. Организация локальных и корпоративных сетей, топология и технические средства.

    реферат [569,4 K], добавлен 05.02.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.