-
- А есть ещё и driver strength. В современных ИМС, включая китайские. - Toчкa oпopы(20.05.2025 12:50)
- На всякий случай скажу, что у меня на Chip Select подтяжка, чтобы
был неактивный уровень, пока МК в сбросе. - SciFi(19.05.2025 21:06)
- Ну... ладно. Буду знать, спасибо. - Лaгyнoв(19.05.2025 21:14)
- Всем спасибо за обзор. Учту пожелания. - Лaгyнoв(16.05.2025 16:38)
- Я прокололся как-то с 80 МГц SPI, обмен не шел без последовательных
30-омных резисторов в шине либо без пикофарадной емкости,
заваливающей фронты. AlexG(187 знак., 16.05.2025 13:47)
- Вы их на метровых расстояниях устанавливали ? По факту если ставить
qspi флэху вплотную к процу то на разводку можно забить болт (в
пределах прямых проводников CPU<->QSPI). --- upd! 3m(195 знак., 16.05.2025 14:36)
- В общем, там вот так было: AlexG(88 знак., 19.05.2025 20:58, картинка)
- Смущает единичное переходное отверстие на GND и VCC. Судя по
изображению отверстия 0.3 - у таких переходных уже заметное
сопротивление а на частотах в десятки мегагерц хорошая земля очень
важна. Еще не вижу блокировочного конденсатора возле флэшки, может
он на обратной стороне но тогда единичного переходного отверстия
недостаточно. - 3m(20.05.2025 11:51)
- конденсатор на обратной стороне под выводами 8 и 7 - AlexG(20.05.2025 13:28)
- Калькуляторы пишут ~1 нГн. Это семечки. Там разварка чипа в соике
больше даст. - SciFi(20.05.2025 12:04)
- Я как то в плате измерил сопротивление via - так 0,3 Ома
получилось. Не так уж мало. - 3m(20.05.2025 14:52)
- Скорее, это погрешность измерения такая. И это оч. маленькое сопротивление для данного применения. - SciFi(20.05.2025 14:57)
- Я как то в плате измерил сопротивление via - так 0,3 Ома
получилось. Не так уж мало. - 3m(20.05.2025 14:52)
- не, у меня покороче всё же получается - Лaгyнoв(19.05.2025 21:16)
- Смущает единичное переходное отверстие на GND и VCC. Судя по
изображению отверстия 0.3 - у таких переходных уже заметное
сопротивление а на частотах в десятки мегагерц хорошая земля очень
важна. Еще не вижу блокировочного конденсатора возле флэшки, может
он на обратной стороне но тогда единичного переходного отверстия
недостаточно. - 3m(20.05.2025 11:51)
- В понедельник попробую найти файл с разводкой и показать. - AlexG(16.05.2025 17:49)
- учтем-с. :-) - Лaгyнoв(16.05.2025 14:58)
- В общем, там вот так было: AlexG(88 знак., 19.05.2025 20:58, картинка)
- мда... может 30-40 МГц не страшно? Неудобно эти резисторы
вставлять, там всё рядом. И ведь гложет сомненье. :-)) - Лaгyнoв(16.05.2025 14:04)
- Может и не нужны эти резисторы коль есть опция "регулировки
быстродействия" GPIO. В крайнем случае сборка 4*0603 примерно равна
по площади одному 1206. reZident(1 знак., 16.05.2025 14:28, картинка)
- Чота думайу, что 40МГц это дажэ не Медиум, а, таки, Хай. И если
чешется, можно поставить резистивную сборку. - mse homjak(16.05.2025 20:08)
- Та, не, medium вполне хватит для 40МГц, если верить даташиту. reZident(1 знак., 16.05.2025 20:35, картинка)
- Сборка в любом случае не помешает. ИМХО. - reZident(16.05.2025 20:13)
- +1. ставлю практически всегда. недавно в поделке не поставил - там RP2040 - в мануале прямо сказано не ставить Vit(783 знак., 20.05.2025 01:15, картинка)
- ну если так сурово, уменьшу до 20 МГц. И фронты порежу в GPIO :-) - Лaгyнoв(16.05.2025 20:23)
- ИМХО, лучше не париться и поставить резисторы. Vit(2 знак., 20.05.2025 01:36, ссылка, картинка)
- здесь понятие "не париться" не так однозначное. Сейчас у меня SPI
FLASH по одному проводу работает на 10МГц. 20 МГц по 4 проводам уже
в 8 раз быстрей. Может мне и хватит. :-) - Лaгyнoв(20.05.2025 08:54)
- Это смотря как считать >>> - SciFi(1 знак., 20.05.2025 08:56, ссылка)
- В цитате нет ничего про резисторы. А вы видели дорожки с волновым сопротивлением "60..80 Ом"? Они будут толще, чем сама мелкосхема. И т.д. Абстрактный писатель детектед. - SciFi(20.05.2025 08:12)
- Установка резисторов почти наверняка увеличит длину дорожек, поэтому решение с резисторами выглядит не однозначно, особенно если длина дорожек и так в пределах 1см - AlexBi(20.05.2025 08:09)
- здесь понятие "не париться" не так однозначное. Сейчас у меня SPI
FLASH по одному проводу работает на 10МГц. 20 МГц по 4 проводам уже
в 8 раз быстрей. Может мне и хватит. :-) - Лaгyнoв(20.05.2025 08:54)
- Она не помешает в том смысле, что если что, туда можно ноль Ом впаять. А так да, я бы начал с минимальной скорости порта. Эти мегагерцы - условная цифра для некой условной ёмкости на порту, реальная ёмкость входа флешки гораздо меньше. - SciFi(16.05.2025 20:28)
- ИМХО, лучше не париться и поставить резисторы. Vit(2 знак., 20.05.2025 01:36, ссылка, картинка)
- Чота думайу, что 40МГц это дажэ не Медиум, а, таки, Хай. И если
чешется, можно поставить резистивную сборку. - mse homjak(16.05.2025 20:08)
- Чо за промблема? 0603 счетверённые. - mse homjak(16.05.2025 14:09)
- Скорее, не сама частота страшна, а резкость фронтов. Можно про
запас поставить резистор на выходе CLK, как советует Andreas. Но
STM32 умеет настраивать резкость фронтов на своих выходах, про это
тоже нужно помнить. - SciFi(1 знак., 16.05.2025 14:08, ссылка)
- Мне регулировка средствами МК не помогла совсем, а резисторы помогли. Правда, у меня не STM был и даже не аналог - AlexG(16.05.2025 17:53)
- А какой Stm32 умеет 80МГц qspi ? Такое штатно имеется в ESP* и оно
работает как автомат Калашникова даже на платах дядюшки Ляо из
подвала. - 3m(16.05.2025 14:39)
- формально говоря там прескаллер начинается с 1. Т.е. на тактовой частоте работает. А вот нет. L476 мой только 60 МГц. :-) Да и ладно. Мне вроде всяко 40 хватит - Лaгyнoв(16.05.2025 15:02)
- AN4760: Quad-SPI interface on STM32 microcontrollers and microprocessors reZident(1 знак., 16.05.2025 14:44, ссылка)
- Может и не нужны эти резисторы коль есть опция "регулировки
быстродействия" GPIO. В крайнем случае сборка 4*0603 примерно равна
по площади одному 1206. reZident(1 знак., 16.05.2025 14:28, картинка)
- Вы их на метровых расстояниях устанавливали ? По факту если ставить
qspi флэху вплотную к процу то на разводку можно забить болт (в
пределах прямых проводников CPU<->QSPI). --- upd! 3m(195 знак., 16.05.2025 14:36)
- А какую микросхему ставить будете? - vesago(16.05.2025 12:09)
- Или GD25Q127C или такая же от winbond. Очень уж они дешевые.:-) - Лaгyнoв(16.05.2025 12:44)
- Я поклонник W25Q. Тотально ставлю. Юзаю как обычную SPI флеху. А
для чего указанный вами интерфейс? - vesago(16.05.2025 12:56)
- Новое поколение пульта. Хочется уйти от хранения базы карт в ОЗУ.
Иначе больше 2 тыс карт не получается. А людЯм под 10 тыс надо. А
чтоб по быстрому 10 тыс просмотреть во флэши, надо это быстро. Вот
вроде QUAD в 4 раза быстрей. :-) - Лaгyнoв(16.05.2025 14:09)
- Карты во флеши, в ОЗУ - индексный файл, двоичный поиск очень быстро
найдёт. - maik-vs(16.05.2025 17:27)
- туда-сюда дергал. Вероятно да, ID карт разложить в ОЗУ (много войдет). Всё равно, QUADSPI тоже хорошо. :-) - Лaгyнoв(16.05.2025 20:26)
- Не в 4 раза. Адрес и команда в обычном режиме, данные - на учетверенном. Выигрыш только на блоках данных. - Andreas(16.05.2025 15:20)
- Я скуд делал на 50к юзеров. При изменении базы генерировал таблицу.
Хэш ключа был индексом вершины. Далее алгоритм спускался к низу. В
итоге любой ключ отыскивался за пару-тройку итераций. - vesago(16.05.2025 14:22)
- Расскажите про хэш ключа и индекс вершины. - mr-x(16.05.2025 17:24)
- Ну дык - классика. Может вру, но кажется описано в учебнике по си
КР. Берём crc16 к примеру от кода ключа. При поиске - это индекс
первичной таблицы. В таблице - ссылка или сразу на учётную запись
или на местечко во вторичной таблице, где ссылка на учетку с
идентичным хешем ключа или ссылка на местечко в таблице.. и т.д. - vesago(17.05.2025 00:36)
- Зачем CRC? Тупо база данных, индексный файл в 2 колонки, лежит в
ОЗУ. maik-vs(187 знак., 17.05.2025 12:50)
- В моем случае меньше количество итераций при поиске. На 50к не
больше 5 получалось. И то может загнул. Ну и компактнее. Ключ у
меня 4 байта. Я его не хранил в таблицах Только номера учетных
записей-ссылки. Они по 2 байта. - vesago(17.05.2025 19:24)
- Спасибо. Много терминов. Ключ доступа, ключ хеш таблицы, индекс
таблицы, номер учётной записи, ссылка. Я запутался. Старею, тупею.
Ключ доступа uint32 заколдовывался в ключ таблицы (он же индекс)
uint16, который указывал на... На что? На другую маленькую таблицу
из записей с одинаковым индексом? - mr-x(20.05.2025 11:13)
- вика? - SciFi(1 знак., 20.05.2025 11:18, ссылка)
- Разрешение коллизий? Там про вторые таблицы, а третьи, четвёртые и пятые где? - mr-x(20.05.2025 11:26)
- вика? - SciFi(1 знак., 20.05.2025 11:18, ссылка)
- Спасибо. Много терминов. Ключ доступа, ключ хеш таблицы, индекс
таблицы, номер учётной записи, ссылка. Я запутался. Старею, тупею.
Ключ доступа uint32 заколдовывался в ключ таблицы (он же индекс)
uint16, который указывал на... На что? На другую маленькую таблицу
из записей с одинаковым индексом? - mr-x(20.05.2025 11:13)
- думаю так организовать базу с звуковыми сообщениями. Пора уже уходить от платы говорушки. Спасибо - Лaгyнoв(17.05.2025 13:00)
- В моем случае меньше количество итераций при поиске. На 50к не
больше 5 получалось. И то может загнул. Ну и компактнее. Ключ у
меня 4 байта. Я его не хранил в таблицах Только номера учетных
записей-ссылки. Они по 2 байта. - vesago(17.05.2025 19:24)
- Зачем CRC? Тупо база данных, индексный файл в 2 колонки, лежит в
ОЗУ. maik-vs(187 знак., 17.05.2025 12:50)
- Ну дык - классика. Может вру, но кажется описано в учебнике по си
КР. Берём crc16 к примеру от кода ключа. При поиске - это индекс
первичной таблицы. В таблице - ссылка или сразу на учётную запись
или на местечко во вторичной таблице, где ссылка на учетку с
идентичным хешем ключа или ссылка на местечко в таблице.. и т.д. - vesago(17.05.2025 00:36)
- это всё для умных, для спецов. :-) А я ремесленник - просто перебираю. - Лaгyнoв(16.05.2025 15:03)
- Расскажите про хэш ключа и индекс вершины. - mr-x(16.05.2025 17:24)
- Правильные форматы, сортировки, индексы тоже могут всё это
ускорять. - SciFi(16.05.2025 14:10)
- Вот верные первые слова - "правильные форматы" :-) Как придумал сам
8 лет назад, так и ковыряюсь. - Лaгyнoв(16.05.2025 15:05)
- Тоже верно. "Работает - не трогай!"™ - SciFi(16.05.2025 15:12)
- Вот верные первые слова - "правильные форматы" :-) Как придумал сам
8 лет назад, так и ковыряюсь. - Лaгyнoв(16.05.2025 15:05)
- Карты во флеши, в ОЗУ - индексный файл, двоичный поиск очень быстро
найдёт. - maik-vs(16.05.2025 17:27)
- Новое поколение пульта. Хочется уйти от хранения базы карт в ОЗУ.
Иначе больше 2 тыс карт не получается. А людЯм под 10 тыс надо. А
чтоб по быстрому 10 тыс просмотреть во флэши, надо это быстро. Вот
вроде QUAD в 4 раза быстрей. :-) - Лaгyнoв(16.05.2025 14:09)
- Я поклонник W25Q. Тотально ставлю. Юзаю как обычную SPI флеху. А
для чего указанный вами интерфейс? - vesago(16.05.2025 12:56)
- Или GD25Q127C или такая же от winbond. Очень уж они дешевые.:-) - Лaгyнoв(16.05.2025 12:44)
- ИМХО до 100МГц особых ухищрений в трассировке (типа учета волновых
сопротивлений и согласования длин дорожек) не требуется. Достаточно
"антизвонных" приемчиков для длинных трасс. - reZident(16.05.2025 10:47)
- да рядом положу, там 10 мм. Криво только все выводы раскиданы. Нормально не подключаются к STM32. Приходится кружить. - Лaгyнoв(16.05.2025 12:46)
- Можете поделиться "антизвонными" приемчиками? И какая трасса
считается длинной? - AlexBi(16.05.2025 11:04)
- Например - там и в той теме: Toчкa oпopы(108 знак., 16.05.2025 12:00, ссылка)
- На Хабарке, вероятно, - было это: Toчкa oпopы(199 знак., 16.05.2025 12:16, ссылка, ссылка)
- Тёплая ламповая апнота... Сейчас таких не делают :-( - SciFi(16.05.2025 12:02)
- Дык банальный резистор (десятки-сотни Ом) непосредственно на выходе
элемента, формирующего сигнал с высокой крутизной фронтов. Иногда
"растяжка" (pull-up и pull-down, параллельное сопротивление которых
примерно равно импедансу линии), но уже на входе элемента после очень длинной линии. - reZident(16.05.2025 11:07)
- На какой длине линии ни чего не делаете, а на какой обязательно
что-то делаете? Волновое сопротивление высчитываете, измеряете или
используете какое-то универсальное усредненное значение? - AlexBi(16.05.2025 11:11)
- "Дяденька, я же не настоящий сварщик! Маску я просто нашел!" :-) Универсальных приемов нет, есть лишь эмпирический опыт. Длинная линия это такой проводник в котором время распространения электрического сигнала сравнимо с его (сигнала) периодом (и/или длительностью в случае импульсного сигнала). reZident(626 знак., 16.05.2025 11:44)
- На какой длине линии ни чего не делаете, а на какой обязательно
что-то делаете? Волновое сопротивление высчитываете, измеряете или
используете какое-то универсальное усредненное значение? - AlexBi(16.05.2025 11:11)
- Например - там и в той теме: Toчкa oпopы(108 знак., 16.05.2025 12:00, ссылка)
- На CLK обычно ставлю последовательно ом 20..50 антизвонных около
вывода источника. - Andreas(16.05.2025 10:33)
- Да, мне тоже как-то пришлось в плате индикации. Но у меня там CLK
шел по 16 шт 74НС595 до 20 см. А здесь 10 мм. - Лaгyнoв(16.05.2025 12:48)
- Угу, но мне резистора не жалко. Даже китайцы его на 40М QSPI поставили на копеечном референсе свистка. - Andreas(16.05.2025 12:55)
- Да, мне тоже как-то пришлось в плате индикации. Но у меня там CLK
шел по 16 шт 74НС595 до 20 см. А здесь 10 мм. - Лaгyнoв(16.05.2025 12:48)
- У меня давно везде стоит SPI флешка 30 МГц. Без каких-либо
резисторов. Работает надёжно. QSPI в этом плане должно быть без
разницы. Но я не тяну дорожки, там обычно 1-2 см, больше не
пробовал. - SciFi(16.05.2025 10:21)
- у меня точно не больше 1,5 см. Так и сделаю, спасибо - Лaгyнoв(16.05.2025 12:49)