Haberler
Haberler
STM32/GD32'nin yenilenmiş sahte bir ürün olup olmadığını nasıl anlayabiliriz?
2022-03-16 261




Yakın zamanda embedded ARM bir makale paylaştı:GD32 de sahte ürünlerle dolup taşmaya başladı.Makalede, gömülü ARM'nin eski bir dostu olan Stronger Huang'ın da teknik bilgi alışverişi grubunun şu konuları tartıştığını söylediği belirtiliyor:Çip fiyatları yükseliyorhem deTuzlanmış balığın üzerine patates kızartması sat.Konuyla ilgili bir makale yazdım ve yenilenmiş sahte ürünlerin nasıl tespit edileceğine dair arka planı ve yöntemleri açıkladım. Referansınız için burada yeniden yayınlıyorum.


                           

1

Çip fiyat artışının arka planı    
Son iki yıldaki Çin-ABD savaşı, Huawei gibi bazı büyük yerli teknoloji şirketlerini etkiledi. Ancak, elektronik sektöründeki şirketlerin çoğu bu durumdan minimum düzeyde etkilendi.  
2020 yılında yaşanan bir salgın, işçi grevleri gibi olaylar nedeniyle bazı yarı iletken şirketlerine büyük darbe vurdu.  
Ardından, bazı ham maddelerin fiyatları çeşitli derecelerde artmaya başladı. Özellikle bu yılın başından itibaren, metaller ve plastikler gibi çoğu ham maddenin fiyatı arttı. Dirençlerden ve kapasitörlerden televizyon ve buzdolabı gibi tüketici elektroniği ürünlerine kadar her şeyin fiyatı çeşitli derecelerde yükseldi.  
  (Resim internetten alınmıştır, telif hakkı ihlali ve silme işlemi yapılmıştır.)
Aynı durum çipler için de geçerli. Aşina olduğumuz mikrodenetleyicilerin fiyatları çeşitli derecelerde arttı. Sanırım herkes bunu biliyor. Özellikle bazı STM32 modellerinin fiyatları birkaç katına kadar yükseldi.  
Bu fiyat artışı bağlamında, mutlaka bazı vicdansız satıcılar da olacaktır ve bu durumda sahte ürün olasılığı da artacaktır.    
                           

2

STM32/GD32 yenilenmiş veya sahte    
Tecrübeli mühendisler, daha önce benim de yaşadığım gibi, GD32 logosunu silip STM32'ye dönüştüren veya eski karttan çıkarılan yenilenmiş STM32 gibi, yenilenmiş veya sahte STM32/GD32 sorunlarıyla karşılaşmış olabilirler.  
Şimdi de çip yenileme veya sahte ürünlerle ilgili bazı durumları ele alalım:
  1. Bayrağı sil  
Çip silme işareti, bazen geliştirdiğimiz ürünler de dahil olmak üzere çok yaygındır. Başkalarının çipi kopyalamasını önlemek için, çip yüzeyindeki işaret de taklitçileri engellemek amacıyla silinebilir.
 
Bazı işletmeler bu "prens için misk kedisi" yöntemini kar elde etmek için kullanacaklardır. İlk zamanlarda STM32 gibi bazı uyumlu çiplerin çoğunun sahte GD32 olduğunu biliyordum.  
  2. Sahte model  
STM32'nin içindeki Flash belleğin gerçek boyutu, modelle eşleşmeyebilir. Örneğin: STM32F103RF'nin standart kapasitesi 768K'dır, ancak Flash belleğin gerçek boyutu 768K'dan daha fazladır.  
   
  Bu, konuyu genişletiyor: STM32 çipinizin FLASH kapasitesi gerçekten ST'nin resmi seçim kılavuzunda belirtildiği kadar iyi mi?  
 

