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.