XD Ada MIL-STD-1750A for OpenVMS AXP Systems Version 4.0

     

Software Product Description   January 2009     DDA-1021A

 


Description

 

XD Ada™ is a cross-development software product jointly developed by EDS (now HP Enterprise Services) and Digital Equipment Corporation (now Hewlett-Packard), which provides a validated implementation of the full ANSI/MIL-STD-1815A-1983 Ada language. It runs on the AXP™-series processors under the OpenVMS™ Operating System. XD Ada MIL-STD-1750A Version 4.0 for OpenVMS Systems is designed for use in embedded systems, generating optimized and relocatable code for targets that conform to MIL-STD-1750A.

 

XD Ada is integrated with the OpenVMS Operating System, Hewlett-Packard (HP) Ada™, the OpenVMS Debugger and HP DECset™ tools. XD Ada programs can invoke modules written in assembly language and programs written in assembly language can invoke XD Ada modules.

 

Ada is a powerful, general-purpose language that supports many modern programming practices. The language was designed as the result of a competition sponsored by the United States Department of Defense. The purpose of the competition was to define a language suitable for programming embedded computer systems. Among the requirements of the language were features that would reduce software costs by increasing maintainability, evolvability, reliability, and portability.

 

Ada meets these requirements by providing a modular structure for programs, allowing separate compilation of program units, strong typing, exception handling and standard language features that must be supported across implementations. Ada provides a number of other features that make it suitable for a variety of applications including general and computational systems. Because it includes language features that support multi-tasking, Ada is particularly well suited for real-time applications.

 

 

Ada Language Features

 

·         Strong Typing — An object (variable) of given type may take on only those values that are appropriate to that type, and only certain predefined operations may be performed to data of that type. Because type checking is done at compile time, strong typing ensures that any errors associated with incorrect data types are detected at compile time.

 

·         Data Abstraction — Also known as information hiding, data abstraction hides implementation details while providing users with mechanisms for using the implementation. Abstraction allows the user to focus on important characteristics while ignoring underlying details. Ada provides various levels of abstraction through features such as private data types and packages.

 

·         Concurrent Processing — For many applications, it is important that a program be expressed as a number of parallel, rather than serial activities. Most high-order languages provide little or no support for handling such parallel or concurrent activities; they rely on facilities of the host operating system. Ada uses tasks to allow parallel activities to be programmed directly within the language.

 

·         Separate Compilation — Ada’s separate compilation feature allows a programmer to divide a large program into compilation units that may be compiled at different times. When a unit is compiled, the Ada program library manager records information about that unit and other related units. This feature is unlike separate compilation features in other languages, where very little information about separately compiled modules is maintained.

·         Generic Definitions — A generic unit is a template from which specific instances can be made at compile time. In many cases, the logic of an algorithm or a set of operations is independent of the specific type of the values being manipulated. However, in a strongly typed language such as Ada, all types must be defined at compile time. Generic definitions allow the user to define a general algorithm or set of related operations, and then create a specific instance of that algorithm or set of operations for each type to which the algorithm or operations must apply.

 

·         Exception Handling — In many operations, especially embedded computer systems, it is critical that a system be able to recover quickly and efficiently from error conditions. Ada provides the ability to raise and handle exceptions. It includes predefined exceptions and also permits the user to define exceptions. When an exception occurs in an Ada program, normal processing is abandoned and control passes to the exception handler.

 

XD Ada Components and Special System-Related Features:

 

·         XD Ada fully conforms to ANSI/MIL-STD-1815A-1983 (Reference Manual for the Ada Programming Language) and is validated by the Ada Joint Program Office using Version 1.11 of the Ada Compiler Validation Capability.

 

·         XD Ada’s program library manager that provides support for programming teams through:

 

—   Program libraries that can be shared by many programmers

—   Program sublibraries that can be used to isolate, develop and test Ada units in the context of parent program libraries

—   Automatic recompilation of obsolete compilation units

—   The ability to share compiled Ada code either by reference or copy.

 

·         XD Ada toolset which provides for the following:

 

—   Building a program image

—   Loading a program image onto a target

—   Verifying a program image on the target

—   Executing a program image on the target

—   Reformatting an image to an industry-standard format, for example HP/MRI IEEE-695 or that required for an emulator or target PROM

—   High and low level fully symbolic debugging

—   Assembly language development.

 

·         Reconfigurable, modular run-time system with optimized rendezvous performance

 

·         Host-target communications as follows:

 

 

—   RS-232-C serial interface

—   OpenVMS Mailbox interface for non-standard host-target links.

 

·         High-level, fully symbolic debugging capability through the OpenVMS debugger, including support for:

 

—   Mixed Ada and Assembler code

—   Separately compiled units

—   Tasking programs.

 

·         Integration with HP Ada and the OpenVMS debugger - Allows development, testing and debugging of a program on the host using DEC Ada, before using XD Ada to compile the program for the chosen target.

 

·         The XD Ada compiler has the option to specify that the generated code should be the same as that produced by a selected earlier XD Ada version. All XD Ada versions from V1.2 onwards can be selected. This provides an upgrade path for users who want to move to the Integrity Server platform, or from the VAX to the Alpha platform, but need to retain the same code generation as the XD Ada version they are currently using.

 

·         Integration with HP DECset tools — In particular the following tools are useful to the XD Ada developer:

 

—   HP CMS — HP Code Management System — Provides a method for storing files and maintaining a record of changes to them

 

—   HP DTM — HP Test Manager™ — Provides a method for organizing software test and for automating the way tests are run and evaluated

 

—   HP LSE/SCA — Language-Sensitive Editor — Provides a series of language-specific templates to assist in building syntactically correct programs, in addition to allowing editing, compilation and review of errors. The Source Code Analyzer provides cross-referencing and static analysis information about programs

 

—   DECdocument™ — A documentation generation tool that includes support for documentation conforming to U.S. DOD Standard-2167A.

 

·         System-dependent facilities — Different systems vary in such characteristics as the size of storage units, memory size and the smallest and largest integer values supported. XD Ada provides the predefined package SYSTEM to define system-related constants and to represent system-dependent information.

 

·         XD Ada also provides representation clauses, which allow the user to tailor the representation of data to suit a particular system.

 

·         XD Ada provides:

 

—   Length clauses, which specify the amount of storage associated with a type

—   Enumeration representation clauses, which specify the internal codes for the literals of enumeration types

—   Record representation clauses, which specify the layout of a record type, such as the order, position and size of record components

—   Address clauses, which specify required addresses in storage for constants and variables.

 

·         XD Ada provides a number of pragmas (compiler directives) that allow various system-related parameters to be set and changed, and control mixed-language programming.

 

·         XD Ada provides comprehensive diagnostic messages, including automatic syntax error correction, directed at helping the new Ada user.

 

Product Options and Extension

 

The following separately licensable product options are

available with XD Ada MIL-STD-1750A for OpenVMS AXP Systems Version 4.0:

 

·         XD Ada MIL-STD-1750A Emulator Support Option for OpenVMS Systems (SPD DDA–0621C)

·         XD Ada MIL-STD-1750A Semaphores and Message Passing for OpenVMS Systems (SPD DDA–0211E)

 

The following separately licensable product extension is available for XD Ada MIL-STD-1750A for OpenVMS AXP Systems Version 4.0:

 

·         XD Ada MIL-STD-1750A/SIM50A for OpenVMS AXP Systems (SPD DDA–1031A)

 

 

Host Software Components

 

XD Ada MIL-STD-1750A for OpenVMS AXP Systems host software consists of the following:

 

·         Cross-compiler — Generates optimized and relocatable object code from programs written in Ada. Flags the use of implementation-dependent features which result in potentially non-portable code

 

·         Builder — Creates a loadable image from the object code

 

·         Loader — Loads the image onto the target

 

·         Image verification system — Performs checks to verify that an image loaded into target memory is identical to that on the host

 

·         Run command — Starts execution of the image

 

·         Formatter — Reformats the image so that it can be transferred to the target without the loader; HP/MRI IEEE-695 V4.0 format object files can be created

 

·         Debugger — Allows high level, fully symbolic debugging from the host of programs running on the target; also supports low level assembly language debugging when required

 

·         Macro assembler — Translates assembly language into object code

 

·         Librarian — Creates and maintains object code libraries and macro libraries

 

·         Program library manager — Provides the user interface to the cross-compiler and builder

 

·         Library of predefined compilation units — Provides standard units for use in programs

 

·         Run-time system object code library — Provides the support required at run time; only the modules used by a program are included at build time.

 

Target Software Components

 

The XD Ada MIL-STD-1750A for OpenVMS AXP Systems target environment consists of the following:

 

·         Run-time system — Provides the following:

 

—   Predefined language environment

—   Tasking system

—   Interrupt support

—   Input-output support

—   Storage management

—   Exception handling

—   Program initialization and termination

—   Expanded memory support for simple programs in address state 0, and for up to 16 concurrent programs running in separate address states

 

