Intel P6

Поделись знанием:
(перенаправлено с «I686»)
Перейти к: навигация, поиск

P6 — суперскалярная суперконвейерная архитектура, разработанная компанией Intel и лежащая в основе микропроцессоров Pentium Pro, Pentium II, Pentium III, Celeron и Xeon. В отличие от x86-совместимых процессоров предыдущих поколений с CISC-ядром, процессоры архитектуры P6 имеют RISC-ядро, исполняющее сложные инструкции x86 не напрямую, а предварительно декодируя их в простые внутренние микрооперации.

Первым процессором архитектуры P6 стал анонсированный 1 ноября 1995 года процессор Pentium Pro, нацеленный на рынок рабочих станций и серверов. Процессоры Pentium Pro выпускались параллельно с процессорами архитектуры P5 (Pentium и Pentium MMX), предназначенными для персональных компьютеров. 7 мая 1997 года компанией Intel был анонсирован процессор Pentium II, пришедший на смену процессорам архитектуры P5.[1]

В 2000 году на смену архитектуре P6 на рынке настольных и серверных процессоров пришла архитектура NetBurst, однако архитектура P6 получила своё развитие в мобильных процессорах Pentium M и Core. В 2006 году на смену процессорам архитектуры NetBurst пришли процессоры семейства Core 2 Duo, архитектура которых также представляет собой развитие архитектуры P6.[2][3]





Функциональные устройства

Процессоры архитектуры P6 состоят из четырёх основных подсистем:

  • Подсистема упорядоченной предварительной обработки (англ. In-Order Front End, IOFE) — отвечает за выборку и декодирование инструкций в порядке, предусмотренном программой, и предсказывает переходы.
  • Ядро исполнения с изменением последовательности (англ. Out-of-Order Core, O2C) — отвечает за исполнение микроопераций в оптимальном порядке и организует взаимодействие исполнительных устройств.
  • Подсистема упорядоченного завершения (англ. In-Order Retirement, IOR) — выдаёт результаты исполнения в порядке, предусмотренном программой.
  • Подсистема памяти (англ. memory subsystem) — обеспечивает взаимодействие процессора с оперативной памятью.
Подсистема упорядоченной предварительной обработки

К устройствам этой подсистемы относятся:

  • Модуль и буфер предсказания переходов (Branch Target Buffer, BTB) — предсказывают переходы и хранят таблицу истории переходов. Для предсказания используются как динамический, так и статический методы. Последний используется в том случае, если динамическое предсказание невозможно (в таблице переходов отсутствует необходимая информация).
  • Декодер инструкций (Instruction Decoder) — преобразует CISC-инструкции x86 в последовательность RISC-микроопераций, исполняемых процессором. Включает два декодера простых инструкций (Simple), обрабатывающих команды, которые могут быть выполнены одной микрооперацией, и декодер сложных инструкций (Complex), обрабатывающего команды, для которых нужно несколько (до четырёх) микроопераций.
  • Планировщик последовательностей микроопераций (Microcode sequencer) — хранит последовательности микроопераций, используемые при декодировании сложных инструкций x86, требующих более четырёх микроопераций.
  • Блок вычисления адреса следующей инструкции (Next IP Unit) — вычисляет адрес инструкции (англ. instruction pointer, IP), которая должна быть обработана следующей, на основании информации о прерываниях и таблицы переходов.
  • Блок выборки инструкций (Instruction Fetch Unit, IFU) — осуществляет выборку инструкций из памяти по адресам, подготовленным блоком вычисления адреса следующей инструкции.

Процессоры на ядре Tualatin дополнительно содержат блок предвыборки инструкций (Prefetcher), который осуществляет предварительную выборку инструкций на основании таблицы переходов.

Ядро исполнения с изменением последовательности

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

  • Таблица назначения регистров (Register Alias Table) — задаёт соответствие между регистрами архитектуры x86/IA32 (Intel Architecture 32-bit) и внутренними регистрами, используемыми при исполнении микроопераций.
  • Буфер переупорядочивания микроопераций (Reorder Buffer) — обеспечивает выполнение микроопераций в оптимальной с точки зрения производительности последовательности.
  • Станция-резервуар (Reservation Station) — содержит инструкции, отправляемые на исполнительные устройства.

К исполнительным устройствам ядра относятся:

  • Арифметическо-логические устройства, АЛУ (Arithmetic Logic Unit, ALU) — выполняют целочисленные операции.
  • Блок арифметики с плавающей запятой (Floating Point Unit, FPU) — выполняет операции над числами с плавающей точкой. Процессоры Pentium III и выше имеют также блок, осуществляющий исполнение инструкций SSE (SIMD FPU).
  • Блок генерации адресов (Address Generation Unit, AGU) — вычисляет адреса данных, используемых инструкциями, и формирует запросы к кешу для загрузки/выгрузки этих данных.
Подсистема упорядоченного завершения
  • Регистровый файл (Register File) — хранит результаты операций (состояние регистров IA32 для исполняемых инструкций).
  • Буфер переупорядочивания памяти (Memory Reorder Buffer) — управляет порядком записи данных в память для предотвращения записи неверных данных из-за изменения порядка выполнения инструкций.
  • Блок завершения (Retirement Unit) — выдаёт результаты исполнения инструкций в той последовательности, в которой они поступили на исполнение.
Подсистема памяти
Объём L2 процессоров архитектуры P6
Объём (Кб) Процессоры
0 Celeron Covington
128 Celeron (Mendocino, Coppermine-128), Pentium III (Coppermine для приставки Xbox[4])
256 Pentium Pro, Pentium III (Coppermine, Tualatin-256), Xeon (Cascades)
512 Pentium Pro, Pentium II, Pentium III (Katmai, Tualatin), Xeon (Drake, Tanner)
1024 Pentium Pro, Xeon (Drake, Tanner)
2048 Xeon (Drake, Tanner, Cascades 2MB)

Подсистема памяти осуществляет взаимодействие с оперативной памятью. К этой подсистеме относятся:

  • Кэш первого уровня для данных (Level 1 Data Cache, L1D) — память с малым временем доступа объёмом 8 (для Pentium Pro) или 16 (для более новых процессоров) килобайт, предназначенная для хранения данных.
  • Кэш первого уровня для инструкций (Level 1 Instruction Cache, L1I) — память с малым временем доступа объёмом 8 (Pentium Pro) или 16 килобайт, предназначенная для хранения инструкций.
  • Кэш второго уровня (Level 2 Cache, L2). Память с малым временем доступа объёмом 128, 256, 512, 1024 или 2048 килобайт. Ширина шины L2 составляет 64 или 256 (для процессоров на ядре Coppermine и выше) бит. Процессоры Celeron на ядре Covington кэша второго уровня не имеют.
  • Блок шинного интерфейса (Bus Interface Unit) — управляет системной шиной.

Исполнение инструкции

Конвейер процессора Pentium Pro

Конвейер состоит из 12 стадий[5]:

  • IOFE(1—4) — определение адреса инструкции и её выборка.
  • IOFE(4—6) — декодирование.
  • IOFE7 — переименование регистров.
  • IOFE8 — запись микроопераций в станцию-резервуар.
  • O2C1 — передача микроопераций из станции-резервуара к исполнительным блокам.
  • O2C2 — исполнение микроопераций (один или несколько тактов).
  • IOR(1—2) — завершение инструкции: запись результатов в регистры.

Исполнение инструкции начинается с её выборки и декодирования. Для этого из кэш-памяти инструкций первого уровня по адресу из буфера предсказания переходов выбирается 64 байта (две строки). Из них 16 байт, начиная с адреса из блока вычисления адреса следующей инструкции, выравниваются и передаются в декодер инструкций, преобразующий инструкции x86 в микрооперации. Если инструкции соответствует одна микрооперация, декодирование проводит один из декодеров простых инструкций. Если инструкции соответствует две, три или четыре микрооперации, декодирование проводит декодер сложных инструкций. Если же инструкции соответствует большее число микроопераций, то они формируются планировщиком последовательностей микроопераций.

После декодирования инструкций производится переименование регистров, а микрооперации и данные помещаются в буфер — станцию резервирования, откуда в соответствии с оптимальным порядком исполнения и при условии определённости необходимых для их исполнения операндов направляются на исполнительные блоки (максимум 5 инструкций за такт). Статус исполнения микроопераций и его результаты хранятся в буфере переупорядочивания микроопераций, а так как результаты исполнения одних микроопераций могут служить операндами других, они также помещаются и в станцию резервирования.

По результатам исполнения микроопераций определяется их готовность к отставке (англ. retirement). В случае готовности происходит их отставка в порядке, предусмотренном программой, во время которой осуществляется обновление состояния логических регистров, а также отложенное сохранение результатов в памяти (управление порядком записи данных осуществляет буфер переупорядочивания памяти)[1].

Особенности архитектуры

Первые процессоры архитектуры P6 в момент выхода значительно отличались от существующих процессоров. Процессор Pentium Pro отличало применение технологии динамического исполнения (изменения порядка исполнения инструкций), а также архитектура двойной независимой шины (англ. Dual Independent Bus), благодаря чему были сняты многие ограничения на пропускную способность памяти, характерные для предшественников и конкурентов. Тактовая частота первого процессора архитектуры P6 составляла 150 МГц, а последние представители этой архитектуры имели тактовую частоту 1,4 ГГц. Процессоры архитектуры P6 имели 36-разрядную шину адреса, что позволило им адресовать до 64 ГБ памяти (при этом линейное адресное пространство процесса ограничено 4 ГБ, см PAE).

