Actualités
Actualités
Comment identifier si un STM32/GD32 est une contrefaçon reconditionnée ?
2022-03-16 261




Recently, embedded ARM shared an article "Le GD32 est lui aussi inondé de contrefaçons.Dans un article, Stronger Huang, un vieil ami d'ARM embarqué, a également déclaré que son groupe d'échange technique discutait de…Chip prices riseetSell ​​chips on salted fishJ'ai rédigé un article sur ce sujet, expliquant le contexte et les méthodes d'identification des contrefaçons remises à neuf. Vous le trouverez reproduit ci-après à titre de référence.


                           

1

Background of chip price increase    
The Sino-US war in the past two years has affected some large domestic technology companies, such as Huawei. However, most electronics-related companies have been minimally affected.  
En 2020, une épidémie a porté un coup dur à certaines entreprises de semi-conducteurs, notamment à cause des grèves des travailleurs.  
Ensuite, les prix de certaines matières premières ont commencé à augmenter, à des degrés divers. Depuis le début de l'année notamment, les prix de la plupart des matières premières, comme les métaux et les plastiques, ont augmenté. Les prix de tous les produits, des résistances et condensateurs aux appareils électroniques grand public tels que les téléviseurs et les réfrigérateurs, ont également augmenté, dans des proportions variables.  
  (Picture source from the Internet, infringement and deletion)
Il en va de même pour les puces. Le prix des microcontrôleurs que nous connaissons a augmenté à des degrés divers. Je pense que tout le monde le sait. En particulier, le prix de certains modèles STM32 a même été multiplié par plusieurs.  
Dans ce contexte de hausse des prix, il doit y avoir des commerçants peu scrupuleux, et la probabilité de trouver des produits contrefaits augmente alors.    
                           

2

STM32/GD32 refurbished or fake    
Les ingénieurs expérimentés ont peut-être déjà rencontré le problème des STM32/GD32 reconditionnés ou contrefaits, y compris moi-même, qui effaçais le logo GD32 pour ensuite le transformer en STM32, ou des STM32 reconditionnés retirés de l'ancienne carte.  
Let’s talk about some situations of chip refurbishment or fake products:
  1. Effacer le drapeau  
L'effacement de la puce est une pratique courante, y compris sur les produits que nous développons parfois. Afin d'empêcher la contrefaçon, la marque présente à la surface de la puce peut également être effacée.
 
Certaines entreprises utilisent cette méthode douteuse pour faire des profits. Je sais que beaucoup de puces compatibles, comme les STM32 à leurs débuts, étaient des contrefaçons de GD32.  
  2. Faux modèle  
La capacité réelle de la mémoire Flash intégrée au STM32 peut différer du modèle. Par exemple : la capacité standard du STM32F103RF est de 768 Ko, mais sa capacité réelle est supérieure à 768 Ko.  
   
  Cela élargit le sujet : la capacité FLASH de votre puce STM32 est-elle vraiment aussi bonne que le manuel de sélection officiel de ST ?  
 

1. Parlons d'autre chose d'abord.


 
En général, pour les débutants, la mémoire FLASH interne est largement suffisante. L'exécution d'une simple démo « bare metal » ou d'une démo « RTOS » avec deux tâches ne sollicite absolument pas les microcontrôleurs actuels.  
Cependant, une fois que vous serez en contact avec des projets concrets, vous constaterez queDe nombreux endroits dépenseront FLASH, and some projects take up a lot of FLASH. For example: a specific algorithm, loading a font library, or even putting two pictures in FLASH.  
Take another example of IAP application programming: Generally, those that do a better job of upgrading this function will have a FLASH area (backup area) that is about the same size as the application. That is to say: To ensure safety, save your program download in a backup area, and then update the application after the download is successful. The purpose of doing this:Ceci afin d'éviter que le téléchargement ne soit interrompu en cours de route, ce qui entraînerait un échec..  
I found a picture, roughly as follows, which divides FLASH into three areas (boot program FLASH area, application FLASH area, and backup program FLASH area). Think about it.  
 
   
 
 
 

