Важная информация

User Tag List

Страница 6 из 17 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя
Показано с 51 по 60 из 163

Тема: Чтение дисков без АГАТа

  1. #51

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Биты данных чередуются с синхробитами. Синхробиты должны быть всегда.
    Это в FM-потоке термин "синхробит" применим: в начале первого полуинтервала каждого бита данных (хоть 1, хоть 0) идет синхроимпульс (первый R - кратковременный логический ноль с выхода nReadData дисковерта, говорящий о смене направления тока [верхние и нижние "черточки" на рисунке]), а затем в начале второго полуинтервала бита данных для 1 вторым идет еще один R, а для 0 вторым идет N - отсутствие импульса. Итак, если за единичный интервал бита данных поймали два импульса, то это однозначно бит данных 1, если же за единичный интервал поймали только один импульс, то это однозначно бит данных 0. То есть в любом бите данных есть хотя бы один импульс (синхроимпульс, синхробит).

    А в MFM-потоке несколько по-другому... Там может быть 1 импульс на 1 бит (для ...111... будет ...NRNRNR..., для ...000... будет ...?NRNRN...), 1 импульс на 2 бита (для ...10... будет ...NRNN...), 2 импульса на 2 бита (для ...001... будет ...?NRNNR...), 2 импульса на 3 бита (для ...101... будет ...NRNNNR...). То есть не всегда на каждый бит данных приходится хотя бы по одному импульсу (синхроимпульсу, синхробиту)...

    Правильно?
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  2. #52

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    А в MFM-потоке несколько по-другому..
    Отличие только в том, что в FM синхробит ВСЕГДА равен 1, а в MFM он может быть 0 или 1 в зависимости от соседних бит данных.
    Считать это дело в импульсах - верный путь в тупик, потому как первая задача - превратить импульсы в поток бит, вторая - засинхронизироваться по этому потоку (по синхросбою ли или по маркеру в данных - неважно), а уже потом смотреть FM там или MFM.
    Последний раз редактировалось dk_spb; 04.10.2016 в 13:09.

  3. #53

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот хорошая поясняющая картинка:

    Только надо учесть, что это реально записано на дискете (или блине жёсткого диска), а с дисковода приходят короткие импульсы на каждое изменение 0->1 или 1->0.

  4. #54

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    а с дисковода приходят короткие импульсы на каждое изменение 0->1 или 1->0.
    Это не так. С дисковода как раз приходит поток бит. Например, если данные 10, то FM 1110, и с дисковода физически придет три импульса.
    Если бы это было так как изложено, то при данных 512 * 0xff для FM получался бы поток 1024 единиц и ни одного импульса с дисковода ;-)
    Последний раз редактировалось dk_spb; 04.10.2016 в 13:31.

  5. #55

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Денис, при всем моем уважении к тебе:
    Цитата Сообщение от dk_spb Посмотреть сообщение
    а в MFM он может быть 0 или 1 в зависимости от соседних бит данных.
    Как это? На то он и синхро, что четко определен по значению, и четко определен по положению во времени. В SPI для приема/передачи можно выбрать как положительный фронт SCLK, а так и отрицательный. Но в самой передаче тип фронта синхроимпульсов не может меняться, на то он и синхро. Правильно ?
    Покажи, пожалуйста, на рисунке MFM-потока как ты эти синхроимпульсы "видишь".
    Цитата Сообщение от dk_spb Посмотреть сообщение
    Считать это дело в импульсах - верный путь в тупик
    Я считаю, что как раз-таки наоборот. По импульсам получаем пары полуинтервалов RR(11), RN(10), NR(01), NN(00). По ним определяем FM или MFM. Затем синхронизируемся на битовом уровне (эти пары полуинтервалов переводим в биты данных). Затем синхронизируемся на байтовом уровне (пока не "вкуриваю" как...).
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  6. #56

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    Если бы это было так как изложено, то при данных 512 * 0xff для FM получался бы поток 1024 единиц и ни одного импульса с дисковода ;-)
    при данных 512 * 0xff для FM получишь 512(байт)*8(бит)*2(перехода)=8192 импульса с частотой, равной удвоенной частоте синхроимпульсов

  7. #57

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    >при данных 512 * 0xff для FM получишь 512(байт)*8(бит)*2(перехода)=8192 импульса с частотой
    и
    >короткие импульсы на каждое изменение 0->1 или 1->0
    у меня никак не складываются. Если у меня только единицы, откуда у меня "изменение 0->1 или 1->0" и соответствующие импульсы?

  8. #58

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот смотри:

    Сигнал записи, поступающий на дисковод - это тактовые сигналы, по которым происходит смена полярности записываемого на дискету сигнала.
    С дисковода приходит считанный сигнал, усиленный и с нормализованной полярностью (т.е. не вверх-вниз-вверх, а обычные тактовые сигналы).

  9. #59

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    На то он и синхро, что четко определен по значению
    Откуда эта аксиома?

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    По ним определяем FM или MFM. Затем синхронизируемся на битовом уровне
    Зачем, простите, нам знать FM или MFM до синхронизации на битовом уровне?
    Вы всё путаете. Синхронизация "на битовом" уровне нужна только для преобразования потока импульсов (например, для FM 125килобит в секунду) в поток нулей и единиц. Что в этих битах - нем не важно, важно что мы делаем выборку входного сигнала в нужное время. Например, для FM 10 мы сделаем выборку первого бита строго в положительный период сигнала, а для второго - в отрицательный. Это важно так как периоды по длительности могут плавать и заметно. Именно для этого и сущуствует FM и MFM и другие.

    А потом этот поток бит мы уже декодируем, засинхронизировавшись по маркеру или по синхросбою.

  10. #60

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    290
    Поблагодарили
    216 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Предыдущая картинка поясняла, как записываются еденицы.

Страница 6 из 17 ПерваяПервая ... 2345678910 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Дисковод для Агата
    от dimich в разделе Агат
    Ответов: 9
    Последнее: 12.09.2021, 23:02
  2. Провод из БП Агата
    от Wierzbowsky в разделе Агат
    Ответов: 15
    Последнее: 21.01.2017, 11:47
  3. Ответов: 34
    Последнее: 06.12.2012, 18:04
  4. Чтение дисков TR-DOS под XP
    от Zloy в разделе Софт
    Ответов: 47
    Последнее: 19.09.2008, 09:06
  5. Чтение дисков с iS-DOS
    от IDma в разделе Утилиты
    Ответов: 11
    Последнее: 12.02.2006, 08:04

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •