реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Параллельный интерфейс, возможно ли создать или существует?
IJAR
сообщение Oct 27 2017, 08:57
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



Возможно ли создать или существует параллельный интерфейс
в котором будут только шины передачи данных (например 8)
а шина стробирования передачи будет отсутствовать?


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
novikovfb
сообщение Oct 27 2017, 09:03
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



И как передать 2 одинаковых байта через такой интерфейс?
Go to the top of the page
 
+Quote Post
IJAR
сообщение Oct 27 2017, 09:07
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



Цитата(novikovfb @ Oct 27 2017, 12:03) *
И как передать 2 одинаковых байта через такой интерфейс?

Просьба отвечать на вопрос.
"ДА вот ссылка или краткое описание"/"НЕТ" или "НЕТ потому что"


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Oct 27 2017, 09:25
Сообщение #4


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Цитата(IJAR @ Oct 27 2017, 12:07) *
Просьба отвечать на вопрос.
"ДА вот ссылка или краткое описание"/"НЕТ" или "НЕТ потому что"


есть такой интерфейс - это jesd204 из нескольких лейнов, например 8-ми или XAUI из четырёх лейнов.
Ну и по аналогии - все прочие безклоковые интерфейсы которые можно пустить паралельно рядом.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
iosifk
сообщение Oct 27 2017, 09:39
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(IJAR @ Oct 27 2017, 11:57) *
Возможно ли создать или существует параллельный интерфейс
в котором будут только шины передачи данных (например 8)
а шина стробирования передачи будет отсутствовать?

Да, возможно. Видел такое в телефонной станции для управления платами с абонентскими линиями. Если знаете, что такое I2C, то там данные передаются последовательно. А в станции данные одновременно гнались по 8-ми шинам. А управление - по одной линии вместе с данными...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
novikovfb
сообщение Oct 27 2017, 09:48
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



Цитата(Lmx2315 @ Oct 27 2017, 13:25) *
есть такой интерфейс - это jesd204 из нескольких лейнов, например 8-ми или XAUI из четырёх лейнов.
Ну и по аналогии - все прочие безклоковые интерфейсы которые можно пустить паралельно рядом.

Правильно ли я понял, что это будет не параллельный интерфейс, а 8 или сколько там еще одновременно работающих последовательных?
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 27 2017, 10:55
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(novikovfb @ Oct 27 2017, 12:03) *
И как передать 2 одинаковых байта через такой интерфейс?

Кодировать поток таким образом, чтобы не было подряд двух одинаковых.

Цитата(IJAR @ Oct 27 2017, 11:57) *
Возможно ли создать или существует параллельный интерфейс
в котором будут только шины передачи данных (например 8)
а шина стробирования передачи будет отсутствовать?

Возможно. Когда то давно (ещё в своей программистской юности wink.gif делал подобное.
Да и в стародавние времена видел реализации передачи данных через LPT на другой LPT, судя по скоростным характеристикам которых, там как раз так и передавались данные.

Цитата(novikovfb @ Oct 27 2017, 12:48) *
Правильно ли я понял, что это будет не параллельный интерфейс, а 8 или сколько там еще одновременно работающих последовательных?

Нет. Можно передавать именно параллельно. Ничего трудного нет если немного подумать.
Go to the top of the page
 
+Quote Post
Raven
сообщение Oct 27 2017, 12:19
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 491
Регистрация: 16-01-05
Из: Санкт-Петербург
Пользователь №: 1 987



Так какие проблемы-то? Берете нужное количество регистров, выставляете их параллельные выходные линии наружу с какой-нибудь буферизацией-защитой,- вот вам и искомое.

Ну, или вы не описали задачу полностью sm.gif.
Go to the top of the page
 
+Quote Post
LII
сообщение Oct 27 2017, 14:22
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 255
Регистрация: 30-01-07
Из: Калининградская обл.
Пользователь №: 24 867



Цитата(jcxz @ Oct 27 2017, 12:55) *
Возможно. Когда то давно (ещё в своей программистской юности wink.gif делал подобное.
Да и в стародавние времена видел реализации передачи данных через LPT на другой LPT, судя по скоростным характеристикам которых, там как раз так и передавались данные.

И при этом не использовали, присутствующие в LPT, служебные сигналы, например "Data strobe", а использовали только Data 0-7? Это мазохизм какой-то.


--------------------
Всем творческой удачи и профессионального роста!
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Oct 27 2017, 14:28
Сообщение #10


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



Цитата(LII @ Oct 27 2017, 17:22) *
И при этом не использовали, присутствующие в LPT, служебные сигналы, например "Data strobe", а использовали только Data 0-7? Это мазохизм какой-то.

..может нужен паралленый rs232 ?


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
leocat
сообщение Oct 27 2017, 14:54
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 109
Регистрация: 12-10-16
Пользователь №: 93 727



Цитата(LII @ Oct 27 2017, 15:22) *
И при этом не использовали, присутствующие в LPT, служебные сигналы, например "Data strobe", а использовали только Data 0-7? Это мазохизм какой-то.

Т.е. по UART передавать данные без синхронизации - это не мазохизм, вроде как штатное явление, а по LPT - мазохизм...
Go to the top of the page
 
+Quote Post
LII
сообщение Oct 27 2017, 15:18
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 255
Регистрация: 30-01-07
Из: Калининградская обл.
Пользователь №: 24 867



Цитата(leocat @ Oct 27 2017, 16:54) *
Т.е. по UART передавать данные без синхронизации - это не мазохизм, вроде как штатное явление, а по LPT - мазохизм...

Если использовать готовый LPT порт, как было сказано выше, то у всех LPT пин синхронизации уже есть по умолчанию. Не использовать его, а применять некие программные ухищрения это и есть мазохизм.





--------------------
Всем творческой удачи и профессионального роста!
Go to the top of the page
 
+Quote Post
IJAR
сообщение Oct 27 2017, 16:04
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



Цитата(LII @ Oct 27 2017, 18:18) *
Если использовать готовый LPT порт, как было сказано выше, то у всех LPT пин синхронизации уже есть по умолчанию. Не использовать его, а применять некие программные ухищрения это и есть мазохизм.

Естественно.
Но если на компе pin строба убит или шлейф в стене и оборвался строб,
т.е. восстановлению не подлежит. замена оборудования невозможна,
но очень нужно восстановить работоспособность.
Но мой вопрос в теме не об этом. Там надо все понимать буквально.
И главное надо определить что же такое параллельный интерфейс.
А то если взять 2 SPI с одним общим синхром - то это что 2 сериальных
или 2-х битный параллельный?


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
k155la3
сообщение Oct 27 2017, 16:34
Сообщение #14


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(jcxz @ Oct 27 2017, 13:55) *
Кодировать поток таким образом, чтобы не было подряд двух одинаковых.
. . .

Если развить и углУбить мысль в этом направлении, то можно попробовать использовать код Грея,
но для передачи байтов все равно нужна избыточность, хотябы 9 линий sm.gif
Если же надо передать именно по 8 линиям - то последовательно передавать тетрады байта.



Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 27 2017, 16:50
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(IJAR @ Oct 27 2017, 19:04) *
А то если взять 2 SPI с одним общим синхром - то это что 2 сериальных
или 2-х битный параллельный?

Зависит от разрядности передавыемых данных: если передаются 2-битные слова, тогда параллельный; если же нужна сериализация-десериализация - последовательный.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Oct 27 2017, 16:55
Сообщение #16


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Поищите в сети книгу "Синхронизация в телекоммуникационных системах. Анализ инженерных решений". Насколько помню, там описано множество разных решений подобных задач. Возможно в ней вы найдете то, что вам нужно.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
x736C
сообщение Oct 27 2017, 17:51
Сообщение #17


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Вопрос еще в железе. Если у вас стандартный LPT в старой машине и именно на ней нужно поднять такой интерфейс программным способом, то это один расклад.
Если же в вашем вопросе не содержится ограничений на аппаратную реализацию, то это совсем другой вариант. И тут решений можно придумать множество. Частично их тут предлагали. Скремблирование и какое-то подобие ФАПЧ, старт-стоп последовательности и прочие штучки.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 27 2017, 18:23
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(LII @ Oct 27 2017, 17:22) *
И при этом не использовали, присутствующие в LPT, служебные сигналы, например "Data strobe", а использовали только Data 0-7? Это мазохизм какой-то.

Нет. Использовали все имеющиеся сигналы для передачи данных. Все, а не только D0-D7.

Цитата(k155la3 @ Oct 27 2017, 19:34) *
Если развить и углУбить мысль в этом направлении, то можно попробовать использовать код Грея,
но для передачи байтов все равно нужна избыточность, хотябы 9 линий sm.gif

Если есть 9 линий, то при оптимально построенном алгоритме можно передавать примерно до 8.994 бит данных за одну операцию вывода.
Надо просто подмешать сигнал стробирования в данные. При достаточных вычислительных ресурсах на обеих сторонах (приёма и передачи) можно вплотную приблизиться к пределу == 8.994 бит данных за такт на 9-разрядном параллельном интерфейсе.
Go to the top of the page
 
+Quote Post
x736C
сообщение Oct 27 2017, 18:43
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Цитата(jcxz @ Oct 27 2017, 21:23) *
можно вплотную приблизиться к пределу == 8.994 бит данных за такт на 9-разрядном параллельном интерфейсе.

Я так понимаю, что это число в итоге зависит от нестабильности кварцевых генераторов приемника и передатчика.
Если разница между частотами небольшая, то информация о тактовой частоте приемнику нужна реже. В противном случае, чаще.
Предел, равный 8.994 бита, соответствует одному 9-битному слову, отведенному для синхронизации, на 1500 информационных слов.
Почему именно такой предел?
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 27 2017, 18:46
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(x736C @ Oct 27 2017, 21:43) *
Я так понимаю, что это число в итоге зависит от нестабильности кварцевых генераторов приемника и передатчика.
Если разница между частотами небольшая, то информация о тактовой частоте приемнику нужна реже. В противном случае, чаще.
Предел, равный 8.994 бита, соответствует одному 9-битному слову, отведенному для синхронизации, на 1500 информационных слов.

Нет. При чём тут частоты??? Никакие выделенные сигналы тактирования не нужны - сигнал тактирования можно подмешать в данные. Для достижения максимального использования линий.
Ещё раз: ключевой момент - смешивание сигналов тактирования и данных.

Предположим: для передачи можно использовать например 9 линий некоего параллельного интерфейса (D0...D8). Как наиболее оптимально их использовать с максимальной пропускной способностью при ограниченной полосе частот по этому интерфейсу?
Например так:
Имеем на входе поток байт. Преобразуем его в поток бит. Нарезаем этот поток на 9-битные символы. Их значения будут в диапазоне: 0...511.
Сигналом строба новых данных для приёмника будет изменение состояния линий D0...D8. Это значит, что для передачи слова символа X нужно проXORить его с текущим состоянием линий D0...D8.
Приёмник увидев изменение состояния D0...D8 воспринимает это изменение как сигнал строба и считывает данные, после чего делает XOR с предыдущим состоянием D0...D8 - получает
отправленный символ.
Но конечно так можно передать символы 1...511, а вот символ '0' так передать не удастся. А значит его надо экранировать из потока 9-битовых символов.
Также желательно иметь какой-то символ границы кадра. Например это символ '1'. Таким образом нужно преобразовать поток символов так, чтобы он содержал только символы 2...511.
Самый простой способ экранировать символы '0' и '1' из исходного потока - это типа как в протоколе SLIP для последовательных линий. Но конечно он имеет недостатки - может создавать избыточность передаваемых данных.
Можно придумать более сложные способы экранирования. И более эффективные.
Например:
Если реализовать многоразрядные операции умножения/деления, то можно очень эффективно преобразовать поток 0...511 в поток 2...511. А вот как раз диапазон 2...511 содержит 510 возможных значений, а это равно log(510)/log(2) = 8.994 бит.
Вобщем - если имеем умножитель на N разрядов (скажем 128, а может больше), то преобразуем 9-битовые символы в битовый поток, нарезаем его на сегменты разрядностью (N-9) бит, а далее: последовательно умножаем полученный сегмент на 511, после каждого умножения получая в старших 9 разрядах умножителя значения в диапазоне 0...510, прибавляем к ним 2 и передаём на XOR и в канал.
На приёмной стороне выполняем обратную операцию.
Чем больше разрядность N, тем эффективнее работает алгоритм (тем ближе он к пределу == log(510)/log(2)).
Ну и между кадрами вставляем символы границ кадра == '1' для кадровой синхронизации.
Go to the top of the page
 
+Quote Post
x736C
сообщение Oct 27 2017, 19:09
Сообщение #21


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Цитата(jcxz @ Oct 27 2017, 21:46) *
Нет. При чём тут частоты? Никакие выделенные сигналы тактирования не нужны - сигнал тактирования можно подмешать в данные. Для достижения максимального использования линий.

Видимо, вы меня не поняли. В конечном итоге все сводится все равно к разнице частот передатчика и приемника без ФАПЧ.
Для максимального использования линии для передачи информации необходимо свести к минимуму отношение служебной информации к полезным данным. А это напрямую зависит от нестабильности генераторов. Вы обозначили это отношение, как 1/1500.
Стало интересно, что за алгоритм. Почему именно такое отношение. На мой взгляд, очень неплохая цифра.

UPD. Написал ответ до того, как вы дополнили верхний пост.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 28 2017, 01:50
Сообщение #22


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(jcxz @ Oct 27 2017, 19:46) *
Ну и между кадрами вставляем символы границ кадра == '1' для кадровой синхронизации.

и при потере одного бита будет вылетать целый кадр ? или в среднем половина
а что будет, если происходит задержка одного или нескольких бит относительно других, как такое принять ?
что мешает "неэффективно" использовать девятый (восьмой) бит для простой и надёжной синхронизации ?
можно по обоим фронтам на половинной частоте, чтобы полосу не расширять
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 28 2017, 06:29
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Огурцов @ Oct 28 2017, 04:50) *
и при потере одного бита будет вылетать целый кадр ? или в среднем половина

Здесь интерфейс параллельный, а не последовательный - передаются слова.

Цитата(Огурцов @ Oct 28 2017, 04:50) *
а что будет, если происходит задержка одного или нескольких бит относительно других, как такое принять ?

Точно так же как при наличии отдельной линии стробирования.

Цитата(Огурцов @ Oct 28 2017, 04:50) *
что мешает "неэффективно" использовать девятый (восьмой) бит для простой и надёжной синхронизации ?

Мешает Ваше неумение читать исходные сообщения авторов тем.

Цитата(Огурцов @ Oct 28 2017, 04:50) *
можно по обоим фронтам на половинной частоте, чтобы полосу не расширять

Хоть по одному хоть по двум - всё равно используя все 9 бит для данных можно передавать быстрее.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 28 2017, 10:32
Сообщение #24


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(jcxz @ Oct 28 2017, 07:29) *
Здесь интерфейс параллельный, а не последовательный - передаются слова.

а как же это ?:
Цитата
преобразуем 9-битовые символы в битовый поток

любой сбой и весь поток накрылся

Цитата(jcxz @ Oct 28 2017, 07:29) *
Точно так же как при наличии отдельной линии стробирования.

нет, линия стробирования стробирует уже устоявшиеся данные
тогда как неустоявшиеся данные сами себя стробировать никак не могут - стробов будет 8 штук, по одному на каждую линию

Цитата(jcxz @ Oct 28 2017, 07:29) *
Мешает Ваше неумение читать исходные сообщения авторов тем.

вот пусть и он и ответит, дурацкие желания желательно как-то обосновывать

Цитата(jcxz @ Oct 28 2017, 07:29) *
Хоть по одному хоть по двум - всё равно используя все 9 бит для данных можно передавать быстрее.

в теории да, когда канал идеальный
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 28 2017, 13:27
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Огурцов @ Oct 28 2017, 13:32) *
а как же это ?:
любой сбой и весь поток накрылся

