Май 2019
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031  

Календарь Календарь

Последние темы
» Эмулятор радио 86рк
автор parsec Вчера в 18:44

» Эмулятор ИРИШИ для тех, кто не имеет её реальной
автор barsik Вчера в 18:38

» Новинки. Книги. Часть 1.
автор Viktor2312 Вт Май 21 2019, 16:21

» Программирование для ИРИШИ
автор barsik Пн Май 20 2019, 21:14

» Новинки. Книги. Часть 3.
автор Viktor2312 Пн Май 20 2019, 16:38

» Модуль контроллера графического дисплея (МКГД).
автор barsik Вс Май 19 2019, 13:40

» ATM Turbo 2+ v7.10
автор alemorf Сб Май 18 2019, 20:03

» Схемы и документация на отечественные ЭВМ и ПЭВМ и комплектующие
автор Viktor2312 Сб Май 18 2019, 18:10

» Куплю микросхемы КР1818ВГ93 и КМ1810ВТ3.
автор Savoj Чт Май 16 2019, 07:51

» Радио-86РК: Расширение ОЗУ
автор barsik Чт Май 16 2019, 01:26

» Клавиатура ИРИШИ
автор barsik Ср Май 15 2019, 16:57

» ИРИША и магнитофон
автор barsik Пн Май 13 2019, 04:23

» Новости криптовалют: статьи, заметки, разное...
автор Viktor2312 Сб Май 11 2019, 03:01

» Жалобы/пожелания по работе форума
автор Viktor2312 Сб Май 11 2019, 00:50

» Альтернативные КНГМД для ИРИШИ
автор barsik Пт Май 10 2019, 01:12

» Видеокарты (GPU). Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Май 09 2019, 19:55

» Алгоритм SHA-256 и др., хеш (hash), хеширование, майнинг.
автор Viktor2312 Чт Май 09 2019, 01:30

» Обсуждение желаемых новодельных плат расширения и мелких усовершенствований базовых плат
автор barsik Ср Май 08 2019, 16:06

» Разное
автор Viktor2312 Вт Май 07 2019, 19:19

» Для новичков (криптовалюта).
автор Viktor2312 Вт Май 07 2019, 17:32

» Ассемблер для современных CPU Intel.
автор Viktor2312 Вт Май 07 2019, 17:12

» МКНГМД Вариант-3. Версия на К1818ВГ93
автор barsik Вт Май 07 2019, 15:15

» Обзор крипто проектов.
автор Viktor2312 Вт Май 07 2019, 12:57

» 7 Мая. День Радио!
автор Viktor2312 Вт Май 07 2019, 12:00

» "Радио-86РК". Статьи, заметки, очерки, разное...
автор barsik Сб Май 04 2019, 20:20

Самые активные пользователи за месяц
Viktor2312
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
barsik
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
alemorf
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
demetrius2003
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
a.oleg.a
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
parsec
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
Savoj
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 
VladimirS
РК86: подключение винчестера IDE (или CF-карты) Vote_lcapРК86: подключение винчестера IDE (или CF-карты) Voting_barРК86: подключение винчестера IDE (или CF-карты) Vote_rcap 

Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск


РК86: подключение винчестера IDE (или CF-карты)

Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty РК86: подключение винчестера IDE (или CF-карты)

Сообщение  barsik в Вт Дек 25 2018, 12:28

1
К РК86 после публикации в ж.РАДИО статьи о РК-КНГМД (01.1993) стало можно подключать дисковод 5.25" с дискетами на 400 кб. Дисководы 3.5" тоже годятся, но из-за того, что РК-ДОС используют сигнал READY с таким дисководом есть некоторые сложности. Для НГМД 3.5" приходится аппаратно эмулировать сигнал READY задержкой на секунду сигнала START. Но есть более лучшее, программное решение, при котором сигнал READY программно эмулируется за счёт контроля сигнала INDEX (для чего оригинал РК-ДОС требуется чуть модифицировать).

Впоследствии выяснилось, что если РК86 немного турбировать, заменив кварц на 20 МГЦ, то быстродействия хватает, чтобы иметь на той же самой DD-дискете не 5 секторов по 512 байт, а 7 секторов (при этом кварц в КНГМД меняется с 8 МГЦ до 10.5 МГЦ) при той же или даже лучшей надёжности, что даёт формат 560 кб на DD-диск.

Программный контроллер РК-КНГМД обеспечивает скорость обмена меньший, чем КНГМД на ВГ93. Но благодаря обмену физическими, а не логическими секторами скорость обмена с диском РК-ДОС оказывается даже быстрее, чем при ВГ93 с CP/M. Это потому, что в CP/M очень тормозной обмен с дискетой. Обмен происходит логическими, а не физическими секторами.

В РК-ДОС физический сектор 512 байт читается сразу на DMA, т.е сразу попадает туда куда надо. А в CP/M физический сектор сначала считывается в дисковый буфер, а затем логический сектор в 128 байт уже медленным процессором копируется на DMA. Потому CP/M с РК-КНГМД даже при принятии всех мер ускорения работает в 2-3 раза медленнее, чем CP/M на ОРИОНЕ (или MSDOS на IBM PC).

К сожалению, в настоящее время дискеты уже давно перестали быть популярными и их выпуск прекращён 20 лет назад. С течением времени недохлых дискет становится всё меньше и меньше. С другой стороны старые IDE винчестеры стоят ныне дешевле стоимости их пересылки по почте.

Современные винчестеры, которые вращаются со скоростью 7200 rpm и более и греются как печки служат всего 3, в лучшем случае 4 года, и затем неизменно дохнут. Более старые винчестеры на 5400 rpm обычно служат 5-8 лет. У меня с 1994 уже сдохло более 10 винчестеров. Конечно возмущает столь недолгий срок эксплуатации современных винчестеров, создаётся впечатление, что это сознательное вредительство изготовителей. Хотя отчасти, вероятно это из-за повышенной скорости вращения.

Чем древнее винчестер, тем больше его срок службы. Винчестеры произведённые до середины 90-тых годов имеют ресурс в 20 лет, работая каждый день. Потому, если купить старый винчестер из 90-тых, который эксплуатировали не зверски, то он может прослужить ещё десяток лет работая каждый день.

Я в своё время подключил IDE-винчестер к ОРИОНУ используя CP/M. К сожалению, я использовал винчестер выпущенный до середины 90-тых объёмом 40 мб от ноутбука. Он оказался довольно медленным, вероятно из-за экономии энергопотребления и отсутствия кэширования. В итоге скорость обмена с винчестером получилась раза в 2 медленнее, чем обмен с DD-дискетой и в 4 раза медленнее, чем с HD-дискетой на ОРИОНЕ. В итоге, винчестер использовался лишь как архив хранения, а не для повседневного использования.

Хотя обмен с винчестером даже без использования DMA должен быть в несколько раз быстрее, чем обмен с дискетой. Это видно по подпрограмме чтения, - в дискетной подпрограмме ожидается готовность контроллера, а для винчестера этого нет, потому, чем скоростнее процессор, тем быстрее обмен.

Кстати, несмотря на то, что в РК86 есть контроллер ПДП, но он включён по извращённой схеме. Это сделано потому, что ВТ57 рассчитан на пересылки между портом и памятью. В Партнёре это сделано грамотнее, потому там второй канал ПДП была возможность использовать для ускорения обмена с КНГМД на базе ВГ93 (без DMA скоростей РК-подобной машины с тактом всего 2 МГЦ не хватило бы для DD-формата).

Так что скорее всего в РК86 не удастся задействовать ПДП для ускорения работы с винчестером и таким образом скорость обмена будет напрямую зависеть от быстродействия CPU. В любом случае скорость обмена с винчестером будет раза в два выше, чем обмен с РК-КНГМД (а при турбировании РК соответственно ещё выше).

Контроллер винчестера в моём варианте состоит из ППА и трех микросхем 1533. Если в качестве ППА использовать запасной ППА D14, то контроллер винчестера совсем прост. Это маленькая платка вертикально втыкаемая вместо ROM-диска в разъём СНП34-30. На ней стоит 3 микросхемы 1533 и разъём IDC-40, куда вставляется гибкий шлейф от винчестера.

Я уже более 10 лет не использовал контроллер винчестера на ОРИОНЕ, но исходники сохранились и странслировать любую ДОС на базе винчестера можно быстро и без хлопот. Недавно я попытался почитать в форуме ZX-PK.ru на тему винчестеров для ОРИОНА. В основном винчестер подключали также как я, используя в качестве интерфейса ППА (F500 или F600). Есть и более простая схемотехника с всего одной дополнительной TTL-микросхемой и с двумя. В моей схеме использовано 3 корпуса и хотя несложно упростить до 2-х, делать это не буду. И даже разбираться в программировании и переписывать драйверы не буду.

Есть нюанс. Простой контроллер получается лишь за счёт байтового обмена с винчестером. Винчестер может обмениваться байтами и словами (по 16 бит). Т.к это 8-ми разрядка, то при байтовом обмене программа проще и деталей меньше. Но я не знаю сохраняется ли 8-ми разрядный обмен у самых современных винчестеров. Я использовал винчестер из 90-тых. И соответственно не имею никакой статистики по использованию более современных винчестеров.

На PC винчестеры используются с 16-ти разрядным обменом в режиме DMA. Потому производители современных винчестеров в силу ненадобности в новых винчестерах могли исключить байтовый обмен, оставив только 16-ти битный. Этот вопрос надо уточнить. Винчестер лучше старый из 90-тых. Я не занимался темой IDE винчестера с прошлого века, потому в этот вопрос не вникал.

Однако остаётся вопрос о 16-ти битном обмене. Обмен с винчестером очень прост и не проблема переписать его для 16-ти разрядного обмена. При 16-ти разрядном обмене уже выгоднее поставить кучу регистров ИР22 вместо использования ППА. 16-ти разрядный обмен возможно придётся делать и вовсе не для ускорения (это ускорит, но не намного), а в случае, если в современных винчестерах уже не поддерживается 8-ми битный режим.

Вопрос. Кто нибудь знает, поддерживается ли 8-ми битный обмен во всех современных винчестерах.

CF-карта использует такой же разъём IDC-40, как и разъём от винчестера, ставится на его место и поддерживает тот же стандарта ATA. Потому без разницы применять винчестер или CF-карту. И здесь тот же вопрос, поддерживает ли CF-карта 8-ми разрядный обмен?

Для начала я собираюсь использовать РК-ДОС. Винчестер будет разбит на крошечные диски по 1 мб. Причём, я не использую стандартное разбиение на партиции. Контроллер просто физически читает и пишет сектора, какие хочет. Важно лишь знать число плоскостей, число цилиндров и секторов на цилиндр. Для форматирования в РК-ДОС сектора каталога заполняются нулями, а для CP/M каталог заполняется E5. Чтобы считать данные такого диска в PC нужно писать специальную программу, которая работает с диском на низком уровне функциями ROM-BIOS.

Для себя я сделаю версию с использование ОЗУ в 56 кб. Но и для базового РК я также сделаю версию РК-ДОС для винчестера, но ей нужно будет не менее 6 кб дополнительного ОЗУ или ПЗУ. Т.е придётся базовый РК слегка доработать, например поставить 6 кб ПЗУ где-нибудь в дырке адресного пространства портов. Например, по адресу C800...DFFF, что сохраняет совместимость, т.к адрес C000 остаётся за ВГ75.

ПЗУ для РК-ДОС удобнее, чем ОЗУ, т.к тогда отпадает ROM-диск. А в случае, если ОЗУ в РК сделано на 565 РУ5, то можно "открыть ОЗУ" в области A000...BFFF (окно 8 кб) или A800...BFFF (окно 6 кб). Если используется расширение ОЗУ, то возникает проблема откуда грузить DOS или хотя-бы откуда стартовать холодный загрузчик DOS.

Т.к ROM-диск использует запасной ППА D14 и его же использует винчестер, то надо или ставить ещё один ППА или расширять ПЗУ ROM-BIOS-а (например напайкой РФ2 в 2 этажа). Тогда холодный загрузчик, прошитый в ROM-BIOS 4 кб сможет загружать DOS в ОЗУ. ППА D14 в любом случае необходимо иметь (и не важно по какому адресу), т.к именно через него работает контроллер винчестера.


Последний раз редактировалось: barsik (Вт Дек 25 2018, 13:27), всего редактировалось 1 раз(а)

_________________
***
barsik
barsik
Мастер+

Сообщения : 458
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Посмотреть профиль

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty Re: РК86: подключение винчестера IDE (или CF-карты)

Сообщение  alemorf в Вт Дек 25 2018, 13:25

2
ИМХО. CF-карты нынче бОльшая редкость, чем дискеты. И для работы с ними нужен протокол, который по сложности не отличается от SD карты.

Протокол SD карты очень прост. Вот алгоритм чтения сектора (где то мог ошибиться):

Установить CS в 0
Отправить код команды "чтение сектора" 51h, номер сектора, код 95h.
Повторять чтение, пока из SD карты читается 0xFF. Если прочиталось не 0, значит произошла ошибка.
Установить CS в 1

Установить CS в 0
Повторять чтение, пока из SD карты не прочитается 0xFE.
Прочитать 512 байт, это данные.
Прочитать 2 байта (контрольная сумма) и забыть.
Установить CS в 1

Тактовую частоту задает компьютер. Протокол обмена однобитный. Его можно программно реализовать, но это будет работать не очень быстро. Лучше поставить внешний сдвиговый регистр. Если же совсем лениво с ТТЛ связываться, то любой микроконтроллер.

alemorf
Мастер

Сообщения : 214
Дата регистрации : 2018-12-17

Посмотреть профиль http://alemorf.ru/

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty .

Сообщение  barsik в Вт Дек 25 2018, 13:47

3
Я имел ввиду такую CF-карту, что имеет разъём винчестера. Или обычная CF-карта вставлена в переходник SPI-IDE. Которые устанавливаются в IDE-разъём на плате PC вместо гибкого шлейфа от винчестера. И полностью заменяют винчестер, также намного ускоряя обмен с диском. Есть также твёрдотельные современные винчестеры, но они дорогие. У всех этих устройств интерфейс IDE такой же как у винчестера.

IDE или ATA интерфейс это 40-ка штырьковый разъём в который подключается ленточный кабель от винчестера (есть ещё мини-ATA для винчестеров 2.5" для ноутбуков, там распайка точно та же, но 44 штырька, т.к питание подается через тот же разъём).

А Вы говорите о командах для micro-SD, которые используют совсем другой - SPI-интерфейс. У меня есть свободные micro-SD на 1 мб и 4 мб и крошечные разъёмчики, куда они втыкаются. Видел и схему контроллера, который использовал для связи с ними напрямую из 8-ми разрядки error404. Спаять несложно. Потому я пытался почитать о SPI, но ничего не понял. И потому не могу написать процедуры нужные для использования micro-SD.

Если бы у меня были подпрограммы чтения/записи сектора с micro-SD, то я бы использовал и их. Но пока у меня есть лишь мой простой контроллер IDE-винчестера и подпрограммы для его использования. Потому мне на порядки проще не трахаться, чтобы разобраться в последовательных протоколах обмена с micro-SD и не паять контроллер micro-SD, а без хлопот подключить старый винчестер.

Ещё у меня есть от дохлого ноутбука совсем маленький (винчестер 250 Гб с SATA интерфейсом). Вопрос. Его можно как нибудь использовать для 8-ми разрядки?
barsik
barsik
Мастер+

Сообщения : 458
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Посмотреть профиль

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty Re: РК86: подключение винчестера IDE (или CF-карты)

Сообщение  bug19 в Ср Янв 09 2019, 02:22

4
Контроллер винчестера IDE уже существует для Суры (ПК8000), на форуме, о котором нельзя говорить. Smile
Автор сего чуда - DemonId7.

Интерфейс Суры, это подключение к ША, ШД и сигнал выбора банка (разьема), на который надо отреагировать. То есть, плата представляет из себя ПЗУ, с дополнительными портами В/В. То есть, автономное устройство, на железном уровне готовое для любой архитектуры. Разве что, содержимое ПЗУ придется адаптировать.

_________________
Приближая мировую революцию. cat
bug19
bug19
новичёк

Сообщения : 4
Дата регистрации : 2019-01-09
Откуда : СССР

Посмотреть профиль

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty .

Сообщение  barsik в Ср Янв 09 2019, 03:02

5
bug19 пишет:Контроллер винчестера IDE уже существует для Суры
Спасибо за наводку, жаль, что без ссылки. Рад появлению на форуме новых и компетентных любителей ретро техники. Попробую сегодня поискать в теме Корвета на ZX-PK информацию о контроллере IDE для Суры. Ещё бы интересно посмотреть на схемы контроллеров IDE для 8-ми разрядок с 16-ти битовым обменом.

Начал думать о 16-ти разрядном обмене. Можно затратить всего две ИР22 / ИР23. Одна ИР22 для защелки одного (младшего) байта при записи в винт, второй (старший) байт пишется в винчестер прямо с шины процессора. Можно задействовать команду работы со словами LD (port),HL. Это вероятно ускорит обмен. При чтении тоже можно читать словом. Тогда уже младший байт читается напрямую с винта, а старший байт при этом защёлкивается в регистре ИР22 и считывается отдельной командой процессора позднее.

_________________
***
barsik
barsik
Мастер+

Сообщения : 458
Дата регистрации : 2016-11-10
Откуда : С-Петербург

Посмотреть профиль

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty Re: РК86: подключение винчестера IDE (или CF-карты)

Сообщение  bug19 в Ср Янв 09 2019, 05:04

6
Вот, пожалуйста https://zx-pk.ru/threads/23229-pk8000-zagruzka-s-vneshnikh-nositelej.html

barsik пишет:
bug19 пишет:Контроллер винчестера IDE уже существует для Суры
Спасибо за наводку, жаль, что без ссылки.

_________________
Приближая мировую революцию. cat
bug19
bug19
новичёк

Сообщения : 4
Дата регистрации : 2019-01-09
Откуда : СССР

Посмотреть профиль

Вернуться к началу Перейти вниз

РК86: подключение винчестера IDE (или CF-карты) Empty Re: РК86: подключение винчестера IDE (или CF-карты)

Сообщение  Спонсируемый контент

7

Спонсируемый контент


Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения