RUЭВМ
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Сентябрь 2020
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
282930    

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

Последние темы
» Тема для вопросов, консультаций и т. д...
автор Atari1974 Вчера в 16:12

» ZX Microdrive
автор barsik Вчера в 02:44

» Флейм только по теме "Радио-86РК".
автор barsik Пн Сен 28 2020, 09:24

» Трансформатор электронный Taschibra 230/12В 60Вт для галогенных ламп. Перестал работать.
автор Viktor2312 Ср Сен 23 2020, 15:05

» Купил с али БП 12в 100w для питания LED лент подсветки. Проблема
автор Viktor2312 Вс Сен 20 2020, 18:07

» Жалобы/пожелания по работе форума
автор Viktor2312 Вс Сен 20 2020, 11:54

» Стабилизированный преобразователь напряжения.
автор Viktor2312 Пн Сен 14 2020, 23:12

» Простые доработки ZX-48К: RAM-монитор в ПЗУ и экран на E000
автор barsik Сб Сен 12 2020, 23:47

» Применение КР580 ВИ53 для генерации музыки
автор Viktor2312 Сб Сен 12 2020, 20:09

» STM32. Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Сен 03 2020, 12:09

» STM32G0. Документация (Datasheet, разное).
автор Viktor2312 Чт Сен 03 2020, 11:52

» Новинки. Книги. Часть 1.
автор Viktor2312 Ср Сен 02 2020, 14:21

» STM32F4. Статьи, заметки, очерки, разное...
автор Viktor2312 Вт Сен 01 2020, 14:44

» Ленинград-0,-1,-2,-3. Статьи, заметки, очерки, разное...
автор barsik Вс Авг 30 2020, 08:32

» Ленинград-0
автор barsik Вс Авг 30 2020, 08:01

» STM32F4. Изучение.
автор Viktor2312 Пт Авг 28 2020, 00:07

» Орион-128: Полезные доработки ПЭВМ
автор barsik Чт Авг 27 2020, 11:21

» STM32H7. Статьи, заметки, очерки, разное...
автор Viktor2312 Вт Авг 25 2020, 10:43

» Радио-86РК: По страницам журнала "Радио" и не только...
автор barsik Вт Авг 25 2020, 01:28

» STM32L0. Документация (Datasheet, разное).
автор Viktor2312 Вс Авг 23 2020, 10:10

» STM32L0. Отладочные платы.
автор Viktor2312 Сб Авг 22 2020, 20:22

» STM32L0. Программное обеспечение, разное...
автор Viktor2312 Сб Авг 22 2020, 17:24

» STM32L0. Статьи, заметки, очерки, разное...
автор Viktor2312 Чт Авг 20 2020, 19:37

» STM32H7. Документация (Datasheet, разное).
автор Admin Чт Авг 20 2020, 13:33

» STM32F7. Документация (Datasheet, разное).
автор Admin Чт Авг 20 2020, 13:32

Самые активные пользователи за месяц
Viktor2312
РК86: подключение винчестера IDE (или CF-карты) Vote_l10РК86: подключение винчестера IDE (или CF-карты) Voting10РК86: подключение винчестера IDE (или CF-карты) Vote_r10 
barsik
РК86: подключение винчестера IDE (или CF-карты) Vote_l10РК86: подключение винчестера IDE (или CF-карты) Voting10РК86: подключение винчестера IDE (или CF-карты) Vote_r10 
Atari1974
РК86: подключение винчестера IDE (или CF-карты) Vote_l10РК86: подключение винчестера IDE (или CF-карты) Voting10РК86: подключение винчестера IDE (или CF-карты) Vote_r10 

Поиск
 
 

Результаты :
 


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
Мастер++

Сообщения : 701
Дата регистрации : 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
Мастер

Сообщения : 244
Дата регистрации : 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
Мастер++

Сообщения : 701
Дата регистрации : 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
Мастер++

Сообщения : 701
Дата регистрации : 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-карты)

Сообщение  freddy в Вс Июл 21 2019, 05:47