Читайте внимательнее: "это" - описание алгоритма работы ПО.

Цитата(Огурцов @ Oct 28 2017, 13:32) *
нет, линия стробирования стробирует уже устоявшиеся данные
тогда как неустоявшиеся данные сами себя стробировать никак не могут - стробов будет 8 штук, по одному на каждую линию

Почитайте ниже и подумайте "как":
for (;...; recentValue = newValue) {
while (ReadPort() == recentValue);
newValue = ReadPort();
...
}
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 28 2017, 14:48
Сообщение #26


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(jcxz @ Oct 28 2017, 13:27) *
Читайте внимательнее: "это" - описание алгоритма работы ПО.

алгоритм он или работает, или не работает, а уж в по он или в железе - не суть важно
вы берёте длинное число и последовательно его делите, любой сбой в любом бите приведёт к тому, что все последующие за сбоем данные будут не верны

Цитата(jcxz @ Oct 28 2017, 13:27) *
Почитайте ниже и подумайте "как":

да никак, я уже вижу

каждый изменившийся бит станет стробом, получите до восьми стробов на слово
слово гонки слышали когда-нибудь ?
хотя да, у вас же по, в по гонок не бывает

Сообщение отредактировал Огурцов - Oct 28 2017, 14:49
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 28 2017, 22:34
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Огурцов @ Oct 28 2017, 17:48) *
вы берёте длинное число и последовательно его делите, любой сбой в любом бите приведёт к тому, что все последующие за сбоем данные будут не верны

