Comunidade Nintendo 8bit
Bem vindo!!!

Crie sua conta para participar conosco,
a cada dia adicionaremos mais conteúdo.

Atenciosamente,
FFS Fernando. Smile


Bem vindo ao nosso forum especial, feito para todos os fans deste fantástico console que superou as barreias dos 8bit e ainda salvou a indústria de games após o grande Crash de 1983...
 
Início  FAQ  Registrar-seRegistrar-se  Museu no orkut  Conectar-seConectar-se  Grupo no Facebook  
Já jogou o Duck Tales Remastered? Conheça mais sobre o jogo aqui em nosso fórum...
Participe do Clube NES, uma forma fácil e divertida de jogar com os amigos do fórum.
Você conhece todos os jogos do Nintendo? Aposto que não, veja alguns jogos raros aqui em nosso Fórum. Very Happy
Conectar-se
Nome de usuário:
Senha:
Conexão automática: 
:: Esqueci minha senha
Quem está conectado
2 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 2 Visitantes

Nenhum

O recorde de usuários online foi de 23 em Dom 10 Mar - 16:53
Últimos assuntos

Compartilhe | 
 

 CPU NES

Ir em baixo 
AutorMensagem
filipe prevot
Membro L4: 256 KB
avatar

Energia : 14
Habilidade : 2282
Mensagens : 245
Desde : 17/02/2012
Idade : 39
Local : Rio de Janeiro

MensagemAssunto: CPU NES   Seg 19 Mar - 4:38

CPU

O NES núcleo da CPU é baseado no processador 6502 e roda a cerca de 1,79 MHz (1,66 MHz em um NES PAL). É feito pela Ricoh e carece de modo decimal da MOS6502 do. No NES NTSC, o chip RP2A03 contém a CPU e APU; no NES PAL, a CPU e APU estão contidas dentro do chip RP2A07.

Sinais e freqüências de CPU
A CPU gera o sinal de relógio através da divisão do sinal de relógio mestre.
Taxa NTSC NES / Famicom PAL NES PAL Famiclone
Cor subportadora freqüência f sc (exato) 39375000/11 Hz 4.433.618,75 Hz 4.433.618,75 Hz
Cor subportadora freqüência f sc (aprox.) 3.579545 MHz 4.433619 MHz 4.433619 MHz
Mestre frequência de relógio 6 f sc 21.477272 MHz 26.601712 MHz 26.601712 MHz
Relógio divisor d 12 16 15
Freqüência de clock da CPU 6 f sc / d 1.789773 MHz 1.662607 MHz 1.773448 MHz
Notas

Kevtris confirmou que todos os ilegais 6502 opcodes executar idêntica no 2A03/2A07. Ele chegou tão longe como para integrá-los na BIOS CopyNES.

[Você precisa estar registrado e conectado para ver esta imagem.]

Mapa de memória

Addr Tamanho Dispositivo
$ 0000 $ 0800 2KB RAM interna
$ 0800 $ 0800 Espelhos de US $ 0000 - R $ 07FF
$ 1000 $ 0800
$ 1800 $ 0800
$ 2.000 $ 0008 NES PPU registra
$ 2008 $ 1FF8 Espelhos de US $ 2000 a cada 8 bytes
$ 4000 $ 0018 NES APU e E / S registros
$ 4018 $ FFFF Cartucho PRG-ROM, cartucho PRG RAM, e registros mapper
$ FFFA - NMI vector
$ FFFC - vetor de reset
$ FFFE - IRQ / BRK vector

[Você precisa estar registrado e conectado para ver esta imagem.]

Pin para fora e sinalizar descrição

Pin fora
AD1 - 01 40-5 V
AD2 - 02 39 - OUT0
/ RST - 03 38 - OUT1
A00 - 04 37 - OUT2
A01 - 05 36 - / œ1
A02 - 06 35 - / OE2
A03 - 07 34 - R / W
A04 - 08 33 - NMI
A05 - 09 32 - / IRQ
A06 - 10 31 - M2
A07 - 11 30 - TST (geralmente GND)
A08 - 12 29 - CLK
A09 - 13 28 - D0
A10 - 14 27 - D1
A11 - 15 26 - D2
A12 - 16 25 - D3
A13 - 17 24 - D4
A14 - 18 23 - D5
A15 - 19 22 - D6
GND - 20 21 - D7

Descrição do sinal
Active-Baixo sinais são indicados por um "/".
CLK é o MHz 21,47727 (NTSC) ou 26,6017 MHz. entrada de relógio (PAL). Internamente, o relógio real (φ0) é obtido pela divisão da frequência do relógio de entrada por 12 (NTSC 2A03) ou 16 (PAL 2A07).
AD1 (ondas de ambos os pulsos) e AD2 (triângulo, ruído e DPCM) são os pinos de saída de áudio.
Axx é o barramento de endereços e Dx o barramento de dados.
OUT0-OUT2 são pinos de saída utilizados pelos controladores (bits de saída R $ 4016 trava 0-2). Estes 3 ​​pinos estão ligados às portas de expansão dos pinos 43-45, e OUT0 é adicionalmente utilizado como o "flash" sinal (OUT) em ambas as portas do controlador .
/ Œ1 e / OE2 também ir para as portas de controlador, e cada um permitir a saída de seu controlador respectivo, se houver.
R / W é o sinal de leitura / escrita, que é usado para indicar as operações dos mesmos nomes. Baixa é escrever.
/ NMI e / IRQ são os dois pinos de interrupção. Consulte o manual de 6502 para uma explicação mais detalhada.
M2 pode ser considerado como um "sinais pronto" pin. É uma versão modificada do 6502 da φ2 que permitem ROMs mais lentas.
TST (nome provisório) (pino 30) é especial: normalmente ele é fundamentada no NES, Famicom, PC10/VS. NES e outras placas de arcade da Nintendo (Popeye e Donkey Kong 3). Mas se for puxada de alta, extra registros de diagnóstico para testar o hardware de som são ativados a partir de $ 4018 a $ 401A, e as portas de joystick R $ 4016 e $ 4017 tornou ônibus aberto.

Poder-se estado

Os resultados seguintes são de A (NTSC) dos EUA NES, design de carregamento frontal original, chips CPU RP2A03G, NES-CPU-07 de revisão da placa principal, fabricados em 1988. Os valores de memória são, provavelmente, ligeiramente diferente para cada consola NES individual. Por favor, note que você não deve confiar em o estado de qualquer registos após Power-UP e especialmente não o registo de pilha e WRAM ($ 0000 - $ 07FF).
No power-up
P = $ 34 (IRQ desativado) *
A, X, Y = 0
S = $ FD
Toda a memória interna ($ 0000 - $ 07FF) foi consistentemente definido como $ ff com exceção de alguns bytes, o que provavelmente variam de console para consolar:
0008 $ = $ F7
0009 $ = $ EF
$ $ = 000a DF
$ 000F = $ BF
4.017 $ = $ 00 (quadro irq ativado)
$ 4.015 = $ 00 (todos os canais desabilitado)
$ 4000 - $ 400F = $ 00 (não tenho certeza sobre $ 4010 - $ 4013)
IRQ foi afirmado sobre 1/60 segundos após ligar, por APU
Depois de reset
A, X, Y não foram afectadas
S foi diminuída por 3 (mas nada foi escrito para a pilha)
O que eu bandeira (IRQ desativar) foi definido como true (status ORed com US $ 04)
A memória interna manteve-se inalterada
APU modo em $ 4017 manteve-se inalterada
APU foi silenciado ($ 4015 = 0)

Comportamento sinalizador de status

Os sinalizadores de registar, também chamado estado do processador ou apenas P, é um dos seis registos arquitectónicos na CPU família 6502. É composto por seis registos um-bit (ver sinalizadores de status ); instruções modificar um ou mais bits e deixar outros inalterada.
Instruções que salvar ou restaurar as bandeiras mapeá-los para bits na arquitetura registo 'P' da seguinte forma:
7654 3210
| | | | | |
| | | | | + - C: 1 se última adição ou mudança resultou em uma bolsa de transporte, ou se
| | | | | Subtração passado não resultou em empréstimos
| | | | + - Z: 1 se a última operação resultou em um valor 0
| | | + --- I: nível de prioridade de interrupção
| | | (0: / IRQ e / NMI passar; 1: só / NMI recebe através)
| | + ---- D: 1 a fazer uso ADC e SBC aritmética decimal binário-codificado
| | (Ignorado no segundo fonte 6502 como a do NES)
| + -------- V: 1 se ADC última ou SBC resultou no estouro de assinado,
| Ou D6 da última BIT
+ --------- N: Conjunto para o bit 7 da última operação
A bandeira B

Há seis anos e apenas seis bandeiras no status do processador registar. Apesar do que algumas referências 6502 podem aparecer para reclamar sobre uma primeira leitura, não há nenhuma "bandeira B" na CPU.
Duas interrupções (/ IRQ e / NMI ) e duas instruções (PHP e BRK) empurre as bandeiras para a pilha. Bit 5 é sempre definido como 1 eo bit 4 é 1 se a partir de uma instrução (PHP ou BRK) ou 0 se a partir de uma linha de interrupção que está sendo puxado para baixo (/ IRQ / ou NMI).
Instrução Os bits 5 e 4 Os efeitos secundários após empurrar
PHP 11 Nenhum
BRK 11 Eu é definido como 1
/ IRQ 10 Eu é definido como 1
/ NMI 10 Eu é definido como 1
Duas instruções (PLP e RTI) puxar um byte da pilha e definir todas as bandeiras. Eles ignoram os bits 5 e 4.
A única maneira de um manipulador de IRQ para distinguir / IRQ de BRK é ler as bandeiras da pilha e teste de 4 bits. A lentidão é uma razão pela qual BRK não foi utilizada como um mecanismo de syscall. Em vez disso, ele era mais usado para acionar um mecanismo de correção que pendia para fora da / vector IRQ: um único byte na PROM, UVEPROM, flash, etc seriam forçados a 0, eo manipulador de IRQ iria pegar alguma coisa para fazer em vez baseado em o contador do programa.
Ao contrário dos bits 5 e 4, bit 3 realmente existe em P, mesmo que não afeta a operação da ALU no CPU 2A03 ou 2A07 a forma como ele faz em fichas próprias MOS Technology.

[Você precisa estar registrado e conectado para ver esta imagem.]
Voltar ao Topo Ir em baixo
http://nintendo-8bits.blogspot.com/
 
CPU NES
Voltar ao Topo 
Página 1 de 1

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Comunidade Nintendo 8bit :: Hardware & Software :: CPU-
Ir para: