Карта расширения. Озу адаптера что это


Видеокарта — Википедия

Материал из Википедии — свободной энциклопедии

Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 3 апреля 2017; проверки требуют 28 правок. Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 3 апреля 2017; проверки требуют 28 правок. Nvidia GeForce 6600GT (производитель Gigabyte)

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

Однако эта базовая функция, оставаясь нужной и востребованной, ушла в тень, перестав определять уровень возможностей формирования изображения —

ru.wikipedia.org

Карта расширения — Википедия

Материал из Википедии — свободной энциклопедии

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

Слоты расширения 64-разрядной шины PCI.

Слот расшире́ния — щелевой (англ. slot означает «щель») разъём, обычно в компьютере, соединённый с системной шиной и предназначенный для установки дополнительных модулей (карт расширения), расширяющих конфигурацию устройства.

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

Плата расширения может содержать оперативную память и устройства ввода-вывода, может обмениваться данными с другими устройствами на системной шине.

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

«Ёлочка» (сверху) — переходник, а не плата расширения.

ru.wikipedia.org

Куда пропадает память? - «Хакер»

Содержание статьи

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

 

Первая проверка

Разумеется, не всегда вопрос о "пропавшей" памяти задается исключительно изисследовательского интереса. И не всегда ответ лежит в области архитектуры исхемотехники материнской платы. Если после приобретения нового компьютера илипереустановки модулей DIMM, мы видим, что памяти значительно меньше, чемзаявлено поставщиком оборудования, возникает вполне обоснованное желаниепроверить комплектность нашей системы. Встречаются и случаи, когда надписи нанаклейках модулей DIMM не соответствуют действительности. Анализ маркировкисамих микросхем памяти, установленных на DIMM, также не всегда эффективен, таккак не все производители придерживаются регулярной системы обозначений. Поэтому,перед тем, как перейти к главной теме статьи, напомним один рецепт для выявлениябанального подлога. Причем воспользоваться им можно, даже не открывая корпускомпьютера.

Известно, что в современных системах, идентификация модулей оперативнойпамяти основана на использовании протокола SPD (Serial Presence Detect). Накаждом модуле DIMM, вместе с микросхемами оперативной памяти, установленамикросхема постоянного запоминающего устройства (EPROM), объемом 256 байт. В неепроизводителем модуля записаны его параметры. При старте компьютера, BIOSсчитывает эти параметры и использует их для инициализации контроллера памяти.Диагностические программы, запускаемые в сеансе ОС (например, Astra32, Everest),также могут прочитать информацию SPD, таким образом она доступна для просмотрапользователем. Если по информации SPD объем памяти (сумма объемов модулей)соответствует значению, заявленному поставщиком, но вместе с тем, операционнойсистеме доступно меньше памяти, то причина в особенностях архитектуры исхемотехники материнской платы, рассмотренных ниже, часть памяти выделена дляиспользования различными устройствами или недоступна вследствие ограниченийконтроллера DRAM. Рассмотрению именно таких ситуаций посвящена данная статья.Если же, объем памяти, определенный на основании SPD, меньше ожидаемого, то всегораздо прозаичнее – нужно предъявлять претензию поставщику.

Ниже рассмотрены причины, по которым в распоряжение операционной системыпопадает меньше оперативной памяти, чем физически установлено на плате.Очевидно, каждая из причин относится к одному из трех типов:

  1. Часть памяти используется для внутренних нужд BIOS или устройств системнойплаты.
  2. Часть памяти физически недоступна из-за ограничений контроллера памяти.
  3. Часть памяти физически доступна в адресном пространстве, но неиспользуется из-за ограничений операционной системы.

 

Выделение памяти для System Management RAM

System Management RAM – это память, используемая BIOS для собственных нужд.Физически, это часть оперативной памяти. Она "вырезана" из адресногопространства с помощью картирующей логики, входящей в состав "северного моста"чипсета. Данный вопрос детально рассмотрен в ранее опубликованной статье "SMMи SMRAM или 128Кб потусторонней памяти. Исследовательская работа № 5 и6". Сколько памятибудет "отрезано" для SMRAM зависит от реализации BIOS. В большинстве платформэто 128 Кбайт, используется диапазон 000A0000h-000BFFFFh, разделяемый с видеоадаптером. В некоторых платформах также используется Extended SMRAM,расположенная выше 1MB и ее объем достигает нескольких мегабайт.

 

Выделение памяти для Shadow RAM

