A link to the future

É possível fazer um modelo de plugins que seja capaz de expandir uma tecnologia para fazer muito mais do que ela foi projetada ?

O Super NES (SNES) é a prova de que quando uma arquitetura é projetada focando a expansibilidade e um alto grau de acoplamento futuro, a mesma ultrapassa os limites para a qual fora concebida.

Além da potência superior a qualquer concorrente da época, essa “potência” poderia ser multiplicada futuramente através de expansões via cartucho.

SNES block diagram

A diferença entre o BUS de cartucho do SNES e seu principal concorrente, o Mega Drive, é que os BUSes internos do SNES eram todos interconectados, possibilitando acesso direto entre os chips internos e externos e com isso vários jogos embutiram diversas tecnologias extras ao SNES através do sistema de cartuchos, como co-processadores matemáticos, DSPs, chips compressores/decompressores de dados e até outros processadores capazes de rodar como um “core” independente, inclusive podendo “interromper” um ao outro.

Bom, parece que o segredo sempre foi a “engenharia” das coisas mesmo. 😉


[]’s
PopolonY2k

Referência na internet

https://en.wikipedia.org/wiki/List_of_Super_NES_enhancement_chips

https://hackaday.com/2015/11/06/winning-the-console-wars-an-in-depth-architectural-study/

Genesis capitulo 1, versículo 1

A SEGA nos anos 80 (Nintendo idem) já lidava com o paralelismo e suas implicações de maneira inteligente, padronizada e principalmente estabelecendo os limites a seus players (fabricantes de jogos), através de uma arquitetura de software e hardware com limites muito bem delineados.

O Mega Drive (Genesis) é um excelente exemplo, até nos dias atuais, de como lidar com os componentes lentos (e muitas vezes sensíveis) em uma cadeia de processamento de um sistema compartilhado. O uso de “brute force”, ou poder de processamento exagerado, nem sempre vai resolver a sua lentidão e entregar o melhor resultado.

Mega Drive (Genesis) Block Diagram

No caso do Mega Drive por exemplo existem 2 CPUs extremamente potentes para cada fim, sendo o Motorola 68000 o processador principal e o Zilog Z80 o sequencer de música. Mesmo com todo esse poder de processamento, tanto o 68000 quanto o Z80, serão inúteis se eles entregarem muito mais processamento do que as pontas finais podem processar, nesse caso o Video Display Processor para o 68000 e o YM2612/SN76489 (som) para o Z80, causando distorções indesejadas.

A solução ? Hummm…vamos deixar esse papo para o próximo post ou nos comentários.

Apenas não se esqueça de que a estrutura que carrega a “internet” é exatamente um Mega Drive…só que gigante. 😉

[]’s
PopolonY2k