Notícias
Notícias
Como identificar se um STM32/GD32 é uma falsificação recondicionada?
2022-03-16 261




Recentemente, a Embedded ARM compartilhou um artigo "O GD32 também começou a ser inundado por falsificações.》Artigo: Stronger Huang, um velho amigo da área de ARM embarcado, também afirmou que seu grupo de intercâmbio técnico está discutindo o assunto.Aumento nos preços dos chipseVenda batatas fritas em peixe salgadoEste artigo aborda o tema e revela o contexto e os métodos de identificação de produtos falsificados e recondicionados. Reproduzimos o artigo aqui para sua referência.


                           

1

Contexto do aumento do preço dos chips    
A guerra sino-americana dos últimos dois anos afetou algumas grandes empresas de tecnologia nacionais, como a Huawei. No entanto, a maioria das empresas do setor eletrônico foi minimamente afetada.  
Em 2020, uma epidemia causou um grande impacto em algumas empresas de semicondutores, como greves de trabalhadores.  
Em seguida, os preços de algumas matérias-primas começaram a subir em diferentes graus. Principalmente desde o início deste ano, os preços da maioria das matérias-primas, como metais e plásticos, aumentaram. Os preços de tudo, desde resistores e capacitores até eletrônicos de consumo, como TVs e geladeiras, aumentaram em diferentes graus.  
  (Imagem retirada da internet, proibida a reprodução e exclusão por violação de direitos autorais)
O mesmo se aplica aos chips. Os preços dos microcontroladores que conhecemos aumentaram em diferentes graus. Creio que todos sabem disso. Em particular, os preços de alguns modelos STM32 aumentaram várias vezes.  
Nesse contexto de aumento de preços, certamente haverá comerciantes inescrupulosos, o que aumenta a probabilidade de produtos falsificados.    
                           

2

STM32/GD32 recondicionado ou falsificado    
Engenheiros experientes podem ter se deparado com o problema de STM32/GD32 recondicionados ou falsificados, inclusive eu mesmo, que apagaram o logotipo do GD32 e o substituíram por STM32, ou que usaram STM32 recondicionados retirados de uma placa antiga.  
Vamos falar sobre algumas situações de remanufatura de chips ou produtos falsificados:
  1. Apagar bandeira  
A marca de apagamento no chip é muito comum, inclusive em produtos que desenvolvemos. Para evitar que outros copiem o chip, a marca na superfície do mesmo pode ser apagada.
 
Algumas empresas usam esse método de "civeta por príncipe" para obter lucro. Alguns chips compatíveis, como o STM32 nos primórdios, eu sabia que muitos deles eram GD32 falsificados.  
  2. Modelo falso  
O tamanho real da memória Flash dentro do STM32 pode não corresponder ao modelo. Por exemplo: a capacidade padrão do STM32F103RF é de 768 KB, mas o tamanho real da memória Flash é superior a 768 KB.  
   
  Isso amplia o tópico: a capacidade da memória FLASH do seu chip STM32 é realmente tão boa quanto a indicada no manual de seleção oficial da ST?  
 

1. Vamos falar sobre outra coisa primeiro.


 
Em geral, para iniciantes, a memória FLASH interna é totalmente suficiente. Executar uma demonstração simples em hardware puro ou uma demonstração de um sistema operacional de tempo real com duas tarefas não sobrecarrega os microcontroladores atuais.  
No entanto, ao entrar em contato com projetos reais, você descobrirá queMuitos lugares gastarão FLASHE alguns projetos consomem muito espaço em Flash. Por exemplo: um algoritmo específico, o carregamento de uma biblioteca de fontes ou até mesmo a inserção de duas imagens em Flash.  
Considere outro exemplo de programação de aplicativos IAP: geralmente, aqueles que fazem um trabalho melhor ao atualizar essa função terão uma área FLASH (área de backup) com aproximadamente o mesmo tamanho do aplicativo. Ou seja: para garantir a segurança, salve o download do programa em uma área de backup e atualize o aplicativo somente após o download ser concluído com sucesso. O objetivo disso é:Isso serve para evitar que o download seja interrompido no meio, causando falha..  
Encontrei uma imagem, mais ou menos assim, que divide a memória FLASH em três áreas (área FLASH do programa de inicialização, área FLASH do aplicativo e área FLASH do programa de backup). Pense nisso.  
 
   
 
 
 

2. Seleção do chip STM32


 
Geralmente, após a apresentação dos requisitos do nosso projeto, escolhemos um microcontrolador (MCU) adequado. A primeira coisa que vem à mente é consultar o [Manual de Seleção]. Além de selecionar os recursos periféricos, também é necessário escolher uma capacidade de memória FLASH adequada. As regras de configuração do produto STM32 são as seguintes:
   
Endereço do manual de seleção: https://www.stmcu.com.cn/upload/selection_Guide.pdf (A conta oficial do WeChat não suporta links externos; copie o URL para abrir)
 
 
 

3. Verifique o tamanho da memória FLASH interna do STM32.


 
Após abordarmos alguns tópicos sobre o FLASH, voltemos aos pontos principais deste artigo:A memória FLASH interna do nosso STM32 pode ser maior do que a indicada no manual de seleção acima..  
Por exemplo: O modelo específico do meu microcontrolador é STM32F103RF. Consultando o manual, vejo que sua capacidade é de 768 KB, mas na verdade ele possui uma capacidade de memória FLASH de 1 MB.  
   
Aqui falarei sobre dois métodos de verificação simples:
1. Verificar por meio de programação  
Em termos simples, isso é feito apagando, escrevendo e lendo o endereço especificado (ou seja, o endereço que excede o tamanho da memória FLASH).  
  FLASH_ApagarSetor FLASH_PalavraPrograma  
  2. Leia os dados da FLASH através de ferramentas.  
Este método é o mais direto e simples. Tomemos como exemplo a ferramenta de download STM32 ST-LINK Utility:
 
   
Os pontos principais estão descritos na imagem:Se o endereço exceder 768 KB, os dados poderão ser lidos.(A imagem acima mostra o que eu li com o microcontrolador STM32F103RF real. O endereço inicial da aplicação é 0x080C0000 e a aplicação está em execução.)
Dito isto, o que eu realmente quero dizer é: existem muitos chips STM32 semelhantes, não apenas o STM32F103RF que mencionei acima. O 103RC tem nominalmente 256 KB, mas na verdade possui mais espaço disponível. Se você constatar que seu espaço de memória FLASH é insuficiente, pode usar o método acima para verificar se há mais espaço disponível.  
  3. Produtos restaurados para serem originais e autênticosEste tipo é o mais comum em certos produtos. É o tipo que parece barato. Se você comprar alguns no varejo, eles serão enviados por transportadora. É provável que sejam chips recondicionados.
 
Se você comprar um chip recondicionado, pode programar uma luz de LED para testá-lo sem problemas. No entanto, ao participar de um projeto, especialmente um que exija mais periféricos e tenha funções mais complexas, seu funcionamento original pode ser comprometido.  
Caso você não tenha sorte, as seguintes situações podem ocorrer:
  • O software trabalhou em regime de horas extras durante vários dias sem apresentar resultados, e a culpa foi atribuída ao hardware;
  • Diversos testes em fios soltos de hardware, substituição de um chip para solucionar o problema;
  • Engenheiros de software e hardware entram em conflito;
  • ······

Portanto, não é surpreendente que existam muitos chips falsificados ou defeituosos no mercado atualmente, incluindo o ARM embarcado, afirmando que "o GD32 também começou a ser inundado por falsificações". Acho que isso deve existir.  
   
                           

3

Identifique produtos recondicionados ou falsificadosPara identificar um STM32/GD32 recondicionado ou falsificado, o procedimento convencional é soldá-lo primeiro na placa de circuito impresso (ou no dispositivo de fixação), e então ligá-lo para verificar se está funcionando normalmente. Se estiver quente, apresentar corrente excessiva ou até mesmo soltar fumaça, tenha cuidado.  
Em seguida, leia as informações do chip, como capacidade da memória Flash, informações do UID, bytes de opção, etc.  
Compartilhando artigos anteriores aqui:Você conhece esses registradores do STM32?  
O método específico de leitura é o seguinte:
 

1 Registro de capacidade Flash


  1. Ao ler o registro  
No "Manual de Referência" do STM32, existe um registrador como o registrador de dados de tamanho da memória Flash (geralmente no final do manual), e o endereço base do registrador está claramente indicado.  
  sugerirDiferentes modelos de chips podem ter endereços de registro diferentes. Por exemplo, o endereço base do F103 é: 0x1FFFF7E0.  
   
É um valor de 16 bits, gravado na fábrica, e só pode ser lido pelo programa. O método de leitura é muito simples e pode ser o seguinte:
  uint16_t Flash_size;   Flash_size = *(uint16_t *)0x1FFFF7E0;  
  2. Leia diretamente através do utilitário STM32 ST-LINK.
 
Conecte o chip através do ST-Link e faça a leitura diretamente para visualizar as informações de capacidade:
   
 

2 Registro UID


Alguém me perguntou antes se era possível criptografar usando o UID do STM32. Isso definitivamente é possível.  
Mas me fez outra pergunta, não quero ler tudo (96 bits),Só é possível ler parte do registo como identificador? As partes lidas serão repetidas?  
Identificador único UID do STM32Aplicável a:
  • Utilizado como número de série.
  • É utilizado como senha. Ao gravar na memória flash, esse identificador único é usado em conjunto com o algoritmo de criptografia e descriptografia do software para melhorar a segurança do código na memória flash.
  • Utilizado para ativar o processo de inicialização com mecanismo de segurança.

O UID do STM32 possui um total de 96 bits (32 x 3). É possível ler apenas uma parte específica dele como um identificador único?  
Essa pergunta, falando estritamente, não é possível. Mas se não formos muito rigorosos, ainda assim é aceitável. Isso porque esse UID é numerado por wafer, lote, etc. Se você comprar o mesmo lote, verá que os números podem ser consecutivos.  
   
 
Já li vários relatórios de placas produzidas anteriormente (os microcontroladores adquiridos são do mesmo lote). Os UIDs dos chips são consecutivos. Se tiver interesse, pode tentar.  
assim,Ao interpretar parte do UID como um identificador, só se pode afirmar que ele não é estrito..
 
 
 

3 Endereço de deslocamento do registrador


Ainda existem muitos iniciantes aprendendo conceitos básicos. Por exemplo, há pessoas que querem programar usando registradores diretamente, mas não sabem o que é um endereço base de registrador e o que é um endereço de deslocamento de registrador.  
  1. Endereço base  
Cada componente e dispositivo integrado possui um endereço base correspondente, determinado pelo fabricante e que não pode ser modificado. Conforme mostrado abaixo:
   
No programa, você encontrará o código correspondente ao acima descrito:
   
  2. Endereço de deslocamento  
O endereço de deslocamento é o deslocamento baseado no endereço base (normalmente acrescido de 4 bytes), como o endereço de deslocamento do temporizador TIM:
   
Da mesma forma, o código correspondente no programa implementa o deslocamento através da estrutura:
   
Com relação ao endereço base e ao endereço de deslocamento, seja na biblioteca periférica padrão ou na biblioteca HAL, eles são implementados pelo método de endereço base + deslocamento mostrado acima.  
Como já mencionado diversas vezes neste artigo, se você deseja compreender o princípio dos registradores ou implementá-los por meio deles, o ideal é consultar as rotinas da "Standard Peripheral Library" (Biblioteca Periférica Padrão). A biblioteca HAL é relativamente complexa de encapsular e não é adequada para o estudo dos registradores de nível mais baixo.  
Verificação adicional, teste de gravação de dados (RAM, Flash), teste de funcionamento básico de vários periféricos, etc.  
   
                           

4

Canais formais recomendadosO preço que se paga por comprar produtos falsificados ou réplicas é muito alto. É aceitável que problemas sejam detectados no estágio inicial de desenvolvimento, mas o receio de que esses problemas surjam após a produção em massa é preocupante.  
O que é ainda mais assustador é a situação em que os produtos são enviados em grandes quantidades e apresentam problemas nas mãos dos clientes devido a chips falsificados.  
Hoje, alguém no grupo de comunicação estava discutindo a situação da venda de batatas fritas em peixe salgado. Eu acho,Você pode comprar batatas fritas só por diversão, mas é melhor ter cautela ao fabricar outros produtos.  
Por exemplo, o STM32 encontrado no Taobao por mais de dez yuans ainda é importado e original. Você acredita?  
   
  Para chips adquiridos por canais regulares, ainda existe uma certa probabilidade de que o problema seja causado pelo próprio chip, quanto mais por uma plataforma como a Xianyu.Já tive problemas antes com o STM32 que comprei de um distribuidor regular e relativamente grande. O técnico de aplicação de campo (FAE) foi à empresa várias vezes, sem conseguir encontrar o problema. Finalmente, peguei o chip original de fábrica de volta, desmontei-o e descobri que o problema era realmente no próprio chip.  
 

Portanto, não compre chips no Taobao ou no Xianyu apenas porque são baratos. Recomenda-se comprar por meio de canais formais. Caso contrário, pode sair caro.


Aviso: Este artigo foi reproduzido de "strongerHuang", que apoia a proteção dos direitos de propriedade intelectual. Por favor, indique a fonte original e o autor da reprodução. Caso haja alguma violação de direitos autorais, entre em contato conosco para que possamos remover o conteúdo.


Número de telefone da empresa: +86-0755-83044319
Fax: +86-0755-83975897
E-mail: 1615456225@qq.com
QQ: 3518641314 Gerente Li

QQ: 332496225 Gerente Qiu

Endereço: Sala 809, Edifício C, Edifício de Tecnologia Zhantao, nº 1079 Avenida Minzhi, Novo Distrito de Longhua, Shenzhen

whatsapp

Service Hotline

tel: +86 755 83044319

WhatsApp

Whatsapp:+8618073002950