Meio Bit » Engenharia » NASA e o processador espacial de US$ 50 milhões

NASA e o processador espacial de US$ 50 milhões

NASA solicita nova geração de processadores para missões espaciais, mais eficientes e mais rápidos, e vai enfim sair da casa dos MHz

1 ano e meio atrás

Às vezes, a NASA acaba sendo vítima de seu próprio excesso de zelo e conservadorismo. Por mais de 30 anos, a agência espacial defendeu que o espaço não era lugar para processadores e componentes "comuns", e os equipados em sondas e robôs de exploração precisavam atender uma série de requisitos, como proteções contra radiação, e nisso, potência não é a prioridade.

A plataforma RAD750, um computador de placa única desenvolvido pela BAE Systems nos anos 1990, é a espinha dorsal de todo o programa espacial da agência desde então, ainda que seus processadores continuem na casa dos megahertzes. Contudo, as coisas mudaram quando a Qualcomm demonstrou haver lugar no espaço para chips comuns, encontrados em qualquer celular, sendo muito mais poderosos.

Equipado com um Snapdragon 801 da Qualcomm, o Ingenuity deixou a ultraconservadora NASA, que não acreditava que o SoC resistiria ao espaço, com cara de tacho (Crédito: Divulgação/NASA)

Equipado com um Snapdragon 801 da Qualcomm, o Ingenuity deixou a ultraconservadora NASA, que não acreditava que o SoC resistiria ao espaço, com cara de tacho (Crédito: Divulgação/NASA)

RAD750: fazendo muito com MUITO pouco

Primeiro, justiça seja feita, o RAD750 é uma pequena maravilha, plenamente capaz de fazer tudo o que lhe é atribuído fazer. Aliado a sistemas operacionais de tempo-real (RTOS) como o VxWorks, ele provê respostas rápidas a qualquer tipo de emergência que sondas e robôs tenham que lidar, já que no espaço, o delay de vários minutos na comunicação inviabiliza o controle remoto em diversas situações.

Vejamos o satélite espacial Solar Orbiter, que embora seja da ESA e não da NASA, também usa um RTOS, no caso o RTEMS, de código aberto. Sua taxa de tolerância de um ângulo errado é de apenas 2,3 graus até um máximo de 6,5º, por no máximo 50 segundos. Passe disso e ele, que está 10 milhões de km mais próximo do Sol do que Mercúrio, frita. Literalmente.

Um RTOS traz descrito no código o tempo de resposta para cada situação que precise resolver, desde análises do solo e captação de imagens, à correção de bugs. Diferente do Windows, macOS, Linux, Android, iOS ou qualquer outro SO comum, um RTOS não pode criar lixo desnecessário via cache, e não pode trabalhar com janelas de tempo subjetivas.

Além disso, um RTOS só tolera falhas catastróficas, algo similar à tela azul do Windows, em períodos enormes e dependendo da situação. O tempo de tolerância entre crashes da Curiosity, por exemplo, é de 15 anos; já a Solar Orbiter nem sequer pode se dar ao luxo de falhar, ou vira torrada.

Do outro lado da moeda, há o hardware. A NASA usa desde 2001 o RAD750, de arquitetura PowerPC (yeah baby, RISC no espaço) e um cache máximo de 64 kB, divididos na metade entre dados e instruções, mas também suporta a adição de L2 para aumentar o desempenho.

Clock? Entre 100 e 200 MHz. Litografia, entre 250 e 150 nanômetros.

 

Sistema e processador RAD750, usado pela NASA até hoje. O James Webb tem um desses. Clock máximo? 118 MHz (Crédito: Reprodução/NASA)

Sistema e processador RAD750, usado pela NASA até hoje. O James Webb tem um desses. Clock máximo? 118 MHz (Crédito: Reprodução/NASA)

O grande mérito por trás do RAD750, está na exigência da NASA de que o cérebro computacional de seus robôs e sondas fosse protegido contra radiação ionizante, desde a de partículas quanto a eletromagnética, especialmente em ambientes como a órbita baixa da Terra. Equipamentos para o espaço profundo, ou outros planetas, satélites, cometas, asteroides do Sistema Solar e etc, também usariam esse kit protegido.