·         Target debug kernel — Provides support for loading and online debugging from the host.

 

The target software is supplied configured for a standard hardware configuration: the Fairchild SBC-50 board using the F9450 microprocessor.

 

The target software is supplied in source form so that it can be reconfigured for other target configurations conforming to MIL-STD-1750A.

 

Documentation

 

Comprehensive online help is provided for XD Ada. The documentation set is distributed in Bookreader, Adobe PDF and HTML formats.

The manuals supplied are as follows:

 

·         The XD Ada MIL-STD-1750A, Installation Guide for OpenVMS Systems — Step-by-step instructions for installing XD Ada.

 

·         The XD Ada Language Reference Manual — Includes the full text of the Reference Manual for the Ada Programming Language together with XD Ada specific supplements.

 

·         XD Ada MIL-STD-1750A, Developing XD Ada Programs on OpenVMS Systems — Describes how to use the XD Ada compiler, program library manager and XD Ada toolset.

 

·         The XD Ada MIL-STD-1750A, Assembly Language Reference Manual — Describes how to use the assembly language supplied as part of the XD Ada software.

 

·         The XD Ada MIL-STD-1750A, Run-Time Reference Manual — Describes the execution of programs on the target, including memory allocation, compiler optimization, interfacing with assembly language and writing interrupt handlers.

 

·         The XD Ada OpenVMS Debugger Manual — Describes how to use the XD Ada OpenVMS Debugger.

 

·         The XD Ada MIL-STD-1750A, Fairchild SBC-50 System Manual — Contains all the system specific information referenced from the other documents above.

 

HOST HARDWARE REQUIREMENTS

 

Disk Space Requirements (Block Cluster Size = 1):

 

Disk blocks required for installation: 75,000

Disk blocks required for permanent use: 70,000

 

These block counts refer to the disk space required on the installation disk. The sizes are approximate; actual sizes may vary depending on the user’s system environment, configuration and software options selected.

 

TARGET REQUIREMENTS

 

XD Ada MIL-STD-1750A for OpenVMS AXP Systems is supplied configured for the following standard target:

 

·         A Fairchild SBC-50 board using the F9450 microprocessor.

 

XD Ada MIL-STD-1750A for OpenVMS AXP Systems can be used with any target conforming to MIL-STD-1750A, provided that the appropriate reconfiguration has been carried out.

 

HOST REQUIREMENTS

An AXP-series processor running the OpenVMS AXP Operating System Version 7.3-2 or later.

 

OPTIONAL HOST SOFTWARE

 

·         HP Ada V3.5A

 

·         HP DECsetTM Version 12.8 for OpenVMS Systems, which includes:

o        Language-Sensitive Editor/Source Code Analyzer V5.1 for OpenVMS

o        Code Management System V4.5 for OpenVMS

o        Digital Test ManagerTM V4.4 for OpenVMS

o        Module Management System V3.8 for OpenVMS

GROWTH CONSIDERATIONS

The minimum hardware/software requirements for any future version of this product may be different from the minimum hardware/software requirements for the current version.

Note: A version update represents a complete distribution media replacement for the previous release of XD AdaTM. All user-developed source modules that comprise an application must be recompiled and rebuilt using only XD Ada software for that version update. Individual components of XD Ada software from the latest version update cannot be used in conjunction with components from a previous version.

 

INSTALLATION

This software can be installed by the customer using the documentation supplied. The option of installation by a Software Specialist is also available; see the contact information below for more details.

 

DISTRIBUTION MEDIUM

CD-ROM.

 

SUPPORT

XD Ada is a fully supported software product. Services available include fault reporting, product updates, installation. For more details please see the contact details below.

 

ORDERING INFORMATION

For information on how to order the product see the contact information below.

 

SOFTWARE LICENSING

This software is furnished under the provisions of a software license.

Licenses for educational institutions are available.

For more information on licensing terms and conditions, see the contact information below.

 

License Management Facility Support

This product supports the OpenVMS License Management Facility.

For more information on the License Management Facility, refer to the OpenVMS Operating System Product Description (SPD 25.01.xx) or the OpenVMS Operating System documentation set.

 

SOFTWARE WARRANTY

Warranty for this product is provided in accordance with the terms and conditions of the license.

The above information is valid at time of release.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

TM                  AXP, DEC, DEC Ada, DECdocument, DECset, DEC Test Manager, Digital, OpenVMS,  VMS and XD Ada are trademarks of Hewlett-Packard Development Company, L.P.

 

 

 

 

 


 

 

 

swep.sales@hp.com;  www.swep-eds.com