Jogos e entretenimento · 2024/2

Nintendo DS

Estudo sobre o Nintendo DS

1. Objetivos

Este trabalho tem por objetivo realizar um estudo aplicado ao dispositivo embarcado Nintendo DS, descrevendo suas características, detalhes de arquitetura e funcionalidades.


2. Seleção do sistema embarcado

O Nintendo DS foi escolhido por ser um dispositivo de mercado amplamente conhecido, com características únicas em termos de hardware e software embarcados.


3. Informações sobre o sistema

3.1 Descrição geral

O Nintendo DS é um console portátil lançado em 2004 pela Nintendo e possuia o objetivo de levar entretenimento móvel aos jogadores da época, concorrendo diretamente com o PlayStation Portable (PSP), da Sony. O nome DS vem de Dual Screen, apresentando em sua composição duas telas, sendo uma sensível ao toque, o que abria ainda mais o leque de possibilidades relacionadas à interações dos usuários com os jogos, como ações de toques e gestos.

Nintendo DS
Figura 1: Nintendo DS

Com aproximadamente 154,02 milhões de dispositibos vendidos, é segundo console mais vendido da história, apresentando características únicas e inovadoras. O dispositivo apresenta design dobrável com a tela inferior sensível ao toque e os tradicionais controles Nintendo, à esquerda botões direcionais em quatro direções e botão de liga/desliga. Já à direita, possui os botões A, B, X e Y, Select e Start, além, de dois gatilhos R e L encontrados na parte traseira do console.

Consoles mais vendidos
Figura 2: Consoles mais vendidos
Fonte: Wikipedia

Apresenta também suporte para conexões de rede via Wi-Fi, possibilitando jogatinas multiplayer online ou locais, leitor de cartuchos próprios e leitor de cartuchos compatíveis com o GameBoy Advance.

3.2 Características específicas

3.2.1 Unidade de Processamento

O dispositivo utiliza de um chip micropocessador CPU NTR desenvolvido em uma parceria da ARM com a Nintendo, possuindo uma arquitetura paralela com a utilização de dois processadores em que o principal é um ARM946E-S e o secundário ARM7TDMI. Diferenciando-se de uma arquitetura paralela convencional, esta é chamada de multiprocessamento assimétrico e não utiliza do método comum de mestre-escravo, mas sim, apresenta dois processadores independentes que realizam operações exclusivas, cada um tendo seu próprio barramento. Sendo assim, utiliza também de uma memória FIFO para realizar a comunicação entre os dois processadores.

Diagrama CPU
Figura 3: Diagrama CPU
  • Tipo: Microprocessador
  • Arquitetura: ARM7 e ARM9
  • Fabricante: ARM Holdings
  • Frequência de Clock: 34 MHz e 67 MHz

3.2.2 Memória

A memória principal do dispositivo, assim como os processadores, também é descentralizada e possui componentes em diferentes locais, como na comunicação entre os dois processadores, para utilização exclusiva do ARM7 e para uso geral.

  • RAM:
    • 32 KB de WRAM (Work RAM) utilizando um barramento de 32 bits: Para armazenar dados rápidos compartilhados entre o ARM7 e o ARM9. Tendo em mente que apenas uma CPU pode acessar o mesmo endereço por vez.

    • 64 KB de WRAM utilizando um barramento de 32 bits: Também para dados rápidos, mas acessível apenas pelo ARM7.

    • 4 MB de PSRAM utilizando um barramento de 16 bits: Um tipo mais lento, disponível para ambas as CPUs e controlado por uma unidade de interface de memória.

Diagrama Memória
Figura 4: Diagrama memória principal
  • ROM/Flash: 36KB ROM para a BIOS e 256KB FLASH para o Firmware.

Agora, é possível observar que o salvamento do progresso dos jogos é realizado diretamente nos cartuchos, que não são mapeados com a memória do console, ou seja, necessita ser inteiro carregado para a memória do console para utilização. Assim apresentandos os componentes abaixo.

  • ROM: 16MB, 32MB, ou 64MB
  • EEPROM/FLASH/FRAM: 0.5KB, 8KB, 64KB, 256KB, ou 512KB
Cartucho de jogos
Figura 5: Cartucho de jogos

3.2.3 Sistema Operacional

O sistema operacional utilizado herda o modelo do console anterior, GameBoy Advanced, consistindo em APIs leves para simplificar operações de I/O e, também, uma interface simples para o usuário acessar configurações e algumas aplicações nativas. É dividido em mais de um chip, podendo ser analisado em três etapas: ponto de entrada, janela de oportunidade e shell interativo. Além de possuir, no mesmo chip, informações de configurações de linguagem, nome de usuário, alarmes e configurações de Wi-Fi, touchscreen e firmware.

  • Ponto de entrada: nesta etapa ocorre a inicialização dos processadores ARM7 e ARM9, em que cada um é bootado pelo seu respectivo chip ROM de BIOS, conectado no barramento. Executando assim operações de verificação de segurança e de presença de cartucho no dispositivo, além de possuir um mecanismo de sincronia pois, o ARM9 inicializa muito mais rápido que o ARM7, se mantendo ocioso até que ambos iniciem, ativando assim sua sincronicidade.

  • Janela de oportunidade: só é possível jogar caso o cartucho seja inserido antes de ligar o console pois, a BIOS do ARM7 possui verificações de cartucho em sua inicialização, copiando o executável do cartucho para a memória WRAM e, posteriormente, o ARM9 copia para a memória principal do aparelho.

  • Shell interativo: nesta etapa, independente da presença de um cartucho, o sistema termina sua inicialização carregando uma tela interativa para o usuário.

3.2.4 Sensores e Atuadores

  • Sensores: tela LCD inferior é sensível ao toque, utilizando a tecnologia resistiva em que, quando pressionada, conecta duas camadas resistivas da tela e registram a entrada.
  • Atuadores: o dispositivo utiliza dois alto-falantes stéreo com o total de 16 canais PCM/ADPCM físicos no hardware.
  • Conexão com a MPU: o subsistema de som do console é ligado apenas ao processador ARM7, assim desafogando a CPU principal, utilizando a comunicação serial em um barramento de 16 canais.

3.2.5 Interfaces de Comunicação com fio

  • É utilizada a interface SPI para acesso aos periféricos embutidos no dispositivos, assim sendo disponibilizados barramentos para o sistema de som, de vídeo e controle da tela sensível ao toque. Além de possuir 4 canais DMA (Direct Memory Access) em cada processador para disponibilizar tranferências de dados mais rápidas entre os componentes.

3.2.6 Interfaces de Comunicação sem fio

  • Wi-Fi: o dispositivo apresenta uma interface de conexão com banda de 2.4GHz, Wireless LAN (WLAN) e protocolo IEEE802.11b.

3.2.7 Unidades de Entrada/Saída (I/O)

  • GPIO: Não há GPIO de uso geral exposto diretamente ao usuário no Nintendo DS. As entradas e saídas são controladas por hardware dedicado e registradores para funcionalidades específicas, como comunicação com cartuchos ou periféricos.
  • ADC/DAC: O DS inclui conversores ADC integrados para suporte à entrada do microfone, que converte sinais analógicos em digitais. O áudio de saída para os alto-falantes ou fones de ouvido é processado por um DAC integrado.
  • PWM: Não foi documentado o uso direto de PWM no DS.

3.2.8 Fonte de Energia e Sistema de Alimentação

  • Tipo: O Nintendo DS utiliza uma bateria recarregável de íons de lítio com especificações padrão de 3.7V e capacidade de 850mAh no modelo original. O Nintendo DS Lite apresenta uma bateria de maior capacidade, com 1000mAh.
  • Gerenciamento de Energia: O Nintendo DS possui um sistema de gerenciamento de energia integrado que permite diferentes modos de operação, como ativo, inativo e suspenso, além de desligar automaticamente o backlight das telas quando fechado para economizar energia. O modelo DS Lite introduziu ajustes de brilho configuráveis, proporcionando um uso mais eficiente da bateria. Um indicador LED informa o status da bateria, indicando se está carregando, carregada ou com nível baixo, e o dispositivo pode ser recarregado por meio de um adaptador de corrente externo com entrada de 5.2V DC.

3.2.9 Firmware e Atualizações

  • Firmware: O firmware do Nintendo DS é projetado para aproveitar ao máximo a arquitetura do hardware, coordenando as diversas funcionalidades e garantindo a compatibilidade entre gerações. Ele também desempenha um papel crucial em medidas de segurança contra modificações não autorizadas. Sua implementação e suas funções não foram divulgadas na internet, o que se sabe é que existem as seguintes versões:
    • iQue DS Firmware (China) (En,Fr,De,Es,It,Zh) (2005-06-09)
    • iQue DS Lite Firmware (China) (En,Fr,De,Es,It,Zh) (2006-04-26)
    • Nintendo DS Firmware (World) (En,Ja,Fr,De,Es,It) (2004-10-05)
    • Nintendo DS Firmware (World) (En,Ja,Fr,De,Es,It) (2004-11-26)
    • Nintendo DS Firmware (World) (En,Ja,Fr,De,Es,It) (2005-02-28)
    • Nintendo DS Firmware (World) (En,Ja,Fr,De,Es,It) (2005-06-06)
    • Nintendo DS Firmware (World) (En,Ja,Fr,De,Es,It) (2005-12-07)
    • Nintendo DS Lite Firmware (Korea) (En,Ja,Fr,De,Es,Ko) (2006-11-09)
    • Nintendo DS Lite Firmware (World) (En,Ja,Fr,De,Es,It) (2006-02-05)
    • Nintendo DS Lite Firmware (World) (En,Ja,Fr,De,Es,It) (2006-03-08)
  • Atualizações OTA: O Nintendo DS, lançado em 2004, não oferece suporte nativo a atualizações OTA

3.2.10 Unidade de Proteção e Segurança

  • O dispositivo possui elementos básicos de segurança para proteger os jogos e o sistema. Um exemplo é o uso de criptografia proprietária nos cartuchos de jogos do Nintendo DS, dificultando a reprodução de conteúdo não autorizado. Além disso, o sistema utiliza firmware que bloqueia métodos de execução de código não autorizado, como homebrews, em versões mais recentes (v4 e superiores). Este firmware verifica a integridade do sistema e impede a execução de jogos ou aplicativos não licenciados.

3.2.11 Armazenamento Externo

  • O dispositivo oferece suporte a cartuchos exclusivos de jogos como meio principal de armazenamento externo. Esses cartuchos vêm em tamanhos variados de memória ROM, como 16MB, 32MB e 64MB, além de usarem memória EEPROM, Flash ou FRAM para salvar dados, com capacidades de 0.5KB a 512KB. Apesar de não oferecer suporte a cartões SD, o slot GBA pode ser utilizado para expansões ou periféricos específicos, como o Rumble Pak e o Expansion Pak (introduz vibração ao jogar e aumenta a memória RAM, respectivamente).

3.2.12 Interface com o Usuário (UI)

  • Displays, botões e sensores: O dispositivo apresenta duas telas de LCD de 256x192 pixels e 3 polegadas sendo a tela inferior sensível ao toque. A tecnologia utilizada para a captura de entradas de toques na tela é chamada de resistiva, em que a tela é composta por 3 camadas finas, uma resistiva, uma de vidro e uma de metal condutor, sendo que a camada resistiva e condutora são separadas por um espaçador. Quando algum ponto é pressionado, as duas camadas encostam e ocorre uma variação no campo elétrico naquele ponto e é enviada a coordenada deste ponto para o SO. Além disso, também apresenta botões direcionais, liga/desliga, Select, Start e dois gatilhos R e L. É interessante ressaltar que o Nintendo DS incluía uma caneta stylus que possibilitava um toque mais preciso na tela inferior, a qual era armazenada na lateral do DS.
Tela resistiva
Figura 6: Tela Resistiva

4. Artigos acadêmicos relacionados

  1. The scientific research potential of virtual worlds:

    • Resumo: O artigo explora como os mundos virtuais podem ser usados como ferramentas de pesquisa científica, destacando sua capacidade de simular interações sociais e comportamentos em um ambiente controlado. Ele sugere que essas plataformas têm potencial para avançar estudos em várias disciplinas, como sociologia e psicologia.
    • Referência: BAINBRIDGE, W. S. The scientific research potential of virtual worlds. Science (New York, N.Y.), v. 317, n. 5837, p. 472–476, 2007.
  2. Mario math with Millennials: The impact of playing the Nintendo DS on student achievement:

    • Resumo: Este estudo analisa o impacto do uso do Nintendo DS como ferramenta educacional no desempenho acadêmico dos estudantes. Ele destaca como jogos voltados para aprendizado podem melhorar habilidades matemáticas e incentivar o engajamento dos alunos.
    • Referência: GELMAN, A. Mario math with Millennials: The impact of playing the Nintendo DS on student achievement. ProQuest LLC 789 East Eisenhower Parkway P.O. Box 1346 Ann Arbor, MI 48106-1346: University of Denver, 2010.
  3. The Nintendo DS platform: A multidisciplinary study:

    • Resumo: O artigo apresenta uma análise multidisciplinar da plataforma Nintendo DS, abordando suas aplicações em diversas áreas, como educação, saúde e entretenimento. Ele demonstra como o console foi adaptado para atender a diferentes propósitos além do jogo, mostrando sua versatilidade.
    • Referência: GREENWOOD, F. The Nintendo DS platform: A multidisciplinary study. n. 2022, p. 227, 2022.
  4. Diminutive Subjects, Design Strategy, and Driving Sales: Preschoolers and the Nintendo DS:

    • Resumo: Este estudo analisa como o Nintendo DS foi projetado para atrair crianças em idade pré-escolar. Ele aborda estratégias de design, experiências de aprendizado e marketing direcionado, destacando como esses fatores impulsionaram as vendas entre esse público.
    • Referência: BRYANT, J. A.; AKERMAN, A.; DRELL, J. Diminutive Subjects, Design Strategy, and Driving Sales: Preschoolers and the Nintendo DS. Disponível em: https://gamestudies.org/1001/articles/bryant_akerman_drell. Acesso em: 5 dez. 2024.
  5. Nintendo® DS projects to learn computer input-output:

    • Resumo: O artigo explora como projetos desenvolvidos para o Nintendo DS podem ser utilizados para ensinar conceitos de entrada e saída de computadores, promovendo aprendizado prático e interdisciplinar em engenharia de computação.
    • Referência: LARRAZA-MENDILUZE, E. et al. Nintendo® DS projects to learn computer input-output. Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education. Anais...New York, NY, USA: ACM, 2012.
  6. Approaches and tools used to teach the computer input/output subsystem: A survey:

    • Resumo: O artigo apresenta uma pesquisa detalhada sobre as abordagens e ferramentas mais eficazes para ensinar subsistemas de entrada e saída de computadores, incluindo o uso do Nintendo DS como ferramenta prática.
    • Referência: LARRAZA-MENDILUZE, E.; GARAY-VITORIA, N. Approaches and tools used to teach the computer input/output subsystem: A survey. IEEE transactions on education, v. 58, n. 1, p. 1–6, 2015.
  7. A design of the u-health monitoring system using a Nintendo DS game machine:

    • Resumo: O estudo propõe o design de um sistema de monitoramento de saúde (u-health) utilizando o Nintendo DS, demonstrando como o console pode ser aplicado em áreas além do entretenimento, como a telemedicina.
    • Referência: LEE, S. et al. A design of the u-health monitoring system using a Nintendo DS game machine. 2009 Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Anais...IEEE, 2009.
  8. The design of the m-health service application using a Nintendo DS game console:

    • Resumo: Este artigo explora o desenvolvimento de um aplicativo de serviços de saúde móvel (m-health) para o Nintendo DS, destacando sua eficiência no monitoramento remoto de pacientes.
    • Referência: LEE, S.; KIM, J.; LEE, M. The design of the m-health service application using a Nintendo DS game console. Telemedicine journal and e-health: the official journal of the American Telemedicine Association, v. 17, n. 2, p. 124–130, 2011.
  9. Nintendo DS: A pedagogical approach to teach Computer Architecture:

    • Resumo: O artigo explora como o Nintendo DS pode ser usado como uma ferramenta pedagógica para ensinar arquitetura de computadores, oferecendo atividades práticas que facilitam o aprendizado técnico.
    • Referência: SANTOFIMIA, M.; MOYA, F. Nintendo DS: A pedagogical approach to teach Computer Architecture. Embedded Systems and Applications, p. 269–273, 2009.
  10. Renegade gaming: Practices surrounding social use of the Nintendo DS handheld gaming system:

    • Resumo: Este estudo examina as práticas sociais em torno do uso do Nintendo DS, incluindo como os jogadores se organizam em comunidades, compartilham experiências e exploram o console de maneiras não convencionais.
    • Referência: SZENTGYORGYI, C.; TERRY, M.; LANK, E. Renegade gaming: Practices surrounding social use of the Nintendo DS handheld gaming system. Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. Anais...New York, NY, USA: ACM, 2008.
  11. Visual GUI System for Game Boy Advance / Nintendo DS:

    • Resumo: O artigo apresenta o desenvolvimento de um sistema GUI visual para o Game Boy Advance e Nintendo DS, facilitando o design e a implementação de interfaces gráficas para jogos e aplicações no console.
    • Referência: TOSUN, S. Visual GUI System for Game Boy Advance / Nintendo DS. School of Information Science, Computer and Electrical Engineering Halmstad University, p. 29, 2009.

5. Produtos relacionados

  1. Nintendo Gameboy Advanced
  2. Playstation Potable (PSP)
  3. SNK NeoGeo Pocket
  4. Nintendo Switch
  5. Steam Deck

Autores

Nome Matrícula
Gabriel Luiz de Souza Gomes 190013354
Rafael Fernandes Amancio 190036940
Rodolfo Cabral Neves 180011472
Continue sua descoberta.Explorar outros projetos ↗