HOME       UP       PREV       NEXT (Elementary Examples)  

3/3: Behavioural RTL

In `behavioural' expression, a thread, as found in imperative languages such as C and Java, assigns to variables, makes reference to variables already updated and can re-assign new values.

Unlike 'pure RTL', the order of the statements has an effect.

The following behavioural code

        if (k) foo = y;
        bar = !foo;
can be compiled down to the following, unordered `pure RTL':
        foo <= (k) ? y: foo;
        bar <= !((k) ? y: foo);

9: (C) 2008-12, DJ Greaves, University of Cambridge, Computer Laboratory.