Subsections


5 Processor Generator (ProGe)

Processor Generator (ProGe) produces a synthesizable hardware description of a TTA target processor specified by an architecture definition file (Section 2.2.1) and implementation definition file (Section 2.2.4).

Input: HDB, ADF, IDF

Output: VHDL implementation of the processor

There is a command line client for executing this functionality, but the functionality can also be used in the Processor Designer (Section 4.1). This section is a manual for the command line client.

Processor generation can be customized with plugin modules. The customizable parts are the generation of control unit and the interconnection network.

The CLI-based version of the processor generator is invoked by means of a command line with the following syntax:

generateprocessor <options> target

The sole, mandatory argument target gives the name of the file that contains the input data necessary to generate the target processor. The file can be either a processor configuration file or an architecture definition file. If the file specified is a PCF, then the names of ADF, BEM and IDF are defined in it.

The given PCF may be incomplete; its only mandatory entry is the reference to the ADF that defines the architecture of the target processor. If the file specified is an ADF, or if PCF does not contain BEM and IDF references, then a BEM is generated automatically and the default implementation of every building block that has multiple implementations is used.

The processor architecture must be synthesizable, otherwise an error message is given.


\begin{longtable}[htb]{@{}p{.10\textwidth}@{}p{.20\textwidth}%
@{}p{.65\textwidt...
...y. Even though other options are ignored they must
be valid.
\\
\end{longtable}


1 IC/Decoder Generators

IC/Decoder generators are implemented as external plug-in modules. This enables users to provide customizable instruction decoder and IC implementations without recompiling or modifying the existing code base. One can easily add different plug-ins to experiment with different implementation alternatives, and as easily switch from one to another plug-in. To create a new plug-in, a software module that implements a certain interface must be created, compiled to a shared object file and copied to appropriate directory. Then it can be given as command line parameter to the generator.

1 Default IC Decoder Plugin

The plugin that is selected by default ProDe's Processor Implementation dialog. Parameters that can be passed to default ic decoder plugin are listed below. Note that if bustrace or locktrace is enabled the processor can not be synthesized.


\begin{longtable}[htb]{@{}p{.25\textwidth}@{}p{.65\textwidth}}
\textbf{Plugin pa...
...alue is inherited from bustracestartingcycle
parameter.
\\
\par
\end{longtable}



Footnotes

...$ GCU.$[*]
In the initial version, the only keyword accepted is `vhdl'.
Pekka Jääskeläinen 2018-03-12