The present invention relates to the design of an essentially digital system.
As one example of digital systems, these may perform real-time transformations
on time discrete digitized samples of analogue quantities. An example of such a
system is a digital communication system. The transformations on the data can be
specified in a programming language and executed on a processor such as a programmable
processor or directly on application specific hardware. In accordance with the
present invention the digital system is described as a set of threads in a description
language. Alternative names for a thread are tasks and processes. The set of threads
defines a representation or model of the digital system. In accordance with the
present invention, the representation or model is preferably executable at each
stage of the design independent of the current level of abstraction of that representation
or model. With description language is meant a programming language. In accordance
with the present invention each of the threads has a variable having an assignable
value which represents the "local time" of said thread, i.e. a time associated
only with that thread, which can be used for sequencing the processing of that
thread with respect to other threads. With the word "local" is meant that the time
is an attribute of the thread only. In accordance with the present invention a
means is provided for the designer to assign a delay to each thread or operation
within a thread, this delay representing for instance the processing time for the
respective operation or thread on a processing engine, e.g. a computer. By this
means, not only can the processing of threads be scheduled but also the designer
may assign a value representative of an elapsed time for the processing of a thread
or operation on a processing engine. In addition, the threads may be refined concurrently,
while still keeping their local time so that after the refining process the new
representation of the digital system is executable, i.e. the processing of the
refined threads can be scheduled without divergence from the specification.