1. Önce başka bir şeyden bahsedelim.


 
Genel olarak, yeni başlayanlar için dahili FLASH tamamen yeterlidir. Basit bir bare metal demo veya RTOS artı iki görev demosu çalıştırmak, mevcut mikrodenetleyiciler üzerinde hiçbir baskı oluşturmaz.  
Ancak, gerçek projelerle temasa geçtiğinizde şunu göreceksiniz kiBirçok yerde FLASH harcanacak.Ve bazı projeler çok fazla FLASH belleği tüketiyor. Örneğin: belirli bir algoritma, bir yazı tipi kütüphanesinin yüklenmesi veya hatta iki resmin FLASH'e yerleştirilmesi.  
IAP uygulama programlamasına başka bir örnek verelim: Genellikle bu işlevi daha iyi geliştirenler, uygulamanın boyutuyla yaklaşık aynı boyutta bir FLASH alanı (yedekleme alanı) bulundururlar. Yani: Güvenliği sağlamak için, program indirmelerinizi bir yedekleme alanına kaydedin ve indirme başarılı olduktan sonra uygulamayı güncelleyin. Bunun amacı şudur:Bu, indirme işleminin yarıda kesilmesini ve başarısızlığa yol açmasını önlemek içindir..  
FLASH belleğini üç alana (önyükleme programı FLASH alanı, uygulama FLASH alanı ve yedekleme programı FLASH alanı) ayıran, kabaca aşağıdaki gibi bir resim buldum. Bir düşünün.  
 
   
 
 
 

2 STM32 çip seçimi


 
Genellikle, projemiz gereksinimleri ortaya koyduktan sonra uygun bir MCU seçeceğiz. Akla ilk gelen şey [Seçim Kılavuzu]'nu kontrol etmektir. Çevre birimlerinin seçimine ek olarak, uygun bir FLASH kapasitesinin seçimi de vardır. STM32 ürün komut kuralları aşağıdaki gibidir:
   
Seçim kılavuzu adresi: https://www.stmcu.com.cn/upload/selection_Guide.pdf (WeChat resmi hesabı harici bağlantıları desteklemiyor, açmak için URL'yi kopyalayın)
 
 
 

3. STM32'nin dahili FLASH belleğinin boyutunu doğrulayın.


 
FLASH ile ilgili bazı konuları ele aldıktan sonra, bu makalenin kilit noktalarına geri dönelim:STM32'nin dahili FLASH belleği, yukarıdaki seçim kılavuzunda belirtilenden daha büyük olabilir..  
Örneğin: Benim MCU çipimin modeli STM32F103RF. Kullanım kılavuzuna baktığımda kapasitesinin 768K olduğunu görüyorum, ancak gerçekte 1M FLASH kapasitesine sahip.  
   
Burada iki basit doğrulama yönteminden bahsedeceğim:
1. Programlama yoluyla doğrulayın.  
Basitçe ifade etmek gerekirse, bu işlem belirtilen adresi (yani FLASH boyutunu aşan adresi) silme, yazma ve okuma yoluyla gerçekleşir.  
  FLASH_EraseSector FLASH_ProgramWord  
  2. Araçlar aracılığıyla FLASH verilerini okuyun.  
Bu yöntem en doğrudan ve en basit yöntemdir. Örnek olarak STM32 ST-LINK Utility indirme aracını ele alalım:
 
   
Önemli noktalar aslında resimde açıklanmıştır:Adres 768K'yı aşarsa, veriler gerçekten okunabilir.(Yukarıdaki resim, gerçek STM32F103RF mikrodenetleyici ile okuduğum çıktıdır. Uygulamanın başlangıç ​​adresi 0x080C0000'dır ve uygulama şu anda çalışmaktadır.)
Bunları söyledikten sonra asıl söylemek istediğim şu: Sadece yukarıda örnek verdiğim STM32F103RF değil, benzer birçok STM32 çipi var. 103RC nominal olarak 256K olsa da, aslında 256K'dan daha fazla alana sahip. FLASH alanınızın yetersiz olduğunu düşünüyorsanız, yukarıdaki yöntemi kullanarak daha fazla alan olup olmadığını kontrol edebilirsiniz.  
  3. Orijinal ve otantik ürünler haline getirilmiştir.Bu tür, bazı ürünlerde en yaygın olanıdır. Ucuz görünümlü olan türüdür. Perakende olarak birkaç tane satın alırsanız, kargoyla gönderileceklerdir. Bunlar büyük olasılıkla yenilenmiş çiplerdir.
 
