|
Адреса ISA шины, Помогите разобраться с диапазонами адресов |
|
|
|
Sep 17 2009, 13:36
|
Группа: Участник
Сообщений: 12
Регистрация: 26-04-08
Пользователь №: 37 110

|
Добрый день. Возник такой вопрос по этой старой шине, долго гуглил но что то не доконца разобрался.
Возьмем для определенности 8битную ее версию и компьютер под управлением 80368. На плату внешнего устройства заведены 20 линий адреса + сигналы типа Мем_рид и ИО_рид. Как я понимаю, на все слоты (предположим, на материнке их 5) выведены одни и те же линии шины, то есть мы получаем как бы 2^20 = 1 мегабайт пространства, выделенного на все иса-устройства. Подскажите, во-первых - этот мег памяти - где он на карте памяти? Ну то есть, мы же можем туда завести А0-А19 от процессора, а можем, допустим, А12-А31 - то есть в первом случае это будет первый мегабайт всех адресов памяти компа, во втором - последний. Второй вопрос - какие есть ограничения на декод адреса, кроме как "чтоб не конфликтовали". Я почему-то много где видел.. что-то вроде "декодируйте А0-А9", то есть 10 бит. Я так понимаю, это сказано в отношении пространства ИО, все таки, но не понятно почему такое ограничение, и что делать с остальными линиями.
Может, я какой то очень важный момент проглядел, но вроде бы пространство ИО в 386м уже 16-битное, то есть я могу сделать mov ax, FFFF in ax, dx Пусть из него какая то часть занята устройствами на мат. плате типа сис таймера - но FFFF-3FF это ж целых 64512 портов ИО, где они?
И последний пока вопрос - больше практический - ИСА же никак не сообщает об устройствах системе, как же биос узнает какие установлены флопики и харды, чтобы загрузиться с них?
Заранее благодарен, надеюсь поможете пролить свет на архитектуру. Вообще, задумал небольшой проект с целью самообразования и заодно в рамках курса в универе - собрать ИСА контроллер для флешки (SD-карточки). Предполагаю сделать его эмулятором флопика или харда, чтобы старенький комп просто решил что в него воткнули новый хард и спокойно с него загрузился.
|
|
|
|
|
 |
Ответов
|
Sep 22 2009, 14:32
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(SasaVitebsk @ Sep 22 2009, 14:33)  Ну в целом я согласен с Вами. Но найдите прокол в моём подходе. Посмотрите например Creative Labs AWE32. Думаю этот производитель получал документацию от IBM. Прокол заключается в том, что мост PCI-ISA (а именно на таких мостах построены шины ISA в современных писюках, в частности, в индустриальных PC популярен ITE8888 ...) ни сном ни духом не ведает, какие там устройства висят на ISA и какие адреса они используют, поэтому он (мост) как-то должен принимать решение, транслировать I/O операцию на ISA шину, или же оставить её PCI-устройствам. Существует две политики транслирования - позитивное и субтрактивное декодирование адреса. 1) В случае позитивного декодирования - на ISA-шину транслируются I/O операции в строго определённых диапазонах, именуемых окнами. Эти диапазоны прописываются BIOS-ом в регистрах PCI-ISA моста. Таким образом, чтобы запустить ISA-карту с нестандартным расположением I/O пространства на конкретном PC, требуется, чтобы BIOS Setup позволял настроить эти окна в нужном диапазоне (что позволяют далеко не все "мамки"), либо самостоятельно писать патч (драйвер) под конкретную "мамку". 2) Случай субтрактивного декодирования, на первый взгляд, решает проблему - на ISA-шину отправляются все транзакции I/O, которые не были востребованы на PCI в течение 3 тактов PCI-шины. И в большинстве случаев это действительно работает. Только вот гарантии, что это будет работать всегда нет никакой - ибо теперь уже служба PnP не знает, какие адреса можно выделять PCI-устройствам, а какие заняты ISA-девайсом. И вполне может оказаться так, что PnP выделит PCI-устройству именно тот диапазон адресов, который использует Ваша ISA-карта. При этом мост PCI-ISA, настроенный на субтрактивное декодирование, уже не будет транслировать I/O на ISA-шину в нужном диапазоне, занятом PCI-устройством, и опять же ISA-устройство не будет работать. ============================== Вот чтобы таких казусов не происходило - договорились о "железной" границе в пространстве I/O (как наиболее дефицитном ресурсе) - до 3FF на ISA, далее всё в распоряжение PCI.
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
Сообщений в этой теме
Amon Ra Адреса ISA шины Sep 17 2009, 13:36 zltigo Цитата(Amon Ra @ Sep 17 2009, 15:36) Подс... Sep 17 2009, 16:50 vvs157 Пространство ввода-вывода с архитектуре x86 всегда... Sep 17 2009, 16:54 zltigo Цитата(vvs157 @ Sep 17 2009, 18:54) но ес... Sep 17 2009, 17:05  vvs157 Цитата(zltigo @ Sep 17 2009, 21:05) Если ... Sep 17 2009, 21:00   zltigo Цитата(vvs157 @ Sep 17 2009, 22:52) Да не... Sep 17 2009, 21:01    SasaVitebsk Цитата(zltigo @ Sep 18 2009, 00:01) Повид... Sep 21 2009, 12:07     zltigo Цитата(SasaVitebsk @ Sep 21 2009, 15:07) ... Sep 21 2009, 13:39 Amon Ra >На PCI, вестимо....
> Ну и вообще-то PnP на... Sep 17 2009, 17:19 zltigo Цитата(Amon Ra @ Sep 17 2009, 19:19) Мы о... Sep 17 2009, 17:23  Amon Ra Цитата(zltigo @ Sep 17 2009, 21:23) Мы го... Sep 17 2009, 17:31   zltigo Цитата(Amon Ra @ Sep 17 2009, 19:31) Ну х... Sep 17 2009, 18:52 Amon Ra Ну спасибо, с этим более-менее разобрался.
Тогда о... Sep 17 2009, 20:11 zltigo Цитата(Amon Ra @ Sep 17 2009, 22:11) Так ... Sep 17 2009, 20:28 rezident Цитата(Amon Ra @ Sep 18 2009, 02:11) Пото... Sep 17 2009, 20:45 vvs157 Цитата(Amon Ra @ Sep 18 2009, 00:11) Пото... Sep 17 2009, 21:08 Amon Ra Под "в стандартном формате" я имел в вид... Sep 17 2009, 21:18 Demeny Цитата(Amon Ra @ Sep 18 2009, 01:18) Ведь... Sep 21 2009, 09:13  zltigo Цитата(Demeny @ Sep 21 2009, 12:13) Думаю... Sep 21 2009, 09:19   Demeny Цитата(zltigo @ Sep 21 2009, 13:19) Отнюд... Sep 21 2009, 09:43    zltigo Цитата(Demeny @ Sep 21 2009, 12:43) Помни... Sep 21 2009, 09:52    SSerge Цитата(Demeny @ Sep 21 2009, 15:43) Помни... Sep 21 2009, 10:21    MaslovVG Цитата(Demeny @ Sep 21 2009, 13:43) Помни... Sep 21 2009, 11:10 BigRed Скачайте и почитайте. Вроде бы все подробно описан... Sep 18 2009, 02:59 singlskv Начать можете с книжки Роберта Журдена
"Справ... Sep 21 2009, 09:56 SasaVitebsk 1) Извиняюсь за то, что я невнимательно ознакомилс... Sep 22 2009, 15:28
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|