Components/IP/NanoBlaze

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
{{TOC right}}
 
{{TOC right}}
 +
 +
= Component =
 +
 
[[File:nanoBlaze.png|250px|thumb|right]]
 
[[File:nanoBlaze.png|250px|thumb|right]]
 
The '''NanoBlaze''' is a grow-up of the [http://www.xilinx.com/picoblaze.html Xilinx Picoblaze] micro controller, hence the name.
 
The '''NanoBlaze''' is a grow-up of the [http://www.xilinx.com/picoblaze.html Xilinx Picoblaze] micro controller, hence the name.
Line 10: Line 13:
 
*<code>scratchPadAddressBitNb</code> allows to manage the size of the scratchpad
 
*<code>scratchPadAddressBitNb</code> allows to manage the size of the scratchpad
 
*<code>addressBitNb</code> defines the size of the I/O space
 
*<code>addressBitNb</code> defines the size of the I/O space
 +
 +
With <code>scratchPadAddressBitNb = 0</code>, the scratchpad is not implemented.
 +
 +
= Assembler =
  
 
It has an assembler written in [http://www.perl.org PERL] which runs on any operating system.
 
It has an assembler written in [http://www.perl.org PERL] which runs on any operating system.
 
With this, the assembler can easily be integrated in the [[Tools/Mentor_HDL_Designer|Mentor HDL Designer]] environment.
 
With this, the assembler can easily be integrated in the [[Tools/Mentor_HDL_Designer|Mentor HDL Designer]] environment.
 +
 +
The processor includes a disassembler which writes the current instruction in the form of a string.
 +
This can be displayed in the simulator.
 +
The corresponding VHDL code is commented out for synthesis via the <code>-- pragma translate_off</code> clause.
 +
 +
= Sources =
  
 
This IP is found in the HEVs EDA Repository: svn: https://repos.hevs.ch/svn/eda/
 
This IP is found in the HEVs EDA Repository: svn: https://repos.hevs.ch/svn/eda/

Revision as of 10:42, 8 April 2015

Contents

Component

NanoBlaze.png

The NanoBlaze is a grow-up of the Xilinx Picoblaze micro controller, hence the name. Various sizes can be defined with the help of generic parameters:

  • registerBitNb defines the data bit width
  • programCounterBitNb allows to cope with different program lengths
  • stackPointerBitNb adapts to various nesting depths of the subroutines
  • registerBitNb defines the data bit width
  • registerAddressBitNb allows to choose the number of internal registers
  • scratchPadAddressBitNb allows to manage the size of the scratchpad
  • addressBitNb defines the size of the I/O space

With scratchPadAddressBitNb = 0, the scratchpad is not implemented.

Assembler

It has an assembler written in PERL which runs on any operating system. With this, the assembler can easily be integrated in the Mentor HDL Designer environment.

The processor includes a disassembler which writes the current instruction in the form of a string. This can be displayed in the simulator. The corresponding VHDL code is commented out for synthesis via the -- pragma translate_off clause.

Sources

This IP is found in the HEVs EDA Repository: svn: https://repos.hevs.ch/svn/eda/

Personal tools
Namespaces
Variants
Actions
Navigation
Browse
Toolbox