Суперскалярный механизм исполнения инструкций с изменением их последовательности

Принципиальным отличием архитектуры P6 от предшественников является RISC-ядро, работающее не с инструкциями x86, а с простыми внутренними микрооперациями. Это позволяет снять множество ограничений набора команд x86, таких как нерегулярное кодирование команд, переменная длина операндов и операции целочисленных пересылок регистр-память[1]. Кроме того, микрооперации исполняются не в той последовательности, которая предусмотрена программой, а в оптимальной с точки зрения производительности, а применение трёхконвейерной обработки позволяет исполнять несколько инструкций за один такт[6].

Суперконвейеризация

Процессоры архитектуры P6 имеют конвейер глубиной 12 стадий. Это позволяет достигать более высоких тактовых частот по сравнению с процессорами, имеющими более короткий конвейер при одинаковой технологии производства. Так, например, максимальная тактовая частота процессоров AMD K6 на ядре (глубина конвейера — 6 стадий, 180 нм. технология) составляет 550 МГц, а процессоры Pentium III на ядре Coppermine способны работать на частоте, превышающей 1000 МГц.

Для того, чтобы предотвратить ситуацию ожидания исполнения инструкции (и, следовательно, простоя конвейера), от результатов которого зависит выполнение или невыполнение условного перехода, в процессорах архитектуры P6 используется предсказание ветвлений. Для этого в процессорах архитектуры P6 используется сочетание статического и динамического предсказания: двухуровневый адаптивный исторический алгоритм (англ. Bimodal branch prediction) применяется в том случае, если буфер предсказания ветвлений содержит историю переходов, в противном случае применяется статический алгоритм[6][7].

Двойная независимая шина

С целью увеличения пропускной способности подсистемы памяти, в процессорах архитектуры P6 применяется двойная независимая шина. В отличие от предшествующих процессоров, системная шина которых была общей для нескольких устройств, процессоры архитектуры P6 имеют две раздельные шины: Back side bus, соединяющую процессор с кэш-памятью второго уровня, и Front side bus, соединяющую процессор с северным мостом набора микросхем[6].

Достоинства

Процессоры архитектуры P6 имели конвейеризованный математический сопроцессор (FPU), позволивший достичь превосходства над предшественниками и конкурентами в скорости вещественночисленных вычислений[8]. FPU процессоров архитектуры P6 оставался лучшим среди конкурентов до появления в 1999 году процессора AMD Athlon[9].

Кроме того, процессоры архитектуры P6 имели превосходство над конкурентами и в скорости работы с кэш-памятью второго уровня. Pentium Pro и Pentium II имели двойную независимую шину, в то время как конкурирующие процессоры (AMD K5, K6, Cyrix 6x86, M-II) — традиционную системную шину к которой подключался, в том числе, и кэш второго уровня[10]. С появлением процессоров Athlon, также использующих архитектуру с двойной независимой шиной, разрыв в производительности сократился, но 256-разрядная BSB процессоров Pentium III (начиная с ядра Coppermine) позволяла удерживать преимущество в скорости работы с кэш-памятью второго уровня над процессорами архитектуры K7, имевшими 64-разрядную BSB. Однако, устаревшая на тот момент системная шина процессоров архитектуры P6 в сочетании с большим объёмом кэш-памяти первого уровня у процессоров архитектуры K7 не позволяла получить преимущество в пропускной способности памяти[11].

Недостатки

Основным недостатком первых процессоров архитектуры P6 (Pentium Pro) была низкая производительность при работе с широко распространённым в то время 16-разрядным программным обеспечением. Это было связано с тем, что при работе с такими приложениями внеочередное исполнение инструкций было затруднено (так, например, процессор Pentium Pro не мог выполнить чтение из 32-битного регистра, если до этого была выполнена запись в его 16-битную младшую часть, а команда, выполнившая запись, не была отставлена[12]). В процессоре Pentium II этот недостаток был исправлен, что привело к увеличению производительности при работе с 16-разрядными программами более чем на треть[13].

Процессоры архитектуры P6 поддерживали работу в многопроцессорных системах, однако при этом использовалась разделяемая системная шина, что позволяло упростить трассировку системных плат, однако отрицательно сказывалось на производительности подсистемы процессор—память и ограничивало максимальное количество процессоров в системе[9][14].

Процессоры архитектуры P6

Процессор Ядро Технология производства Годы выпуска
Pentium Pro P6 КМОП/БиКМОП, 500—350 нм 19951998
Pentium II Klamath, Deschutes КМОП, 350—250 нм 19971999
Pentium III Katmai, Coppermine, Tualatin-256 КМОП, 250—130 нм 1999—2002
Pentium III-S Tualatin КМОП, 130 нм 2001—2002
Celeron Covington, Mendocino, Coppermine-128, Tualatin-256 КМОП, 250—130 нм 1998—2002
Pentium II Xeon Drake КМОП, 250 нм 1998—1999
Pentium III Xeon Tanner, Cascades, Cascades 2MB КМОП, 250—180 нм 1999—2001
 
