Перейти к содержанию
    

51 minutes ago, jcxz said:

Если работали - ответьте хотя-бы на вопросы выше.

Да. работал. Вы этими же вопросами сами себе и отвечаете - это поиск замены.

Мне для моих задач и ресурсвов процессора хватало, и я не плодил сущности и сразу отвязывал логику работы программы от физики и кодов.

Даже micron, когда снимал свои микросхемы с производства и не давал compatable, а говорит "ну вот смотрите, тут совсем всё близко и рядом"

image.thumb.png.8b12c9920bc4eadc0d9e8ba0c9922171.png

ну да, командочки другие, но разница незаметная

image.thumb.png.a413be21e055b8f06299f7cde9ccf3b0.png

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 минут назад, kpv сказал:

[зануда моде on] обе работают по spi интерфейсу[зануда моде off]

Ну да. А ещё - обе сделаны из кремния.  :wink:

5 минут назад, kpv сказал:

at45 снимут с производства и всех выгонят на at25, от старого дизайна откажутся.

Эти страшилки помню ещё со времён цунами в Юго-Восточной Азии начала 2010-хх годов. Тогда залило завод, производящий DataFlash и возник временный дефицит на них. И тоже паникёры писали "всё пропало...". 

Открою Вам страшную тайну: Если какой-то чип производится и его покупают, и покупают так, что все расходы оправдываются и ещё остаётся на хлеб с икрой производителю, то такой чип не снимут с производства никогда! Или по-крайней мере - пока он приносит прибыль.

5 минут назад, kpv сказал:

она не compatable, она сделана по такому же техпроцессу под требования крупных заказчиков флешек.

все остальные подстраиваются, если им в счетчиках надо продлолжать писАть кольцевые буферы.

Разного рода счётчики выпускаются миллионными тиражами в год по всему миру. А значит - если в них используется DataFlash, то она будет продолжать выпускаться пока выпускаются эти счётчики.

Но даже если вдруг разом резко пропадут все массовые потребители DataFlash, и тут же остановят их производство и сожгут всю тех.оснастку для этого (чтобы уж ни в коем случае не запустить вдруг производство снова, если вдруг понадобится). То даже в этом фантастическом случае, мелкие их потребители смогут ещё много лет жить на складских остатках. Так как остатки на разных складах после миллионных тиражей тоже будут внушительными.

PS: Вспоминается недавнее время ковидла, когда вдруг внезапно пропали разные микроконтроллеры и прочие чипы... Тогда один мой мелкий заказчик (с объёмами производства всего в несколько тыс.штук в год) вдруг сел на попу потому что пропал LPC1758. А чтобы держать складской запас на год вперёд - он до этого не задумывался. Так я порекомендовал ему обратиться к другому моему заказчику (более крупному потребителю LPC1758), так как знал что там складской запас держат, и объёмы производства - многократно выше (а значит и запас). И они договорились - 1-й заказчик купил у 2-го чипов почти на год производства и смог протянуть на них.

И если по миру будет хотя-бы несколько даже таких не крупных заказчиков с объёмами у каждого по неск. тыс.шт, то думаю - чип с производства не снимут. А уж у DataFlash думаю потребителей гораздо больше, чем несколько тыс.шт. в год.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

59 minutes ago, jcxz said:

Как прикажете быть?

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

1 hour ago, jcxz said:

что размер элемента записи равен размеру элемента стирания?

как с черепичной записью у HDD - сначала всё читаете, а потом всё заново записываете. и все как с HDD - решение не для RAID (интенсивных) записей.

 

1 hour ago, jcxz said:

с дополнительным нескольким байтам (относительно элемента с размером кратного 2^n)

делаете виртуальные сектора, remaping bad секторс на HDD, или вообще виртуальную адресацию без привязки к реальным секторам

 

1 hour ago, jcxz said:

без чтения в МК

эмулируете и читаете, включайте DMA и скорость практически не потеряется

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, kpv сказал:

Мне для моих задач и ресурсвов процессора хватало, и я не плодил сущности и сразу отвязывал логику работы программы от физики и кодов.

Это пустые слова, демагогия. Я задал конкретные вопросы - ответьте на них: КАК??

А если говорить в стиле вашей демагогии: Отвязывайте логику работы от STM32, стройте ПО так, чтобы оно могло выполняться на всех МК. Потянете?  :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, jcxz said:

Эти страшилки помню ещё со времён цунами

это не страшилки, а чтобы потом жопа не горела от внезапного нуля на складе.

1 minute ago, jcxz said:

ответьте на них: КАК??

все ответы выше, что в них не так?