Yenilenmiş bir çip satın alırsanız, test etmek için bir LED koşu lambası yazabilirsiniz ve sorun yaşamazsınız. Ancak, özellikle daha fazla çevre birimi gerektiren ve daha karmaşık işlevlere sahip bir projeye dahil olduktan sonra, orijinal hali kısa sürede ortaya çıkabilir.  
Şanssızsanız, aşağıdaki durumlar meydana gelebilir:
  • Yazılım günlerce sonuç vermeden fazla mesai yaptı ve suç donanıma atıldı;
  • Donanım kaynaklı kablo arızaları üzerinde çeşitli testler yapıldı, sorunu çözmek için bir çip değiştirildi;
  • Yazılım ve donanım mühendisleri birbirleriyle çatışıyor;
  • ······

Bu nedenle, piyasada şu anda birçok sahte veya kusurlu çip bulunması şaşırtıcı değil; gömülü ARM'nin "GD32'nin de sahte ürünlerle dolup taşmaya başladığını" söylemesi de bunu doğruluyor. Bence bu durum gerçekten var olmalı.  
   
                           

3

Yenilenmiş veya sahte ürünleri tespit edin.Yenilenmiş veya sahte STM32/GD32'yi tespit etmek için geleneksel yöntem, önce onu PCB kartına (veya takım fikstürüne) lehimlemek, ardından normal çalışıp çalışmadığını görmek için çalıştırmaktır. Eğer ısınıyorsa, aşırı akım çekiyorsa veya duman çıkarıyorsa dikkatli olun.  
Ardından, flaş bellek kapasitesi, UID bilgileri, opsiyon baytları vb. gibi çip bilgilerini okuyun.  
Önceki yazıları burada paylaşıyorum:STM32'nin bu kayıt birimleri hakkında bilginiz var mı?  
Okuma yöntemi şu şekildedir:
 

1 Flash kapasite kaydı


  1. Kayıt defterini okuyarak  
STM32'nin "Referans Kılavuzu"nda, Flash boyutu veri kaydedici gibi bir kaydedici bulunur (genellikle kılavuzun sonunda) ve kaydedicinin temel adresi açıkça yazılmıştır.  
  ipucuFarklı çip modelleri farklı kayıt adreslerine sahip olabilir. Örneğin, F103'ün temel adresi 0x1FFFF7E0'dır.  
   
Bu, fabrikada yazılan ve yalnızca program tarafından okunabilen 16 bitlik bir değerdir. Okuma yöntemi çok basittir ve aşağıdaki gibi olabilir:
  uint16_t Flash_size;   Flash_size = *(uint16_t *)0x1FFFF7E0;  
  2. STM32 ST-LINK Utility üzerinden doğrudan okuyun.
 
Çipi ST-Link üzerinden bağlayıp doğrudan okuyarak kapasite bilgilerini görebilirsiniz:
   
 

2 UID kaydı


Daha önce biri bana STM32'nin UID'si üzerinden şifreleme yapabilir miyim diye sormuştu. Bu kesinlikle mümkün.  
Ama bana başka bir soru sordu, hepsini (96 bit) okumak istemiyorum.Kayıt defterinin yalnızca bir kısmı tanımlayıcı olarak okunabilir mi? Okunan kısımlar tekrarlanacak mı?  
STM32 UID benzersiz tanımlayıcısıUygulanabilir:
  • Seri numarası olarak kullanılır.
  • Bu, parola olarak kullanılır. Flash belleğe yazma işlemi sırasında, bu benzersiz tanımlayıcı, flash bellekteki kodun güvenliğini artırmak için yazılım şifreleme ve şifre çözme algoritmasıyla birlikte kullanılır.
  • Güvenlik mekanizmasıyla önyükleme işlemini etkinleştirmek için kullanılır.

STM32'nin UID'si toplam 96 bitten (32 x 3) oluşmaktadır. Arkadaşlar, bunun sadece belirli bir bölümünü benzersiz tanımlayıcı olarak okuyabilir miyim?  
Bu soru, kesin olarak söylemek gerekirse, mümkün değil. Ancak çok katı bir kural değilse, yine de sorun değil. Çünkü bu UID, wafer, parti vb. numaralarla numaralandırılmıştır. Aynı partiyi satın alırsanız, numaraların ardışık olabileceğini göreceksiniz.  
   
 
Daha önce üretilmiş birkaç devre kartını inceledim (satın alınan mikrodenetleyiciler aynı partiden). Çiplerin UID'leri ardışık. İlginizi çekiyorsa deneyebilirsiniz.  
bu yüzden,UID'nin bir kısmını tanımlayıcı olarak okuyarak, bunun katı olmadığı söylenebilir..
 
 
 