Pentium Pro (P6) Pentium II (Deschutes) Pentium III (Coppermine) Pentium IIIS (Tualatin)
Pentium III Mobile Celeron (Mendocino) Celeron (Mendocino) Celeron (Coppermine-128)

Схема развития архитектур Intel

Напишите отзыв о статье "Intel P6"

Примечания

  1. 1 2 3 [www.ixbt.com/cpu/pentium4-1.html В ожидании Willamette — история архитектуры IA-32 и как работают процессоры семейства P6]
  2. [ixbt.com/cpu/intel-pentium-m-desktop.shtml Pentium M: хороший «десктопный» CPU… которого у нас не будет]. IXBT.com (26 июля 2005). Проверено 16 августа 2008. [www.webcitation.org/61BVud17u Архивировано из первоисточника 25 августа 2011].
  3. [www.ixbt.com/cpu/p6-nexgen.shtml Новое вино в старые мехи. Conroe: внук процессора Pentium III, племянник архитектуры NetBurst?]. IXBT.com (9 сентября 2005). Проверено 16 августа 2008. [www.webcitation.org/652Uk9QVn Архивировано из первоисточника 29 января 2012].
  4. В отличие от процессора Celeron на ядре Coppermine-128, имеющего 4-канальный ассоциативный кэш второго уровня, у этого процессора кэш 8-канальный. См.: «Мир игровых консолей. Часть пятая», журнал Upgrade, 2007, № 28 (325), стр. 24
  5. Jon Stokes. [arstechnica.com/articles/paedia/cpu/pentium-1.ars/6 The Pentium: An Architectural History of the World’s Most Famous Desktop Processor (Part I)] (англ.). Ars Technica (11 июля 2004). Проверено 19 августа 2008. [www.webcitation.org/652UlL7HB Архивировано из первоисточника 29 января 2012].
  6. 1 2 3 [www.fcenter.ru/online.shtml?articles/hardware/processors/1799 X86 архитектуры бывают разные…]
  7. www.pcmag.ru/issues/sub_detail.php?ID=10105&SUB_PAGE=8 — Наследие RISC: Предсказание переходов.
  8. [www.ixbt.com/cpu/intelvsamd.html Сравнение систем на базе Super Socket-7 и Slot-1]
  9. 1 2 [www.ixbt.com/cpu/amd-athlon.html Обзор процессора AMD Athlon 600 МГц]
  10. [www.ixbt.com/mainboard/pci.html Шина PCI (Peripheral Component Interconnect bus)] — см. схему
  11. [www.ixbt.com/cpu/1000-p3-vs-tb.html Процессоры с частотой 1000 МГц]
  12. Максим Лень: «АРХИТЕКТУРА Р6: НАСЛЕДИЕ ПОКОЛЕНИЙ» (опубликована на сайте fcenter.ru 22 ноября 2000 года) — [cp.people.overclockers.ru/cgi-bin/dl.pl?id=28608&filename=fcart.rar сохранённая копия]
  13. www.pcmag.ru/issues/sub_detail.php?ID=9935&SUB_PAGE=3 — Pentium: история продолжается.
  14. [www.fcenter.ru/online.shtml?articles/hardware/processors/1052 Двухпроцессорные Socket A системы на базе чипсета AMD 760MP]

Ссылки

Официальная информация

  • [processorfinder.intel.com/List.aspx?ProcFam=47&sSpec=&OrdCode= Официальная база данных по процессорам Pentium II] (англ.)
  • [www.intel.com/design/PentiumII/documentation.htm Документация по процессорам Pentium II] (англ.)
  • [www.intel.com/support/processors/mobile/pentiumII/ Документация по процессорам Mobile Pentium II]
  • [processorfinder.intel.com/List.aspx?ProcFam=25&sSpec=&OrdCode= Официальная база данных по процессорам Pentium III] (англ.)
  • [www.intel.com/support/processors/pentiumiii/ Документация по процессорам Pentium III] (англ.)
  • [www.intel.com/support/processors/mobile/pentiumiii/ Документация по процессорам Mobile Pentium III] (англ.)

Характеристики процессоров архитектуры P6

  • [sandpile.org/impl/p6.htm Характеристики процессоров Pentium Pro] (англ.)
  • [sandpile.org/impl/p6od.htm Характеристики процессоров Pentium II OverDrive] (англ.)
  • [sandpile.org/impl/p2.htm Характеристики процессоров Pentium II] (англ.)
  • [sandpile.org/impl/p3.htm Характеристики процессоров Pentium III] (англ.)

