The TASM Language Reference Manual Version 1.1 - Synrc
The TASM Language Reference Manual Version 1.1 - Synrc
The TASM Language Reference Manual Version 1.1 - Synrc
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 1<br />
Introduction<br />
This document serves as the central reference for the syntax and semantics of the Timed<br />
Abstract State Machine (<strong>TASM</strong>) language. <strong>The</strong> <strong>TASM</strong> language is a specification language<br />
used to specify and simulate the behavior of real-time systems. <strong>The</strong> type of<br />
behavior that can be expressed in the <strong>TASM</strong> language includes functional behavior, in<br />
pre-condition/effect style, timing behavior, and resource consumption behavior. <strong>The</strong><br />
<strong>TASM</strong> language is based on the principles of state-transition systems and durative<br />
actions. <strong>The</strong> <strong>TASM</strong> language is an extension of the Abstract State Machine (ASM)<br />
language [5], formerly known as evolving algebra. <strong>The</strong> <strong>TASM</strong> language has been designed<br />
to specify and simulate the behavior of reactive real-time embedded systems.<br />
Reactive systems are a class of systems that operate in an infinite loop, in a sequence<br />
of ”sense-reason-actuate” actions. In reactive systems, the environment is the master of<br />
the interaction, and the computer system must exhibit correct dynamic behavior during<br />
its continuous interaction with the environment. <strong>The</strong> real-time facet of target systems<br />
requires that operational correctness is not limited to functional correctness but must<br />
also include timing correctness. Timing correctness reflects the physical reality that<br />
actions take a finite amount of time to complete and hence a system will take a finite<br />
amount of time to produce a response to an environment stimulus. <strong>The</strong> design and development<br />
of real-time systems must ensure that a response to environmental stimulus<br />
happens in a predictable amount of time (or at least be bounded). <strong>The</strong> embedded facet<br />
of target systems requires that operational correctness is not limited to functional correctness<br />
and timing correctness but must also include resource utilization correctness.<br />
Embedded systems are typically limited in terms of resources (memory, processor, bus<br />
bandwidth, etc.) and being able to predict that resource utilization will fall within certain<br />
bounds is paramount to establishing operational correctness. <strong>The</strong> <strong>TASM</strong> language<br />
provides a language that enables the specification and simulation of system behavior<br />
along the function, time, and resource axes. Incorporating these three criteria in an<br />
integrated language is a key contribution of the <strong>TASM</strong> language. <strong>The</strong> <strong>TASM</strong> language<br />
forms the basis of a specification framework for embedded real-time systems. <strong>The</strong><br />
types of systems targeted by the specification language are those typically found in<br />
process control in the aerospace industry (e.g., avionics) and the automotive industry<br />
(e.g., drive-by-wire electronics).<br />
5