Троичный вариант SPI
Moderator: haqreu
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Троичный вариант SPI
Пришла мне в голову идея троичного варианта шины SPI - на клоке будет последовательность NOPONOPO (в которую в прицнипе может превратиться синусоида будучи поданной на троичный вход), и далее по N данные будут писаться на сигнал даты (входной или выходной), а по P - читаться. Это можно использовать для отадки или прошивки троичных девайсов (по аналогии с тем как обычный двоичный SPI использяется для прошивки FPGA или отладки сложных девайсов через JTAG).
-
- Doomed
- Posts: 598
- Joined: 10 Mar 2012 16:21
- Location: РФ
Пока частота небольшая - ещё ничего, а на высоких скоростях - ?
Моё предложение несколько иное.
Известно, что двоичные сигналы передают в прямом и инверсном виде по двум микрополосковым линиям. Если не сильно задумываться, то можно данные с , допустим любой тристабильной ячейки потритно адресуемого регистра, передать по шести микрополосковым линиям. Но это если не сильно задумываться.
А вот если хорошенько подумать ( как это сделал один уважаемый человек, автор соответствующего изобретения, которое к нашему удовольствию можно свободно использовать "а-ля GPL" то есть..), то хватит всего трёх (!) микрополосковых линий, что опять таки, хоть какое, но преимущество перед двоичной последовательной передачей.
Надо будет написать тому человеку, спросить, как там устроены приёмники и драйверы-передатчики таких линий. Если дождусь ответа - "запостю" здесь.
Моё предложение несколько иное.
Известно, что двоичные сигналы передают в прямом и инверсном виде по двум микрополосковым линиям. Если не сильно задумываться, то можно данные с , допустим любой тристабильной ячейки потритно адресуемого регистра, передать по шести микрополосковым линиям. Но это если не сильно задумываться.
А вот если хорошенько подумать ( как это сделал один уважаемый человек, автор соответствующего изобретения, которое к нашему удовольствию можно свободно использовать "а-ля GPL" то есть..), то хватит всего трёх (!) микрополосковых линий, что опять таки, хоть какое, но преимущество перед двоичной последовательной передачей.
Надо будет написать тому человеку, спросить, как там устроены приёмники и драйверы-передатчики таких линий. Если дождусь ответа - "запостю" здесь.
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Doomed
- Posts: 598
- Joined: 10 Mar 2012 16:21
- Location: РФ
SPI не предусматривает ограничения скорости, с этим не буду спорить.
А вот реальные провода для большой скорости должны быть выполнены определённым образом.
И учитывая, что я упомянул микрополосковые линии, странно, что Вы пишете про 10 Мегабит, а не про 1Гигабит.
Согласитесь, с меньшей скоростью данные по мпл передать можно, а вот с большей передать по несогласованным проводам - нет. Лучше сразу применить более продвинутое решение , чем потом наткнуться на ограничение, которого ... нет ... вроде бы формально.
Тем более если мы хотим длииинные данные передавать из/в , то для тактовой, допустим 20МГц и числа , ну допустим, длиной в 80 бит(с такими например уже 8087 работал) скорость будет ...
По известным всем (надеюсь) соображениям полоса пропускания должна быть вдвое выше (ведь если проводочки нашего SPI "зарежут" полосу в районе даже 1000МГц, то мы не передадим ровным счётом никаких данных ), то есть всего-навсего 3200МГц нужна будет в этом примере.
Ну-с-с, присоединяемся также и к "адвентистам микрополосковых линий" ?
А вот реальные провода для большой скорости должны быть выполнены определённым образом.
И учитывая, что я упомянул микрополосковые линии, странно, что Вы пишете про 10 Мегабит, а не про 1Гигабит.
Согласитесь, с меньшей скоростью данные по мпл передать можно, а вот с большей передать по несогласованным проводам - нет. Лучше сразу применить более продвинутое решение , чем потом наткнуться на ограничение, которого ... нет ... вроде бы формально.
Тем более если мы хотим длииинные данные передавать из/в , то для тактовой, допустим 20МГц и числа , ну допустим, длиной в 80 бит(с такими например уже 8087 работал) скорость будет ...

По известным всем (надеюсь) соображениям полоса пропускания должна быть вдвое выше (ведь если проводочки нашего SPI "зарежут" полосу в районе даже 1000МГц, то мы не передадим ровным счётом никаких данных ), то есть всего-навсего 3200МГц нужна будет в этом примере.
Ну-с-с, присоединяемся также и к "адвентистам микрополосковых линий" ?

-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Что-то у меня подозрение, что автор слегка темнит и хочет что-то странненькое учинить...
Как-то на материнских платах современных компьютеров с процессорами на
тактовых частотах 2 ГГц и выше я не наблюдал полосковых линий.
Поправьте меня, если я был невнимателен рассматривая их...
Возможно, согласования на концах и предусмотрены, чтобы избежать отраженной
волны на таких частотах, но это и на более низких частотах не вредно...
Но вот чтобы микрополосковые линии...
Что-то смущают меня такие связки - микрополосковые линии, SPI и 1815вф3...

Как-то на материнских платах современных компьютеров с процессорами на
тактовых частотах 2 ГГц и выше я не наблюдал полосковых линий.
Поправьте меня, если я был невнимателен рассматривая их...

Возможно, согласования на концах и предусмотрены, чтобы избежать отраженной
волны на таких частотах, но это и на более низких частотах не вредно...
Но вот чтобы микрополосковые линии...
Что-то смущают меня такие связки - микрополосковые линии, SPI и 1815вф3...
iLavr
-
- Doomed
- Posts: 598
- Joined: 10 Mar 2012 16:21
- Location: РФ
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Май диар френд! (это не ругательство)petrenko wrote:А разве там не только внутри CPU, но и на плате присутствуют все 2ГГц?

Проблемы начинаются куда как на более низких частотах!
2 ГГц - это нижний край диапазона СВЧ! И вдвойне удивительно и приятно,
что современные ЦПУ работают на этих частотах!
Поэтому я и привёл это в пример...
А вопросы, связанные с длинными линиями возникают куда как раньше!
Поскольку в цифровой технике нас волнует крутизна фронтов импульсов,
а это очень высокочастотный процесс, то проблемы согласования появляются
в казалсь бы совсем не в СВЧ конструкциях...

А полоски используются уже в ДМВ-диапазоне (сам делал конвертор на полосках,
причем чисто из интереса), а ДМВ-диапазон - всего лишь сотни МГц...
Но могут и не использоваться... и такие примеры есть.
Поэтому меня удивило предложение по применению полосков в микропроцессорных
конструкциях...
PS. У меня просто подозрение, что несколько спутаны понятия. Чтобы гнать по проводнику
ну пусть несколько сотен МГц - полосок как бы и вовсе не обязателен...

iLavr
-
- Doomed
- Posts: 598
- Joined: 10 Mar 2012 16:21
- Location: РФ
Как раз наоборот должно оказаться совсем неудивительным.Lavr wrote: Поскольку в цифровой технике нас волнует крутизна фронтов импульсов,
а это очень высокочастотный процесс, то проблемы согласования появляются
в казалсь бы совсем не в СВЧ конструкциях...
...Поэтому меня удивило предложение по применению полосков в микропроцессорных
конструкциях...
Да и в учебнике напрямую рекомендуют применять мпл в таких конструкциях.
Ну почему же, если некоторые из нас в виде хобби применяли :Shaos wrote:хоббистскими средствами до 1 гигабита не подняться...
Так что вполне любительскими средствами можно реализовать линии передачи данных и 1Гбит. Причём я так понимаю даже и 20 с лишним лет назад уже было возможно. А некоторые из радиолюбителей те же 20(+) лет назад успешно мастерили устройства на частоты до 3ГГц, но к сожалению не цифровые, впрочем для опытных радиолюбителей не составит труда нечто подобное и для цифровой передачи соорудить, особенно если не нужна большая мощность , как в радиотракте. А сдвиговые регистры на ~1Гбит если не удастся просто недорого купить, то можно и из отдельных триггеров, хотя это уже морока.Lavr wrote: ....полоски .... в ДМВ-диапазоне (сам делал конвертор на полосках,
причем чисто из интереса), а ДМВ-диапазон -.... сотни МГц...
Но в Гигабитных сетевых карточках и свичах ведь используются компоненты с вполне доступной ценой, так что купить пожалуй всё же проще.
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Я, честно говоря, не встречал в реале... ткни, если есть подходящая популярнаяpetrenko wrote:Как раз наоборот должно оказаться совсем неудивительным.Lavr wrote:...Поэтому меня удивило предложение по применению полосков в микропроцессорных
конструкциях...
Да и в учебнике напрямую рекомендуют применять мпл в таких конструкциях.
ссылка практического примера.
iLavr
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Троичный вариант SPI
Недавно придумал несколько иной способ использования гибрида троичности и SPI - для управления SPI памятью (обычной двоичной) по 2 проводам от микроконтроллера (двоичного) вместо 4 - суть в том, что первый провод остаётся за MISO (вход), а MOSI, CLK и /SS склеиваются во втором проводе (т.к. они все выходы и это логично)! В спокойном состоянии на этом втором проводе сидит высокий уровень (+5В), как только нам надо что-то выдать, мы начинаем его дёргать туда сюда с частотой CLK - при этом простая RC схемка помогает нам получить /SS остающийся в "0" пока оно генерит, а амплитуда (помним, что двоичный микроконтроллер может выдавать троичный сигнал) - управляет тем, что же в конечном итоге идёт на MOSI - если импульс доходит только до половины диапазона питающего напряжения (+2.5В), то на MOSI идёт логический "0", а если до максимума (+5В), то логическая "1". Как идея? 

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Maniac
- Posts: 261
- Joined: 22 Jun 2005 04:35
- Location: МО Россия
Re: Троичный вариант SPI
Ну CS и SS объеденить это я понимаю, т.к. три состояния, то это просто.
а вот MOSI туда как примешивать - что то не вкуриваю
ведь MOSI тоже троичный или нет? даже если mosi двоичный, то всё равно невкуриваю
может диаграмку нарисуешь ?
а вот MOSI туда как примешивать - что то не вкуриваю
ведь MOSI тоже троичный или нет? даже если mosi двоичный, то всё равно невкуриваю
может диаграмку нарисуешь ?
если дойдёт до 5в, то CS пропадётShaos wrote: а если до максимума (+5В), то логическая "1"
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Троичный вариант SPI
вот как-то так:
/SS можно на RC-цепочке получить, CLK с задержкой получать, ну и по уровням импульсов ставить либо 1 либо 0 на MOSI...
Code: Select all
+5.0V ------- -- ------
| | | |
+2.5V | | | -- |
| | | | | |
0.0V -- -- --
=1 =0
_________ __
/SS: |_________________|
_________ __ __ _____
CLK: |__| |__| |__|
_________________ _____
MOSI: |______|
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Novelist
- Posts: 31
- Joined: 17 Mar 2015 21:54
Re: Троичный вариант SPI
Смотрим "Последовательный канал информационного обмена
по ГОСТ 18977-79 (ARINC-429)". Ничего не напоминает?
по ГОСТ 18977-79 (ARINC-429)". Ничего не напоминает?
-
- Admin
- Posts: 23989
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Троичный вариант SPI
Почитал: https://en.wikipedia.org/wiki/ARINC_429viv-pm wrote:Смотрим "Последовательный канал информационного обмена
по ГОСТ 18977-79 (ARINC-429)". Ничего не напоминает?
Там единичка это положительный импульс, а нолик - отрицательный, причём в дифференциальной паре (эдакая троичность ; ) - кроме того протокол оперирует 32-битными словами, в которых есть хедер, данные, метки какие-то и т.д.
В моём же случае - высокий импульс это единичка, а низкий - нолик, и это просто другой способ передачи SPI по меньшему количеству проводов - т.е. реальный протокол зависит от SPI-устройства на том конце...
Я тут за главного - если что шлите мыло на me собака shaos точка net