|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Недопередача кода по звуковым каналам
Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну если это будет принципиально - я посчитаю тебе точную задержку.
Хотя есть у меня уверенность, что она практически незаметна.
Я сталкивался с такими фильтрами, когда увлекался аппаратурой АОН как раз
для телефонного кода 2 из 7.
Там было 2 распространённых похода: оцифровка через компаратор и целочисленный
анализ Фурье - заметно небыстрый алгоритм, но простая аппаратная реализация...
И второй подход - 7 активных фильтров на счетверенных ОУ с компараторами
на выходе - работало практически мгновенно...
Но ясный пень - аппаратно затратно...
PS. Просто так считать сейчас некогда - EDUC-8 занимаюсь...
_________________ iLavr
|
11 Oct 2012 09:22 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
Ну если говоришь что работало практически мгновенно, то этого наверное достаточно - считать ненадо
|
11 Oct 2012 09:46 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
Я АОН к "Ориону" тоже делал на отдельных фильтрах с переключаемыми конденсаторами на ОУ. Задержки в срабатывании фильтров не ощущались, однако и скорости обмена там низки.
|
11 Oct 2012 22:12 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Так на этом принципе отдельная ИС есть: 1000ВЖ-какая-то...
Выдаёт цифры сразу в коде.
_________________ iLavr
|
12 Oct 2012 03:04 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
|
10 Nov 2014 20:41 |
|
|
Odin P. Morgan
Senior
Joined: 23 Feb 2015 15:37 Posts: 151 Location: OMS
|
Подниму тему. Не задумывались ли уважаемы электронщики, использовать для прямой коммутации двух троичных машин, звуковой оптический разъём SP/DIF? Так скажем оптически-звуковой модем. И ещё: раз зашла пьянка о передаче данных по модемам, можно использовать ISDN формат, для многоканального модемного подключения (тоже звукового). Единственное но, в модем нужно будет встраивать телефонный коммутатор для цифровых линий ISDN (хотя думаю, данную схему можно будет найти).
|
24 Jun 2015 23:22 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
Вот тут описан блочный Kansas City Standard с блоками по 256 байт и заголовками с адресами куда пишется: http://www.gammon.com.au/Arduino/cassette_interface.pdfНо я наверное с блоками не буду заморачиваться, а возьму из этого скана только базовое описание KCS: 1) Mark (логическая единица) представляется восемью циклами сигнала 2400 Гц; 2) Space (логический ноль) представляется четырьмя циклами сигнала 1200 Гц; 3) Каждый символ представляет из себя Space (0) как старт, далее восемь битов данных и потом два или более Mark (1) как стоп; 4) Интервал между символами представляется неопределённой продолжительностью на частоте Mark; 5) При передаче битов данных младший бит передаётся первым, а старший бит - последним; 6) Данные сгруппированы в блоки произвольной длины, перед каждым из которых идёт как минимум 5-секундный Mark; 7) Не рекомендуется записывать ничего осмысленного в первые 30 секунд плёнки сразу после прозрачного участка... P.S. Пункты 3 и 4 недвусмысленно намекают, что расстояние между байтами нефиксированное - старт байта детектируется по первому попавшемуся Space (1200 Гц) и до этого может пройти сколь угодно много Mark (2400 Гц), а в качестве пилот-тона используются всё тот же сигнал 2400 Гц (как минимум 5 секунд или 12000 периодов).
|
15 Apr 2018 23:12 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
Вобщем генерить буду честные синусоиды 1200 Гц и 2400 Гц 4-битным ЦАП-ом с частотой дискретизации 24000 Гц для записи на магнитофон (или ухода в звуковой канал передачи данных), а чтение обратно будет делаться однобитным входом, куда будет подаваться отфильтрованный сигнал, причём читалку постараюсь сделать гибкой, чтобы она сама подстраивалась под частоту пилот-тона. А позже можно будет попробвать уменьшить количество периодов в Mark и Space, чтобы повысить плотность записи. Эксперименты будут делаться на недокомпьютере nedoPC-85-MK, который похоже становится моим основным подопытным кроликом...
|
16 Apr 2018 18:49 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
| | | | Shaos wrote: Вот тут описан блочный Kansas City Standard с блоками по 256 байт и заголовками с адресами куда пишется: http://www.gammon.com.au/Arduino/cassette_interface.pdfНо я наверное с блоками не буду заморачиваться, а возьму из этого скана только базовое описание KCS: 1) Mark (логическая единица) представляется восемью циклами сигнала 2400 Гц; 2) Space (логический ноль) представляется четырьмя циклами сигнала 1200 Гц; 3) Каждый символ представляет из себя Space (0) как старт, далее восемь битов данных и потом два или более Mark (1) как стоп; 4) Интервал между символами представляется неопределённой продолжительностью на частоте Mark; 5) При передаче битов данных младший бит передаётся первым, а старший бит - последним; 6) Данные сгруппированы в блоки произвольной длины, перед каждым из которых идёт как минимум 5-секундный Mark; 7) Не рекомендуется записывать ничего осмысленного в первые 30 секунд плёнки сразу после прозрачного участка... P.S. Пункты 3 и 4 недвусмысленно намекают, что расстояние между байтами нефиксированное - старт байта детектируется по первому попавшемуся Space (1200 Гц) и до этого может пройти сколь угодно много Mark (2400 Гц), а в качестве пилот-тона используются всё тот же сигнал 2400 Гц (как минимум 5 секунд или 12000 периодов). | | | | |
Чтобы расширить этот "стандарт" третьим состоянием для Ternary Kansas City можно скажем ещё промежуточную частоту 1800 Гц добавить...
|
31 May 2020 17:57 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Поскольку есть Mark и Space третьим состоянием в посылке может быть просто отсутствие сигнала. В "Простейшей ЭВМ на 580ВМ80" так лог. "0" формировали - на мой взгляд - весьма неглупо.
_________________ iLavr
|
01 Jun 2020 14:43 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
тишину тяжело детектировать т.к. там будет не тишина, а шум
|
01 Jun 2020 17:51 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Ну ты ж не смотрел, как это делается - очень просто всё детектируется, поскольку Mark и Space - сигналы периодические, то тишина даже с шумом - сигнал апериодический. Шум давится простейшим интегратором на RC-цепи.
_________________ iLavr
|
01 Jun 2020 20:13 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 657 Location: Russia, S.- Peterburg
|
Известные технологии, но есть уникальный и проверенный в опытных проектах подход записи на магнитные носители цифровых данных, передача данных по каналам связи с ограниченной полосой пропуская, с исправлениями ошибок "на лету", диагностика канала связи по соседним битам. Стахов, А.П.; Лихтциндер, Б.Я.; Орлович, Ю.П. и др. Кодирование данных в информационно-регистрирующих системах Издательство: Киев: Технiка Переплет: мягкий; 127 страниц; 1975 г. ISBN: [не указан]; Формат: стандартный Язык: русский Аннотация Изложены методы проектирования информационно-регистрирующей аппаратуры на основе структурно-избыточного кодирования, которые позволяют существенно повысить эффективность аппаратуры, увеличить плотность и надежность регистрации данных. Основное внимание уделено комплексному решению вопросов регистрации информации - плотности размещения на носителе, коррекции ошибок, самосинхронизации. Рассчитана на инженерно-технических работников занимающихся разработкой и эксплуатацией вычислительной техники, а также может быть полезна студентам вузов. Тираж 4 000 экз. В этой книге есть практический синтез записи и чтения цифровых данных на магнитной ленте с уникальными характеристиками. Кое-какие алгоритмы мне удалось проверить для систем связи.
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
02 Jun 2020 00:05 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 657 Location: Russia, S.- Peterburg
|
Д3-28, устройства для загрузки ПО (способы, идеи, ... конструкции)https://www.phantom.sannata.org/viewtopic.php?f=27&t=32256"... Эмулятор аудио-кассеты кассеты. Китайцы их делают в количестве, соответственно цена их небольшая. Все неудачи с попытками записать сигнал на кассету связаны во первых с неправильным форматом файла: очень низкая точность времени. Ведь когда драйвер аудиокарты воспроизводит файл с низкой частотой дискретизации он не знает, что такая частота выбрана специально, и нужно фронты привязывать именно к этим отчётам, а предполагает что в файле записана звуковая информация, соответственно и пытается восстановить из неё звук, с соответствующими характеристиками, вплоть до инверсии фазы. Вторая причина связана в использовании магнитофона, который не использовался для записи оригинальной информации на кассеты. Он тоже вносит свою роль в фильтрации сигнала. Чтобы не мучиться с изготовлением специального устройства для записи кассет, и соответственно самих кассет, и имеет смысл использовать эмулятор кассеты. Ещё один довод в пользу эмулятора кассеты: эмулятору не нужно, чтобы у НЛМ был рабочий лентопротяжный механизм, достаточно чтобы работала схема усиления сигнала. Такие картинки навели на мысль: записать на бытовой магнитофон "синус-подобные" импульсы, расположенные в местах "0" и "1" (в расчёте на то, что тракт чтения ДЗ-28 присутствие каждого такого импульса обнаружит, а быстрые колебания сигнала в импульсе будут игнорированы трактом чтения как "дребезг"). Вот фрагменты графиков таких сигналов, изготовленных в Маткаде, показаны концы с байтом 0512 и его битом чётности "0": Наконец, ссылки на Яндекс-диске на сами WAV-файлы с этими сигналами для экспериментов (т.е. для записи на кассету на бытовом м/ф и попыток чтения их командой "СЛ" в Д3-28): 980hz_44100_s-code_dm-45_df-16_y-test_KP-88_N-8.wav 980hz_filter-5500_44100_s-code_dm-45_df-16_y-test_KP-88_N-8.wav 980hz_44100_s-code_dm-45_df-8_y-test_KP-88_N-8.wav 980hz_filter-11000_44100_s-code_dm-45_df-8_y-test_KP-88_N-8.wav (Если вдруг это не окажется бредом, а получится, то предложу для такого сигнала название код Ы s-code.) ..."
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
09 Jun 2020 12:24 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22577 Location: Silicon Valley
|
| | | | Shaos wrote: Вот тут описан блочный Kansas City Standard с блоками по 256 байт и заголовками с адресами куда пишется: http://www.gammon.com.au/Arduino/cassette_interface.pdfНо я наверное с блоками не буду заморачиваться, а возьму из этого скана только базовое описание KCS: 1) Mark (логическая единица) представляется восемью циклами сигнала 2400 Гц; 2) Space (логический ноль) представляется четырьмя циклами сигнала 1200 Гц; 3) Каждый символ представляет из себя Space (0) как старт, далее восемь битов данных и потом два или более Mark (1) как стоп; 4) Интервал между символами представляется неопределённой продолжительностью на частоте Mark; 5) При передаче битов данных младший бит передаётся первым, а старший бит - последним; 6) Данные сгруппированы в блоки произвольной длины, перед каждым из которых идёт как минимум 5-секундный Mark; 7) Не рекомендуется записывать ничего осмысленного в первые 30 секунд плёнки сразу после прозрачного участка... P.S. Пункты 3 и 4 недвусмысленно намекают, что расстояние между байтами нефиксированное - старт байта детектируется по первому попавшемуся Space (1200 Гц) и до этого может пройти сколь угодно много Mark (2400 Гц), а в качестве пилот-тона используются всё тот же сигнал 2400 Гц (как минимум 5 секунд или 12000 периодов). | | | | |
Тут с удивлением обнаружил, что оказывается MSX использовал KCS как формат записи на аудиокассеты: https://www.msx.org/wiki/Data_Recorder_connectorЯ даже скачал пару вавок на поглядеть, однако там похоже не 4 и 8 периодов, как описано выше, а только 1 и 2 Это получается в 4 раза быстрее, чем оригинальный KCS, т.е. 1200 вместо 300 бод (как же тогда будет выглядеть 2400 бод?)
|
08 Mar 2024 22:08 |
|
|
Who is online |
Users browsing this forum: No registered users and 120 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|