Когда включаете комп, не удивляетесь как это он работает? Ведь там миллиарды битов! А если в каком-то из этих битов случится сбой - ведь всё же сразу потеряется и все буковки перепутаются! Ужас!! smile3046.gif

Цитата(Огурцов @ Oct 28 2017, 17:48) *
слово гонки слышали когда-нибудь ?
хотя да, у вас же по, в по гонок не бывает

да уж... no comments... тот случай когда "слышал звон да не знаю где он" laughing.gif
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 29 2017, 01:29
Сообщение #28


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Цитата(jcxz @ Oct 28 2017, 22:34) *
Когда включаете комп, не удивляетесь как это он работает? Ведь там миллиарды битов! А если в каком-то из этих битов случится сбой - ведь всё же сразу потеряется и все буковки перепутаются! Ужас!!

там везде стробирование, вот ничего и не путается

Цитата(jcxz @ Oct 28 2017, 22:34) *
да уж... no comments... тот случай когда "слышал звон да не знаю где он"

вы не поверите, и там - тоже



Go to the top of the page
 
+Quote Post
kolobok0
сообщение Oct 29 2017, 12:33
Сообщение #29


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(IJAR @ Oct 27 2017, 11:57) *
Возможно ли создать или существует ...будут только шины передачи данных (например 8) ...


