Banco de Memória para o Pepe

1. Descrição

Este módulo implementa o banco de memória especialmente desenhado para funcionar com o processador Pepe.

O banco de memória possui um barramento de endereços de 16 bit separados em dois portos de 15 (A1-A15) e 1 bit (A0) respectivamente. Possui ainda um barramento de dados de 16 bit, dois sinais de Read e Write activos a 0, e um sinal para acesso ao byte.

Quando o sinal de acesso ao byte estiver activo o banco de memória só lê um dos dois bytes endereçados pelo endereço A1-A15. Se o bit A0 estiver a 0 apenas o byte de menor peso é acedido sendo os bits do maior peso da palavra indefenidos. Se o bit A0 estiver a 1 apenas o byte de maior peso é acedido sendo os bits de menor peso da palavra indefinidos.

2. Interface gráfica

A interface gráfica das RAMs é comum a todas as memórias (presentemente RAMs e PROMs).

O objectivo da  interface gráfica das memória é permitir a visualização e alteração do conteúdo da memória.

A janela de dump hexadecimal da memória (Figura 2) possui duas zonas:

Figura 2. Dump hexadecimal de uma memória.

Para carregar informações na memória deve-se usar o comando File->Load. Este comando carrega ficheiros com a extensão ".dat" que contenham texto ASCII em que cada linha tem o seguinte formato:

    endereço conteúdo

em que o endereço e o conteúdo são números hexadecimais (sem prefixos ou sufixos, i.e. sem '0x' no início ou 'h' no fim).

Para alterar uma posição de memória basta posicionar o cursor no local respectivo e escrever o novo valor.

2.1.2 Breakpoints

Para além de permitir a leitura e alteração do conteúdo da memória esta janela permite ainda colocar breakpoints quando uma posição de memória atingir determinado valor. Para tal é necessário clicar com o botão da direita do rato na posição respectiva de modo a aparecer a janela da Figura 3.

Figura 3. Colocação de um breakpoint na posição 51h da memória.