X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fprojects%2Finternship.git;a=blobdiff_plain;f=Report%2FMain%2FContext%2FMontium.tex;fp=Report%2FMain%2FContext%2FMontium.tex;h=1993d66f31c3f67d200554de737a6c62ded4d15c;hp=cd452052d4bb77dc912ac5cd4ec9bc9ce3734a4a;hb=28976641f199e6c3ad3a17aa82cbb87b0e31a9d0;hpb=90643309f86996e21c5b287ab0cfedb04ce020ce diff --git a/Report/Main/Context/Montium.tex b/Report/Main/Context/Montium.tex index cd45205..1993d66 100644 --- a/Report/Main/Context/Montium.tex +++ b/Report/Main/Context/Montium.tex @@ -9,7 +9,7 @@ and DSP engines, that make it both interesting and challenging to program for both application programmers and compiler designers. \begin{figure} - \epsfig{file=Img/MontiumOverview.eps, width=.5\textwidth} + %\epsfig{file=Img/MontiumOverview.eps, width=.5\textwidth} \caption{Overview of the Montium design} \end{figure} @@ -52,13 +52,13 @@ address patterns. This means that the instructions or CRs never contain direct m addresses, only modifications to the current address. Each memory simply reads from its current address and offers the value read to the interconnect (which can then further distribute it to wherever it is needed). Writing works in the -same way (though a memory can only be read or written to in the same cycle). +same way (though a memory can only be read from or written to in the same cycle). \subsubsection{ALU's} The main processing elements of the Montium are its 5 ALU's. Each of them has four (16 bit) inputs, each with a number of input registers. Each ALU contains a number of function units, a multiplier, a few adders and some miscellaneous -logic. Each of the elements in the ALU can be controlled seperately and data can +logic. Each of the elements in the ALU can be controlled separately and data can be routed in different ways by configuration of multiplexers inside the ALU. The ALU has two output ports, without registers. Additionally, there is a connection from each ALU to its neighbour. @@ -96,7 +96,7 @@ in a single cycle, but since they operate sequentially, this severly limits clock speeds. In the new design, the number of ALUs is reduced, but each ALU is subdivided in multiple parallel operating function units. Also, the Montium has only very limited support for control flow, making it hard to program it for -data dependent control and synchronization, which ask for improvements. +data dependent control and synchronization, which asks for improvements. This approach requires computations to be properly pipelined to efficiently use all those function units in parallel, but since data only travels through