O kit da Curiosity, que conta com um clock máximo de 133 MHz, consegue executar 400 MIPS (milhões de instruções por segundo), mais do que suficiente para dar conta das funções a ela atribuídas. Lembre-se, nem o rover, nem o Telescópio Espacial James Webb, cujo clock máximo é de 118 MHz, foram projetados para rodar Crysis, ou acessar o YouTube.

Ainda assim, a NASA caiu do cavalo quando o helicóptero Ingenuity, enviado a Marte no kit da Perseverance, entrou em ação.

NASA vencida pela ingenuidade

Desenvolvido pela NASA JPL em conjunto com a Lockheed Martin, o Ingenuity era quase uma (perdoem o trocadinho) curiosidade. Primeiro, ele roda Linux, não VxWorks, e segundo, é equipado com um SoC Snapdragon 801 da Qualcomm, sem nenhum preparo adicional, além da blindagem anti-radiação padrão do conjunto.

Ironicamente, o Ingenuity voa graças ao processador mais potente já enviado para o espaço, com um clock de 2,26 GHz. É o mesmo chip que equipou uma série de smartphones de ponta de meados dos anos 2010, como o Samsung Galaxy S5, o Motorola Moto X (2014), o LG G3, e o Sony Xperia Z3.

Claro, NASA sendo a NASA e como o Ingenuity não precisava de muita coisa, o controle de voo foi terceirizado para microcontroladores separados, que usam apenas 500 Hz. Não GHz, nem MHz. Hertz mesmo. A CPU principal fica encarregada do algoritmo de navegação, e também de captar imagens durante o voo, com a câmera de 13 MP acoplada.

Os resultados do primeiro objeto construído pelo Homem a voar em solo alienígena são impressionantes, e surpreenderam até a cúpula da NASA. Até então, ninguém acreditava que um sistema não-RTOS, rodando em um hardware não preparado para o espaço desde a prancheta, tivesse um desempenho tão bom.

Agora, os bons resultados do Ingenuity convenceram a NASA de que, talvez, seja hora de atualizar seus processadores.

Em 2021, a agência abriu licitação para o desenvolvimento da próxima geração de chips para suas sondas e robôs de exploração, vencida agora pela Microchip Technology, empresa do Arizona especializada em microcontroladores PIC, SRAM, EEPROMs e outros componentes. O projeto, de US$ 50 milhões, prevê a entrega do chip em 2025.

Seu projeto de processador para "computação espacial de alto desempenho", ou HPSC na sigla em inglês, prevê suporte a conectividade, IA e aprendizado de máquina, além de 100 vezes mais velocidade que o RAD750, mas isso é um detalhe.

A companhia garante o padrão de proteção contra radiação, segurança de código e tolerância extrema contra bugs, fatores indispensáveis, mas também deverá atender uma exigência bem específica da NASA: máxima eficiência em múltiplos cenários.

Por exemplo, um processador empregado para um rover, como a Curiosity e a Perseverance, usará o máximo de sua capacidade computacional para calcular a sequência de pouso, mas todo esse potencial será subutilizado pelas demais rotinas.

Resumindo, mesmo que opere na casa dos MHz, o RAD750 é mais potente (sério!) do que precisa ser, excluindo uma situação de uso único. Ainda assim, ele continua operando no talo sem necessidade, e consumindo mais energia do que o necessário.

A próxima geração de chips HSPC deverá ter eficiência escalonável, conseguindo empregar poder computacional conforme as tarefas a serem desempenhadas, se refletindo em um menor consumo energético a longo prazo.

No mais, processadores mais rápidos e mais eficientes permitirão que a NASA, ou outras agências e parceiros, desenvolvam projetos mais ambiciosos, visto que a barra das limitações com base nas capacidades dos chips vai subir um pouquinho.

Fonte: NASA JPL

Leia mais sobre: , , .

relacionados


Comentários