Shadow RAM или "теневая" память — область оперативной памяти, в которуюпереписывается или распаковывается содержимое микросхемы ROM BIOS материнскойплаты, а также дополнительные BIOS периферийных адаптеров. Первоначально этобыло задумано как опция, исключительно для повышения производительности, так какскорость работы RAM существенно выше, чем скорость работы ROM. Современныереализации BIOS, используют хранение основного блока в упакованном виде, пристарте он распаковывается в Shadow RAM. Таким образом, операция Shadow изопциональной превратилась в обязательную. Упаковка позволяет использоватьмикросхему ROM меньшего объема, следовательно, более дешевую. Для корректнойэмуляции ПЗУ, картирующая логика, входящая в состав "северного моста" чипсета,блокирует запись в данную область RAM. Распакованный блок BIOS, помещаемый вShadow RAM, иногда называют Runtime-блоком.

В большинстве платформ, для Runtime-блоков BIOS периферийных адаптеровотводится диапазон 000C0000h-000EFFFFh. Для Runtime-блока системного BIOS –диапазон 000F0000h-000FFFFFh. Отметим, что даже если указанные диапазоныиспользуются частично или не используются, весь 256-Кбайтный блок000C0000h-000FFFFFh "отрезается" от оперативной памяти. Практически всесовременные чипсеты позволяют его использовать только как Shadow RAM.

 

Примечание

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

 

Выделение памяти для таблиц ACPI

Спецификация ACPI, которая используется для передачи от BIOS к ОС информациио конфигурации платформы, а также для оптимизации энергопотребления,представляет собой альтернативный подход к взаимодействию BIOS и ОС. Напомним,что в "классических" функциях BIOS, например, в функциях дискового сервиса,доступных через программное прерывание INT 13h, операционная система или другаяпрограмма, для выполнения заданной операции, должна вызывать подпрограммы,входящие в состав BIOS. Взаимодействие ОС и платформы посредством ACPIвыполняется принципиально по-другому. BIOS при старте платформы, перед загрузкойОС, записывает в специальную область памяти набор таблиц, описывающих выполнениеряда операций. Упрощенно говоря, таблицы содержат информацию о том, какие данныев какой регистр записывать для выполнения заданной операции. ОС считывает этуинформацию и использует при взаимодействии с оборудованием. Одно из преимуществтакого подхода, в том, что независимо от системы команд процессора или текущегорежима работы (например, 16- 32- или 64-битный), можно использовать одни и те жетаблицы, так как построение таблиц ACPI, в отличие от выполняемых процедур BIOS,не привязано к архитектуре процессора.

Объем памяти, выделяемый для хранения таблиц ACPI, зависит от реализацииBIOS. Обычно это сотни килобайт, часто BIOS округляет размер резервируемойобласти до 1 Мбайта. Заметим, что в отличие от SMRAM (которая доступна только врежиме SMM) и Shadow RAM (которая имеет защиту от записи), область памяти,содержащая таблицы ACPI не имеет специального статуса с точки зрения контроллерапамяти. Факт ее резервирования состоит только в том, что BIOS при передаче ОСинформации об объеме памяти, передает значение с вычетом размера этой области.Для таблиц ACPI используется диапазон адресов, непосредственно примыкающий кверхней границе Extended памяти. Подробности в [14].

 

Выделение памяти для USB RAM

Как известно, контроллер USB является интеллектуальным устройством, способнымвзаимодействовать с оперативной памятью в обход процессора (в режиме BusMaster). Это взаимодействие состоит не только в передаче данных междуустройствами, подключенными к USB и буферами в оперативной памяти. Для работыконтроллера USB требуется достаточно много вспомогательной информации в памяти,например расписание транзакций. Так как BIOS должен взаимодействовать сустройствами USB до загрузки ОС (например, ввод с USB клавиатуры, загрузка сFlash и т.п.), резервировать память должен BIOS, а не ОС. Обычно, резервируютсядесятки килобайт.

Заметим, что такие устройства, как например, контроллер жестких дисков, такжеподдерживают режим Bus Master и используют управляющую информацию, располагаемуюв оперативной памяти. Но разница в том, что контроллер дисков, в отличие отконтроллера USB, можно также использовать в режиме программного обмена (PIOMode), что BIOS и делает при передаче управления на загрузку ОС. Переход в режимBus Master (синоним DMA) и резервирование памяти под управляющие блоки, в этомслучае является обязанностью ОС, а не BIOS.

 

