High Performance Memory Communication Architectures for Coarse-grained Reconfigurable Computing Systems
Ph.D. Thesis
Table of Contents

The MoPL-3 Grammar

The Map-oriented Programming Language 3 (MoPL-3) is a procedural language to describe applications for reconfigurable accelerators based on the presented data sequencing method. In this appendix a revised version of the MoPL-3 grammar (see See [Bec97] or See [Hen97]) is given. For information on the semantics of MoPL refer to See [Rei99], See [ABH93] and See [ABH94].

Program Definition

MoPL Subroutine

Declaration Part

Boundary Declarations

Boundary Declaration

Array Declaration

Scan Window Declarations

Compound Window Declaration

SW Group Name

Window Spec

Window Names

Window Size

rALU Set-up Declarations

rALU Activation

rALU Subnet Name

Top Structure

Structural Part

If Structure

rALU Config

rALU Name

Sub Structure List

Sub Structure

Condition

Set Structure

Do Structure

While Structure

Local Branch Flag

Scan Pattern Declarations

Compound Scan Pattern Decl

Pattern Name

Simple Pattern Decl

rALUsubnet Flag

Scan Statement Declarations

Scan Statement Part

Scan Statement Block

Scan_Pattern_Name

Scan Window Name

Scan Pattern Call

Scan Statement

Array Name

Scan Action Declarations

Scan Action

Pattern Spec

Scan Pattern Sequence

Shortest Step

Transformation

Simple Scan

Stretching

Shearing

LibScanName

Scan Ident

Scan Name

Escape Clause

Condition Clause

Library Scan

StepWidthXY

SizeXY

Expression Declarations

Assignment

Sign

Expression

Simple Expression

Term

Rel Op

Factor

SW Variable

Lexical Declarations

Ident

Letter

Digit

Underscore

Point

Unsigned Real

Number

Scale Factor

FourBitVector

Common Production Rules

Decl-Size

Range

Name-List

Data Type