Что называется мозгом компьютера
Материнская плата — нервная система компьютера. Из чего она состоит?
Сегодня мы поговорим про материнские платы.
В этой статье я расскажу про функциональное деление различных зон платы и что с чем связано, то есть что проводит обмены между собой напрямую, а что через различных посредников.
Ну и для интереса будет приведена аналогия с нервной системой человека, так как по своей сути есть очень схожие черты по распределению задач.
Для чего нужна материнская плата?
Ну и начнём с самого понятного, что в общем-то и так всем известно.
Назначение материнской платы — это обеспечить как можно больше возможностей по соединению различных компонентов компьютера друг с другом.
То есть разные производители договариваются о стандартах обменов данных и питании, о реализации физической связи, и производители материнских плат эти разъёмы и питание помещают на платы. Соответственно одни компании делают устройства для компьютеров, а другие — делают возможным их подключение и работу. Собственно подключение и работу и должны обеспечить материнские платы.
Нервная система человека, и чем она похоже на компьютеры?
Теперь же предлагаю рассмотреть нервную систему человека. Но всё же предупреждаю, что я не медик и в целом — рассказ будет такой, чтобы проще было провести параллели.
К центральной нервной системе относятся все штуки, которые внутри черепной коробки, а также спинной мозг, а к периферической — всё остальное.
То есть нервные окончания, которые отвечают за сенсорные восприятия и мышечные активации, а также передачу сигналов от и к спинному мозгу. Собственно тут уже по названиям есть совпадения с компьютерами, потому что вместо периферической нервной системы у нас будет так называемая периферия, то есть клавомыши, принтеры и прочие компьютерные штуки.
И есть определенные функциональные особенности различных зон.
Функциональное деление нервной системы человека
Начнём с того, что внутри черепушки. Ну во первых — та часть который мы думаем — это большая часть коры полушарий головного мозга.
Это потенциально очень интересная технология, она позволяет отказаться от сложной шины данных, и больших задержек на обращение к памяти, длинных конвейеров обработки данных, но пока что по большей части это научные эксперименты. А вот в мозге это так уже работает в коре. Кроме коры головного мозга в нём есть и системы обеспечения функционирования.
Например гипоталамус, который отвечает за функции поддержания работы всего организма, он отвечает за ряд чувств и регулирует работы тех органов, что ответственны за поддержание гомеостаза.
И всё это великолепие должно управлять внешними устройствами, такими как мышцы и внутренние органы, а также принимать сигналы от внешних устройств, например сенсорных клеток под кожей.
Делается это не непосредственно, а через дополнительный блок, отвечающий за подключение всех внешних устройств. Все вычислительные, сенсорные и передающие части внешних устройств нервной системы называются соматической нервной системой. Она глобально разделена на две категории.
Внутри головы расположены всякие внешние контроллеры и устройства требующие слишком широкую шину данных к основным блокам мозга и поэтому расположены ближе к вычислительным центрам. Это черепные нервы соматической нервной системы. Например глаза и вся обвязка, обеспечивающая работу глаз, также обоняние, слух и т.д. Эти блоки было бы тянуть к центральной нервной системе очень сложно, поэтому в ходе эволюции более выйгрешной стратегией оказалось размещение их непосредственно в общем объеме с вычислительными зонами. Остальные же устройства соматической нервной системы расположены вдали от головы, и подключаются через специальный блок контроллеров, задача которого передача сигналов от этих внешних устройств и передача сигналов к этим внешним устройствам. И блок этих контроллеров называется спинным мозгом.
Он отвечает за интерпретацию некоторых сигналов и передачи их в мозг, а также через него приводятся сигналы и в мышцы.
Поэтому при повреждениях нервных волокон вблизи спинного мозга могут отваливаться те или иные устройства организма. Допустим при межпозвонковой грыже отнимаются стопы или ноги целиком, или при пережиманиях в шейных отделах позвоночника может пропасть сенсорная функция у пальцев рук, то есть происходит онемение части конечностей.
Всего у спинного мозга человека 31 пара линий связи к внешним устройствам.
Спинной мозг при этом подключается к вычислительной части тоже не непосредственно, а через варолиев мост, то есть шину данных между головной частью центральной нервной системы и спинным мозгом.
Подытожив всё сказанное коротко ещё раз пройдёмся по схеме.
У нас есть вычислитель совмещённый с подсистемой данных, блоки отвечающие за коммутацию с внешними датчиками внутри головы, блоки отвечающие за функциональное обеспечение работоспособности, блок отвечающий за работы в внешними устройствами и данными, а также шины отвечающие за соединение этих блоков друг с другом.
В общем-то этот рассказ в таком виде был сделан в первую очередь для тех, кто и так уже знает, из чего состоит материнская плата, чтобы было не так скучно смотреть про то, что и так уже известно и эти люди уже по описаниям функциональных блоков нервной системы скорее всего поняли где тут процессорные PCI-e, где чипсет, где чип Super I/O и т.д.
Где все эти части в компьютерах?
Ну и на удивление — с развитием технологий функциональные зоны в компьютерах всё точнее и точнее начинают повторять функциональные зоны нервной системы.
Но в сравнении с нервной системой человека — отличия у компьютеров тоже есть.
Как я уже ранее сказал — у нас в голове нет разделения между памятью и вычислениями. Такой подход крайне эффективен, но архитектурно очень сложен.
Тем не менее современные технологии стремятся как можно сильнее и лучше соединить центральный процессор и оперативную память. Раньше на материнских платах была такая вещь, которая называлась северным мостом.
Это такой контроллер, который находился между центральным процессором и слотами оперативной памяти.
При работе с ним — данные шли вначале в этот контроллер, а уже только из него в процессор и обе шины связывающие три элемента должны были быть очень широкими, то есть обеспечивать большую пропускную способности. Но со временем — создаваемые задержки и сложности организации шин вынудили интегрировать северный мост внутрь процессора.
То есть у нас, как в мозге, пока что работа идёт не внутри массива данных, но необходимость интеграции данных с процессором является одной из первостепенных. На материнских платах раньше северный мост был распаян, то есть чип был не съёмным, а процессор как и сейчас как правило можно было поменять. Место под монтаж процессора называется сокетом. То есть сокет — это непосредственно разъём и его спецификации: распиновка и размеры и конструктивное исполнение. Ну и в сокет вставляется процессор, который производит вычисления.
Данные для работы процессора при этом хранится в оперативной памяти. Оперативная память вставляется в специальные слоты на материнской плате.
И между этим слотами можно увидеть очень много дорожек к контроллеру памяти процессора, собственно — это и есть шина, которая их друг с другом соединяет (на фото выше — дорожки нарисованы белой масокй, на деле увидеть их можно, они гораздо тоньше и их гораздо больше).
В головном мозге, как я и говорил — это всё единая система.
А вот внешние устройства внешние и для вычислителя мозга и для процессора с памятью. Их надо как-то подключать. Собственно как и с нервной системой — есть важные и сложные внешние устройства, которые сложно было бы вести через посредников и они подключатся к процессору.
А есть менее важные, которые можно подключать через посредников.
Спинной мозг компьютера — это южный мост.
Так как сейчас фактически серверного нет, так как он встроен в процессор, то южный мост называют чипсетом.
В нервной системе для подключения спинного мозга есть варолиев мост. Его аналог в компьютерах у Intel — это шина DMI. В современных Intel процессорах она является по скорости аналогом 4-х линий PCI-e третий версии. Вероятно в 12-м поколении она будет аналогом 4-х линий PCI-e пятой версии.
AMD как-то по особенному эту шину не называет, а просто говорит, что это 4 линии PCI-e.
В общем — как не называй суть одна — всё что лишнее в головном мозге нужно из него выкинуть куда-то ещё. Чипсет собирает большую часть этих излишков. И так же как и со спинным мозгом у чипсета много линий для соединения с внешними устройствами. Называются они High Speed i/o или если по русски “быстрая скорость ввод вывод”. Допустим у чипсета Intel Z590 таких линий 30 штук. 6 из которых строго зарезервированы под определенные функции, а 24 могут использоваться для любых внешних устройств. Ну и в разрезе компьютеров надо всё таки пояснить вообще зачем нужен чипсет и почему бы это всё не встроить в процессор.
Почему на один и тот же процессор существуют разные чипсеты?
Допустим надо к процессору подключить устройство через USB 3.1.
Чтобы это сделать надо чтобы процессор умел понимать протокол данных, который использует USB 3.1. Или надо, например, подключить sata накопитель. Для этого надо научить процессор понимать протокол sata.
Нужно ли это всем? Ну с этими двумя примерами может быть и нужно всем, а вот весь спектр возможных устройств и поддержка их большого количества всем ну нужна.
Собственно поэтому это всё выкинули в отдельный блок чипсета, который приводит все передаваемые к процессору данные в единый протокол. Есть чипсеты, которые поддерживают больше устройств, есть чипсеты, которые поддерживают меньше устройств. Ну и большая часть портов на материнской плате для подключения к устройствам ведут не в процессор, а в чипсет.
А уже чипсет всё что нужно процессору в текущий момент предоставляет процессору. Это позволяет делать материнские платы разных ценовых категорий и с разными возможностями. Грубо говоря — мы можем менять спинной мозг, который отвечает за состав внешних устройств. Допустим если бы нам надо было бы 11 рук и 6 ног по 13 пальцев на каждой конечности, то нам надо было бы иметь другой спинной мозг, который обеспечивал бы эксплуатацию этих конечностей. Медицина пока не позволяет делает подобные метаморфозы с человеком, но в компьютерах если надо что-то экзотическое — присутствует такая штука как чипсет, который разрабатывается под разные потребности. Может быть больше портов и это будет дороже, или меньше портов и это будет дешевле. Кроме того чипсет — это не просто своего рода хаб для подключения внешних устройств. В состав чипсета входят самые распространённые контроллеры. То есть SATA диску не надо уметь переводить данные в протоколы понятные процессору. Этим занимается чипсет. Но чипсет тоже умеет далеко не всё. Вдобавок технологии быстро меняются и чипсет просто мог быть создан уже устаревшим. Например для процессоров на сокете LGA 775, которые выходили с 2004 до 2009 годы никогда не было поддержки USB 3.0 силами чипсета.
Но материнские платы с USB 3.0 в итоге, после выхода этого порта — появились.
И работает это довольно просто. Как я уже сказал — не все линии чипсета зарезервированы на какие-то определённые функции. Большая часть линий свободная и на эти линии можно поставить внешние контроллеры, которые будут управлять внешним устройствам и переводить все протоколы в тот вид, что нужны чипсету для дальнейшей работы с центральным процессором.
Поэтому если у чипсета нет поддержки USB 3.0 — производитель материнской платы может распаять контроллер USB 3.0, который будет использовать одну из линий HS i/o. Точно так же можно работать и с другими специальными задачами. Допустим нужна не одна сетевая карта на плате, а 10 штук.
Один контроллер есть как правило работающий через чипсет и ещё 9 можно распаять на плате, заняв 9 линий HS i/o чипсета.
Ну и, как правило, производители материнских плат не делают строгую специализацию, так как одним нужны много сетевых карт, другим надо куда-то поставить карту видеозахвата, или звуковую карту, третьим надо подключить к одному компьютеру 30 накопителей. На каждую хотелку плату не сделаешь. Поэтому разработан стандарт для универсального подключения. Вначале это был стандарт ISA, в 90-х ему на смену пришёл PCI.
А в нулевых уже PCI поменялся на PCI-e. Ну и, соответственно, для чипсета — одна линия PCI-e занимает одну линия HS i/o.
В общем — чипсет эта та штука, которая имеет определенное количество линий данных, которые производители плат могут использовать по своему усмотрению а также производители могут оставлять эти линии данных свободными выделяя их просто в порты PCI-e, в которые можно вставлять какие-то другие карты расширения, на борту которых будут собственные контроллеры, которые всё что угодно переводят в протоколы, совместимые с PCI-e.
Но как и с нервной системой — есть ряд устройств, доступ к которым нужно обеспечить без посредников.
Напомню, что для мозга это например глаза.
Так же и в компьютерах для видеокарты выделяется отдельных 16 линий напрямую к процессору. И это довольно широкая шина, для сравнения, как я уже ранее говорил — для соединения с чипсетом это всего 4 линии.
Кроме того у AMD и будущих Intel процессоров ещё есть 4 линии PCI-e для подключения m.2 накопителя. В общем-то этим снижается загруженность шины к чипсету.
Кроме того к процессору подключены и некоторые другие внешние контроллеры. Например контроллеры видеовыходов, если процессор имеет встроенную графику.
Кто управляет материнской платой?
Возвращаясь к нервной системе в ней есть такая штука как гипоталамус.
В компьютерах — задачи фонового управления ресурсами имеют разделение на несколько разных, связанных друг с другом систем.
Разделить их можно на три составляющие. BIOS, чип Super i/o и контроллер питания.
BIOS — это по большей степени программная прослойка, она имеет и аппаратные части, но не вычислительные, а вычислительные это сам центральный процессор, а также чип Super I/O до того как не включен процессор.
Собственно с программной прослойкой биоса в момент инициализации взаимодействует Super I/O. Вместе они до штатного запуска занимаются конфигурированием системы. Что касается самого Super I/O — раньше его функции были более значительные. Он содержал контроллеры для мышки и клавиатуры, для аудио устройств, отвечал за питание компьютера в режимах низкого потребления и в целом — управлял питанием, также в состав супер i/o входит контроллер для COM порта и LPT порта, USB контроллер, сетевой контроллер. Сейчас этот чип подключается через чипсет через шину LPC. Из старых функций часть сейчас просто не востребованы, а часть утрачены, например за многи режимы питания сейчас процессоры отвечают сами, но за включение процессора сам процессор отвечать не может, так как он обесточен. Надо понимать, что когда компьютер выключен, если бы был выключен целиком и полностью — то включался бы он зафиксированным переключателем, а не просто кнопкой, и чтобы не держать процессор под питанием под питанием держат super i/o, который по нажатию кнопки включения проводит первичное тестирование системы, получает данные из раздела SPD оперативной памяти, который содержит конфигурации, опрашивает процессор и чипсет, опрашивает память БИОСа, получая конфигурации и из него, определяет оборудование компьютера, и, в конечном счёте разрешает его запуск. Кроме того у Super I/o есть возможность работы с датчиками. Думаю многие знают такую платформу как Arduino.
В ней есть куча цифровых и аналоговых входов и выходов, и к ней можно подключать разные датчики чтобы создавать те или иные устройства. В компьютере, если надо что-то такое подключить, допустим термодатчик, или вольтметр, это делается через чип Super i/o. Кроме того он поддерживает протокол i2C для работы с более сложными контроллерами. Этот чип формирует ШИМ сигнал и для управления вентиляторами, а так же получает импульсный сигнал тахометров вентиляторов. Кроме того именно в этом чипе идут системные часы.
Но, допустим, сетевые контроллеры выделены сейчас в чипсет, основная часть USB, кроме тех что для клавиатуры и мыши — это тоже только чипсетные USB, а есть платы где USB порты клавиатуры и мыши тоже не выведены, а выведены чипсетные. COM порт, порт для джойстиков, MIDI разъём, разъём для Флоппи дисков и LPT на платах как правило просто не распаивают. Да я в общем-то и не нашёл сведений о том — есть ли все эти порты в современных чипах Super I/o, потому что эти анахронизмы уже могли и выпилить за ненадобностью.
И вобщем-то этот чип ещё не включили в состав чипсета просто из-за необходимости его питания при выключенном компьютере, иначе бы приходилось под питанием оставлять весь чипсет.
Тут есть разница и между Intel и AMD. У AMD LPT порт для подключения к Super I/O встроен в процессор, соответственно и контроллер звука тоже выброшенный из Super I/O переместили во внеядерной части процессора. У Intel аналогично, но подключено это всё к чипсету.
Кроме того, так как Super I/O является средством взаимодействия с датчиками и контроллерами — именно этот чип отдаёт команды контроллеру питания процессора. А уже контроллер питания следит за исполнением команд, управляя мосфет транзисторами зоны VRM процессора. Про VRM материнских плат на ютуб канале было отдельное видео, там и про линии питания и про фазы питания и чем они друг от друга отличаются тоже всё было сказано, это тоже интересная тема, рекомендую посмотреть ещё и про VRM.
Текстовый вариант видео про VRM тоже есть на сайте: нажимать сюда.
И Есть ещё небольшие дополнения к этому видео в другом видео:
На материнской плате расположены и другие системы питания. Обычно под пред усилитель для звука, он же усилитель для наушников выводится отдельный стабилизатор питания. Иногда отдельные стабилизаторы питания делаются и для USB портов. Допустим если у вас USB звуковая карта или USB микрофон, то лучше использовать материнские платы с выделенным питанием на конкретный порт USB, обычно такие USB на задней панели выделяют другим цветом.
В будущем, возможно, будет принят новый стандарт для блоков питания — ATX12VO, тогда на материнских платах будут ещё преобразователи питания из 12 Вольт в 5 Вольт и в 3,3 Вольта, которые сейчас находятся в блоке питания.
Ну и сейчас, если какому-то контроллеру нужно напряжение, которого нет от блока питания, то для него распаивается свой личный преобразовать в нужное ему напряжение.
И того подведем краткие итоги того из чего состоит материнская плата.
Нажмите для увеличения
Состоит она из сокета, в который устанавливается процессор, в который встроен северный мост, то есть контроллер оперативной памяти, из слотов для оперативной памяти, и шины которая соединяет память и процессор, ещё на плате есть разъёмы, которые подключаются к процессору. Это 16 линий PCi-e для видеокарты и 4 линии для m.2 накопителя. Но большая часть разёъмов подключается через чипсет, который соединен с процессором шиной равной 4-м линиям PCi-e. К чипсету подключены как устройства напрямую, так и через внешние контроллеры, а часть линий от чипсета остаются свободными в слотах PCi-e на материнской плате. А за управление всей платой и питанием устройств на ней отвечает чип Super I/o. Кроме того на плате разведено питание компонентов и при необходимости преобразователи питания.
Видео на YouTube канале «Этот компьютер»
Компьютер с архитектурой человеческого мозга
С момента появления первого микропроцессора в 1971 году тактовые частоты увеличились на три порядка. «Некоторые склонны рассматривать это как эволюцию в области компьютерных технологий, но ее направление явно расходится с эволюцией биологического мозга, — говорит Дхармендра Модха, директор по науке подразделения Cognitive Computing лаборатории IBM Research в Алмадене. — Тактовые частоты современных компьютеров выше, чем у мозга, в сто миллионов раз, но и удельный расход энергии (на логический элемент) у них в десять тысяч раз больше. При попытке же полномасштабного моделирования функционирования мозга со 100 трлн синапсами все выглядит еще печальнее: даже при использовании Sequoia, одного из самых производительных суперкомпьютеров мира, основанного на архитектуре IBM Blue Gene/Q, функционирование структуры можно воссоздать не в реальном времени, а на скорости в 1500 раз медленнее.
И это при том, что Sequoia состоит из 96 стоек, занимает площадь в 300 м 2 и имеет потребляемую мощность около 8 МВт. А чтобы «догнать» мозг, нужен гипотетический компьютер, потребляющий около 12 ГВт! Для сравнения: потребляемая мощность человеческого мозга составляет около 20 Вт. Столь большая разница объясняется двумя факторами: технологией и архитектурой. Человеческий мозг использует в качестве элементной базы органические нейроны, а микропроцессоры — неорганические кремниевые транзисторы. Но с этим пока ничего сделать невозможно, и мы решили сосредоточиться на втором факторе — архитектуре».
Ключевая разница
Все современные компьютеры построены по так называемой архитектуре фон Неймана, которая предусматривает наличие процессора и памяти, в которой хранятся данные и логические инструкции по их обработке — программы. Обмен данными между процессором и памятью осуществляется по специальному каналу, который является самым узким местом, ограничивающим производительность такой системы. Операции выполняются последовательно, дирижируют ими внутренние часы (тактовый генератор), и чем больше частота тактов, тем быстрее выполняется обработка данных. И тем выше энергопотребление процессора.
Биологический мозг устроен совершенно по-другому. Основная задача, для которой эволюция путем проб и ошибок создала эту сложную нервную структуру, — обработка большого количества сенсорных сигналов и выдача в ответ на эти сигналы сложных команд. Мозг состоит из множества нервных клеток (нейронов), образующих между собой межклеточные соединения — синапсы. Для такой структуры не существует разделения на «процессор» и «память», язык мозга — это импульсы возбуждения, передаваемые от одного нейрона к другим с помощью синапсов, а инструкции и данные кодируются динамической структурой связей. Такая обработка данных происходит параллельно, то есть не требует высоких тактовых частот внутренних часов, а это означает, что по энергоэффективности такая система не имеет себе равных, на много порядков превосходя самые лучшие изделия рук человеческих.
Синаптическая задача
В 2006 году в исследовательском подразделении IBM задумались над вопросом, нельзя ли построить компьютер, отступив от архитектуры фон Неймана и взяв за образец принципы построения биологического мозга. Это послужило толчком к появлению в 2008 году проекта с говорящим именем SyNAPSE, финансируемого агентством передовых оборонных разработок DARPA.
«Цель проекта, в работе над которым приняли участие множество исследовательских центров и ведущих университетов по всему миру, вполне отражена в его названии. SyNAPSE — это Systems of Neuromorphic Adaptive Plastic Scalable Electronics, нейроморфные адаптивные масштабируемые электронные системы, — объясняет «Популярной механике» Билл Риск, один из руководителей группы разработчиков подразделения IBM Research в Алмадене. — Если говорить более простыми словами, то это создание компьютера, основанного на совершенно новой архитектуре, позаимствованной у человеческого мозга. Ведь это удивительно эффективное устройство. Мозг способен одновременно получать большое количество сигналов — от зрительной системы, слуха, осязания, обоняния — и обрабатывать их. Причем зачастую очень неординарными способами. Вот, например, вы смотрите на изображение розы, но при этом вспоминаете ее запах и ощущение колючек на стебле, хотя ни от обоняния, ни от осязания сигналов в этот момент не поступает: в мозгу нет строгого разделения на поступающие данные, память, инструкции по обработке и команды; все это кодируется с помощью одних и тех же принципов — конфигурации нейронов и синапсов (структуры связей) и передачи нервных импульсов».
Кирпичики мозга
В мозгу мыши насчитывается 16 млн нейронов, образующих разветвленную сеть с помощью 128 млрд синапсов. Это не так уж и много: человеческий мозг образован сетью из 220 трлн синапсов, объединяющих 22 млрд нейронов. Но, несмотря на серьезное количественное различие на несколько порядков, принципы построения мозга и у человека, и у мыши сходны. На макроскопическом уровне можно выделить отдельные области мозга, отвечающие за выполнение тех или иных специализированных задач: зрительная кора, соматосенсорная, моторные области, ассоциативная кора и другие. При более глубоком рассмотрении оказывается, что мозг состоит из так называемых модулей (колонок кортекса), групп нейронов, которые можно рассматривать в качестве строительных блоков коры.
Именно этим и воспользовались разработчики IBM Research. В 2011 году удалось создать полупроводниковый «кирпичик», аналог колонки кортекса — нейросинаптическое ядро из 256 нейронов, объединенных 65 536 синапсами, тем самым продемонстрировав возможность реализации подобного нестандартного подхода «в железе». В состав такого ядра входит также память для хранения параметров конфигурации нейрона и синапсов и модуль коммуникации. А в августе 2014 года команда, работающая над проектом, представила созданный по 28-нм техпроцессу процессор TrueNorth, объединяющий 4096 таких ядер на одном чипе, то есть 1 млн нейронов и 256 млн синапсов. Как утверждает руководитель SyNAPSE Дхармендра Модха, этот процессор — настоящая революция: «Он имеет параллельную, распределенную, модульную, масштабируемую и гибкую архитектуру, объединяющую обработку сигналов, коммуникации и память на одном чипе. Работа TrueNorth управляется не высокочастотным тактовым генератором, а потоком событий («возбуждений» под действием «нервных импульсов»), в результате чего нам удалось добиться рекордных показателей энергоэффективности: при типичной работе процессор потребляет менее 100 мВт, в тысячу раз меньше обычного современного процессора».