Выделение памяти для интегрированного видео адаптера

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

Заметим, что существуют платы, у которых резервирование памяти дляинтегрированного видео адаптера происходит даже в том случае, когда он неиспользуется. Одна из причин этого – небрежно написанный BIOS.

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

 

Лимит 4Гб и Memory-Mapped I/O

Данный фактор иногда отнимает больше памяти, чем все остальные, вместевзятые. Причем, когда мы говорили о таких вещах как SMRAM, Shadow RAM, ACPI, торечь шла о том, что память, которую BIOS "утаил" от операционной системы,использовалась для внутренних нужд платформы. Здесь же, часть памяти простопропадает. Когда и почему это происходит?

Возьмем реальный пример. Платформа класса Intel Socket 775. Процессор IntelPentium 4 650 3.4 ГГц (ядро Prescott-2M), чипсет Intel 925XE. Устанавливаем 4 Гбпамяти и видим, что операционной системе доступно около 3.5 Гб. Куда пропалооколо 0.5 Гб?

Расследование начнем с процессора. Читая документ [1] и просматриваяназначение сигналов на Socket 775, видим, что процессор поддерживает 36-битнуюадресацию. Старший разряд адреса — A35# (считая от нулевого). Для справки, этоконтакт с координатами AJ6 на Socket 775. Количество адресуемых байтов равно 2 встепени 36, то есть, наш процессор может адресовать 64 Гб памяти. Благодарямеханизму страничной трансляции, использование 36-битного адреса возможно как в32- так и в 64-битном режиме. Подробности в [2]. Таким образом, в цепочке,которую мы прослеживаем, "слабым звеном" является явно не процессор.

Следующим компонентом, на пути от процессора к памяти, является "северныймост" чипсета, в нашем примере это микросхема Intel 82925XE, описанная в [3]. Издокумента [3] следует, что чипсет поддерживает 32-битную адресацию,следовательно, объем адресного пространства памяти равен (2 в степени 32) байт,то есть 4 Гб. Причем, все 4 Гб нельзя отдать под оперативную память, требуетсяразместить еще ряд устройств, доступ к которым также осуществляется черезпространство памяти. Именно поэтому, доступный объем оперативной памяти будетсущественно меньше 4 Гб. Полный список таких устройств можно узнать издокументов [3-4]. Для рассматриваемой платформы, наибольший объем отнимают видеопамять и окно для доступа к конфигурационным регистрам PCI Express. Рассмотримих подробнее.

Классические адаптеры VGA, выпускавшиеся еще во времена шины ISA, используютпостраничный доступ к видео памяти через окно, размер которого не превышает 128KB (000A0000h-000BFFFFh). Современные адаптеры, поддерживая этот режим длясовместимости, также поддерживают линейный доступ к видео памяти. При этомадаптеру с 256 MB видео памяти требуется выделить столько же адресногопространства. Из-за унификации при производстве видео адаптеров можно встретитьи такие ситуации, когда адаптер со 128 MB видео памяти требует выделения окнаразмером 256 MB.

Классический механизм доступа к конфигурационному пространству шины PCI,описанный в [11-13] использует 256 байт конфигурационных регистров наустройство. Спецификация PCI Express использует блоки регистров, размером 4 KB,поэтому возникла необходимость в новом механизме доступа к ним. Новый механизмиспользует регион адресного пространства, размером 256 MB, через которыйконфигурационные регистры всех устройств адресуются как ячейки памяти.Подробности в [3-6].

Вопросы организации регистров, отображенных на память (Memory-Mapped I/O)рассмотрены в ранее опубликованной статье "Устройствасистемной поддержки. Исследовательская работа № 7,8 и9".

 

Операция Memory Remap

Начиная с чипсета Intel 955, лимит 4 Гб был преодолен. Разумеется, вмодельных рядах чипсетов для серверов и рабочих станций это произошлозначительно раньше.

Микросхема Intel 82955X принимает от процессора 36-битный адрес иподдерживает адресное пространство 64 Гб. Максимальный объем оперативной памяти– 8 Гб, на этот раз ограничение связано не с разрядностью адреса, который"северный мост" способен принять от процессора, а с возможностями контроллераDRAM.

Обычно, при использовании операции Memory Remap, диапазон 0-4 Гб форматировантак же, как и раньше. Там находится оперативная память, фрагмент которойнедоступен из-за необходимости размещения других устройств. Новшество в том, чтоуказанный фрагмент не пропадает, а размещается по адресам выше 4 Гб.Соответственно, если у нас памяти больше, чем 4 Гб, все, что не поместилось вдиапазоне 0-4 Гб, размещается выше.

Разумеется, польза от физической доступности памяти выше 4 Гб будет толькотогда, когда операционная система поддерживает адресацию выше 4 Гб. Этообеспечивается в 64-битном режиме, а также в 32-битном режиме при использованииPAE (Physical Address Extension). Если ОС не поддерживает адресацию выше 4 Гб,перемещенная память будет недоступна. Подробности в [2].

Следует помнить и о том, что обращения к памяти инициируются не толькоцентральным процессором, но и другими устройствами, использующими технологию BusMaster, например контроллером жестких дисков. Если контроллер поддерживаеттолько 32-битную адресацию при чтении и записи данных, то при размещении данныхвыше 4 Гб, потребуется дополнительно использовать транзитный буфер,расположенный ниже 4 Гб, так как контроллер дисков "не умеет" адресовать памятьвыше 4 Гб. Пересылку между транзитным и целевым буфером должен выполнитьцентральный процессор. Это снижает производительность и отнимает память.Поэтому, "истинно 64-битной" платформу можно считать только тогда, когда нетолько процессор, но и Bus Master контроллеры поддерживают 64-битную адресацию.

 

Заключение

Логическим продолжением данного материала является изложение методов ифрагментов кода, позволяющих для заданной платформы "с точностью до бита"определить, как используется память, которую BIOS "утаил" от операционнойсистемы. Поэтому, при наличии читательского интереса, автор планируетпродолжение. Задача осложняется тем, что для получения ответов на многие изпоставленных вопросов, потребуется анализировать содержимое системныхконфигурационных регистров, архитектура которых не определяется единым для всехплатформ стандартом. Такие регистры по-своему реализованы в каждом чипсете. Ксожалению, подробная документация доступна далеко не на все чипсеты. Поэтому,универсальных рецептов здесь не существует. Раскрывая данную тему, автор изложилосновные принципы, используя которые, заинтересованный читатель может провестисобственное исследование, для своей конкретной платформы.

 

Источники информации

Электронные документы, доступные на сайтеdeveloper.intel.com:

1) Intel Pentium 4 Processor 660, 650, 640, and 630 and Intel Pentium 4Processor Extreme Edition Datasheet. Document Number: 306382-001.2) TLBs, Paging-Structure Caches, and Their Invalidation. Application Note.Document Number 317080-001.3) Intel 925X/925XE Express Chipset Datasheet. Document Number: 301464-003.4) Intel I/O Controller Hub 6 (ICH6) Family Datasheet. Document Number301473-001.5) Intel 955X Express Chipset Datasheet. Document Number 306828-001.6) Intel I/O Controller Hub 7 (ICH7) Family Datasheet. Document Number307013-002.7) AGP V3.0 Interface Specification (без номера).

Электронные документы, доступные на сайтеdeveloper.amd.com:

8) AMD Functional Data Sheet, 754 Pin Package. Publication # 31410.9) AMD Functional Data Sheet, 939 Pin Package. Publication # 31411.10) AMD Functional Data Sheet, 940 Pin Package. Publication # 31412.

Электронные документы, доступные на сайтеpcisig.com:

Документы [12], [13] на сайте pcisig.com доступны только для членов PCISpecial Interest Group. Воспользовавшись поисковыми системами, можно найтиданные документы для свободной загрузки.

11) PCI BIOS Specification. Revision 2.1.12) PCI Local Bus Specification. Revision 3.0.13) PCI-to-PCI Bridge Architecture Specification. Revision 1.1.

Электронные документы, доступные на сайтеacpi.info:

14) Advanced Configuration and Power Interface Specification. Hewlett-PackardCorporation, Intel Corporation, Microsoft Corporation, Phoenix TechnologiesLtd., Toshiba Corporation. Revision 3.0.:

 

Книги:

15) В.Л. Григорьев. Микропроцессор i486. Архитектура и программирование.Москва ТОО "ГРАНАЛ" 1993.16) Ю.М. Казаринов, В.Н. Номоконов, Г.С. Подклетнов, Ф.В. Филиппов.Микропроцессорный комплект К1810. Структура, программирование, применение.Справочная книга. Москва "Высшая школа" 1990.17) М. Гук. Аппаратные средства IBM PC. Энциклопедия. Санкт-Петербург,издательство "Питер" 2006.

xakep.ru