Outline

25
Design for High-Level Model Based on an Eight Bit Entertainment System Alejandro Lizaola, Ricardo Castro, Gilberto Beltran. Manuel Salim and Alejandro Moreno Departamento de electronica , Systemas e Informatica Instituto Tecnologico y de Estudios Superiores de Occidente Guadalajara, Mexico.

description

- PowerPoint PPT Presentation

Transcript of Outline

Page 1: Outline

Design for High-Level Model Based on an Eight Bit Entertainment System

Alejandro Lizaola, Ricardo Castro, Gilberto Beltran. Manuel Salim and Alejandro Moreno

Departamento de electronica , Systemas e InformaticaInstituto Tecnologico y de Estudios Superiores de Occidente

Guadalajara, Mexico.

Page 2: Outline

Outline

Introduction NES Main Block Description Design Methodology Verification Strategies Results Conclusions

2

Page 3: Outline

Introduction

NES prototype has been developed in order to increase engineering skills on this area.

This one was not verified, formal verification process has not been executed.

Design lifecycle must be complete.

3

Page 4: Outline

…Introduction

A model reference will be developed in a hardware description and verification language.

Design. Implementation. Verification. Validation.

Reverse engineering will help to speed up the knowledge and design of the NES.

4

Page 5: Outline

NES Arquitecture

5

Page 6: Outline

Design Methodology

1. NES functionality understanding.

2. Emulator election.

3. Reference model design.

4. Reference model main blocks implementation.

5. Reference model integration modules.

6

Page 7: Outline

Main Block Description

7

Main Block Proposal:

Page 8: Outline

…Verification Strategies

Reference Model Verification:

8

Page 9: Outline

Verification Plan:

All functional areas as well as monitors and checkers are described through the specification of the console.

Monitor and checkers are used to know the status of :

Memory. Flags. I/O Signals. Variables.

Verification Strategies

9

Page 10: Outline

…Results

Mapper comparison between output files using Soccer Game ROM. 10

Reference Model Emulator

Page 11: Outline

Results

Triangular channel outputs for Soccer game.

11

Emulator

Reference Model

Comparison Results

Page 12: Outline

…Results

Delta Modulation outputs for Soccer game.

12

Emulator

Reference Model

Comparison Results

Page 13: Outline

…Results

Audio buffer outputs for Soccer game.

13

Emulator

Reference Model

Comparison Results

Page 14: Outline

…Results

Scroll results for Soccer game.

Sprites results for Soccer game.14

Emulator

Reference Model

Comparison Results

Comparison Results

Reference Model

Emulator

Page 15: Outline

…Results

Game’s name MapperNumber

Funtionality Comparision

Soccer, Demo Sound, Donkey Kong, Súper Mario Bros 1 0 CorrectContra 2 Correct

Castlevania I, Legend of Zelda, Techno Baseball, Road Race, Megaman I, III

1 Correct

Hudson Island I,II, III 3 CorrectPunch Out 9 Correct

Megaman II 3 IncorrectCastlevania III Japanese version 24 Incorrect

Súper Mario Bros III 5 CorrectNintendo World Cup, Tiny Toons, Mitsufatoru 4 Correct

Dragon Ball Z 16 Incorrect

Result table games. 15

Page 16: Outline

Conclusions

NES functionality, interconnection and architecture was developed.

After several attempt to select an PC emulator, NesCore has been selected .

Reference model was implemented in SystemVerilog in a modular way, adding two none existing modules in the NES prototype.

16

Page 17: Outline

…Conclusions

An automated verification strategy was implemented: Human Factor Reduction. Improve efficiency. Faster results comparison.

The performance of the model behaves as expected due to results comparison.

17

Page 18: Outline

Future Work

Mappers and more expansion chips can be implemented.

Verification´s framework must be implemented.

NES prototype verification can be done.

18

Page 19: Outline

Question & Answers…

Any question ?

Page 20: Outline
Page 21: Outline
Page 22: Outline

Slides Background

Central Processing Unit:

The CPU emulated by the NES is an 8-bit microprocessor produced by Ricoh based on MOS Technology 6502 core. The NTSC version (North America and Japan) of the console use the Ricoh 2A03 (or RP2A03), which operates at 1.78MHz, PAL version (Europe and Australia) use the Ricoh 2A07 (or RP2A07), this is identical to version NTSC with the difference that it works on 1.66MHz.

Page 23: Outline

Slides Background

Audio Processing Unit:

The APU is responsible for generating the game sound. It is implemented in two chips, RP2A03 for NTSC and RP2A07 for PAL. The APU has 5 channels:

1. Square channel, frequency ranges 54 Hz – 28 KHz.

2. Square channel, frequency ranges 54 Hz – 28 KHz.

3. Triangle channel, frequency ranges 27 Hz – 56 KHz.

4. Noise channel, LFSR, two modes and sixteen programmable frequencies.

5. DPCM channel.

Page 24: Outline

Slides Background

MAPPERS:

Mappers are chips designed for videogames developers to use them in NES cartridges.

Mappers are used to access memory beyond the limits of the 64k memory, allowing special effects in the video and sound, such as forcing some interruptions and instructions among other things.

The memory used by the NES is implemented in two blocks, Rom program (PRG-ROM) and Rom Character (CHR-ROM). This includes the memory area where the current code will be executed by the micro as well as the video memory data .

Page 25: Outline

Slides Background

Picture Processing Unit:

The PPU used by the NES was designed by Ricoh. This unit is responsible for transforming the digital information received from the CPU into video signal to display the game on screen. This process is known as image rendering

The PPU contains the following:1. Background render unit. 2. Sprites render unit. 3. Records of entry and

exit.

4. Internal RAM 32B. 5. External RAM 256B.