1 minute ago, jcxz said:

чтобы оно могло выполняться на всех МК. Потянете?

HAL для этого и придумали

Linux работет на очень широком спектре процессоров

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

столкнулись с тем, что diskonchip дохли при температурах 40 и 40++. внутри прибора в одноплатке запросто такое могло быть не то , что на улице, но и просто в жаркий день в щите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

44 минуты назад, kpv сказал:

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

Вот именно - для многих алгоритмов самое простое решение - как раз на AT45. Так почему от неё отказываться?

44 минуты назад, kpv сказал:

как с черепичной записью у HDD - сначала всё читаете, а потом всё заново записываете. и все как с HDD - решение не для RAID (интенсивных) записей.

Что значит "всё"? Вот у меня есть система хранения, основанная на произвольном чтении/записи страниц 512 байт. Использующая 528-512 байт для своей работы (хранения счётчиков износа и индексов переадресации). Очень простая. Пишутся читаются страницы по 512 байт. Для след.записи выбирается страница с минимальным счётчиком записи.

Как прикажете быть?

А если в МК просто нет столько свободной ОЗУ, чтобы "всё прочитать и записать"?

44 минуты назад, kpv сказал:

делаете виртуальные сектора, remaping bad секторс на HDD, или вообще виртуальную адресацию без привязки к реальным секторам

Причём тут сектора? Я хочу перезаписать страницу 512 байт. Только её и больше ничего. А потом снова её и ещё раз её. Не трогая соседние страницы. И к тому же - переписывать так, чтобы не бояться потери данных при внезапном сбое электропитания. 

Как прикажете быть?

 

То что вы описываете, потребует намного бОльших ресурсов и более сложного ПО. Потребует процесса сборки мусора. Потребует затрат на время перезаписи многократно бОльших. И самое главное - это не то же что нужно делать на AT45.

44 минуты назад, kpv сказал:

эмулируете и читаете, включайте DMA и скорость практически не потеряется

Бред. Никакое DMA не поможет сделать так же быстро то, что делается внутри чипа без передачи через внешний интерфейс. Разница будет не то, что многократная, а на порядки.

 

PS: К чему вообще вы всё это пишете? Вопрос был как сделать то же самое на AT25, что можно сделать на AT45? Вы же пишете, что нужно ещё нагородить кучу ПО, чтобы только приблизиться к возможностям AT45. И при этом утверждаете, что "AT25 это то же самое что AT45".

43 минуты назад, kpv сказал:

это не страшилки, а чтобы потом жопа не горела от внезапного нуля на складе.

Ок. Покажите нам более-менее сложное ПО на любой МК, которое легко соберётся для любого другого МК?

Чтобы "жопа не горела от внезапного нуля на складе" если вдруг первый МК пропадёт из продажи.

43 минуты назад, kpv сказал:

все ответы выше, что в них не так?

Примерно то же, что в наставлениях "как магазинную коляску превратить в самосвал для перевозки руды." Можно? Да, наверное можно. Также и с вашими "ответами". Пустая демагогия. Ни на один вопрос вы не ответили.

43 минуты назад, kpv сказал:

Linux работет на очень широком спектре процессоров

ок. Покажите - как его запустить например - на LPC1758? А как на Atmega?

 

PS: А и правда - можно же любой чип реализовать на кучке транзисторов. Значит - все чипы одинаковы? И нафиг тогда производить такое разнообразие их?  :biggrin:

Это если следовать демагогии как выше...

52 минуты назад, kpv сказал:

ну да, командочки другие, но разница незаметная

Всё ясно. С AT45 вы не работали. Просто теоретизируете....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из практики своего перехода от АТ45 на АТ25, использовал встроенные буферы, пришлось использовать буферы в ОЗУ МК и немного команды подправить, но в общем все тоже самое.

Что касается надежности, если есть вероятность отключения питания во время записи, то дублировать данные обязательно и контрольной суммой проверять на валидность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, jcxz said:

 Просто теоретизируете...

Вы сами придумали себе суперуникальную задачу - сами её и решайте.

Есть несколько способов решения проблем: два из них решение либо по мере их поступления, либо решать их ещё до момента возникновения. Это называется опыт решения широкого спекта задач, когда подход делается универсальный. Вы максимально использовали все возможности флешки, утилизировали её на 100%. Таких задач, если брать именно хранение данных, ограниченный круг. И вы зациклились на своей проблеме какой то "замены". Нормальный разработчик берёт микруху и использует её набор команд, а не наоборот - сначала пишет под at45, а потом пытается адаптировать под другую микросхему. точно также как и ТС - у него сейчас есть выбор и он может выбрать любую серию, которая больше подойдёт. Если забыли первоначальный вопрос, то напомню "насколько надежны и стабильны в хранении критических данных DataFlash" - и ответ  ещё раз: и at45 и at25 АБСОЛЮТНО ОДИНАКОВЫ в этом плане, потому что технология производства одинакова, способ  стирания блоковый и даже ресурс одинаковый.

