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

User Tag List

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

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

  1. #51
    Master
    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    778
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    62
    Поблагодарили
    48 сообщений
    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
    Guru
    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,163
    Спасибо Благодарностей отдано 
    230
    Спасибо Благодарностей получено 
    263
    Поблагодарили
    191 сообщений
    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
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

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

  4. #54
    Guru
    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,163
    Спасибо Благодарностей отдано 
    230
    Спасибо Благодарностей получено 
    263
    Поблагодарили
    191 сообщений
    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
    Master
    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    778
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    62
    Поблагодарили
    48 сообщений
    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
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  7. #57
    Guru
    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,163
    Спасибо Благодарностей отдано 
    230
    Спасибо Благодарностей получено 
    263
    Поблагодарили
    191 сообщений
    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
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот смотри:

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

  9. #59
    Guru
    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,163
    Спасибо Благодарностей отдано 
    230
    Спасибо Благодарностей получено 
    263
    Поблагодарили
    191 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

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

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

  10. #60
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 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

Ваши права

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