Обзоры процессоров

  • [www.ixbt.com/cpu/ppro_games.html Pentium Pro: Производительность в играх]
  • [www.ixbt.com/cpu/celeron.html Процессор Celeron]
  • [www.ixbt.com/cpu/pentiumiii.html Обзор процессора Intel Pentium III 500 МГц]
  • [www.ixbt.com/cpu/mendocino.html Mendocino: процессоры Celeron 300A и 333]
  • [www.ixbt.com/cpu/intel-coppermine.html Обзор процессоров Intel Pentium III 600E и 600EB c ядром Coppermine]


Отрывок, характеризующий Intel P6

– Вы не знаете, Болконский, – обратился Билибин к князю Андрею, – что все ужасы французской армии (я чуть было не сказал – русской армии) – ничто в сравнении с тем, что наделал между женщинами этот человек.
– La femme est la compagne de l'homme, [Женщина – подруга мужчины,] – произнес князь Ипполит и стал смотреть в лорнет на свои поднятые ноги.
Билибин и наши расхохотались, глядя в глаза Ипполиту. Князь Андрей видел, что этот Ипполит, которого он (должно было признаться) почти ревновал к своей жене, был шутом в этом обществе.
– Нет, я должен вас угостить Курагиным, – сказал Билибин тихо Болконскому. – Он прелестен, когда рассуждает о политике, надо видеть эту важность.
Он подсел к Ипполиту и, собрав на лбу свои складки, завел с ним разговор о политике. Князь Андрей и другие обступили обоих.
– Le cabinet de Berlin ne peut pas exprimer un sentiment d'alliance, – начал Ипполит, значительно оглядывая всех, – sans exprimer… comme dans sa derieniere note… vous comprenez… vous comprenez… et puis si sa Majeste l'Empereur ne deroge pas au principe de notre alliance… [Берлинский кабинет не может выразить свое мнение о союзе, не выражая… как в своей последней ноте… вы понимаете… вы понимаете… впрочем, если его величество император не изменит сущности нашего союза…]
– Attendez, je n'ai pas fini… – сказал он князю Андрею, хватая его за руку. – Je suppose que l'intervention sera plus forte que la non intervention. Et… – Он помолчал. – On ne pourra pas imputer a la fin de non recevoir notre depeche du 28 novembre. Voila comment tout cela finira. [Подождите, я не кончил. Я думаю, что вмешательство будет прочнее чем невмешательство И… Невозможно считать дело оконченным непринятием нашей депеши от 28 ноября. Чем то всё это кончится.]
И он отпустил руку Болконского, показывая тем, что теперь он совсем кончил.
– Demosthenes, je te reconnais au caillou que tu as cache dans ta bouche d'or! [Демосфен, я узнаю тебя по камешку, который ты скрываешь в своих золотых устах!] – сказал Билибин, y которого шапка волос подвинулась на голове от удовольствия.
Все засмеялись. Ипполит смеялся громче всех. Он, видимо, страдал, задыхался, но не мог удержаться от дикого смеха, растягивающего его всегда неподвижное лицо.
– Ну вот что, господа, – сказал Билибин, – Болконский мой гость в доме и здесь в Брюнне, и я хочу его угостить, сколько могу, всеми радостями здешней жизни. Ежели бы мы были в Брюнне, это было бы легко; но здесь, dans ce vilain trou morave [в этой скверной моравской дыре], это труднее, и я прошу у всех вас помощи. Il faut lui faire les honneurs de Brunn. [Надо ему показать Брюнн.] Вы возьмите на себя театр, я – общество, вы, Ипполит, разумеется, – женщин.
– Надо ему показать Амели, прелесть! – сказал один из наших, целуя кончики пальцев.
– Вообще этого кровожадного солдата, – сказал Билибин, – надо обратить к более человеколюбивым взглядам.
– Едва ли я воспользуюсь вашим гостеприимством, господа, и теперь мне пора ехать, – взглядывая на часы, сказал Болконский.
– Куда?
– К императору.
– О! о! о!
– Ну, до свидания, Болконский! До свидания, князь; приезжайте же обедать раньше, – пocлшaлиcь голоса. – Мы беремся за вас.
– Старайтесь как можно более расхваливать порядок в доставлении провианта и маршрутов, когда будете говорить с императором, – сказал Билибин, провожая до передней Болконского.
– И желал бы хвалить, но не могу, сколько знаю, – улыбаясь отвечал Болконский.
– Ну, вообще как можно больше говорите. Его страсть – аудиенции; а говорить сам он не любит и не умеет, как увидите.