И нередко, где такие секторные dataflash, то там рядом sdcard, потому что заказчик очень хочет. И в практической реализации всегда остаётся что-то одно, какой-то один из способов сохранения данных. B чтобы три раза весь проект не переписывать, из-за заскоков программиста, который для решения задачи кольцевого буфера нахуевертил привязки к конкретному типу микросхемы, формат сразу унифицируется и упрощается под какой-то общий круг хотелок заказчика, чтобы из ниокр выехать с готовым изделием.

И такие "метания" на каждом проекте и не только по flash, а по любым другим компонентам. Нир, Окр, ниокр все хотят пролететь на одном дыхании. На мелкосерийном производстве это не выгодно, поэтому что-то мелкое должно быть глубоко универсальным. Если у заказчика очень большой тираж, надо максимально дешево и сердито, то вот тогда все силы в пилотный образец, максимально выжимаем силы из железа. Если надо, то делаем ещё заход на нир, окр (не жалея денег) и получаем суммарный отличный результат. и возможно в этом случае, если требуется замена компонентов - выгодно сделать новую разработку и всё переписать под новое железо, чем пытаться вставить костыль в то, что есть на ограниченных ресурсах и пространстве (всё ведь вылизано на минимальную стоимость).

При этом никто не запрещает брать с заказчика денег за любой свой шаг, даже за тот, который сделали 10 лет назад. Это мой опыт и я за него тоже беру деньги, но только чуть попозже. Но времени у меня это не отнимает, в отличии от...

если так узко мыслить, то проблемой будет даже переход с at45db161 на at45db321, когда заказчик попросит расширить память, а разраб будет заявлять: "да это же другая микросхема, там другое количество секторов!". и что вас на какую то демагогию и теорию пробивает - трассируют два посадочных места рядом (если нет пин2пин совместимости) и паяют что надо - сплошь и рядом такие решения и в том числе и на моих проектах.

2 hours ago, jcxz said:

это не то же что нужно делать на AT45

А на at25 не нужно делать кучу другого, что вы себе напридумывали. Это микросхема эволюция, а не замена at45db. Упрощено и как следствие - удешевление. legacy - это очень часто дорого и живёт только за счёт бабла заказчика. я поддерживать legacy умею, но избавляюсь при первой же возможности.

есть флешки и покруче at45db и по системе команд, и под конкретного заказчика подходящие лучше по требованиям. Проблемы разработки и проблемы замены микросхем - это две разные задачи - именно это вы путаете. и желательно железо подбирать под задачу, а не под программу, которую напишет разработчик, тогда будет меньше демагогии.

 я привел реальный кейс именно замены на at45, когда пришлось решать проблему с переездом на at45db и отличия были очень минимальны и я её решил больше десяти лет назад, а для вас это до сих пор проблема 🙂

когда мне надо - беру at45, когда мне надо - at25. заказчику истерик не устраиваю, что я жить без at45 не могу и без этой микросхемы мне свет не мил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, jcxz said:

Так почему от неё отказываться?

у меня никто не отказывается. если у вас там кто-то отказывается - к серии at25 dataflash это не имеет вообще никакого отношения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 1/18/2024 at 4:50 PM, jcxz said:

Вот именно - для многих алгоритмов самое простое решение - как раз на AT45. Так почему от неё отказываться?

потому что старьё и во всём уступает fram кроме цены, сделать кеш на маленькой копеечной fram а основную часть хранилища на любом типе носителя, хоть в облаке - будет и надёжней и универсальней

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 часов назад, kpv сказал:

Вы максимально использовали все возможности флешки, утилизировали её на 100%. Таких задач, если брать именно хранение данных, ограниченный круг. И вы зациклились на своей проблеме какой то "замены".

Может хоть немного придёте в себя??? И не будете так уж нагло врать? Где именно я писал, что занимаюсь какой-то "заменой"? И что у меня какая-то проблема с флешками есть?

Пожалуйста - приведите конкретную цитату. Иначе буду считать вас пустозвоном.

Про "замену" несли околесицу именно вы, когда в ответ на вопрос о реализации возможностей, предоставляемых AT45, начали нести не относящуюся к делу ахинею о каких-то "виртуальных секторах и "черепичной записи".

18 часов назад, kpv сказал:

я привел реальный кейс именно замены на at45, когда пришлось решать проблему с переездом на at45db и отличия были очень минимальны и я её решил больше десяти лет назад, а для вас это до сих пор проблема 🙂

Да уж... Остальной бред читать смысла нет... Вижу, что в вопросе вы совершенно не разбираетесь, так как ни одного ответа на конкретный вопрос так и не дали.

"Слышал звон, да не знаю где он".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, sasamy сказал:

потому что старьё и во всём уступает fram кроме цены, сделать кеш на маленькой копеечной fram а основную часть хранилища на любом типе носителя, хоть в облаке - будет и надёжней и универсальней

Ну вот... с больной головы да на здоровую. FRAM то тут при чём?

"Уступает во всём кроме цены"? Да ну? Правда? Давайте не будем говорить "за всё" (мы же не пустозвоны, верно?), а пройдёмся по конкретным параметрам:

Сравним например AT45DB161E и W25Q16JV (чипы примерно равны по размеру и напряжению питания):

 

1. Максимальное время произвольного доступа к данным небольшого размера по чтению (несколько байт) (допустим - в ТЗ есть требование по минимальному времени доступа к небольшой порции байт).

Очевидно, что этот параметр определяется минимально возможным временем стирания минимальной единицы хранения. Временем чтения нескольких байт пренебрежём, так как оно несущественно со временем стирания. Итого:

AT45DB161E = 35 ms;

W25Q16JV = 400 ms.

W25Q16JV проигрывает в >10 раз!

Это даже не считая, что для FRAM+W25Q16JV нужно ещё время на работу с этим лисапедом.

 

2. Максимальная скорость непрерывной записи потока данных реального времени:

AT45DB161E = 528/.04 = 13200 Б/сек;

W25Q16JV = 4096/(0.4+(4096/256)*0.003) = ~9143 Б/сек.

W25Q16JV опять проигрывает почти в 1.5 раза!

В реальности W25Q16JV проигрывает ещё больше, так как для неё нужно ещё время на передачу записываемых данных и передачу дополнительных команд. В то время как AT45 позволяет делать это одновременно с текущей операцией стирания/записи.

Да конечно, в W25Q16JV можно стирать секторами по 32K и больше. И получить бОльшую результирующую скорость. Но для этого, нужно и ОЗУ под буферизацию примерно такого же размера. Т.е. - в 8 раз больше, чем для AT45. А такой объём - часто существенный для embedded и его не всегда возможно выделить.

 

3. Минимально необходимый размер ОЗУ для буфера при непрерывной записи данных реального времени. Очевидно, что он равен минимальной единице стирания:

AT45DB161E = 512 байт

W25Q16JV = 4096 байт.

Опять W25Q16JV проигрывает в 8 раз!

 

PS: Я сходу назвал 3 параметра, по которым AT45DB161E превосходит W25Q16JV в практических задачах. Наверняка можно найти ещё и другие параметры, по которым AT45 лучше чем AT25.

Это уже не говоря о том, что на реализацию лисапеда из FRAM + W25Q16JV нужно и больше времени на написание и отладку ПО. И если уж говорить о надёжности (исходя из темы) - то и надёжность такого девайса будет ниже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 1/19/2024 at 3:17 PM, jcxz said:

"Уступает во всём кроме цены"? Да ну? Правда? Давайте не будем говорить "за всё" (мы же не пустозвоны, верно?), а пройдёмся по конкретным параметрам:

Сравним например AT45DB161E и W25Q16JV (чипы примерно равны по размеру и напряжению питания)

зачем сранивать их если w25q16 не FRAM ? Посмотрите тут есть сравнение

Comparison between FRAM and other memories

https://www.fujitsu.com/us/Images/SPBG_FRAM_Overview_JP.pdf

FRAM по параметрам как SRAM но не требует батарейки для сохранения данных

 

fram_cmp.png

Изменено пользователем sasamy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, sasamy сказал:

зачем сранивать их если w25q16 не FRAM ? Посмотрите тут есть сравнение

Ну хотя-бы затем, что сравниваем мы флеши разной архитектуры, а не FRAM vs FLASH.

1 час назад, sasamy сказал:

FRAM по параметрам как SRAM но не требует батарейки для сохранения данных

Что такое FRAM - мне не надо объяснять. Использую её уже лет 15.

И покажите мне пожалуйста последовательную FRAM размером хотя-бы в пару десятков МБ по бюджетной цене? (если уж решили сравнивать её с FLASH)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...