Аппаратные интерфейсы ПК - [199]
Поскольку шина ISA имеет 24-разрядную шину адреса, ведущие устройства этих шин (ISA Bus Master) способны обращаться к памяти (ОЗУ и память адаптеров) в пределах первых 16 Мбайт (000000-FFFFFFh). To же ограничение касается и стандартного контроллера DMA, которым могут пользоваться устройства шины ISA (и иные устройства системной платы).
Шина PCI имеет 32-разрядную шину адреса, так что ее ведущим устройствам доступна вся физическая память[5]. Для устройств PCI могут выделяться любые области адресов, свободные от ОЗУ, ROM BIOS и устройств ISA. Области адресов памяти, используемые каждым устройством PCI, описаны в заголовках их конфигурационных пространств. Эти данные требуются при распределении ресурсов и настройке мостов PCI в процессе инициализации шины.
12.2. Пространство ввода-вывода
Пространство ввода-вывода в IBM PC, как и в процессорах х86, отделено от пространства памяти. У всех этих процессоров, в том числе и 32-разрядных, в пространстве ввода-вывода используется 16-разрядная адресация (диапазон адресов 0-FFFFh). Для дешифрации адресов портов в оригинальном PC из 16 бит использовались только младшие 10 (>А0
->А9
), что обеспечивает обращением портам в диапазоне адресов 0-3FFL Старшие биты адреса, хотя и поступают на шину, устройствами игнорируются. В результате обращения по адресам, к примеру 378h, 778h, B78h и F78h, будут восприниматься устройствами одинаково. Это упрощение, нацеленное на снижение стоимости как системной платы, так и схем плат адаптеров, для шины ISA никто не отменял. Традиционные адаптеры для шины ISA, называемые Legacy Card («наследие тяжелого прошлого»), для старших бит адреса не имеют даже печатных ламелей на своем краевом разъеме. Впоследствии перешли к 12-битной адресации устройств шины ISA, но ее приходится применять с оглядкой на возможное присутствие устройств с 10-битной адресацией. В адаптерах для шин MCA и PCI и во всех современных системных платах используются все 16 бит адреса. Карта распределения адресов ввода-вывода стандартных устройств PC приведена в табл. 12.1. Эта карта подразумевает 10-битную дешифрацию адреса. Естественно, что в конкретном компьютере реально присутствуют не все перечисленные устройства, но в то же время там могут оказаться другие, не попавшие в таблицу.
Таблица 12.1. Стандартная карта портов ввода-вывода
AT и PS/2 | PC/XT | Назначение |
---|---|---|
000-00F | 000-00F | Контроллер DMA #1 8237 |
010-01F | PS/2 — расширение DMA#1 | |
020-021 | 020-021 | Контроллер прерываний #1 — 8259A |
040-05F | 040-043 | Таймер (PC/XT: 8253, AT: 8254) |
060 | 060 | Диагностический регистр POST (только запись) |
060-063 | Системный интерфейс 8255 | |
060, 064 | Контроллер клавиатуры AT 8042 | |
061 | Источники NMI и управление звуком | |
070-07F | Память CMOS и маска NMI | |
080 | Диагностический регистр | |
080-08F | 080-083 | Регистры страниц DMA |
090-097 | PS/2 микроканал, арбитр | |
0А0 | Маска NMI | |
0A0-0BF | Контроллер прерываний #2 — 8259A | |
0C0-0DF | Контроллер DMA #2 8237A-5 | |
0F0-0FF | Сопроцессор 80287 | |
100-1EF | PS/2 управление микроканалом | |
170-177 | Контроллер НЖМД #2 (IDE#2) | |
1F0-1F7 | Контроллер НЖМД #1 (IDE#1) | |
200-207 | 200-20F | Игровой адаптер |
210-217 | Блок расширений | |
238-23F | COM4 | |
278-27F | 278-27F | Параллельный порт LPT2 (LPT3 при наличии MDA) |
2A2-2A3 | часы MSM48321RS | |
2C0-2DF | 2C0-2DF | EGA #2 |
2E0-2E7 | COM4 | |
2E8-2EF | COM4 | |
2F8-2FF | 2F8-2FF | COM2 |
300-31F | Плата прототипа | |
320-32F | Жесткий диск XT | |
338-33F | COM3 | |
370-377 | Контроллер НГМД #2 | |
376-377 | Порты команд IDE#2 | |
378-37F | 378-37F | Параллельный порт LPT1 (LPT2 при наличии MDA) |
380-38F | 380-38F | Синхронный адаптер SDLC/BSC #2 |
3A0-3AF | 3A0-3A9 | Синхронный адаптер BSC#1 |
3B0-3BB | 3B0-3BB | Монохромный адаптер (MDA) |
3B4-3C9 | PS/2 видеосистема | |
3BC-3BF | 3BC-3BF | Параллельный порт LPT1 платы MDA |
3C0-3CF | 3C0-3CF | EGA#1 |
3C0-3DF | 3C0-3DF | VGA |
3D0-3DF | 3D0-3DF | CGA/EGA |
3E0-3E7 | COM3 | |
3E8-3EF | COM3 | |
3F0-3F7 | 3F0-3F7 | Контроллер НГМД #1 |
3F6-3F7 | Порты команд IDE#1 | |
3F8-3FF | 3F8-3FF | COM1 |
Каждой шине назначается своя область адресов ввода, поэтому дешифратор адресов, расположенный на системной плате, при чтении открывает соответствующие буферы данных, так что реально считываться будут данные только с одной шины. При записи в порты данные (и сигнал записи) могут распространяться по всем шинам компьютера. В стандартном распределении адреса 0h-0FFh отведены для устройств системной платы. При наличии (и разрешении работы) периферийных устройств на системной плате чтение по этим адресам не распространяется на шины расширения. Для современных плат со встроенной периферией и несколькими шинами (ISA, PCI) распределением адресов управляет BIOS через регистры конфигурирования чипсета.
12.3. Аппаратные прерывания
Аппаратные прерывания обеспечивают реакцию процессора на события, происходящие асинхронно по отношению к исполняемому программному коду. Прерывания в процессорах х86 подробно рассмотрены в литературе [6, 7]. Здесь напомним, что аппаратные прерывания делятся на маскируемые и немаскируемые.
На немаскируемое прерывание (NMI) процессор реагирует всегда (если обслуживание предыдущего NMI завершено); этому прерыванию соответствует фиксированный вектор 2. Немаскируемые прерывания в PC используются для сигнализации о фатальных аппаратных ошибках. Сигнал на линию
На первый взгляд процедура удаления Windows 8 ничем не отличается от вполне обычного форматирования винчестера с последующей установкой системы. К сожалению, все гораздо сложней.
Arduino — стандартный микроконтроллер, получивший широкое признание у инженеров, мастеров и преподавателей благодаря своей простоте, невысокой стоимости и большому разнообразию плат расширения. Платы расширения, подключаемые к основной плате Arduino, позволяют выходить в Интернет, управлять роботами и домашней автоматикой.Простые проекты на основе Arduino не вызывают сложностей в реализации. Но, вступив на территорию, не охваченную вводными руководствами, и увеличивая сложность проектов, вы быстро столкнетесь с проблемой нехватки знаний — врагом всех программистов.Эта книга задумана как продолжение бестселлера «Programming Arduino: Getting Started with Sketches».
Вы приобрели нетбук? И теперь хотите понять, чем он отличается от привычного всем ноутбука? Тогда вы держите в руках действительно необходимую книгу. Прочитав ее, вы не только освоите все тонкости, относящиеся к работе с нетбуками, но и узнаете о том, как работать на компьютере. Вы научитесь выбирать мобильный компьютер и аксессуары к нему, узнаете, как установить и настроить операционную систему, научитесь пользоваться пакетом Microsoft Office, выясните, какие программы следует иметь на жестком диске, как защитить сам ноутбук и данные на нем, можно ли модернизировать нетбук и что делать в случае его поломки.
В книге собраны и обобщены советы по решению различных проблем, которые рано или поздно возникают при эксплуатации как экономичных нетбуков, так и современных настольных моделей. Все приведенные рецепты опробованы на практике и разбиты по темам: аппаратные средства персональных компьютеров, компьютерные сети и подключение к Интернету, установка, настройка и ремонт ОС Windows, работа в Интернете, защита от вирусов. Рассмотрены не только готовые решения внезапно возникающих проблем, но и ответы на многие вопросы, которые возникают еще до покупки компьютера.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Жизнь современного человека — это движение. Мобильность для нас становится одним из самых важных моментов для работы, для общения, для жизни. Многие из нас сейчас уже не представляют жизнь без сотовых телефонов, которые из средства роскоши превратились в предмет, без которого жизнь современного человека стала просто немыслима. Многие уже оценили все преимущества Bluetooth, GPRS. Эти устройства превратили наши телефоны из средств связи в незаменимых помощников в работе. К сожалению, один из самых главных недостатков этих беспроводных технологий — малый радиус действия и низкая скорость передачи данных, что сейчас становится очень важным фактором для всех нас.