На выходе император Франц только пристально вгляделся в лицо князя Андрея, стоявшего в назначенном месте между австрийскими офицерами, и кивнул ему своей длинной головой. Но после выхода вчерашний флигель адъютант с учтивостью передал Болконскому желание императора дать ему аудиенцию.
Император Франц принял его, стоя посредине комнаты. Перед тем как начинать разговор, князя Андрея поразило то, что император как будто смешался, не зная, что сказать, и покраснел.
– Скажите, когда началось сражение? – спросил он поспешно.
Князь Андрей отвечал. После этого вопроса следовали другие, столь же простые вопросы: «здоров ли Кутузов? как давно выехал он из Кремса?» и т. п. Император говорил с таким выражением, как будто вся цель его состояла только в том, чтобы сделать известное количество вопросов. Ответы же на эти вопросы, как было слишком очевидно, не могли интересовать его.
– В котором часу началось сражение? – спросил император.
– Не могу донести вашему величеству, в котором часу началось сражение с фронта, но в Дюренштейне, где я находился, войско начало атаку в 6 часу вечера, – сказал Болконский, оживляясь и при этом случае предполагая, что ему удастся представить уже готовое в его голове правдивое описание всего того, что он знал и видел.
Но император улыбнулся и перебил его:
– Сколько миль?
– Откуда и докуда, ваше величество?
– От Дюренштейна до Кремса?
– Три с половиною мили, ваше величество.
– Французы оставили левый берег?
– Как доносили лазутчики, в ночь на плотах переправились последние.
– Достаточно ли фуража в Кремсе?
– Фураж не был доставлен в том количестве…
Император перебил его.
– В котором часу убит генерал Шмит?…
– В семь часов, кажется.
– В 7 часов. Очень печально! Очень печально!
Император сказал, что он благодарит, и поклонился. Князь Андрей вышел и тотчас же со всех сторон был окружен придворными. Со всех сторон глядели на него ласковые глаза и слышались ласковые слова. Вчерашний флигель адъютант делал ему упреки, зачем он не остановился во дворце, и предлагал ему свой дом. Военный министр подошел, поздравляя его с орденом Марии Терезии З й степени, которым жаловал его император. Камергер императрицы приглашал его к ее величеству. Эрцгерцогиня тоже желала его видеть. Он не знал, кому отвечать, и несколько секунд собирался с мыслями. Русский посланник взял его за плечо, отвел к окну и стал говорить с ним.
Вопреки словам Билибина, известие, привезенное им, было принято радостно. Назначено было благодарственное молебствие. Кутузов был награжден Марией Терезией большого креста, и вся армия получила награды. Болконский получал приглашения со всех сторон и всё утро должен был делать визиты главным сановникам Австрии. Окончив свои визиты в пятом часу вечера, мысленно сочиняя письмо отцу о сражении и о своей поездке в Брюнн, князь Андрей возвращался домой к Билибину. У крыльца дома, занимаемого Билибиным, стояла до половины уложенная вещами бричка, и Франц, слуга Билибина, с трудом таща чемодан, вышел из двери.
Прежде чем ехать к Билибину, князь Андрей поехал в книжную лавку запастись на поход книгами и засиделся в лавке.
– Что такое? – спросил Болконский.
– Ach, Erlaucht? – сказал Франц, с трудом взваливая чемодан в бричку. – Wir ziehen noch weiter. Der Bosewicht ist schon wieder hinter uns her! [Ах, ваше сиятельство! Мы отправляемся еще далее. Злодей уж опять за нами по пятам.]
– Что такое? Что? – спрашивал князь Андрей.
Билибин вышел навстречу Болконскому. На всегда спокойном лице Билибина было волнение.
– Non, non, avouez que c'est charmant, – говорил он, – cette histoire du pont de Thabor (мост в Вене). Ils l'ont passe sans coup ferir. [Нет, нет, признайтесь, что это прелесть, эта история с Таборским мостом. Они перешли его без сопротивления.]
Князь Андрей ничего не понимал.
– Да откуда же вы, что вы не знаете того, что уже знают все кучера в городе?
– Я от эрцгерцогини. Там я ничего не слыхал.
– И не видали, что везде укладываются?
– Не видал… Да в чем дело? – нетерпеливо спросил князь Андрей.
– В чем дело? Дело в том, что французы перешли мост, который защищает Ауэсперг, и мост не взорвали, так что Мюрат бежит теперь по дороге к Брюнну, и нынче завтра они будут здесь.
– Как здесь? Да как же не взорвали мост, когда он минирован?
– А это я у вас спрашиваю. Этого никто, и сам Бонапарте, не знает.
Болконский пожал плечами.
– Но ежели мост перейден, значит, и армия погибла: она будет отрезана, – сказал он.
– В этом то и штука, – отвечал Билибин. – Слушайте. Вступают французы в Вену, как я вам говорил. Всё очень хорошо. На другой день, то есть вчера, господа маршалы: Мюрат Ланн и Бельяр, садятся верхом и отправляются на мост. (Заметьте, все трое гасконцы.) Господа, – говорит один, – вы знаете, что Таборский мост минирован и контраминирован, и что перед ним грозный tete de pont и пятнадцать тысяч войска, которому велено взорвать мост и нас не пускать. Но нашему государю императору Наполеону будет приятно, ежели мы возьмем этот мост. Проедемте втроем и возьмем этот мост. – Поедемте, говорят другие; и они отправляются и берут мост, переходят его и теперь со всею армией по сю сторону Дуная направляются на нас, на вас и на ваши сообщения.
– Полноте шутить, – грустно и серьезно сказал князь Андрей.
Известие это было горестно и вместе с тем приятно князю Андрею.
Как только он узнал, что русская армия находится в таком безнадежном положении, ему пришло в голову, что ему то именно предназначено вывести русскую армию из этого положения, что вот он, тот Тулон, который выведет его из рядов неизвестных офицеров и откроет ему первый путь к славе! Слушая Билибина, он соображал уже, как, приехав к армии, он на военном совете подаст мнение, которое одно спасет армию, и как ему одному будет поручено исполнение этого плана.
– Полноте шутить, – сказал он.
– Не шучу, – продолжал Билибин, – ничего нет справедливее и печальнее. Господа эти приезжают на мост одни и поднимают белые платки; уверяют, что перемирие, и что они, маршалы, едут для переговоров с князем Ауэрспергом. Дежурный офицер пускает их в tete de pont. [мостовое укрепление.] Они рассказывают ему тысячу гасконских глупостей: говорят, что война кончена, что император Франц назначил свидание Бонапарту, что они желают видеть князя Ауэрсперга, и тысячу гасконад и проч. Офицер посылает за Ауэрспергом; господа эти обнимают офицеров, шутят, садятся на пушки, а между тем французский баталион незамеченный входит на мост, сбрасывает мешки с горючими веществами в воду и подходит к tete de pont. Наконец, является сам генерал лейтенант, наш милый князь Ауэрсперг фон Маутерн. «Милый неприятель! Цвет австрийского воинства, герой турецких войн! Вражда кончена, мы можем подать друг другу руку… император Наполеон сгорает желанием узнать князя Ауэрсперга». Одним словом, эти господа, не даром гасконцы, так забрасывают Ауэрсперга прекрасными словами, он так прельщен своею столь быстро установившеюся интимностью с французскими маршалами, так ослеплен видом мантии и страусовых перьев Мюрата, qu'il n'y voit que du feu, et oubl celui qu'il devait faire faire sur l'ennemi. [Что он видит только их огонь и забывает о своем, о том, который он обязан был открыть против неприятеля.] (Несмотря на живость своей речи, Билибин не забыл приостановиться после этого mot, чтобы дать время оценить его.) Французский баталион вбегает в tete de pont, заколачивают пушки, и мост взят. Нет, но что лучше всего, – продолжал он, успокоиваясь в своем волнении прелестью собственного рассказа, – это то, что сержант, приставленный к той пушке, по сигналу которой должно было зажигать мины и взрывать мост, сержант этот, увидав, что французские войска бегут на мост, хотел уже стрелять, но Ланн отвел его руку. Сержант, который, видно, был умнее своего генерала, подходит к Ауэрспергу и говорит: «Князь, вас обманывают, вот французы!» Мюрат видит, что дело проиграно, ежели дать говорить сержанту. Он с удивлением (настоящий гасконец) обращается к Ауэрспергу: «Я не узнаю столь хваленую в мире австрийскую дисциплину, – говорит он, – и вы позволяете так говорить с вами низшему чину!» C'est genial. Le prince d'Auersperg se pique d'honneur et fait mettre le sergent aux arrets. Non, mais avouez que c'est charmant toute cette histoire du pont de Thabor. Ce n'est ni betise, ni lachete… [Это гениально. Князь Ауэрсперг оскорбляется и приказывает арестовать сержанта. Нет, признайтесь, что это прелесть, вся эта история с мостом. Это не то что глупость, не то что подлость…]
– С'est trahison peut etre, [Быть может, измена,] – сказал князь Андрей, живо воображая себе серые шинели, раны, пороховой дым, звуки пальбы и славу, которая ожидает его.
– Non plus. Cela met la cour dans de trop mauvais draps, – продолжал Билибин. – Ce n'est ni trahison, ni lachete, ni betise; c'est comme a Ulm… – Он как будто задумался, отыскивая выражение: – c'est… c'est du Mack. Nous sommes mackes , [Также нет. Это ставит двор в самое нелепое положение; это ни измена, ни подлость, ни глупость; это как при Ульме, это… это Маковщина . Мы обмаковались. ] – заключил он, чувствуя, что он сказал un mot, и свежее mot, такое mot, которое будет повторяться.
Собранные до тех пор складки на лбу быстро распустились в знак удовольствия, и он, слегка улыбаясь, стал рассматривать свои ногти.
– Куда вы? – сказал он вдруг, обращаясь к князю Андрею, который встал и направился в свою комнату.
– Я еду.
– Куда?
– В армию.
– Да вы хотели остаться еще два дня?
– А теперь я еду сейчас.
И князь Андрей, сделав распоряжение об отъезде, ушел в свою комнату.
– Знаете что, мой милый, – сказал Билибин, входя к нему в комнату. – Я подумал об вас. Зачем вы поедете?
И в доказательство неопровержимости этого довода складки все сбежали с лица.
Князь Андрей вопросительно посмотрел на своего собеседника и ничего не ответил.
– Зачем вы поедете? Я знаю, вы думаете, что ваш долг – скакать в армию теперь, когда армия в опасности. Я это понимаю, mon cher, c'est de l'heroisme. [мой дорогой, это героизм.]
– Нисколько, – сказал князь Андрей.
– Но вы un philoSophiee, [философ,] будьте же им вполне, посмотрите на вещи с другой стороны, и вы увидите, что ваш долг, напротив, беречь себя. Предоставьте это другим, которые ни на что более не годны… Вам не велено приезжать назад, и отсюда вас не отпустили; стало быть, вы можете остаться и ехать с нами, куда нас повлечет наша несчастная судьба. Говорят, едут в Ольмюц. А Ольмюц очень милый город. И мы с вами вместе спокойно поедем в моей коляске.
– Перестаньте шутить, Билибин, – сказал Болконский.
– Я говорю вам искренно и дружески. Рассудите. Куда и для чего вы поедете теперь, когда вы можете оставаться здесь? Вас ожидает одно из двух (он собрал кожу над левым виском): или не доедете до армии и мир будет заключен, или поражение и срам со всею кутузовскою армией.
И Билибин распустил кожу, чувствуя, что дилемма его неопровержима.
– Этого я не могу рассудить, – холодно сказал князь Андрей, а подумал: «еду для того, чтобы спасти армию».
– Mon cher, vous etes un heros, [Мой дорогой, вы – герой,] – сказал Билибин.