7
РК86: подключение винчестера IDE (или CF-карты) 8a3c1d10
Контроллер ide на фото, давно уже существует. На zxpkru есть исходники и демонстрационное видео.
Скорость обмена с диском ide в десятки раз больше чем с флоповодами. Современные диски не поддерживают 8ми битный обмен. Sata диски прекрасно работают с вышеупомянутым контроллером через переходник.
Будут вопросы, не стесняйтесь, пишите. УдачиWink

freddy
новичёк

Сообщения : 81
Дата регистрации : 2019-07-21

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

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

Сообщение  barsik в Вс Июл 21 2019, 20:49

8
freddy пишет:Скорость обмена с винтом IDE в десятки раз больше чем с флоповодами
Это верное, но абстрактное утверждение. Оно не имеет смысла для 8-ми разрядок. Только при использовании DMA в высокоскоростной шине скорость обмена с винтом - в ~100 раз больше, чем с дисководом.

А применительно к 8-ми разрядкам, - это совсем не так. На 8-ми разрядках с клоком до 5 МГЦ скорости винта и флопа отличаются не более, чем вдвое. HD-дисковод на ОРИОНЕ работает быстрее, чем программный обмен с винчестером (тем более, если IDE-контроллер 16-ти разрядный).

Речь же о бытовом компьютере с 8-ми разрядным процессором тактируемым клоком не выше 4 МГЦ (да ещё иногда и с циклами WAIT, тормозящими на 20%) и при отсутствии в системе DMA.

Скорость обмена с В/У организованного программно зависит от быстродействия процессора. Учитывая, что Z80 (за счёт LDIR) тратит 21 такт на байт, а КР580 в 1.5 раза больше. Потому при клоке в 3.55 МГЦ винчестер с программным обменом на вашем устройстве будет работать, как минимум, в 1.5 раза медленнее, чем мой HD-дисковод 3.5" на ОРИОНЕ.

Я, кстати, видел в 1991 фирменный американский CP/M-компьютер с винчестером. Так вот там тоже скорость работы с винтом была примерно вдвое (если не втрое) ниже, чем работа с дисководом. Из увиденного у меня и сложилось мнение, что CP/M тормозит при больших дисках. Это мнение ещё более укрепилось, когда я сделал на винчестере для ОРИОНА диски по 8 мб (но там, видимо, это было из-за медленного винчестера, а не из-за CP/M).

CP/M действительно тормозная система, но в основном не из-за необходимости при больших дисках сканировать огромный каталог (при поиске блоков и построении Alloc Table), а из-за обмена логическими секторами. Любая ДОС с обменом физическими секторами на порядок быстрее.

Главная привлекательность винчестера на 8-ми разрядке в другом, - намного более простой контроллер и надёжность работы. И конечно, в пользу винта решает проблема дискет, новых дискет уже нет в природе, а старые быстро дохнут.
freddy пишет:Современные диски не поддерживают 8-ми битный обмен
Спасибо за информацию. Я так где-то и предполагал.

Хотя ещё есть неясность с командами записываемыми в винт IDE. Непонятно как передаётся команда, если она не однобайтовая. Если в команде, например, два байта, то надо делать две записи в регистр команд (передавая данные в младших битах), или нужна одна запись со вторым байтом в старшем байте слова.

Если команды передаются побайтово, то можно сделать обмен 8-ю битами с винтом, что использует все 16 разрядов. Потеря половины ёмкости не играет роли, т.к объёмы винтов в сотни раз больше, чем достаточно.
freddy пишет:Sata диски прекрасно работают с вышеупомянутым контроллером через переходник
Да, можно купить переходник IDE-SATA, тут для PC проблем нет. Но для 8-ми разрядки кто-то пробовал? У меня есть уже три неиспользуемых крошечных Sata-винта (250, 500, 750 Гб) от сдохших ноутбуков. Но сначала попробую подключить древние дохлые винты (объёмом менее 1 Гб) из 90-тых. Мне как раз важно, что они древние из 90-тых и в них, надеюсь, есть 8-ми разрядный обмен. Они пытаются читать свой MBR-сектор при инициализации на PC, но видать дохлота. Если всё остальное работает, то если обращаться к другим цилиндрам и секторам, то использовать со своим специально написанным ПО можно. Если с этим не выйдет, то есть и два исправных обычных маленьких IDE винта, - на 10 Гб и 20 Гб. Но для них скорее всего нужен уже 16-ти разрядный контроллер.

