ELLA (programming language)


ELLA is a Hardware description language and support toolset. Developed by the Royal Signals and Radar Establishment during the 1980s and 1990s.
Includes tools to perform:
ELLA is a winner of the 1989 Queen's Award for Technological Achievement.

Sample

Sample originally from ftp://ftp.dra.hmg.gb/pub/ella - Public release.
Code for matrix multiplication hardware design verification:

MAC ZIP = -> t:
.

MAC TRANSPOSE = -> t:
matrix.
MAC INNER_PRODUCT
= -> s:
IF n = 1 THEN *vector
ELSE *vector + INNER_PRODUCT vector
FI.
MAC MATRIX_MULT =
-> s:
BEGIN
LET transposed_matrix2 = TRANSPOSE matrix2.
OUTPUT
INNER_PRODUCTZIP
END.
TYPE element = NEW elt/,
product = NEW prd/.
FN PLUS = -> product:
ARITH integer1 + integer2.
FN MULT = -> product:
ARITH integer1 * integer2.
FN MULT_234 = ->
product:
MATRIX_MULT.
FN TEST = -> product:
,
),
m2 =,
,
).
OUTPUT
MULT_234
).
COM test: just displaysignal MOC