Information Technology Reference
In-Depth Information
f1
f0
f1
f0
Add
B_1
Add
B
f1
f0
Sub
B_2
Sub
f1
f0
f1
f0
operation
register
control boundary
Fig. 5. Scheduling operations in the datapath
3
The Module Concept
In this section we will present the semantics domain for Gezel, where the aim is
to make it clear in which way this domain extends the theory of automata. To
this end we introduce the concept a module .
Modules shall constitute the building blocks for systems, and the module
concept is defined to facilitate hierarchical constructions. In terms of Gezel, a
basic module is constructed from a component of a controller and a datapath,
and modules can be combined in parallel using a single assignment program to
describe the combinatorial circuit connecting the ports of the modules.
We will not aim at a semantics for full Gezel. In particular, in Gezel a variety of
shorthand notations are introduced with the consequence that it is dicult to get
a clear semantical understanding of the language. Examples of such constructs
are hardwired controllers, sequencer controllers, and the use-construct. We will
not address these constructs. Furthermore, we will not address a type discipline
(as in Gezel, where a type could be unsigned of length 64). A type discipline is
important, but adding types to our framework will not be dicult.
We suppose that a set V of values is given. V can be thought of as a set of
bit-vectors. We assume that 0
V and that every bit-vector with 0's only is a
representation of 0. Furthermore, we suppose that a set of variables Var is given
comprising input and output ports, signals, and registers. A value assignment σ
is a partial function:
σ : Var
−→
V,
which associates values to a finite subset of the variables. Let VA denote the set
of all value assignments.
Search WWH ::




Custom Search