Проблемы с винчестером
ZXNet эхоконференция «real.speccy»
От Sergey Karachentsev → Кому All 30.01.2000
После подключения (аппаратного) HDD и переделки драйвера ZXNext под свои
порты я попробовал создать в IS-DOS'е устройство (с помощью create.com)
Проверка секторов проходит успешно (bad=0). Во время проверки слышно как
внутри HDD двигаются головки. После проверки через несколько секунд
возвращается в обратно в create.com. При попытке выбрать "созданное" устройство
выдаёт ошибки 86 или 87 (иногда это удаётся но записать туда что либо
невозможно).
Результаты "непосредственных" опытов:
Команду "sleep" выполняется всегда (даже из бейсика).
Из регистров HDD в основном считывются числа которые туда были записаны
(циклический опрос из бейсика). Иногда (где-то 1 из 20 раз) может считаться
другое число (чаще всего 0).
Команды инициализации HDD и рекалибровки выполняются успешно.
Сразу после выдачи комады чтения секторов (#21) устанавливается 0-й бит
регистра состояния (error), содержит #59. В регистре ошибок обнаруживется при
этом код #10. Каждый раз с одного и того же сектора считывается похожая, но
разная информация (преобладают байты #00 и #FF). После приёма всех запрошенных
данных регистр состояния содержит #51.
В чём здесь проблема ? Кто знает ?
Винчестер Seagate ST3291A (был успешно проверен на PC, бэдов нет)
С уважением, Sergey Karachentsev.
От Felix Knajzev → Кому All 31.01.2000
[Воскресенье 30 Январь 2000] в [22:25:00] Sergey Karachentsev начертал(а)
письмецо к All.
Обсуждали они тему "Проблемы с винчестером". Продолжим начатое...
SK> После подключения (аппаратного) HDD и переделки драйвера
^^^^^^^^^^^^^^^^^^^^
SK> ZXNext под свои
^^^^^^^^^^^^^^^
SK> порты
^^^^^
[skip]
SK> В чём здесь проблема ? Кто знает ?
Смотри выше подчёркнутое. У тебя наверняка конфликтуют порты ввода-вывода
"твоего" zxnext-контроллера и чего-то ещё.
Оригинальная схема zxnext-hdd очень сильно "засоряет" адресное пространство
ввода-вывода Спекка.
Тебе надо было перед переделкой схемы под свои порты сделать следующее:
- выписать на бумажку ВСЕ _свои_ порты hdd, полные 16-ти разрядные!
- В basic_48 проверить их ВСЕ на ЧТЕHИЕ (!) (PRINT IN).
- Для всех портов должно считываться #FFh (255) (!).
Только это может более-менее точно (возможны исключения: сразу после RESET'а из
портов AY-ка [#fffd, #bffd] читаются #FF) сказать о работе твоего девайса с
самостийными портами в/в.
Вывод: отключи свой hdc от шин компа (можно на основном дешифраторе сигнал
/IORQ заменить на лог."1"), проверь выше написанное, если не #FF - займись
"расчисткой" портов для твоих
портов hdc.
С уважением, Felix.
[I ZX]
От Sergey Karachentsev → Кому All 02.02.2000
FK> Смотри выше подчёркнутое. У тебя наверняка конфликтуют порты ввода-вывода
FK> "твоего" zxnext-контроллера и чего-то ещё.
Это полностью исключено! Hа плате моего PROFI неполную (оригинальную)
дешифрацию имеют только ВГ93, ВВ55 и AY-8910 , все остальные порты имеют
16-разрядную (!) дешифрацию, все внешние устройства имеют 8-разрядную
дешифрацию.
FK> Оригинальная схема zxnext-hdd очень сильно "засоряет" адресное пространство
FK> ввода-вывода Спекка.
Порты моего контроллера задешифрированы всеми 8-ю младшими битами ША.
FK> Тебе надо было перед переделкой схемы под свои порты сделать следующее:
FK> - выписать на бумажку ВСЕ _свои_ порты hdd, полные 16-ти разрядные!
уже сделано, запротоколировано и распечатано
FK> - В basic_48 проверить их ВСЕ на ЧТЕHИЕ (!) (PRINT IN).
уже сделано
FK> - Для всех портов должно считываться #FFh (255) (!).
везде получено #FF (при неподключенном HDD)
FK> Только это может более-менее точно (возможны исключения: сразу после
FK> RESET'а
FK> из портов AY-ка [#fffd, #bffd] читаются #FF) сказать о работе твоего
FK> девайса
FK> с самостийными портами в/в.
FK> Вывод: отключи свой hdc от шин компа (можно на основном дешифраторе сигнал
FK> /IORQ заменить на лог."1"), проверь выше написанное, если не #FF - займись
FK> "расчисткой" портов для твоих
FK> портов hdc.
При изъятии контроллера из слота (собрана буферная схема из SPECTRUM EXPERT 2)
всегда читается #FF (кроме внутренних портов платы и портов установленных в
слоты переферийных устройств)
Винчестер полностью исправен (проверен повторно на PC)
С уважением, Sergey Karachentsev.
От Dmitry Lomov → Кому All 04.02.2000
Однажды, Чет Фев 03 2000 17:21, Felix Knajzev писал к Sergey Karachentsev о
[Проблемы с винчестером]:
FK> У меня сейчас SE2 забрали. Если *кратко*, то *как* там эта "ёлка"
FK> предоставляет шины проца для внешних устройств?
правильно предоставляет ;)
конкретнее спрашивать надо.
Всего хорошего.
Дмитрий.
... LD..X-TRADE... [ZX]
От Roman Milukov → Кому All 05.02.2000
02 февраля 2000 г. ты тут писал:
SK> Это полностью исключено! Hа плате моего PROFI неполную (оригинальную)
SK> дешифрацию имеют только ВГ93, ВВ55 и AY-8910 , все остальные порты
SK> имеют 16-разрядную (!) дешифрацию, все внешние устройства имеют
SK> 8-разрядную дешифрацию.
IMHO ты пеpебоpщил с полнотой дешифpации. :)
SK> При изъятии контроллера из слота (собрана буферная схема из SPECTRUM
SK> EXPERT 2) всегда читается #FF (кроме внутренних портов платы и портов
Пpоанализиpуй вpеменнЫе паpаметpы сигналов в своём контpолёpе, баги где-то там.
Всего хорошего.
Роман.
[ZX]
От Felix Knajzev → Кому All 06.02.2000
DL> правильно предоставляет ;)
Hе сомневаюсь. ;)
DL> конкретнее спрашивать надо.
Куда ж конкретнее. :-/
Имеем порт. :) Хотим из/в него прочитать/записать. Как ёлка буфер (D0-D7)
для него открывает? :) С дешифратора этого порта на неё должен
сигнал выборки этого порта тащится? Или как? Схему только мельком успел
посмотреть. :(
От Kirill Frolov → Кому All 06.02.2000
06 Feb 00 03:09, Felix Knajzev wrote to Dmitry Lomov:
FK> Имеем порт. :) Хотим из/в него прочитать/записать. Как ёлка буфер
FK> (D0-D7) для него открывает? :) С дешифратора этого порта на неё должен
FK> сигнал выборки этого порта тащится? Или как? Схему только мельком
FK> успел посмотреть. :(
Имхо оно для всех откpывает. Кто сильнее, тот и пеpетянет ;-(
... no day without speccy!
От Dmitry Lomov → Кому All 06.02.2000
запись без проблем - по умолчанию шины данных, адреса и управления
транслируются наружу. чтение: если имеем IORQ=0 IOGE=1 RD=0, открываем буфер в
сторону компа (чтение устройства, стоЯщего на ёлке). если есть BUSAK,
управление меняется напрочь. Адрес и управление идут снаружи в комп, а данные
идут в зависимости от управляющих сигналов, при этом должно правильно
отрабатываться чтение устройством на ёлке устройств как внутри компа, так и на
этой же ёлке ;)
От Sergey Karachentsev → Кому All 06.02.2000
У кого есть описание электрических параметров IDE шины ?
С уважением, Sergey Karachentsev.
От Sergey Karachentsev → Кому All 06.02.2000
SK>> Собрана буферная схема из SPECTRUM EXPERT 2
FK> ^^^^^^^^^^^^^^^^^
FK> Вот про это ты забыл упомянуть. У тебя к этой "ёлке" ещё что-нибудь
FK> подключено?
Только KEMPSTON MOUSE. Пробовал отключать.
SK>> всегда читается #FF (кроме внутренних портов платы и портов
SK>> установленных в слоты переферийных устройств)
FK> Значит остаётся два момента:
FK> 1. Ошибка в драйвере (ты ведь его переписывал?)
Только вписал свои номера портов.
FK> 2. Твой hdc не уживается с "ёлкой".
Я думаю логика винчестера не уживается с TTL логикой контроллера.
Требуется электрическое согласование.
И как назло, у меня нет никакой информации по стандартам IDE шины :((((((((
FK> У меня сейчас SE2 забрали. Если *кратко*, то *как* там эта "ёлка"
От Kirill Frolov → Кому All 07.02.2000
SK> Только вписал свои номера портов.
А может дpайвеp всё-таки непpавильный?
SK> Я думаю логика винчестера не уживается с TTL логикой контроллера.
SK> Требуется электрическое согласование.
Там может быть только одна пpоблема. В длинном шлейфе с немеpяной
индуктивностью сигнал "звенит". Контpоллеp винта надо собиpать на
555 сеpии, 1533 ни в коем случае не ставь! И в каждый пpовод pезистоp
на 50 ом можешь поставить в pазpыв.
SK> И как назло, у меня нет никакой информации по стандартам IDE шины
SK> :((((((((
Это тебе не поможет.
От Dmitry Lomov → Кому All 07.02.2000
Однажды, Пон Фев 07 2000 05:42, Kirill Frolov писал к Sergey Karachentsev о
[Проблемы с винчестером]:
SK>> Я думаю логика винчестера не уживается с TTL логикой контроллера.
SK>> Требуется электрическое согласование.
KF> Там может быть только одна пpоблема. В длинном шлейфе с немеpяной
KF> индуктивностью сигнал "звенит". Контpоллеp винта надо собиpать на
KF> 555 сеpии, 1533 ни в коем случае не ставь! И в каждый пpовод
KF> pезистоp на 50 ом можешь поставить в pазpыв.
с такими торцами и 1533 покатит. и даже, имхо, лучше будет. вот без торцов -
да, 1533 звенит.
От Felix Knajzev → Кому All 07.02.2000
DL> запись без проблем - по умолчанию шины данных, адреса и
DL> управления транслируются наружу. чтение: если имеем IORQ=0
DL> IOGE=1 RD=0, открываем буфер в сторону компа (чтение
^^^^^^^^^^^
Т.е. если в ёлке установлено более одного устройства, то шину
получит тот, у кого схема перехвата IOGE работает быстрее?
Может у человека из-за этого сабж?
DL> устройства, стоЯщего на ёлке). если есть BUSAK, управление
DL> меняется напрочь. Адрес и управление идут снаружи в комп, а
DL> данные идут в зависимости от управляющих сигналов, при этом
DL> должно правильно отрабатываться чтение устройством на ёлке
DL> устройств как внутри компа, так и на этой же ёлке ;)
Сенькс. Всё чётко и ясно.
Интересно, а поддержка ёлкой BUSAK была задумана изначально или
из-за того, что подвернулась аказия - были применены АП6 для более простой
разводки? ;)
От Kirill Frolov → Кому All 08.02.2000
FK> ^^^^^^^^^^^
FK> Т.е. если в ёлке установлено более одного устройства, то шину
FK> получит тот, у кого схема перехвата IOGE работает быстрее?
Все одновpеменно. Там нет pазличий между слотами, они запаpаллелены.
Или я непpав?
FK> Интересно, а поддержка ёлкой BUSAK была задумана изначально или
FK> из-за того, что подвернулась аказия - были применены АП6 для более
FK> простой разводки? ;)
А зонов ИР22 поставил...
От Kirill Frolov → Кому All 08.02.2000
SK>> SPECTRUM EXPERT 2) всегда читается #FF (кроме внутренних портов
SK>> платы и портов
RM> Пpоанализиpуй вpеменнЫе паpаметpы сигналов в своём контpолёpе, баги
RM> где-то там.
TRUTH IS OUT THERE... ? (C) X-files.
От Kirill Frolov → Кому All 08.02.2000
07 Feb 00 22:25, Dmitry Lomov wrote to Kirill Frolov:
KF>> собиpать на 555 сеpии, 1533 ни в коем случае не ставь! И в
KF>> каждый пpовод pезистоp на 50 ом можешь поставить в pазpыв.
DL> с такими торцами и 1533 покатит. и даже, имхо, лучше будет. вот без
DL> торцов - да, 1533 звенит.
А я бы тpиггеp шмидта в каждый пpовод поставил,
с модемом помогло лучше pезистоpов...
От Dmitry Lomov → Кому All 08.02.2000
DL>> без торцов - да, 1533 звенит.
KF> А я бы тpиггеp шмидта в каждый пpовод поставил,
KF> с модемом помогло лучше pезистоpов...
да ну, просто один глюк заменился на другой, менее заметный ;)
От Dmitry Lomov → Кому All 08.02.2000
ты чего-то не то говоришь.
если два устройства одновременно опознают свой адрес, это не будет работать
вообще. все устройства после ёлочных микросхем запараллелены, посему даже в
этом случае просто шина данных откроется "внутрь", а если устройства хотят
грузить друг друга - это их дело ;)
единственно, в чем есть недоработка - на шине _до_ ёлки не должно быть
устройств, формирующих IOGE, равно как и _после_ ёлки не должно быть устройств,
не формирующих IOGE. посему, например, SMUC можно включать только перед ней -
он не формирует IOGE.
От Felix Knajzev → Кому All 08.02.2000
SK> IDE шины :((((((((
Собственно, тебе это не особо и надо. Главное для твоего hdc (и и интерфейса
hdd) обеспечить раскачку достаточно приличной ёмкости и индуктивности
интерфейсного шлейфа. С этим чудесно справляется любая МС ТТЛ-буфер, т.е. та,
которая способна отдать 24 мА (и/или более) для лог.0 на выходе. Как ужЕ тут
говорил Кирилл Фролов, оптимальной является серия К555. КР1533
ставить не рекомендуется (могу найти авторское обоснование Hемо). Кстати, этот
же момент я подметил практически на всех MIO-ISA ("исашная" мультяха") от
оффтопика: буфера для IDE - это 74LS245 (555АП6) и 74LS244 (555АП5). А у тебя
на какие МС нагружен шлейф?
+Ещё: Попробуй в разрыв контактов 23 и 25 ide-шлейфа поставить
резисторы 22...56 Ом. Установи их со стороны того конца шлейфа,
который подходит к твоему hdc.
От Kirill Frolov → Кому All 09.02.2000
08 Feb 00 22:00, Felix Knajzev wrote to Sergey Karachentsev:
FK> индуктивности интерфейсного шлейфа. С этим чудесно справляется любая
FK> МС ТТЛ-буфер, т.е. та, которая способна отдать 24 мА (и/или более) для
FK> лог.0 на выходе. Как ужЕ тут говорил Кирилл Фролов, оптимальной
FK> является серия К555. КР1533 ставить не рекомендуется (могу найти
А почему сpану не pулезную 155? Кстати 1533 тоже может ведь.
Тут дело не в отдаваемом токе в статическом pежиме, а в констpукции
выходных каскадов, имхо.
FK> Твой hdc формирует IOGE? Как он это делает?
А оно надо?
От Kirill Frolov → Кому All 09.02.2000
KF>> А я бы тpиггеp шмидта в каждый пpовод поставил,
KF>> с модемом помогло лучше pезистоpов...
От Sergey Karachentsev → Кому All 10.02.2000
FK> А рулез типа "дофига INI" и "дофига OUTI" для твоих новых портов
FK> сохраняется?
Hе только INI's и OUTI's но и INIR c OTIR :)
FK> буфера для IDE - это 74LS245 (555АП6) и 74LS244 (555АП5).
FK> А у тебя на какие МС нагружен шлейф?
Шина данных (собрана по схеме контроллера Спринтера):
две K1533АП6 и одна K555ИР23
Сигналы HA0,HA1,HA2 : K555ЛИ1
Сигналы CS0,CS1,IOW,IOR : К1533ЛЛ1
FK> +Ещё: Попробуй в разрыв контактов 23 и 25 ide-шлейфа поставить
FK> резисторы 22...56 Ом. Установи их со стороны того конца шлейфа,
FK> который подходит к твоему hdc.
Пробовал ставить на все выходы К1533ЛЛ1 резисторы по 56 Ом.
Hа первый взгляд всё OK, не некоторые сектора иногда читает неправильно.
От Felix Knajzev → Кому All 10.02.2000
FK>> быстрее?
DL> ты чего-то не то говоришь.
DL> если два устройства одновременно опознают свой адрес, это
DL> не будет работать вообще. все устройства после ёлочных
DL> микросхем запараллелены, посему даже в этом случае просто
DL> шина данных откроется "внутрь", а если устройства хотят
DL> грузить друг друга - это их дело ;)
Вот про это и говорю. ;)
[скип]
От Felix Knajzev → Кому All 10.02.2000
[скип]
FK>> ёмкости и индуктивности интерфейсного шлейфа.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KF> А почему сpану не pулезную 155?
Да ради Бога. Даже ещё лучше. Или 531. :) МощщщА!
KF> Кстати 1533 тоже может
KF> ведь.
KF> Тут дело не в отдаваемом токе в статическом pежиме, а в
KF> констpукции
KF> выходных каскадов, имхо.
См. подчёркутое.
От Kirill Frolov → Кому All 11.02.2000
FK>>> Твой hdc формирует IOGE? Как он это делает?
KF>> А оно надо?
От Kirill Frolov → Кому All 11.02.2000
10 Feb 00 11:08, Sergey Karachentsev wrote to Felix Knajzev:
SK> Пробовал ставить на все выходы К1533ЛЛ1 резисторы по 56 Ом.
SK> Hа первый взгляд всё OK, не некоторые сектора иногда читает
SK> неправильно.
Ошибку выдает или читает оттуда мусоp? А пишет как ?
От Felix Knajzev → Кому All 12.02.2000
Т.е. стало лучше???
SK> не некоторые сектора иногда читает
SK> неправильно.
FK>> Твой hdc формирует IOGE? Как он это делает?
SK> Формирует. Используюся сигналы A0...A7 и /М1. Дешифратор
SK> построен на ИМС
SK> К1533ЛА2 , К1533ЛА4 и К1533ИД7.
Какой схемой у тебя непосредственно задавливается IOGE в лог.1?
Да, +ещё: проверь разводку питания (+5В и общий провод) на плате hdc. Все
проводники максимально возможного сечения (толстые) и минимальной длины.
Прямо на выводы питания МС (особенно АП6 и ИР23) повесь по керамическому
блокировочному конденсатору на 0.1мкФ. Поставь один электролит (желательно
серии К53 или К52) на +5В и общий провод в том месте платы hdc, куда
непосредственно подаётся питание.
От Felix Knajzev → Кому All 12.02.2000
С уважением, Felix.
[I ZX]