memento mori
-
- ЛВДС. Терминировать клоки и данные на конечных точках. от середины
брать просто приёмниками. Топология, типа РС-422. Через буфера не
пускать. - mse homjak(Вчера, 22:59)
- Или хотя бы выбрать единую топологию: если MOSI/MISO в цепочку то и
CLK цепочкой,если MOSI звездой то и CLK звездой, а не как
получится. - Boвa(Сегодня, 00:21)
- Всё включено цепочкой. - Бoмж(Сегодня, 10:31)
- Или хотя бы выбрать единую топологию: если MOSI/MISO в цепочку то и
CLK цепочкой,если MOSI звездой то и CLK звездой, а не как
получится. - Boвa(Сегодня, 00:21)
- Клок надеюсь цепочкой идет и на каждой промежуточной плате по
буферу? - Boвa(Вчера, 22:20)
- Разумеется, 74HC1G125. Но благодаря переотражениям Clock портится.
На выходе МК стоит 33 Ома, этого мало, в понедельник попробую 68 Ом
или даже 100 Ом, но если не поможет, придётся LVDS ставить. - Бoмж(Вчера, 22:37)
- Может имеет смысл использовать 74LVC1G125, а не 74HC1G125? reZident(469 знак., Сегодня, 00:33)
- Спасибо, попробую оба варианта. - Бoмж(Сегодня, 10:27)
- Может имеет смысл использовать 74LVC1G125, а не 74HC1G125? reZident(469 знак., Сегодня, 00:33)
- Разумеется, 74HC1G125. Но благодаря переотражениям Clock портится.
На выходе МК стоит 33 Ома, этого мало, в понедельник попробую 68 Ом
или даже 100 Ом, но если не поможет, придётся LVDS ставить. - Бoмж(Вчера, 22:37)
- Буфер на 74нс125 на выходе каждой платы и 100 Ом последовательно на
выход клока. Китайцы так здоровые табло с многими десятками плат
делают, у меня чуть больше десятка было. Шлейф плоский до пары
метров. - Andreas(Вчера, 22:05)
- Спасибо, как раз такие мысли тоже были. Заказал резисторы
(счетверённые) на замену актуальным 33 Ом, проверю. Только буферы
не на выходе каждой платы а на входе, так, чтобы буферизировать
клок только для этой платы. Если же ставить именно на выходе, то
они создут задержки и работа SPI нарушится. - Бoмж(Вчера, 22:50)
- Резистор достаточно только на клок, именно по нему защелкиваются
данные, но буфер на все. Я ставил на выход буфер, чтобы подавить
звон на линии дальше, поскольку больше метра до следующей платы
могло быть, китайцы на вход ставят. Но MISO не использую, табло
светодиодные. - Andreas(Сегодня, 09:31)
- То есть вот так, как на схеме, но ещё дополнительно буферы на
выходы TLC5955? Бoмж(1 знак., Сегодня, 10:29, картинка)
- Да, но у меня между платами большое расстояние. И с буферами на
остальные сигналы (MOSI, LE, OE) вообще проблем не было, но
возможно они и лишние. У китайцев на плате через десяток 74нс595
проходит MOSI и таких плат десятки, работает в табло больших
уличных. - Andreas(Сегодня, 12:57)
- Спасибо - Бoмж(Сегодня, 13:33)
- Для MOSI тоже буферы, чтобы уравнять задержку данных на такую же
длительность, как и тактового сигнала. Даже несмотря на заявление
Лагунова :-) - reZident(Сегодня, 11:09)
- Задержка данных должна быть больше чем задержка тактового сигнала, т.е. ее лучше сделать больше, но не меньше. А у процессора выбрать режим SPI при котором он читает данные на другом фронте сигнала CLK. Тогда все должно заработать, при условии что звона на линии CLK не будет. - AlexBi(Сегодня, 11:18)
- Вот это красное "12" задержку перепадов вносит? Если да, то и SCK
нужно задерживать так же. По-моему, более правильной будет схема,
где и MOSI, и SCK проходят через эти 12 блоков. Вместе. Через
одинаковое количество буферов или, хотя бы, с выровненными
задержками. Ну и в этой схеме, y МК, не хватает возврата
задержанного CLK с отдельным входом для успешности приёма MISO. - Nikolay_Po(Сегодня, 11:09)
- "12" вносит задержку распространения со входа триггера на выход.
Скока-то нан. Так, как на рисунке сделано, непрально. Нужно
пропускать клок без буферизации через всех потребителей.
Буферизировать только для развязки магистрали от локальных
потребителей. И чота сделать для согласования в концэ. Легче всего
это изваять на ЛВДС или чем-то иным, дифференцыальным, чтобы не
упарываться в возврат токов на ВЧ. Если с конца нужно возвращать
данные, то стоит и их передавать mse homjak(26 знак., Сегодня, 11:33, картинка)
- На самом деле все, что изображено на картинке, нужно для
согласования волновых сопротивлений выхода, линии и входов
тактового сигнала. Если обеспечить согласование на текущей
схемотехнике, то и LVDS не понадобится. Просто с
диф.приемниками/передатчиками согласование немного проще
реализуется. - reZident(Сегодня, 11:44)
- На картинке всё неправильно. А имана, буферизаццыя и согласование
клока на каждом модуле, которая потребует синхронизаццыю задержэк с
данными, второго СПИ на приём и прочей лабуды. И то, если
считать,что
атомный реакторбуфер клока на 12 регистров условно не показан. Иначе, вообще, жопа. Если клок имеет только ГВЗ до терминатора и задержку распространения в буфере передаччика и приёмника, то весь этот гемор снимается. Скорость можэт быть в десятки МГц. mse homjak(200 знак., Сегодня, 12:42 - 13:03)- Спасибо. Задержка данных на MISO ( 32 штуки 74AHC165 ) даст 23 х 8
нс = 256 нс. Вместе с проводами, штекерами получится около 300 нс.
Если я правильно понимаю, то это ограничивает скорость приёма по
MISO до 1,5 МГц. - Бoмж(Сегодня, 12:43)
- Нет, не правильно! Последовательные данные выдаются регистрами синхронно с тактовым сигналом, потому что синхросигнал подается на все регистры параллельно. Задержка фронта последовательных данных не превышает оных 8нс. - reZident(Сегодня, 12:57)
- Не-е-ет. Посмотрите на структуру 165. Клок идёт на все триггера.
Данные задерживаются тока на время распространения от входа до
выхода, от фронта(или чо там) клока. У вас на любом выходе будет
задержка от клока 8нс. Хоть 100 шт поставьте. Главное, обеспечить
время, чтобы за пол-периода клока, все задержки на его
распространение до триггеров, не были больше половины периода(с
запасом, на Тхолд, ессно). На моём рисунке, так и получится. - mse homjak(Сегодня, 12:51)
- Спасибо, да, действительно так получается. Ну значит так тому и
быть! Бoмж(1 знак., Сегодня, 13:05, картинка, +1)
- Вопрос: а зачем вам закруглять данные на выход, через триггера
"входных"? Вам, зачем-то нужны данные драйверов? - mse homjak(Сегодня, 13:13)
- Да, нужны по техзаданию. Они показывают обрыв или коротыш в
светодиодах. - Бoмж(Сегодня, 13:32)
- Обрыв или коротыш вы увидите на 165, наскока понимаю. Я про
"завороток кишок" с ТЛС на 165 на рисунке. Данные, которые вы
всадили в ТЛС, ИМХО, не покажут КЗ или обрыв. А так, можно данные
"развернуть" к МИСО, чтобы не плодить длинный шлейф от конечного
модуля. - mse homjak(Сегодня, 13:46)
- Пока проCLOCKают все 769 бит только одной(!) TLC5955 можно успеть 12 раз опросить состояние входов этих 8 шт. 74HC165 (64 бит) ;-) - reZident(Сегодня, 14:00)
- В диагностическом режиме TLC5955 даёт информацию о состоянии
светодиодов Бoмж(1 знак., Сегодня, 13:56, картинка)
- Немного не та картинка reZident(1 знак., Сегодня, 13:57, картинка)
- Ясно. - mse homjak(Сегодня, 14:08)
- Немного не та картинка reZident(1 знак., Сегодня, 13:57, картинка)
- Обрыв или коротыш вы увидите на 165, наскока понимаю. Я про
"завороток кишок" с ТЛС на 165 на рисунке. Данные, которые вы
всадили в ТЛС, ИМХО, не покажут КЗ или обрыв. А так, можно данные
"развернуть" к МИСО, чтобы не плодить длинный шлейф от конечного
модуля. - mse homjak(Сегодня, 13:46)
- Да, нужны по техзаданию. Они показывают обрыв или коротыш в
светодиодах. - Бoмж(Сегодня, 13:32)
- Вопрос: а зачем вам закруглять данные на выход, через триггера
"входных"? Вам, зачем-то нужны данные драйверов? - mse homjak(Сегодня, 13:13)
- Спасибо, да, действительно так получается. Ну значит так тому и
быть! Бoмж(1 знак., Сегодня, 13:05, картинка, +1)
- Спасибо. Задержка данных на MISO ( 32 штуки 74AHC165 ) даст 23 х 8
нс = 256 нс. Вместе с проводами, штекерами получится около 300 нс.
Если я правильно понимаю, то это ограничивает скорость приёма по
MISO до 1,5 МГц. - Бoмж(Сегодня, 12:43)
- На картинке всё неправильно. А имана, буферизаццыя и согласование
клока на каждом модуле, которая потребует синхронизаццыю задержэк с
данными, второго СПИ на приём и прочей лабуды. И то, если
считать,что
- Спасибо. Если учесть пересинхронизацию внутри блоков "12", то на вашей картинке правильно. Мне нравится. Резистор на дифф. пару на стороне МК добавить... - Nikolay_Po(Сегодня, 11:34)
- На самом деле все, что изображено на картинке, нужно для
согласования волновых сопротивлений выхода, линии и входов
тактового сигнала. Если обеспечить согласование на текущей
схемотехнике, то и LVDS не понадобится. Просто с
диф.приемниками/передатчиками согласование немного проще
реализуется. - reZident(Сегодня, 11:44)
- В цепочке сигналов MOSI на выходе платы и так синхронный с SCK, который на этой же
плате. Задержка SCK возникает уже только после выходного буфера. Но
эта задержка действует только для MOSI на следующей плате, где на
выходе платы MOSI вновь синхронный с SCK. И т.д. reZident(349 знак., Сегодня, 11:20)
- Спасибо! - Бoмж(Сегодня, 12:19)
- "12" вносит задержку распространения со входа триггера на выход.
Скока-то нан. Так, как на рисунке сделано, непрально. Нужно
пропускать клок без буферизации через всех потребителей.
Буферизировать только для развязки магистрали от локальных
потребителей. И чота сделать для согласования в концэ. Легче всего
это изваять на ЛВДС или чем-то иным, дифференцыальным, чтобы не
упарываться в возврат токов на ВЧ. Если с конца нужно возвращать
данные, то стоит и их передавать mse homjak(26 знак., Сегодня, 11:33, картинка)
- Какая длина шлейфа между платами? - AlexBi(Сегодня, 10:56)
- 30 см - Бoмж(Сегодня, 12:17)
- Да, но у меня между платами большое расстояние. И с буферами на
остальные сигналы (MOSI, LE, OE) вообще проблем не было, но
возможно они и лишние. У китайцев на плате через десяток 74нс595
проходит MOSI и таких плат десятки, работает в табло больших
уличных. - Andreas(Сегодня, 12:57)
- То есть вот так, как на схеме, но ещё дополнительно буферы на
выходы TLC5955? Бoмж(1 знак., Сегодня, 10:29, картинка)
- Резистор достаточно только на клок, именно по нему защелкиваются
данные, но буфер на все. Я ставил на выход буфер, чтобы подавить
звон на линии дальше, поскольку больше метра до следующей платы
могло быть, китайцы на вход ставят. Но MISO не использую, табло
светодиодные. - Andreas(Сегодня, 09:31)
- Спасибо, как раз такие мысли тоже были. Заказал резисторы
(счетверённые) на замену актуальным 33 Ом, проверю. Только буферы
не на выходе каждой платы а на входе, так, чтобы буферизировать
клок только для этой платы. Если же ставить именно на выходе, то
они создут задержки и работа SPI нарушится. - Бoмж(Вчера, 22:50)
- Я бы поставил на входе каждой платы буфер-повторитель, так
получилась бы развязка. 10МГц не такая большая частота, задержка
буфера 5-10нс него не испортит. Там длины какие, т.е. кабель и по
плате примерно сколько? В кабеле общий провод далеко от сигналов? - AlexBi(Вчера, 21:02)
- 5-10нс него не испортит - Ну да, ну да, 10нс это аж 20% от полупериода частоты 10МГц ;-) - reZident(Вчера, 21:20)
- 10 МГц - это строго? Драйвера 485 - хорошая тема. Главное недорого - Лaгyнoв(Вчера, 19:29)
- Хотелось бы ещё быстрее, но боюсь, не получится. По MISO будут
ошибки из-за длинной цепочки микросхем, каждая из которых вносит
задержку. - Бoмж(Вчера, 20:29)
- А вы тактовый сигнал возвращайте вместе с MISO к мастеру после всей
цепочки. Nikolay_Po(1266 знак., Вчера, 21:02)
- Спасибо. - Toчкa oпopы(Вчера, 23:45)
- Спасибо! - Бoмж(Вчера, 22:49)
- Если нет возможности разделить тактовую, то можно использовать
разные порты SSP/SPI: один как ведущий с выдачей SCK и MOSI, а
второй как ведомый с приемом "возвратного" SCK и MISO. - reZident(Вчера, 21:11, +2)
- Спасибо. - Toчкa oпopы(Вчера, 23:45)
- Спасибо! Отличная идея. Изобразил упрощённую схему Бoмж(1 знак., Вчера, 23:09, картинка)
- Вы не поняли. Нужно задерживать все сигналы одинаково! SCK должен
проходить через такие же буферы, через такую же длину (и ёмкость?)
проводников, как и MOSI и MISO. Только так вы можете задрать
частоты до предела. Nikolay_Po(506 знак., Сегодня, 10:48)
- Спасибо! - Бoмж(Сегодня, 12:17)
- Отмечу, что я рассуждал о ваших устройствах как о просто подключаемых параллельно шине. Коллеги подсветили вариант (и, вероятно, это ваш случай), что внутри каждого модуля, сигнал данных проходит пересинхронизацию. В таком случае, схема от месье Хомяка верна (+ терминатор на MISO). Nikolay_Po(1 знак., Сегодня, 12:22, ссылка)
- Спасибо! - Бoмж(Сегодня, 12:17)
- Уж лучше быстрый буфер, но на проход, типа 74ahс или подобного. Но все равно смысла мало, в линии данных все равно копиться задержка будет. - Andreas(Сегодня, 09:37)
- В такой схеме вы звон в линии тактирования эффективно не поборете. Если решили использовать два SPI (один для передачи, а второй для приема), то ставьте тогда уж буферы последовательно на каждой плате - на SCK и на MOSI (33...100 Ом на выходе каждого буфера). И самый первый буфер на выходах SPI1 от МК. - reZident(Сегодня, 00:47, +1)
- Зачем СПИ2? У вас максимальная задержка будет наносекунды времени распространения через один триггер. - mse homjak(Вчера, 23:45)
- Вы не поняли. Нужно задерживать все сигналы одинаково! SCK должен
проходить через такие же буферы, через такую же длину (и ёмкость?)
проводников, как и MOSI и MISO. Только так вы можете задрать
частоты до предела. Nikolay_Po(506 знак., Сегодня, 10:48)
- Спасибо! Я не догадался. - Nikolay_Po(Вчера, 21:13)
- А вы тактовый сигнал возвращайте вместе с MISO к мастеру после всей
цепочки. Nikolay_Po(1266 знак., Вчера, 21:02)
- Хотелось бы ещё быстрее, но боюсь, не получится. По MISO будут
ошибки из-за длинной цепочки микросхем, каждая из которых вносит
задержку. - Бoмж(Вчера, 20:29)
- LVDS - здравая мысль. В подобном случае даже драйверы RS485 из
"подножного хлама" применяли. - reZident(Вчера, 19:02)
- RS485 - это LVDS здорового человека! - Kpoк(Сегодня, 00:15)
- Какую скорость SPI с драйверами RS485 использовали? И разве они дешевле честных LVDS? Они меньше 50 центов за штуку есть. - Бoмж(Вчера, 20:26)
- ЛВДС. Терминировать клоки и данные на конечных точках. от середины
брать просто приёмниками. Топология, типа РС-422. Через буфера не
пускать. - mse homjak(Вчера, 22:59)