странный вопрос, от опытного товарища и с большим опытом в данной области.
собственно ответ прозвучал - на стандартном centronics-е делали в своё время и свои, на какой нить 8255 (PPI) - сразу 24 пина (8+8+2*4) и дистанционно сливали-форматировали винты,
до эпохи сетевых карт, при ремонте писюков...по разному было..

Если чиссо по теме - ближе помнится мне, решение связи по стандартному LPT с передачей по полубайту в одну сторону. С полной шинкой(8бит) получается полный дуплекс(по 4) постоянно. При этом
по скорости лучше подходит стробирование делать на аппаратном уровне(+1 бит в каждую сторону, в данном примере), а подтверждение достоверности - софтово.

как то так
(круглый)
ЗЫ
Параллельным имхо, обзываем возможность засунуть одинаковые по типу сигналы на физ. уровне за один строб(как физический так и логический - пофигу) передачи.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Oct 29 2017, 13:57
Сообщение #30


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



с некоторого весьма далёкого времени lpt имел двунаправленный режим и стробирование на аппаратном уровне
так что передавать половинки вместо целого байта было бы весьма криво, медленно и вообще неправильно
Go to the top of the page
 
+Quote Post
IJAR
сообщение Oct 29 2017, 17:49
Сообщение #31


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



santa2.gif


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
jcxz
сообщение Oct 30 2017, 12:01
Сообщение #32


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(IJAR @ Oct 29 2017, 20:49) *
И тем не менее вынужден поднять тему.

Так ответы Вам уже были даны. Они чем то не подходят?
Go to the top of the page
 
+Quote Post
IJAR
сообщение Oct 30 2017, 12:57
Сообщение #33


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



Цитата(jcxz @ Oct 30 2017, 15:01) *
Так ответы Вам уже были даны. Они чем то не подходят?


Спасибо за обсуждение


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
Shivers
сообщение Dec 5 2017, 05:41
Сообщение #34


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Может немного запоздало. Но да, такие интерфейсы существуют с 70-80х годов. Читайте книги В.И. Варшавского. Если кратко - вводится вторая (служебная) фаза передачи, и (в качестве одного из вариантов) парафазное кодирование сигналов. Данные передаются в рабочей фазе, служебная фаза используются в качестве разделителя. На принимающей стороне фаза определяется по коду в сигнальных линиях. Сигнал сопровождения при таком протоколе передачи не нужен, кодирование в линиях противогоночное - состязания отсутствуют. Из-за второй фазы протокол не самый быстрый, а при парафазном кодировании еще и сильнопотребляющий (переключательная активность проводов 100% за цикл передачи). На практике вроде бы это в TRIMOSBUS применялось, но не уверен.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 10:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.03301 секунд с 7
ELECTRONIX ©2004-2016