2 STM32 chip selection


 
Généralement, une fois les exigences de notre projet définies, nous choisissons un microcontrôleur adapté. La première chose à faire est de consulter le [Manuel de sélection]. Outre le choix des périphériques, il faut également sélectionner une capacité de mémoire FLASH appropriée. Les règles de commande des produits STM32 sont les suivantes :
   
Selection manual address: https://www.stmcu.com.cn/upload/selection_Guide.pdf (WeChat official account does not support external links, copy the URL to open)
 
 
 

3 Verify how big the internal FLASH of STM32 is


 
After talking about some topics about FLASH, let’s come back to the key points of this article:La mémoire FLASH interne de notre STM32 peut être plus grande que celle indiquée dans le manuel de sélection ci-dessus..  
Par exemple : le modèle précis de ma puce MCU est STM32F103RF. En consultant le manuel, je constate que sa capacité est de 768 Ko, mais sa mémoire FLASH a en réalité une capacité de 1 Mo.  
   
Here I will talk about two simple verification methods:
1. Verify through programming  
Simply put, it is through erasing, writing, and reading the specified address (that is, the address exceeding the FLASH size).  
  FLASH_EraseSector FLASH_ProgramWord  
  2. Read FLASH data through tools  
This method is the most direct and simplest method. Take the STM32 ST-LINK Utility download tool as an example:
 
   
The key points are actually described in the picture:Si l'adresse dépasse 768 Ko, les données peuvent effectivement être lues.. (The picture above is what I read out with the STM32F103RF real MCU. The starting address of the application is 0x080C0000, and the application is actually running)
Having said so much, what I actually want to say is: there are many STM32 chips that are similar, not just the STM32F103RF I gave an example above, the 103RC is nominally 256K, but it actually has more than 256K space. If you find that your FLASH space is insufficient, you can use the above method to see if there is more space than that.  
  3. Remis à neuf selon les produits originaux et authentiquesCe type de puce est le plus courant sur certains produits. C'est celui qui a l'air bon marché. Si vous en achetez quelques-unes en magasin, elles vous seront expédiées. Il s'agit probablement de puces reconditionnées.
 
If you buy a refurbished chip, you can write an LED running light to test it and there will be no problem. However, after you join a project, especially a project that requires more peripherals and has more complex functions, your original shape may soon be revealed.  
Si vous n'avez pas de chance, les situations suivantes peuvent se produire :
  • Le logiciel a fonctionné sans relâche pendant plusieurs jours sans aucun résultat, et le matériel a été mis en cause ;
  • Divers tests sur des fils volants matériels, remplacement d'une puce pour résoudre le problème ;
  • Les ingénieurs logiciels et matériels s'affrontent ;
  • ······

Therefore, it is not surprising that there are many fakes or defective chips on the market now, including embedded ARM saying that "GD32 has also begun to flood with fakes." I think it must exist.  
   
                           

3

Identify refurbished or fake productsTo identify refurbished or fake STM32/GD32, the conventional operation is to first solder it on the PCB board (or on the tooling fixture), then power it on to see if it is normal. If it is hot, has excessive current, or even smokes, be careful.  
Then read the chip information, such as Flash capacity, UID information, option bytes, etc.  
Voici les articles précédents :Connaissez-vous ces registres du STM32 ?  
La méthode de lecture spécifique est la suivante :
 

1 Registre de capacité Flash


  1. By reading the register  
In the "Reference Manual" of STM32, there is a register such as Flash size data register (usually at the end of the manual), and the base address of the register is clearly written.  
  allusionLes adresses de registre peuvent varier selon les modèles de puces. Par exemple, l'adresse de base de la puce F103 est : 0x1FFFF7E0.  
   
is a 16-bit value, written at the factory, and can only be read by the program. The reading method is very simple and can be as follows:
  uint16_t Flash_size ;   Taille_Flash = *(uint16_t *)0x1FFFF7E0;  
  2. Read directly through STM32 ST-LINK Utility
 
Connectez la puce via ST-Link et lisez-la directement, vous pourrez voir les informations de capacité :
   
 

2 Registres UID