3 Kayıt ofset adresi


Hâlâ temel bilgileri öğrenen birçok yeni başlayan var. Örneğin, yazmaçlar aracılığıyla programlama yapmak isteyen arkadaşlarım var, ancak yazmaç taban adresinin ve yazmaç ofset adresinin ne olduğunu bilmiyorlar.  
  1. Temel adres  
Her bir çip içi ve çip içi aygıtın, üretici tarafından belirlenen ve değiştirilemeyen karşılık gelen bir temel adresi vardır. Aşağıda gösterildiği gibi:
   
Programda, yukarıdakine karşılık gelen kodu bulacaksınız:
   
  2. Ofset adresi  
Ofset adresi, temel adrese göre (genellikle 4 bayt artırılmış) ofsettir; örneğin TIM zamanlayıcısının ofset adresi:
   
Benzer şekilde, programdaki ilgili kod, yapı üzerinden ofseti uygular:
   
Temel adres ve ofset adresiyle ilgili olarak, ister standart çevre birimi kütüphanesi ister HAL kütüphanesi olsun, bunlar yukarıda gösterilen temel adres + ofset yöntemiyle uygulanır.  
Makalede daha önce birçok kez belirtildiği gibi, kayıtların prensibini anlamak veya bunları kayıtlar aracılığıyla uygulamak istiyorsanız, "Standart Çevre Birimi Kütüphanesi" rutinlerine başvurmanız en iyisidir. HAL kütüphanesi nispeten karmaşık bir yapıya sahiptir ve en düşük seviyedeki kayıtları incelemek için uygun değildir.  
Daha ileri doğrulama, veri yazma (RAM, Flash) testi, çeşitli çevre birimlerinin temel işlev testi vb.  
   
                           

4

Önerilen resmi kanallarSahte veya taklit ürün satın almanın bedeli çok yüksek. Sorunların erken geliştirme aşamasında tespit edilmesi sorun değil, ancak seri üretimden sonra sorunların ortaya çıkmasından korkuyorsunuz.  
Daha da korkutucu olan durum ise, ürünlerin büyük miktarlarda sevk edilmesi ve sahte çipler nedeniyle müşterilerin elinde sorun yaşamasıdır.  
Bugün iletişim grubundan biri tuzlanmış balık üzerine patates kızartması satılması durumunu tartışıyordu. Sanırım,Sadece eğlence olsun diye cips satın alabilirsiniz, ancak ürün üretirken dikkatli olmanızda fayda var.  
Örneğin, Taobao'da on yuan'dan fazla fiyata satılan STM32'nin hala ithal ve orijinal olduğunu iddia ediyorlar. Buna inanabiliyor musunuz?  
   
  Normal kanallar aracılığıyla satın alınan çipler için, sorunun Xianyu gibi bir platformdan ziyade çipin kendisinden kaynaklanma olasılığı hala belli bir oranda mevcuttur.Daha önce de düzenli ve nispeten büyük bir bayiden aldığım STM32 ile ilgili sorunlar yaşamıştım. Fabrika yetkili servis teknisyeni (FAE) birçok kez firmaya gitti ancak sorunu bulamadı. Sonunda, orijinal fabrika çipini geri alıp inceledim ve sorunun gerçekten çipin kendisinde olduğunu gördüm.  
 

Bu nedenle, sadece ucuz oldukları için Taobao veya Xianyu'dan cips satın almayın. Resmi kanallardan satın almanız önerilir. Aksi takdirde, pahalıya mal olabilir.


Yasal Uyarı: Bu makale, fikri mülkiyet haklarının korunmasını destekleyen "strongerHuang" kaynağından yeniden yayınlanmıştır. Yeniden yayınlarken lütfen orijinal kaynağı ve yazarı belirtin. Herhangi bir telif hakkı ihlali durumunda, lütfen silinmesi için bizimle iletişime geçin.


Şirket telefon numarası: +86-0755-83044319
Faks: +86-0755-83975897
E-posta: 1615456225@qq.com
QQ: 3518641314 Yönetici Li

QQ: 332496225 Yönetici Qiu

Adres: Shenzhen, Longhua Yeni Bölgesi, Minzhi Caddesi No. 1079, Zhantao Teknoloji Binası, C Binası, Oda 809

whatsapp

WhatsApp

Whatsapp:+8618073002950