Винтом я займусь чуть позднее, пока монтирую обычный FDC-контроллер для ИРИШИ (на ВГ93) по схеме КОРВЕТА. Т.к без дисковода ретро компьютер - это не "лампово". Кроме того эмулятор EMU эмулирует такой FDC-контроллер, а винчестер - нет. А это мне важно, т.к у меня пока нет своего эмулятора ИРИШИ.
freddy пишет:Контроллер IDE (на фото) давно уже существует. На zxpkru есть исходники и демонстрационное видео.
Думаю, что Вы имели ввиду, что уже существует 16-ти разрядный контроллер IDE. Т.к 8-ми разрядный контроллер IDE это не новинка, - ещё в первой половине 90-тых сделали для ВЕКТОРА, а в конце 90-тых и для других самодельных 8-ми разрядок.


Последний раз редактировалось: barsik (Вт Июл 23 2019, 13:00), всего редактировалось 1 раз(а)
barsik
barsik
Мастер++

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

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

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

Сообщение  freddy в Пн Июл 22 2019, 01:11

9
Не рассказывайте басни. Про два раза. У меня 16-ти битный контроллер IDE выдает на моей же машине 220 килобайт в секунду. И он не сравнимо быстрее флоповода при доступе к куче мелких файлов.
Какой это дисковод дает 110кб/с??? Очень интересно Wink)))
Для своей машины я даже не стал делать контроллер флоповода, это пипец хлам.
А машина построена конкретно под практическое использование. И кто практически и ежедневно использует железо, не важно ретро или нет, тот понимает, что флоповод это фуфло. Я вот пользуюсь ноутом, кучей серваков, системников, NASов и даже станков с ЧПУ. Флоповод - это фуфел. Даешь карты памяти и жесткие диски в массы.
Изучайте лучше мои исходники. И не пишите больше бред, уже не смешно. Спорить и доказывать не интересно. Удачи и пока!

freddy
новичёк

Сообщения : 81
Дата регистрации : 2019-07-21

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

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

Сообщение  barsik в Пн Июл 22 2019, 22:28

10
freddy пишет:Не рассказывайте басни. Про два раза.
Невежливо. Даже, если по вашему мнению, кто-то заблуждается, это вовсе не значит, что он рассказывает басни.
freddy пишет:У меня 16-ти битный контроллер IDE выдает на моей же машине 220 килобайт в секунду.
По этому высказыванию можно сделать вывод насколько много Вы думаете при написании постов. А ещё более показательно, ваше высказывание, что бородатый профессиональный программист (к коим Вы себя отнесли), - цитата: "за день на ассемблере способен написать управление целой технологической линией завода...". И даже за пол рабочего дня. Заметьте, - на ассемблере.

И много строк ассемблера вы введёте за 4 рабочих часа (даже не учитывая время тестирования и отладки). А особенно с продемонстрированным в вашем видео темпом ввода текста. Странно, что профессиональный программист набирает текст одним пальцем. Я лишь программист-любитель, но такой темп набора имел лишь в 1987, когда сделал себе первый самодельный компьютер (РК86).

При программной пересылке со скоростью 220 кб в секунду при вашем такте CPU в 3.5 МГЦ программно должна выполняться передача в темпе 15 маш.тактов на байт. С учётом того, что CP/M сначала грузит физ.сектор в дисковый буфер, а затем копирует лог.сектор на DMA, то (в зависимости от размера физ.сектора) пересылка должна происходить в темпе ~10 тактов на байт. А это не может даже Z80 (он может только 21 такт на байт), куда уж это сделать КР580. А если файл фрагментирован по цилиндрам, то добавляются потери времени на позиционирование и считывание в буфер. Так что скорость обмена в 220 кб/сек на своём компьютере 8080@3.5МГЦ Вы никак не можете иметь. Реальная максимальная скорость загрузки в CP/M при 3.5 МГЦ даже в идеале не превысит 80 кб в секунду. А с учётом тормознутости CP/M сократите цифры ещё в несколько раз.

