Class Assembler

java.lang.Object
  extended by Assembler
Direct Known Subclasses:
Assembler1, Assembler2, Assembler3

public abstract class Assembler
extends java.lang.Object

Base PicoBlaze assembler.


Field Summary
 int address_width
          Address representation width.
 int data_width
          Data (opcode) representation width.
 Environment environment
          Program environment.
 java.lang.String[] listing
          Program listing.
 int[] program
          Assembled program.
 
Constructor Summary
Assembler(int n, int a, int d)
          Create a new assembler.
 
Method Summary
abstract  int code(java.lang.String n, java.util.Vector a)
          Assemble instruction.
abstract  java.lang.String toBlockRAM(java.lang.String n)
          Generate Verilog ROM file.
 java.lang.String toString()
          Generate Verilog readmemh-compatible listing file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

program

public int[] program
Assembled program.


listing

public java.lang.String[] listing
Program listing.


environment

public Environment environment
Program environment.


address_width

public int address_width
Address representation width.


data_width

public int data_width
Data (opcode) representation width.

Constructor Detail

Assembler

public Assembler(int n,
                 int a,
                 int d)
Create a new assembler.

Parameters:
n - program size
a - address representation width
d - data representation width
Method Detail

code

public abstract int code(java.lang.String n,
                         java.util.Vector a)
Assemble instruction.

Parameters:
n - instruction name
a - literal arguments

toString

public java.lang.String toString()
Generate Verilog readmemh-compatible listing file.

Overrides:
toString in class java.lang.Object

toBlockRAM

public abstract java.lang.String toBlockRAM(java.lang.String n)
Generate Verilog ROM file.

Parameters:
n - Verilog module name
Returns:
Verilog module BlockRAM declaration