- Что такое Bus Mastering?
Способность внешнего устройства самостоятельно, без участия процессора, управлять шиной (пересылать данные, выдавать команды и сигналы управления). На время обмена устройство захватывает шину и становится главным, или ведущим (master) устройством. Такой подход обычно используется для освобождения процессора от операций пересылки команд и/или данных между двумя устройствами на одной шине. Частным случаем Bus Mastering является режим DMA, который осуществляет только внепроцессорную пересылку данных; в классической архитектуре PC этим занимается контроллер DMA, общий для всех устройств. Каждое же Bus Mastering-устройство имеет собственный подобный контроллер, что позволяет избавиться от проблем с распределением DMA-каналов и преодолеть ограничения стандартного DMA-контроллера (16-разрядность, способность адресовать только первые 16 Мб ОЗУ, низкое быстродействие и т.п.).
- Чем отличаются шины XT-Bus, ISA, EISA, VLB, PCI, PCMCIA и MCA?
XT-Bus - шина архитектуры XT - первая в семействе IBM PC. Относительно проста, поддерживает обмен 8-разрядными данными внутри 20-разрядного (1 Мб) адресного пространства (обозначается как "разрядность 8/20"), работает на частоте 4.77 МГц. Совместное использование линий IRQ в общем случае невозможно. Конструктивно оформлена в 62-контактних разъемах.
ISA (Industry Standard Architecture - архитектура промышленного стандарта) - основная шина на компьютерах типа PC AT (другое название - AT-Bus). Является расширением XT-Bus, разрядность - 16/24 (16 Мб), тактовая частота - 8 МГц, предельная пропускная способность - 5.55 Мб/с. Разделение IRQ также невозможно. Возможна нестандартная организация Bus Mastering, но для этого нужен запрограммированный 16-разрядный канал DMA. Конструктив - 62-контактный разъем XT-Bus с прилегающим к нему 36-контактным разъемом расширения.
EISA (Enhanced ISA - расширенная ISA) - функциональное и конструктивное расширение ISA. Внешне разъемы имеют такой же вид, как и ISA, и в них могут вставляться платы ISA, но в глубине разъема находятся дополнительные ряды контактов EISA, а платы EISA имеют более высокую ножевую часть разъема с дополнительными рядами контактов. Разрядность - 32/32 (адресное пространство - 4 Гб), работает также на частоте 8 МГц. Предельная пропускная способность - 32 Мб/с. Поддерживает Bus Mastering - режим управления шиной со стороны любого из устройств на шине, имеет систему арбитража для управления доступом устройств у шине, позволяет автоматически настраивать параметры устройств, возможно разделение каналов IRQ и DMA.
MCA (Micro Channel Architecture - микроканальная архитектура) - шина компьютеров PS/2 фирмы IBM. Не совместима ни с одной другой, разрядность - 32/32, (базовая - 8/24, остальные - в качестве расширений). Поддерживает Bus Mastering, имеет арбитраж и автоматическую конфигурацию, синхронная (жестко фиксирована длительность цикла обмена), предельная пропускная способность - 40 Мб/с. Конструктив - одно-трехсекционный разъем (такой же, как у VLB). Первая, основная, секция - 8-разрядная (90 контактов), вторая - 16-разрядное расширение (22 контакта), третья - 32-разрядное расширение (52 контакта). В основной секции предусмотрены линии для передачи звуковых сигналов. Дополнительно рядом с одним из разъемов может устанавливаться разъем видеорасширения (20 контактов). EISA и MCA во многом параллельны, появление EISA было обусловлено собственностью IBM на архитектуру MCA.
VLB (VESA Local Bus - локальная шина стандарта VESA) - 32-разрядное дополнение к шине ISA. Конструктивно представляет собой дополнительный разъем (116-контактный, как у MCA) при разъеме ISA. Разрядность - 32/32, тактовая частота - 25..50 МГц, предельная скорость обмена - 130 Мб/с. Электрически выполнена в виде расширения локальной шины процессора - большинство входных и выходных сигналов процессора передаются непосредственно VLB-платам без промежуточной буферизации. Из-за этого возрастает нагрузка на выходные каскады процессора, ухудшается качество сигналов на локальной шине и снижается надежность обмена по ней. Поэтому VLB имеет жесткое ограничение на количество устанавливаемых устройств: при 33 МГц - три, 40 МГц - два, и при 50 МГц - одно, причем желательно - интегриpованное в системную плату.
PCI (Peripheral Component Interconnect - соединение внешних компонент) - развитие VLB в сторону EISA/MCA. Не совместима ни с какими другими, разрядность - 32/32 (расширенный вариант - 64/64), тактовая частота - до 33 МГц (PCI 2.1 - до 66 МГц), пропускная способность - до 132 Мб/с (264 Мб/с для 32/32 на 66 МГц и 528 Мб/с для 64/64 на 66 МГц), поддержка Bus Mastering и автоконфигурации. Количество разъемов шины на одном сегменте ограничего четырьмя. Сегментов может быть несколько, они соединяются друг с другом посредством мостов (bridge). Сегменты могут объединяться в различные топологии (дерево, звезда и т.п.). Самая популярная шина в настоящее время, используется также на других компьютерах. Разъем похожа на MCA/VLB, но чуть длиннее (124 контакта). 64-разрядный разъем имеет дополнительную 64-контактную секцию с собственным ключом. Все разъемы и карты к ним делятся на поддерживающие уровни сигналов 5 В, 3.3 В и универсальные; первые два типа должны соответствовать друг другу, универсальные карты ставятся в любой разъем.
Существует также расширение MediaBus, введенное фирмой ASUSTek - дополнительный разъем содержит сигналы шины ISA.
PCMCIA (Personal Computer Memory Card International Association - ассоциация производителей плат памяти для персональных компьютеров) - внешняя шина компьютеров класса NoteBook. Другое название модуля PCMCIA - PC Card. Предельно проста, разрядность - 16/26 (адресное пространство - 64 Мб), поддерживает автоконфигурацию, возможно подключение и отключение устройств в процессе работы компьютера. Конструктив - миниатюрный 68-контактный разъем. Контакты питания сделаны более длинными, что позволяет вставлять и вынимать карту при включенном питании компьютера.
{mospagebreak" />
- Какие типы микросхем памяти используются в системных платах?
Из микросхем памяти (RAM - Random Access Memory, память с произвольным доступом) используется два основных типа: статическая (SRAM - Static RAM) и динамическая (DRAM - Dynamic RAM).
В статической памяти элементы (ячейки) построены на различных вариантах триггеров - схем с двумя устойчивыми состояниями. После записи бита в такую ячейку она может пребывать в этом состоянии столь угодно долго - необходимо только наличие питания. При обращении к микросхеме статической памяти на нее подается полный адрес, который при помощи внутреннего дешифратора преобразуется в сигналы выборки конкретных ячеек. Ячейки статической памяти имеют малое время срабатывания (единицы-десятки наносекунд), однако микросхемы на их основе имеют низкую удельную плотность данных (порядка единиц Мбит на корпус) и высокое энергопотребление. Поэтому статическая память используется в основном в качестве буферной (кэш-память).
В динамической памяти ячейки построены на основе областей с накоплением зарядов, занимающих гораздо меньшую площадь, нежели триггеры, и практически не потребляющих энергии при хранении. При записи бита в такую ячейку в ней формируется электрический заряд, который сохраняется в течение нескольких миллисекунд; для постоянного сохранения заряда ячейки необходимо регенерировать - перезаписывать содержимое для восстановления зарядов. Ячейки микросхем динамической памяти организованы в виде прямоугольной (обычно - квадратной) матрицы; при обращении к микросхеме на ее входы вначале подается адрес строки матрицы, сопровождаемый сигналом RAS (Row Address Strobe - строб адреса строки), затем, через некоторое время - адрес столбца, сопровождаемый сигналом CAS (Column Address Strobe - строб адреса столбца). При каждом обращении к ячейке регенерируют все ячейки выбранной строки, поэтому для полной регенерации матрицы достаточно перебрать адреса строк. Ячейки динамической памяти имеют большее время срабатывания (десятки-сотни наносекунд), но большую удельную плотность (порядка десятков Мбит на корпус) и меньшее энергопотребление. Динамическая память используется в качестве основной.
Обычные виды SRAM и DRAM называют также асинхронными - потому, что установка адреса, подача управляющих сигналов и чтение/запись данных могут выполняться в произвольные моменты времени - необходимо только соблюдение временнЫх соотношений между этими сигналами. В эти временные соотношения включены так называемые охранные интервалы, необходимые для стабилизации сигналов, которые не позволяют достичь теоретически возможного быстродействия памяти. Существуют также синхронные виды памяти, получающие внешний синхросигнал, к импульсам которого жестко привязаны моменты подачи адресов и обмена данными; помимо экономии времени на охранных интервалах, они позволяют более полно использовать внутреннюю конвейеризацию и блочный доступ.
FPM DRAM (Fast Page Mode DRAM - динамическая память с быстрым страничным доступом) активно используется в последние несколько лет. Память со страничным доступом отличается от обычной динамической памяти тем, что после выбора строки матрицы и удержании RAS допускает многократную установку адреса столбца, стробируемого CAS, а также быструю регенерацию по схеме "CAS прежде RAS". Первое позволяет ускорить блочные передачи, когда весь блок данных или его часть находятся внутри одной строки матрицы, называемой в этой системе страницей, а второе - снизить накладные расходы на регенерацию памяти.
EDO (Extended Data Out - расширенное время удержания данных на выходе) фактически представляют собой обычные микросхемы FPM, на выходе которых установлены регистры-защелки данных. При страничном обмене такие микросхемы работают в режиме простого конвейера: удерживают на выходах данных содержимое последней выбранной ячейки, в то время как на их входы уже подается адрес следующей выбираемой ячейки. Это позволяет примерно на 15% по сравнению с FPM ускорить процесс считывания последовательных массивов данных. При случайной адресации такая память ничем не отличается от обычной.
BEDO (Burst EDO - EDO с блочным доступом) - память на основе EDO, работающая не одиночными, а пакетными циклами чтения/записи. Современные процессоры, благодаря внутреннему и внешнему кэшированию команд и данных, обмениваются с основной памятью преимущественно блоками слов максимальной ширины. В случае памяти BEDO отпадает необходимость постоянной подачи последовательных адресов на входы микросхем с соблюдением необходимых временных задержек - достаточно стробировать переход к очередному слову отдельным сигналом.
SDRAM (Synchronous DRAM - синхронная динамическая память) - память с синхронным доступом, работающая быстрее обычной асинхронной (FPM/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*8 или четырех микросхем 64k*8 (речь идет об области данных - дополнительные микросхемы для хранения признаков (tag) могут иметь другую структуру). Две микросхемы по 128k*8 поставить уже нельзя, так как нужна 32-разрядная шина данных, что могут дать только четыре параллельных микросхемы. Распространенные PB 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 по одному. Установка модулей памяти или микросхем кэша в количестве больше минимального позволяет некоторым платам ускорить работу с ними, используя принцип расслоения (Interleave - чередование).
Время доступа характеризует скорость работы микросхемы и обычно указывается в наносекундах через тире в конце наименования. На более медленных динамических микросхемах могут указываться только первые цифры (-7 вместо -70, -15 вместо -150), на более быстрых статических "-15" или "-20" обозначают реальное время доступа к ячейке. Часто на микросхемах указывается минимальное из всех возможных времен доступа - например, распространена маркировка 70 нс EDO DRAM, как 50, или 60 нс - как 45, хотя такой цикл достижим только в блочном режиме, а в одиночном режиме микросхема по-прежнему срабатывает за 70 или 60 нс. Аналогичная ситуация имеет место в маркировке PB SRAM: 6 нс вместо 12, и 7 - вместо 15. Микросхемы SDRAM обычно маркируются временем доступа в блочном режиме (10 или 12 нс).
Ниже приведены примеры типовых маркировок микросхем памяти; в обозначении обычно (но не всегда) присутствует объем в килобитах и/или структура (разрядность адреса и данных).
Статические:
61256 - 32k*8 (256 кбит, 32 кб)
62512 - 64k*8 (512 кбит, 64 кб)
32C32 - 32k*32 (1 Мбит, 128 кб)
32C64 - 64k*32 (2 Мбит, 256 кб)Динамические:
41256 - 256k*1 (256 кбит, 32 кб)
44256, 81C4256 - 256k*4 (1 Мбит, 128 кб)
411000, 81C1000 - 1M*1 (1 Мбит, 128 кб)
441000, 814400 - 1M*4 (4 Мбит, 512 кб)
41C4000 - 4M*4, (16 Мбит, 2 Мб)
MT4C16257 - 256k*16 (4 Мбит, 512 кб)
MT4LC16M4A7 - 16M*8 (128 Мбит, 16 Мб)
MT4LC2M8E7 - 2M*8 (16 Мбит, 2 Мб, EDO)
MT4C16270 - 256k*16 (4 Мбит, 512 кб, EDO)Микросхемы EDO часто (но далеко не всегда) имеют в обозначении "некруглые" числа: например, 53C400 - обычная DRAM, 53C408 - EDO DRAM.