В ту же ночь, откланявшись военному министру, Болконский ехал в армию, сам не зная, где он найдет ее, и опасаясь по дороге к Кремсу быть перехваченным французами.
В Брюнне всё придворное население укладывалось, и уже отправлялись тяжести в Ольмюц. Около Эцельсдорфа князь Андрей выехал на дорогу, по которой с величайшею поспешностью и в величайшем беспорядке двигалась русская армия. Дорога была так запружена повозками, что невозможно было ехать в экипаже. Взяв у казачьего начальника лошадь и казака, князь Андрей, голодный и усталый, обгоняя обозы, ехал отыскивать главнокомандующего и свою повозку. Самые зловещие слухи о положении армии доходили до него дорогой, и вид беспорядочно бегущей армии подтверждал эти слухи.
«Cette armee russe que l'or de l'Angleterre a transportee, des extremites de l'univers, nous allons lui faire eprouver le meme sort (le sort de l'armee d'Ulm)», [«Эта русская армия, которую английское золото перенесло сюда с конца света, испытает ту же участь (участь ульмской армии)».] вспоминал он слова приказа Бонапарта своей армии перед началом кампании, и слова эти одинаково возбуждали в нем удивление к гениальному герою, чувство оскорбленной гордости и надежду славы. «А ежели ничего не остается, кроме как умереть? думал он. Что же, коли нужно! Я сделаю это не хуже других».
Князь Андрей с презрением смотрел на эти бесконечные, мешавшиеся команды, повозки, парки, артиллерию и опять повозки, повозки и повозки всех возможных видов, обгонявшие одна другую и в три, в четыре ряда запружавшие грязную дорогу. Со всех сторон, назади и впереди, покуда хватал слух, слышались звуки колес, громыхание кузовов, телег и лафетов, лошадиный топот, удары кнутом, крики понуканий, ругательства солдат, денщиков и офицеров. По краям дороги видны были беспрестанно то павшие ободранные и неободранные лошади, то сломанные повозки, у которых, дожидаясь чего то, сидели одинокие солдаты, то отделившиеся от команд солдаты, которые толпами направлялись в соседние деревни или тащили из деревень кур, баранов, сено или мешки, чем то наполненные.
На спусках и подъемах толпы делались гуще, и стоял непрерывный стон криков. Солдаты, утопая по колена в грязи, на руках подхватывали орудия и фуры; бились кнуты, скользили копыта, лопались постромки и надрывались криками груди. Офицеры, заведывавшие движением, то вперед, то назад проезжали между обозами. Голоса их были слабо слышны посреди общего гула, и по лицам их видно было, что они отчаивались в возможности остановить этот беспорядок. «Voila le cher [„Вот дорогое] православное воинство“, подумал Болконский, вспоминая слова Билибина.