Someone asked me before, can I encrypt through the UID of STM32? This is definitely possible.  
Mais on m'a posé une autre question, je ne veux pas tout lire (96 bits),Can only part of the register be read as an identifier? Will the read parts be repeated?  
Identifiant unique UID STM32Applicable à:
  • Used as serial number.
  • It is used as a password. When writing flash memory, this unique identifier is used in combination with the software encryption and decryption algorithm to improve the security of the code in the flash memory.
  • Utilisé pour activer le processus de démarrage avec un mécanisme de sécurité.

The UID of STM32 has a total of 96 bits (32 x 3). All, there are friends, can I read only a certain part of it as a unique identifier?  
This question, strictly speaking, is not possible. But if it’s not particularly strict, it’s still okay. Because this UID is numbered by wafer, batch, etc. If you buy the same batch, you will find that the numbers may be consecutive.  
   
 
I have read several produced boards before (the MCUs purchased are from the same batch). The UIDs of the chips are consecutive. If you are interested, you can try it.  
ainsi,By reading part of the UID as an identifier, it can only be said that it is not strict..
 
 
 

3 Register offset address


There are still many beginners who are learning some low-level knowledge. For example, there are friends who want to program through registers themselves, but they don’t know what a register base address is and what a register offset address is.  
  1.Base address  
Each on-chip and on-chip device has a corresponding base address, which is determined by the manufacturer and cannot be modified. As shown below:
   
Dans le programme, vous trouverez le code correspondant à ce qui précède :
   
  2. Offset address  
The offset address is the offset based on the base address (usually increased by 4 bytes), such as the offset address of the TIM timer:
   
De même, le code correspondant dans le programme implémente le décalage via la structure :
   
En ce qui concerne l'adresse de base et l'adresse de décalage, qu'il s'agisse de la bibliothèque périphérique standard ou de la bibliothèque HAL, elles sont implémentées par la méthode adresse de base + décalage décrite ci-dessus.  
Comme indiqué à plusieurs reprises dans cet article, pour comprendre le principe des registres ou les implémenter, il est préférable de se référer aux routines de la bibliothèque HAL (Standard Peripheral Library). La bibliothèque HAL est relativement complexe à encapsuler et ne convient pas à l'étude des registres de bas niveau.  
Further verification, writing data (RAM, Flash) test, basic function test of various peripherals, etc.  
   
                           

4

canaux officiels recommandésThe price you pay for buying fake or knock-off goods is very high. It’s okay if problems are discovered in the early development stage, but you are afraid that the problems will be discovered after mass production.  
Ce qui est encore plus effrayant, c'est la situation où des produits sont expédiés en grande quantité et posent problème aux clients à cause de puces contrefaites.  
Aujourd'hui, quelqu'un du groupe de communication discutait de la vente de chips sur du poisson salé. Je pense que…You can just buy chips for fun, but you'd better be cautious when making products.  
For example, the STM32 found on Taobao for more than ten yuan is still imported and original. Do you believe it?  
   
  For chips purchased through regular channels, there is still a certain probability that the problem is caused by the chip itself, let alone a platform like Xianyu.J'ai déjà rencontré des problèmes avec le STM32 que j'avais acheté auprès d'un revendeur agréé et relativement important. L'ingénieur d'application s'est rendu plusieurs fois chez le fabricant sans parvenir à identifier la panne. Finalement, j'ai récupéré la puce d'origine, je l'ai analysée et j'ai constaté qu'il s'agissait bien d'un problème lié à la puce elle-même.  
 

Therefore, don’t buy chips from Taobao or Xianyu just because they are cheap. It is recommended to go through formal channels. Otherwise, it could be costly.


Disclaimer: This article is reproduced from "strongerHuang", which supports the protection of intellectual property rights. Please indicate the original source and author of the reprint. If there is any infringement, please contact us to delete it.


Numéro de téléphone de l'entreprise : +86-0755-83044319
Fax/FAX : +86-0755-83975897
Courriel : 1615456225@qq.com
QQ : 3518641314 Gestionnaire Li

QQ : 332496225 Gestionnaire Qiu

Adresse : Salle 809, Bâtiment C, Immeuble technologique Zhantao, n° 1079 avenue Minzhi, Nouveau district de Longhua, Shenzhen

whatsapp

Ligne d'assistance

tel: +86 755 83044319

WhatsApp

Whatsapp:+8618073002950