Электронный документооборот страхового общества
сводится к следующему: они считают, что как CISC, так и RISC–архитектуры
исчерпали себя.
Небольшой экскурс в прошлое. Архитектура х86 компании Intel — CISC
архитектура, появившаяся в 1978 году. В те времена процессоры представляли
собой скалярные устройства (то есть могли в каждый момент времени выполнять
только одну команду), при этом конвейеров практически не было. Процессоры
содержали десятки тысяч транзисторов. PA–RISC компании HP была разработана
в 1986 году, когда технология суперскалярных (с возможностью выполнения
нескольких команд одновременно) конвейеров только начала развиваться.
Процессоры содержали сотни тысяч транзисторов. В конце 90–х наиболее
совершенные процессоры содержат миллионы транзисторов. К моменту начала
выпуска Merced компания Intel планирует перейти на 0.18–микронную
технологию вместо нынешней 0.25–микронной. Уже первые чипы архитектуры
IA–64 будут содержать десятки миллионов транзисторов. В дальнейших
модификациях их число увеличится до сотен миллионов.
Разработчики процессоров стремятся создавать чипы, содержащие как можно
больше функциональных узлов — что позволяет обрабатывать больше команд
параллельно — но одновременно приходится существенно усложнять управляющие
цепи для распределения потока команд по обрабатывающим узлам. На данный
момент лучшие процессоры не могут выполнять более четырёх команд
одновременно, при этом управляющая логика занимает слишком много места на
кристалле.
В то же время, последовательная структура кода программ и большая
частота ветвлений делают задачу распределения потока команд крайне сложной.
Современные процессоры содержат огромное количество управляющих элементов
для того, чтобы минимизировать потери производительности, связанные с
ветвлениями, и извлечь как можно больше «скрытого параллелизма» из кода
программ. Они изменяют порядок команд во время исполнения программы,
пытаются предсказать, куда необходимо будет перейти в результате очередного
ветвления, и выполняют команды до вычисления условий ветвления. Если путь
ветвления предсказан неверно, процессор должен сбросить полученные
результаты, очистить конвейеры и загрузить нужные команды, что требует
достаточно большого числа тактов. Таким образом, процессор, теоретически
выполняющий четыре команды за такт, на деле выполняет менее двух.
Проблему ещё осложняет тот факт, что микросхемы памяти не успевают за
тактовой частотой процессоров. Когда Intel разработала архитектуру х86,
процессор мог извлекать данные из памяти с такой же скоростью, с какой он
их обрабатывал. Сегодня процессор тратит сотни тактов на ожидание загрузки
данных из памяти, даже несмотря на наличие большой и быстрой кэш–памяти.
[pic]
Говоря о том, что CISC– и RISC–архитектуры исчерпали себя, Intel и HP
имеют в виду обе эти проблемы. В двух пространных интервью журналу BYTE они
раскрыли некоторые детали архитектуры IA-64:
- Команды в формате IA–64 упакованы по три в 128–битный пакет для
быстрейшей обработки. Обычно это называют «LIW encoding» (русский
аналог подобрать сложно, наиболее адекватно перевести как
«кодирование в длинные слова команд»). Однако компания Intel
избегает такого названия, заявляя, что с ним связаны «негативные
ассоциации» (negative connotation). По той же причине Intel не любит
называть сами команды RISC–подобными (RISC–like), даже несмотря на
то, что они имеют фиксированную длину и предположительно
оптимизированы для исполнения за один такт в ядре, не нуждающемся в
микрокоде. Intel предпочитает называть свою новую LIW–технологию
Explicitly Parallel Instruction Computing или EPIC (Полностью
Параллельного Выполнения Команд). В любом случае формат команд IA–64
не имеет ничего общего с х86. Команды х86 могут иметь длину от 8 до
108 бит, и процессор должен последовательно декодировать каждую
команду после определения её границ.
- Каждый 128–битный пакет содержит шаблон (template) длиной в
несколько бит, помещаемый в него компилятором, который указывает
процессору, какие из команд могут выполняться параллельно. Теперь
процессору не нужно будет анализировать поток команд в процессе
выполнения для выявления «скрытого параллелизма». Вместо этого
наличие параллелизма определяет компилятор и помещает информацию в
код программы. Каждая команда (как для целочисленных вычислений, так
и для вычислений с плавающей точкой) содержит три 7–битных поля
регистра общего назначения (РОН). Из этого следует, что процессоры
архитектуры IA–64 содержат 128 целочисленных РОН и 128 регистров для
вычислений с плавающей точкой. Все они доступны программисту и
являются регистрами с произвольным доступом (programmer-visible
random–access registers). По сравнению с процессорами х86, у которых
всего восемь целочисленных РОН и стек глубины 8 для вычислений с
плавающей точкой, IA–64 намного «шире» и, соответственно, будет
намного реже простаивать из-за «нехватки регистров».
- Компиляторы для IA–64 будут использовать технологию «отмеченных
команд» (predication) для устранения потерь производительности из–за
неправильно предсказанных переходов и необходимости пропуска
участков кода после ветвлений. Когда процессор встречает
«отмеченное» ветвление в процессе выполнения программы, он начинает
одновременно выполнять все ветви. После того, как будет определена
«истинная» ветвь, процессор сохраняет необходимые результаты и
сбрасывает остальные.
- Компиляторы для IA–64 будут также просматривать исходный код с целью
поиска команд, использующих данные из памяти. Найдя такую команду,
они будут добавлять пару команд — команду предварительной загрузки
(speculative loading) и проверки загрузки (speculative check). Во
время выполнения программы первая из команд загружает данные в
память до того, как они понадобятся программе. Вторая команда
проверяет, успешно ли произошла загрузка, перед тем, как разрешить
программе использовать эти данные. Предварительная загрузка
позволяет уменьшить потери производительности из-за задержек при
доступе к памяти, а также повысить параллелизм.
[pic]
Из всего вышесказанного следует, что компиляторы для процессоров
архитектуры IA-64 должны быть намного «умнее» и лучше знать
микроархитектуру процессора, код для которого они вырабатывают.
Существующие чипы, в том числе и RISC–процессоры, производят гораздо больше
оптимизации на этапе выполнения программ, даже при использовании
оптимизирующих компиляторов. IA–64 перекладывает практически всю работу по
оптимизации потока команд на компилятор. Таким образом, программы,
скомпилированные для одного поколения процессоров архитектуры IA–64, на
процессорах следующего поколения без перекомпиляции могут выполняться
неэффективно. Это ставит перед поставщиками нелёгкую задачу по выпуску
нескольких версий исполняемых файлов для достижения максимальной
производительности.
Другим не очень приятным следствием будет увеличение размеров кода, так
как команды IA–64 длиннее, чем 32–битные RISC–команды (порядка 40 бит).
Компиляция при этом будет занимать больше времени, поскольку IA–64, как уже
было сказано, требует от компилятора гораздо больше действий. Intel и HP
заявили, что уже работают совместно с поставщиками средств разработки над
переработкой этих программных продуктов.
Технология «отмеченных команд» является наиболее характерным примером
«дополнительной ноши», перекладываемой на компиляторы. Эта технология
является центральной для устранения ветвлений и управления параллельным
выполнением команд.
Обычно компилятор транслирует оператор ветвления (например,
IF–THEN–ELSE) в блоки машинного кода, расположенные последовательно в
потоке. В зависимости от условий ветвления процессор выполняет один из этих
блоков и перескакивает через остальные. Современные процессоры стараются
предсказать результат вычисления условий ветвления и предварительно
выполняют предсказанный блок. При этом в случае ошибки много тактов
тратится впустую. Сами блоки зачастую весьма малы — две или три команды — а
ветвления встречаются в коде в среднем каждые шесть команд. Такая структура
кода делает крайне сложным его параллельное выполнение.
Когда компилятор для IA–64 находит оператор ветвления в исходном коде,
он исследует ветвление, определяя, стоит ли его «отмечать». Если такое
решение принято, компилятор помечает все команды, относящиеся к одному пути
ветвления, уникальным идентификатором, называемым предикатом (predicate).
Например, путь, соответствующий значению условия ветвления TRUE, помечается
предикатом Р1, а каждая команда пути, соответствующего значению условия
ветвления FALSE — предикатом Р2. Система команд IA–64 определяет для каждой
команды 6–битное поле для хранения этого предиката. Таким образом,
одновременно могут быть использованы 64 различных предиката. После того,
как команды «отмечены», компилятор определяет, какие из них могут
выполняться параллельно. Это опять требует от компилятора знания
архитектуры конкретного процессора, поскольку различные чипы архитектуры
IA–64 могут иметь различное число и тип функциональных узлов. Кроме того,
компилятор, естественно, должен учитывать зависимости в данных (две
команды, одна из которых использует результат другой, не могут выполняться
параллельно). Поскольку каждый путь ветвления заведомо не зависит от
других, какое–то «количество параллелизма» почти всегда будет найдено.
Заметим, что не все ветвления могут быть отмечены: так, использование
динамических методов вызова приводит к тому, что до этапа выполнения
невозможно определить, возникнет ли исключение. В других случаях применение
этой технологии может привести к тому, что будет затрачено больше тактов,
чем сэкономлено.
После этого компилятор транслирует исходный код в машинный и
упаковывает команды в 128–битные пакеты. Шаблон пакета (bundle's template
field) указывает не только на то, какие команды в пакете могут выполняться
независимо, но и какие команды из следующего пакета могут выполняться
параллельно. Команды в пакетах не обязательно должны быть расположены в том
же порядке, что и в машинном коде, и могут принадлежать к различным путям
ветвления. Компилятор может также помещать в один пакет зависимые и
независимые команды, поскольку возможность параллельного выполнения
определяется шаблоном пакета. В отличие от некоторых ранее существовавших
архитектур со сверхдлинными словами команд (VLIW), IA–64 не добавляет
команд «нет операции» (NOPS) для дополнения пакетов.
Во время выполнения программы IA–64 просматривает шаблоны, выбирает
взаимно независимые команды и распределяет их по функциональным узлам.
После этого производится распределение зависимых команд. Когда процессор
обнаруживает «отмеченное» ветвление, вместо попытки предсказать значение
условия ветвления и перехода к блоку, соответствующему предсказанному пути,
процессор начинает параллельно выполнять блоки, соответствующие всем
возможным путям ветвления. Таким образом, на машинном уровне ветвления нет.
Разумеется, в какой-то момент процессор наконец вычислит значение
условия ветвления в операторе IF–THEN–ELSE. Предположим, оно равно TRUE,
следовательно, правильный путь отмечен предикатом Р1. 6–битному полю
предиката соответствует набор из 64 предикатных регистров (predicate
registers) Р0–Р63 длиной 1 бит. Процессор записывает 1 в регистр Р1 и 0 во
все остальные.
К этому времени процессор, возможно, уже выполнил некоторое количество
команд, соответствующих обоим возможным путям, но до сих пор не сохранил
результат. Перед тем, как сделать это, процессор проверяет соответствующий
предикатный регистр. Если в нём 1 — команда верна и процессор завершает её
выполнение и сохраняет результат. Если 0 — результат сбрасывается.
Технология «отмеченных команд» существенно снижает негативное влияние
ветвлений на машинном уровне. В то же время, если компилятор не «отметил»
ветвление, IA–64 действует практически так же, как и современные
процессоры: пытается предсказать путь ветвления и т.д. Испытания показали,
что описанная технология позволяет устранить более половины ветвлений в
типичной программе, и, следовательно, уменьшить более чем в два раза число
возможных ошибок в предсказаниях.
Другой ключевой особенностью IA–64 является предварительная загрузка
данных. Она позволяет не только загружать данные из памяти до того, как они
понадобятся программе, но и генерировать исключение только в случае, если
загрузка прошла неудачно. Цель предварительной загрузки — разделить
собственно загрузку и использование данных, что позволяет избежать простоя
процессора. Как и в технологии «отмеченных команд» здесь также сочетается
оптимизация на этапе компиляции и на этапе выполнения.
Сначала компилятор просматривает код программы, определяя команды,
использующие данные из памяти. Везде, где это возможно, добавляется команда
предварительной загрузки на достаточно большом расстоянии перед командой,
использующей данные и команда проверки загрузки непосредственно перед
командой, использующей данные.
На этапе выполнения процессор сначала обнаруживает команду
предварительной загрузки и, соответственно, пытается загрузить данные из
памяти. Иногда попытка оказывается неудачной — например, команда, требующая
данные, находится после ветвления, условия которого ещё не вычислены.
«Обычный» процессор тут же генерирует исключение. IA–64 откладывает
генерацию исключения до того момента, когда встретит соответствующую
команду проверки загрузки. Но к этому времени условия ветвления,
вызывавшего исключение, уже будут вычислены. Если команда, инициировавшая
предварительную загрузку, относится к неверному пути, загрузка признается
неудачной и генерируется исключение. Если же путь верен, то исключение
вообще не генерируется. Таким образом, предварительная загрузка в
архитектуре IA–64 работает аналогично структуре типа TRY–CATCH.
Возможность располагать команду предварительной загрузки до ветвления
очень существенна, так как позволяет загружать данные задолго до момента
использования (напомним, что в среднем каждая шестая команда является
командой ветвления).
В 80–е годы некоторые разработчики RISC–процессоров высмеивали
CISC–архитектуру и предрекали скорую погибель семейству х86. Но технологии
и бизнес — разные вещи. Несмотря на технологические преимущества
RISC–архитектуры, огромные ресурсы корпорации Intel и господство
операционных систем DОS и Windows привели к тому, что процессоры
архитектуры х86 остаются конкурентоспособными до сих пор. Теперь уже Intel
заявляет, что RISC–архитектура устарела. В любом случае, до выхода в свет
первого процессора архитектуры IA–64 остаётся ещё два года, и у конкурентов
есть время принять ответные меры.
Материнские платы, наборы микросхем
Intel 430TX PCIset
18 марта 1997 г. официально появились пробные образцы нового чипсета
пятого поколения от Intel — 430TX. Этот чипсет рассчитан для применения в
настольных и мобильных системах. Для изготовления применена передовая
двухчиповая технология — TDP:82439TX, PIIX4:82371AB.
Этот чипсет приходит на смену i430VX, но к сожалению не на смену
i430HX. Новый чипсет не поддерживает (официально) более 66MHz по шине, и не
кэширует более 64Mb оперативной памяти. Однако уменьшено, как и ожидалось,
количество тактов на синхронной памяти.
Характеристика i430TX:
Поддержка:
- DRAM support: SDRAM, EDO, FPM
- Ultra DMA / ATA–33 (DMA Bus master support)
- USB support
- Concurrent PCI (PCI 2.1)
- Dynamic Power Management Architecture (DPMA) с поддержкой Advanced
Configuration and Power Interface (ACPI), снижает потребление
энергии микросхемами на 75%
- SMBUS (System Management Bus)
Встроенные функции:
- PCI–ISA Bridge
- Standart AT functions
- real–time clock (RTC)
- IDE и GPIO ports (Master/Slave independent drive timing)
Положительные качества:
- Max L2 Cache size — 512Kb Pipelined Burst SRAM
- Max DRAM size — 256Mb (6 RAS lines)
- Max Cacheable DRAM — 64Mb
- DRAM Timing at 66MHz Bus speed
|FPM RAM |5-3-3-3 |
|EDO RAM |5-2-2-2 |
|BEDO RAM |n/a |
|SDRAM |5-1-1-1 |
- DRAM refresh — CAS before RAS
- Максимальное число мастер–устройств PCI — 5
- Число буферов между PCI и DRAM, POST – 10DW=40Byte
- Число буферов между PCI и DRAM, Prefetch – 18DW=72Byte
Отрицательные качества:
- Поддержка Dual/Multi процессорной конфигурации — НЕТ
- Поддержка кода коррекции ошибок памяти (DRAM ECC) — НЕТ
- Поддержка AGP (Accelerated Graphics Port) — НЕТ
Intel 440LX AGPset
В сочетании с архитектурой двойной независимой шины (DIB) процессора
Pentium II набор микросхем 440LX AGPset призван стать фундаментальной
аппаратной основой нового класса ПК на базе Slot 1 (вместо чипсета i440FX),
ориентированных на визуальную обработку.
Новый набор микросхем разработан с целью оптимизации и балансировки
системной производительности, вклад в которую дает как сам процессор
Pentium II, так и другие компоненты вычислительной платформы, включая
графическую подсистему и оперативную память. Он представляет собой
уникальный вариант оптимизированной архитектуры, получившей название «порта
с учетверенным быстродействием» (QPA). К числу основных компонентов QPA
относятся: AGP с прямым подсоединением (Direct Connect AGP), система
динамического распределенного арбитража (Dynamic Distributed Arbitration) и
средства многопоточного доступа к памяти (Multistream Memory Access). QPA в
сочетании с процессором Pentium II и AGP поддерживает масштабирование
производительности ПО трехмерной графики, в том числе компьютерных игр и
иных развлекательных приложений, обучающих программ, систем обработки
оцифрованных изображений.
Процессор Pentium II и набор микросхем 440LX AGPset можно рассматривать
как «строительные блоки», ориентированные на разработку сбалансированных
вычислительных платформ с высокой производительностью и средствами сетевого
управления для универсальных ПК и Net PC, применяемых в деловой сфере.
Помимо QPA, микросхемы 440LX AGPset обладают рядом функций и характеристик,
позволяющих удовлетворить требования к ПК со стороны как существующих, так
и будущих приложений. Новые микросхемы дадут возможность оснастить
персональные компьютеры усовершенствованным интерфейсом для контроля за
энергопотреблением (ACPI), средствами поддержки технологии plug-and-play,
компонентами Ultra DMA (на базе контроллера PIIX4, используемом также в
чипсете i430TX) в целях ускорения прямого доступа к памяти и модулями
SDRAM, позволяющими повысить системную производительность. Поддержка
интерфейса ACPI позволит изготовителям ПК дополнить свою продукцию сетевыми
функциями управления энергопотреблением, вывода компьютера из неактивного
состояния либо его дистанционного поддержания в постоянно включенном
(AlwaysOn) режиме.
Запущенный в массовое производство набор микросхем Intel 440LX AGPset
состоит из двух чипов: контроллера PCI AGP Controller (PAC) в корпусе типа
492 BGA и акселератора PCI, ISA, IDE Accelerator (PIIX4) в корпусе типа 324
BGA.
Характеристика i440LX:
Поддержка:
- Один или два процессора семейства Pentium–II
- Частота шины AGP до 133МГц
- 64/72–битный интерфейс системной памяти, поддерживающий SDRAM
- Аппаратный контроль четности (ECC)
- 32–битный интерфейс PCI 2.1
- Поддержка 64–битной спецификации шины GTL+
- Буферизация всех интерфейсов для повышения пропускной способности
Контроллер системной памяти:
- Поддержка EDO и SDRAM
- Контроллер системной памяти оптимизирован для SDRAM
- Поддержка от 8 до 512Мбайт системной памяти
- Симметрическая и асимметрическая адресация
- Поддержка однобанковых и двубанковых модулей DIMM
- Поддержка 4, 16 и 64Мбит микросхем памяти
- Для асинхронных операций время доступа 50 и 60 нс, для синхронной
SDRAM – частота 66МГц
Контроллер ввода/вывода PIIX4:
- Совместимость со спецификацией PCI 2.1
- Поддержка спецификаций ACPI и PC97
- DMA–контроллер
- Поддержка внешних APIC-компонент
- Поддержка 2-х портов USB
- Поддержка модулей DIMM со стороны SMB (System Management Bus)
- Интегрированный IDE–контроллер с поддержкой Ultra DMA–33
Сравнение i440LX и i440FX:
| |440FX |440LX |
|AGP |No |Yes |
|SDRAM |No |Yes |
|EDO |Yes |Yes |
|66Mhz Bus |Yes |Yes |
|ECC |Yes |Yes |
|DRAM Bank No.(max) |8 |8 |
|Max. memory per bank|128MB |128MB |
|Ultra DMA-33 |No |Yes |
|ACPI |No |Yes |
|I2C(SMBus) |No |Yes |
Чипсет Intel 440BX
Спустя полгода с появления революционного чипсета Intel 440LX, в
котором был впервые применен ускоренный графический порт AGP и
поддерживалась память SDRAM, 15 апреля Intel выбросила на рынок свой новый
продукт — набор логики Intel 440BX. Выпуск этого набора микросхем
ознаменует начало нового этапа в развитии Slot 1 систем. Это будет эра
наращивания частоты системной шины, которая уже на протяжении нескольких
лет задержалась на отметке 66 МГц. Новый чипсет Intel 440BX предназначен
для материнских плат для процессора Pentium II и поддерживает внешнюю
частоту (системной шины) 100 МГц. На этой частоте работает, в частности,
системная память.
Собственно, в официальной поддержке 100–мегагерцовой шины и заключается
основное отличие интеловских чипсетов 440LX и 440BX.
Характеристика Intel 82440BX AGPSet
Процессор
- Поддержка всех Slot–1 процессоров Pentium II
- Возможность двухпроцессорности, поддержка SMP
Поддержка памяти типа EDO RAM и SDRAM
- Максимально поддерживается до 512 Мбайт SDRAM или 1024 Мбайт EDO RAM
- Временная диаграмма для EDO RAM 5-2-2-2 (при внешней частоте 66 МГц)
- Временная диаграмма для SDRAM 5-1-1-1 (при внешней частоте 66 МГц)
- 64–битная шина памяти
- Поддержка ECC
PIIX4 IDE-контроллер
- Чип 82371AB
- Поддержка Bus Mastering
- Поддержка UltraDMA
- Работа в режимах PIO Mode 5/DMA Mode 3
Синхронный интерфейс PCI
- Поддерживается 30 и 33 МГц на шине PCI
- Соответствие спецификации PCI 2.1
- Power Management
- Соответствие PC97
Ускоренный графический порт AGP
- Поддерживается AGP 1х/2x mode (66/133 МГц)
- Поддержка Unified Memory Architecture отсутствует
Поддержка USB
1 x 492–pin BGA чип 82443BX
Поддерживаемые частоты системной шины 66 и 100 МГц
Благодаря разгону, и на 440LX можно было получить 75, 83 или даже 92
МГц внешней частоты, но 440ВХ поддерживает 100 МГц официально, а путем
разгона частота шины повышается до 103, 112, 133 МГц: основные
производители материнских плат предоставят нам такую возможность.
Здесь следует заметить, что поскольку кэш второго уровня в Pentium II
работает на 1/2 от частоты самого процессора, то разгон системной шины на
нем никак не сказывается. Однако же, благодаря этому факту, выпускаемые
сейчас Pentium II смогут легко работать на шине 100 МГц. При этом
применяемые сейчас Intel меры против разгона — наличие только одного
коэффициента умножения — действия не возымеют. Правда, при этом эффект от
такого разгона будет несколько ниже, чем при аналогичных действиях с
Socket–7 чипами.
Раз так, то попробуем разобраться, какие преимущества может в
действительности дать новый интеловский набор микросхем.
Во-первых при использовании 440LX не гарантировалось, что при частоте
шины более 66 МГц система будет работоспособна. Проблема заключалась в том,
что для получения несущей частоты на шине PCI использовался делитель 2
относительно шины и при установке внешних 75 МГц, на PCI получалось 37,5
МГц, что на 15% выше стандарта, при установке внешних 83 МГц — на PCI было
41,5 МГц, то есть выше нормы на 25%. При этом многие PCI–карты, в
особенности SCSI–контроллеры, теряли свою работоспособность. Теперь таких
проблем не будет. Хотя, при этом периферия разгоняться не будет совсем, и
скорость видео и жесткого диска при разгоне не возрастет.
Чипсет Intel 440BX поддерживает кроме делителя 2 для PCI еще и делитель
3, который применяется на внешних частотах выше 100 МГц включительно. Так
что если, все-таки материнская плата позволяет установить 75 и 83 МГц, то
по сравнению с 440LX Вы ничего не потеряете. Однако, некоторые LX–платы
имели установку 92 МГц. Такого с BX пока не будет.
Второе, на этот раз неоспоримое преимущество 440BX, заключается в том,
что этот чипсет будет поддерживать все выходящие процессоры Deschutes с
большими внутренними частотами.
Однако и существующие в настоящее время Pentium–II процессоры будут
работать на материнских платах с набором логики Intel 440BX, что
немаловажно. Это возможно, так как частотозависимый L2-кеш в Pentium II
тактуется от внутренней частоты, а не от шины.
Что же станет с производительностью? Те тесты, которые мы проводили с
Socket 7–процессорами, на предмет исследования эффективности
100–мегагерцовой шины, показали 15–процентный прирост производительности на
одинаковых внутренних частотах, но с внешними 66 и 100 МГц. Но не надо
забывать о том, что используя 100 МГц на Socket-7, мы разгоняем и внешний
кэш. В 440ВХ, L2-кеш не ускоряется, поэтому прирост производительности при
применении 100–мегагерцовой шины составит, по нашим оценкам, не более 7%.
Возможно, некоторые материнские платы на чипсете ВХ будут иметь
недокументированно–устанавливаемую частоту 150 МГц. Если так, то прирост
может оказаться побольше. Но в любом случае, уже через год будет вовсю
применяться системная шина 200 МГц, которая будет поддержана процессором
Katmai, что вполне возможно благодаря новому типу памяти RAMBUS, которая
способна работать на такой частоте.
Пока же, проблема с памятью приобретает особый вес и не может быть
обойдена. Дело в том, что существующая сейчас память работает на 100 МГц с
большим трудом. Intel хочет добиться внедрения спецификации PC100 на
память, которая требует специально изготовленных модулей. Однако,
эксперименты показали, что на 100 МГц может прекрасно работать любая память
со временем доступа 7 нс или брендовая память со временем доступа 10 нс.
Правда, тут есть одна тонкость. Спецификация PC100 требует наличия SPD на
модуле. При его отсутствии, система может не работать вовсе, примерно как
сейчас это делают интеловские платы на чипсете 440LX. Но, к счастью, SPD
используется не чипсетом, а BIOS, который, в принципе, может к SPD и не
обращаться. Так что в этом вопросе вся надежда на производителей
материнских плат, чтобы они не начали рьяно исполнять интеловскую
рекомендацию.
Так что ничего революционно нового в Intel 440BX нет. А вот что
действительно интересно, это новый IDE–контроллер PIIX6, который появится
через несколько месяцев. А это Firewire и UltraDMA-66.
Оперативная память
Системная память: взгляд в будущее
До 2000 года в мир персональных компьютеров войдет несколько новых
архитектур высокоскоростной памяти. В настоящее время, с конца 1997 года по
начало 1998 основная память PC осуществляет эволюцию от EDO RAM к SDRAM —
синхронную память, которая, как ожидается будет доминировать на рынке с
конца 1997 года. Графические и мультимедийные системы в которых сегодня
применяется RDRAM перейдет к концу года на Concurrent (конкурентную) RDRAM.
Итак, в период между 1997 и 2000 годом будут развиваться пять основных
технологий:
- SDRAM II (DDR);
- SLDRAM (SyncLink);
- RAMBus (RDRAM);
- Concurrent RAMBus;
- Direct RAMBus.
График, приведенный ниже, приближенно демонстрирует время появления и
применения будущих технологий памяти.
[pic]
Крайне сложно предсказать, на чем остановится прогресс. Все десять
крупнейших производителей памяти, такие как Samsung, Toshiba и Hitachi,
разрабатывающие Direct RDRAM, также продолжают развивать агрессивную
политику, направленную на развитие альтернативных технологий памяти
следующих поколений, таких как DDR и SLDRAM. В связи с этим образовалось
любопытное объединение конкурентов.
Необходимость увеличения производительности системы памяти.
Быстрое развитие аппаратных средств и программного обеспечения привело
к тому, что вопрос эффективности встает на первое место. Фактически,
несколько лет назад, Гордон Мур, президент корпорации Intel, предсказал,
что мощность центрального процессора в персональном компьютере будет
удваиваться каждые 18 месяцев (Закон Мура). Мур оказался прав. С 1980 года
до настоящего момента тактовая частота процессора Intel, установленного в
персональном компьютере возросла в 60 раз (с 5 до 300MHz). Однако, за то же
время, частота, на которой работает системная память со страничной
организацией (FPM), возросла всего в пять раз. Даже применение EDO RAM и
SDRAM увеличило производительность системы памяти всего в десять раз. Таким
образом, между производительностью памяти и процессора образовался разрыв.
В то время как процессоры совершенствовались в архитектуре, производство
памяти претерпевало лишь технологические изменения. Емкость одной
микросхемы DRAM увеличилась с 1Мбит до 64Мбит. Это позволило наращивать
объем применяемой в компьютерах памяти, но изменения технологии в плане
увеличения производительности DRAM не произошло. То есть, скорость передачи
не увеличилась вслед за объёмом.
Что касается потребностей, то вследствие применения нового программного
обеспечения и средств мультимедиа, потребность в быстродействующей памяти
нарастала. С увеличением частоты процессора, и дополнительным
использованием средств мультимедиа новым программным обеспечением, не далек
тот день, когда для нормальной работы PC будут необходимы гигабайты памяти.
На этот процесс также должно повлиять внедрение и развитие современных
операционных систем, например Windows NT.
Чтобы преодолеть возникший разрыв, производители аппаратных средств
использовали различные методы. SRAM (Static RAM) применялся в кэше для
увеличения скорости выполнения некоторых программ обработки данных. Однако
для мультимедиа и графики его явно недостаточно. Кроме того, расширилась
шина, по которой осуществляется обмен данными между процессором и DRAM.
Однако теперь эти методы не справляются с нарастающими потребностями в
скорости. Теперь на первое место выходит необходимость синхронизации
процессора с памятью, однако, существующая технология не позволяет
осуществить этот процесс.
Следовательно, возникает необходимость в новых технологиях памяти,
которые смогут преодолеть возникший разрыв. Кроме SDRAM, это DDR, SLDRAM,
RDRAM, Concurrent RDRAM, и Direct RDRAM.
Шесть технологий памяти будущего. Определения
SDRAM Synchronous (синхронная) DRAM синхронизирована с системным таймером,
управляющим центральным процессором. Часы, управляющие
микропроцессором, также управляют работой SDRAM, уменьшая
временные задержки в процессе циклов ожидания и ускоряя
поиск данных. Эта синхронизация позволяет также контроллеру
памяти точно знать время готовности данных. Таким образом,
скорость доступа увеличивается благодаря тому, что данные
доступны во время каждого такта таймера, в то время как у
EDO RAM данные бывают доступны один раз за два такта, а у
FPM — один раз за три такта. Технология SDRAM позволяет
использовать множественные банки памяти, функционирующие
одновременно, дополнительно к адресации целыми блоками.
SDRAM уже нашла широкое применение в действующих системах.
SDRAM II (DDR) Synchronous DRAM II, или DDR (Double Data Rate — удвоенная
скорость передачи данных) — следующее поколение
существующей SDRAM. DDR основана на тех же самых принципах,
что и SDRAM, однако включает некоторые усовершенствования,
позволяющие еще увеличить быстродействие. Основные отличия
от стандартного SDRAM: во-первых используется более
«продвинутая» синхронизация, отсутствующая в SDRAM; а во-
вторых DDR использует DLL (delay–locked loop — цикл с
фиксированной задержкой) для выдачи сигнала DataStrobe,
означающего доступность данных на выходных контактах.
Используя один сигнал DataStrobe на каждые 16 выводов,
контроллер может осуществлять доступ к данным более точно и
синхронизировать входящие данные, поступающие из разных
модулей, находящихся в одном банке. DDR фактически
увеличивает скорость доступа вдвое, по сравнению с SDRAM,
используя при этом ту же частоту. В результате, DDR
позволяет читать данные по восходящему и падающему уровню
таймера, выполняя два доступа за время одного обращения
стандартной SDRAM. Дополнительно, DDR может работать на
большей частоте благодаря замене сигналов TTL/LVTTL на
SSTL3. DDR начнет производиться в 1998 году.
SLDRAM (SyncLink) продукт DRAM–консорциума, является ближайшим
конкурентом Rambus. Этот консорциум объединяет двенадцать
производителей DRAM. SLDRAM продолжает дальнейшее развитие
технологии SDRAM, расширяя четырёхбанковую архитектуру
модуля до шестнадцати банков. Кроме того, добавляется новый
интерфейс и управляющая логика, позволяя использовать
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
|