-
- А есть ещё и 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)