Т.о на 8-ми разрядке без 16-ти разрядного ПДП, хоть со сверхбыстрым винчестером, хоть со сверхбыстрой флэш, реально можно поиметь обмен со средней скоростью всего несколько десятков килобайт в секунду. Но больше и не надо, т.к больших программ для 8-ми разрядки нет. Если программа загружается с диска одну или даже две секунды это нормально. Программную скорость обмена 220 кб в секунду можно получить только при такте Z80 в 12 МГЦ или аппаратно, используя ПДП.

И заметьте, я специально применял термин скорость обмена, а не писал о субъективной скорости работы всей системы в DOS. А скорость потока данных у HD-флопа как минимум в 1.5 раза выше, чем скорость передачи, что может обеспечить ваш КР580 с клоком в 3.5 МГЦ в вашем новом компьютере 8080@3.5МГЦ. Потому я в своих постах не ошибся ни разу, а Вы как и в большинстве своих постов выложеных вчера в этом форуме, написали мягко говоря, неточности.

Естественно, дисковод субъективно работает медленнее, но в данном случае вовсе не из-за разницы в скоростях обмена. Дисковод теряет в скорости работы системы из-за медленной скорости колеса, шага головки и особенностей CP/M, в которой после чтения физ.сектора нельзя сразу читать следующий физ.сектор, т.к следует работа со считанным физ.сектором (пересылка на адрес DMA запрошенного лог.сектора). Потому при очередном чтении физ.сектора FDC тратит время на нахождение нужного сектора (а на это уходит время на оборот колеса, т.е до 20 МСЕК). А ещё и низкая скорость позиционирования головки. Даже с использованием интерливинга секторов контроллер дисковода теряет слишком много времени на поиск очередного сектора.

В то время как в IDE-винчестере вообще нет потерь времени на это, т.к в современном IDE винте есть большой буфер. У меня был винчестер IDE без буфера и он работал медленно.

Даже в грамотной DOS, где работа ведётся с физическим сектором и сектора читаются не по одному (как в CP/M 3.0 есть п/п-мма чтения сразу группы секторов) потери на поиск данных намного больше, чем при винчестере.

DD-дисковод имеет скорость передачи примерно равную скорости программного обмена на процессоре с тактом 2.5 МГЦ. А HD-дисковод имеет вдвое большую скорость обмена (т.е тогда вдвое большая скорость потока данных, для которой и CPU нужен на 5 МГЦ).

На практике HD-дисковод работает настолько быстро, что при крошечных размерах CP/M-файлов нет разницы загружается файл полсекунды или намного быстрее. Дальнейшее ускорение скорости обмена не приводит к резкому ускорению работы, т.к выше определённой скорости обмена при медленном CPU бОльший вклад вносит торможение, что даёт сама CP/M прогоняемая на низкой скорости.
freddy пишет:Изучайте лучше мои исходники
Я охотно изучу Ваши исходники, если они попадут ко мне в руки. Я даже хочу посмотреть на качество кода профессионального (и даже бородатого) программиста.

Но о каких исходниках Вы пишете? - Исходники подпрограмм для чужого 16-ти битного IDE-контроллера, чтобы понять как в него выдаются команды? - Или исходники для вашего компьютера 8080@3.5 МГЦ? - Или для вашего цветного текстового адаптера с выходом на VGA.

Кроме как понять, что Вы такое как программист, какой смысл изучать Ваши исходники? Чтобы сдуру напрягая мозг по этим исходникам, выяснить архитектуру и принципы работы вашего компьютера 8080@3.5 МГЦ или вашего текстового адаптера?

Если представляют изделие, то принято давать хотя бы его детальное словесное описание. А т.к это не было сделано, то я и предположил, что речь о вашем VGA-терминале на базе ВГ75 по сложной схеме, что много лет обсуждался на форуме ZX-PK.ru.
freddy пишет:И не пишите больше бред, уже не смешно.
Очень невежливо. Зачем так? Приведите хоть одну мою фразу, в которой Вы усмотрели бред.


Последний раз редактировалось: barsik (Вт Июл 23 2019, 17:07), всего редактировалось 1 раз(а)
barsik
barsik
Мастер++

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

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

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

Сообщение  freddy в Вт Июл 23 2019, 16:20

11
Мне вобще то давно пофиг.

freddy
новичёк

Сообщения : 81
Дата регистрации : 2019-07-21

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

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

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

12

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


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

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


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