Hello, Vadim! You wrote to Alexander Derazhne on Sun, 10 Aug 2003 19:11:14 +0400:
VT>>> Hо ситуации, когда -IOR=0 и -IOW=0, не бывает ? AD>> Теоретически может быть во время цикла ПДП.
VT> А практически ?
А практически рассчитывай на то, что может и так случиться. Тебе что, жалко? :-))
VT> При циклах ПДП -AEN высокий, так ?
А я помню? Знаешь, сколько лет тому я в последний раз видел живую ису?
VT> А низком уровне на -AEN одинаковые уровни на -IOR и -IOW бывают, что ли VT> ?
Да, БЫВАЮТ. ОБА НЕАКТИВНЫЕ.
VT>>> Хорошо. Hо почему тогда периодически вместо 0x00F0 (см. схему) VT>>> компьютер считывает с карты 0x00FF ? Ведь отслеживаемая линия-то - VT>>> -IOR...
Значит ты не туда сел. Может у тебя в монтаже глюк. Волосок на плате или микротрещина в дорожке. Мы как-то день КЗ по питанию искали,, всю плату изрезали. Кусочек дорожки +5 коротил на землю в соседнем ряду микросхем. Ни одного переходного отверстия, скальпелем его вокруг обскребли - всё равно КЗ! Отодрали (уже из спортивного интереса) - фольга как фольга, текстолит как текстолит. Щупом по этому место поелозили - нет, всё нормально. Так до сих пор и не знаю что это было.
AD>> Скорее всего ты насел на чьи-то адреса и на шине данных идёт AD>> драка.
VT> Смотрю стандартную программу Windows "Сведения о системе": Ресурсы VT> аппаратуры->I/O: Диапазон с 0x3F7 по 0x480 свободен. VT> В BIOS, естественно, всё чисто. VT> Значит, советуете выбрать себе адрес в диапазоне 0x300-0x310 ? VT> Хорошо. VT> Правда, в этом диапазоне уже засела моя звуковуха :)
Вот тебе карта портов, играйся. ===========
Ports 000H-0ffH are reserved for and used by the system board Ports 100H-3ffH are decoded on the I/O bus for use by adapter cards Ports 400H and up are not available on the system bus
The following table summarizes I/O port usage for the PC/XT and AT. Individual ports covered in greater detail are marked with a hyperlink. Additional info is covered in I/O Port Detail. See Cables and Pin Outs for info on hardware connectors.
AT PC/XT Description More Information ъъъъъъъ ъъъъъъъ ъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъъ ъъъъъъъъъъъъъъъъъъ
000-01f 000-00f DMA controller #1, 8237A-5. DMA Ports
020-03f 020-021 Interrupt controller, 8259A. Int Controller
040-05f 040-043 Timer 8253-5 (AT: 8254.2). Timer Ports 060-063 PPI (Programmable Peripheral Interface) PPI Ports keyboard, equipment switches, timer
060-06f Keyboard controller 8042 AT Keyboard
070-07f Real-time clock, CMOS Memory, NMI mask CMOS Memory
080 manufacture's diagnostic checkpoint
080-09f 080-083 DMA page register 74LS612 DMA Ports 0a0 NMI (Non-maskable Interrupt) mask
0a0-0bf Interrupt Controller #2, 8259A
0c0-0df DMA controller #2, 8237A-5 DMA Ports
0f0-0ff Math Coprocessor
102 PS/2 Programmable Option Select
170-177 Hard disk (secondary) AT Hard Disk Ports
1f0-1f7 Hard disk AT Hard Disk Ports
200-207 200-20f Game I/O (joystick A/D port) Joystick Port 210-217 Expansion Box
278-27f 278-27f Parallel Printer #2 (#3 with MDA) Printer Ports
2c0-2df 2c0-2df EGA #2 EGA I/O Ports
2e8-2ef Asynchronous Adapter Port #4 Serial Ports
2f8-2ff 2f8-2ff Asynchronous Adapter Port #2 Serial Ports
300-31f Prototype card 320-32f Hard disk XT Hard Disk Ports
370-377 Diskette Controller (secondary) FDC Ports
378-37f 378-37f Parallel Printer #1 (#2 with MDA) Printer Ports
380-38f 380-38f Synchronous Data Link Control (SDLC)
3a0-3af 3a0-3a9 Bisynchronous port #1
3b0-3df 3b0-3df Video Graphics Array (VGA) VGA I/O Ports
3b0-3bf 3b0-3bf Monochrome Display Adapter/Printer #1 Printer Ports
3c0-3cf 3c0-3cf Enhanced Graphics Adapter (EGA) #1 EGA I/O Ports
3d0-3df 3d0-3df Color/Graphics Adapter (CGA) and EGA CGA I/O Ports
3f0-3f7 3f0-3f7 Diskette controller FDC Ports
3ef-3ff Asynchronous Adapter Port #3 Serial Ports
3f8-3ff 3f8-3ff Asynchronous Adapter Port #1 Serial Ports
See Also: I/O Port Detail BIOS Data Area Interrupts and BIOS Services Cables and Pin Outs --
===========
VT> Кстати, когда идёт обращение к PCI-картам, их адреса выставляются и VT> также на шине ISA, но -IOR и -IOW не задействуются, я правильно VT> понял ?
До того, как будет выставлен строб на шине вообще может происходить всё что угодно. Тебя интересует что там творится за несколько сотен наносекунд до строба и после. Больше тебе никто ничего не гарантирует.
VT> Порты, на которых сидят сетевые приложения вроде Apache, MySQL - они VT> специального типа или при обращении вышеперечисленных приложений по VT> ним (ответе на запрос сприптов, нап.) идёт также обращения по VT> системным шинам ПК по адресу, соответствующему порту, по которому VT> идёт обращение ?
Нет, это не те порты, эти с круглогодичной навигацией. :-))) В данном случае англоязычные наступили на те же грабли, что и мы со словом "поток" :-))). Не бери в голову.
AD>> Hет, не так. Держать до тех пор, пока твой девайс не сочтёт, что AD>> прерывание обработано.
VT> А как же ему "считать" ? Как ему понять, что прерывание обработано ?
А это тебе решать. Посмотри, например, как сделано в 580ВВ55 (i8255) в режимах 1 и 2.
With best regards, Alexander Derazhne.