XD Ada M68000 Family for OpenVMS Integrity Servers Version 4.0

 

Software Product Description  March 2008                 DDA-1181A

 


Description

XD AdaTM M68000 Family is a cross-development software product originally developed by EDS (now HP Enterprise Services)  and Digital Equipment Corporation (now Hewlett-Packard), which conforms to the full ANSI/MIL-STD-1815A-1983 Ada language. It runs on the Integrity ServersTM series processors under the OpenVMSTM Operating System. XD Ada M68000 Family Version 4.0 is designed for use in embedded systems, generating optimized and relocatable code for targets using the Motorola MC68000, MC68020, MC68030, MC68040, MC68060 and CPU32 microprocessors.

XD Ada is integrated with the OpenVMS Operating System, Hewlett-Packard (HP) AdaTM, the OpenVMS Debugger and HP  DECsetTM tools.  It also includes a graphical user interface providing an extension to the HP Language-Sensitive Editor (LSE). This will allow access to all XD Ada commands from within the DECwindowsTM interface of LSE.

 XD Ada programs can invoke modules written in assembly language and programs written in assembly language can invoke XD Ada modules.

The Ada Language

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 has been tested using Version 1.11 of the Ada Compiler Validation Capability.
  • XD Ada's program library manager that provides support for programming teams through:

o        Program libraries that can be shared by many programmers

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

o        Automatic recompilation of obsolete compilation units

o        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:
    • Ethernet interface[1]
    • 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 HP 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.3 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.

·         A graphical user interface to XD Ada as an extension to the HP Language-Sensitive Editor (LSE) – Allows access to all XD Ada commands from within the DECwindows interface of LSE. Includes options appropriate to each operation and combines logically connected operations.

  • 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 Digital Test ManagerTM   Provides a method for organizing software test and for automating the way tests are run and evaluated
    • HP  LSE/SCA   Language-Sensitive Editor/Source Code Analyser   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
    • DECdocumentTM   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.

Host Software Components

The XD Ada 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.
  • A graphical user interface   Provides an extension to the HP Language-Sensitive Editor (LSE). This  allows access to all XD Ada commands from within the DECwindows interface of LSE.

Target Software Components

The XD Ada 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
    • Mathematics support
  • Target debug kernel   Provides support for loading and online debugging from the host.

Target Software Components – MC68040/60

  • Run-time system   Provides the following:

o        Mathematics support, including software emulation of those floating point operations not directly supported by the MC68040/60

Target Software Components – CPU32

  • Run-time system    In addition the CPU32  family  provides the following:
    • Part word manipulation support

o        Generic Ada package interface to the specialized CPU32 table lookup and interpolation instructions

·         The CPU32/MC68332 provides in addition an extended predefined library  to provide an Ada interface to the on-chip devices of the MC68332 microcontroller:

  • The Time Processor Unit (TPU) The following modes of operation are supported:
    • Discrete Input Output
    • Input Capture/Input Transition Counter
    • Output Compare
    • Pulse-Width Modulation
    • Synchronized Pulse-Width Modulation
    • Period/Pulse-Width Accumulator
  • The System Integration Module (SIM) The following functions of the SIM are supported:
    • System Configuration and Protection
    • Clock Synthesizer
    • External Bus Interface
    • Chip Select
  • The Queued Serial Module (QSM) Support is provided for the Queued Serial Peripheral Interface (QSPI) and the Serial Communications Interface (SCI)

The target software is supplied in source form so that it can be reconfigured for other target configurations based on the M68000 Family of processors. It may be configured to support only those features needed.

The target software is supplied configured for the following hardware configurations:

MC68000 processor based:

·         Motorola MVME117-3FP MPU VMEmodule 32-bit Monoboard Microcomputer

MC68020 processor based:

  • Motorola MVME133XT VMEmodule 32-bit Monoboard Microcomputer
  • Motorola MVME135 VMEmodule 32-bit Monoboard Microcomputer

MC68030 processor based:

  • Motorola MVME147S MPU VMEmodule 32-bit Monoboard Microcomputer

MC68040 processor based:

  • Motorola MVME167 VMEmodule 32-bit Monoboard Microcomputer.
  • DY4 SVME144 single board computer
  • DY4 SVME162 single board computer
  • DY4 DVME164 single board computer

MC68060 processor based:

  • Motorola MVME177 VMEmodule 32-bit Single Microcomputer
  • Radstone PME68-264 Dual processor card

CPU32 processor based:

  • Motorola MC68340 microcontroller using the M68340EVS Evaluation System (EVS)
  • Motorola M68332EVS Evaluation System (EVS)

 

Product Options

The following separately licensable product options are available with XD Ada M68000 Family for OpenVMS Integrity ServersTM Version 4.0 :

·         XD Ada M68000 Family Emulator Support Option for OpenVMS Systems (SPD DDA0611C)

·         XD Ada M68000 Family Multiprocessor Loading and Debugging Option for OpenVMS Systems (SPD DDA0671C)

·         XD Ada M68000 Family Semaphores and Message Passing for OpenVMS Systems (SPD DDA0801C)

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 M68000 Family, 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 M68000 Family, 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 M68000 Family, Assembly Language Reference Manual   Describes how to use the assembly language supplied as part of the XD Ada software.
  • The XD Ada M68000 Family, 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 following manuals contain all the processor specific information referenced from the other documents above

  • The XD Ada M68000 Family, MC68000 Processor-Specifics Manual;
  • The XD Ada M68000 Family, MC68020 Processor-Specifics Manual;
  • The XD Ada M68000 Family, MC68040 Processor-Specifics Manual;
  • The XD Ada M68000 Family, MC68060 Processor-Specifics Manual;
  • The XD Ada M68000 Family, CPU32 Processor-Specifics Manual.

The following manuals contain all the system specific information referenced from the other documents above.

  • The XD Ada MC68000, Motorola MVME117 System Manual;
  • The XD Ada MC68020, Motorola MVME133XT System Manual;
  • The XD Ada MC68020, Motorola MVME135 System Manual;
  • The XD Ada MC68020, Motorola MVME147 System Manual;
  • The XD Ada MC68040, Motorola MVME167 System Manual;
  • The XD Ada MC68040, DY4 SVME144 System Manual;
  • The XD Ada MC68040, DY4 SVME162 System Manual;
  • The XD Ada MC68040, DY4 DVME164 System Manual;
  • The XD Ada MC68060, Motorola MVME177 System Manual;
  • The XD Ada MC68060, Radstone PME68-264 System Manual;
  • The XD Ada CPU32, Motorola M68340EVS System Manual;
  • The XD Ada CPU32, Motorola M68332EVS System Manual;

HOST HARDWARE REQUIREMENTS

Disk Space Requirements (Block Cluster Size = 1):

Disk blocks

Min 1

Variant 2

Full 3

 installation

329400

345300

521700

permanent use

306800

322700

510800

1 XD Ada MC68040 and MVME167 target

2 As above with additional DVME164 target

3 Full XD Ada M68000 Family Product

 

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 M68000 Family for OpenVMS Integrity ServersTM Version 4.0  is supplied configured for the following  targets and associated hardware items:

  • A Motorola MVME117 Microcomputer with MC68000 processor.
  • A Motorola MVME133XT Microcomputer

A Motorola MVME133XTBug Debug Monitor.

  • A Motorola MVME135 Microcomputer

A Motorola MVME135Bug Debug Monitor.

  • An MVME147S Microcomputer

An MVME712M Transition Module

An MVME147Bug Debug Monitor

  • A Motorola MVME167 Microcomputer

A Motorola MVME167Bug Debug Monitor.

  • A DY4 SVME144 single board computer
  • A DY4 SVME162 single board computer
  • A DY4 DVME164 single board computer
  • A Motorola MVME177 VMEmodule 32-bit Single Microcomputer

A Motorola MVME177Bug Debug Monitor.

  • Radstone PME68-264 Dual processor card
  • A Motorola M68340EVS Evaluation System (EVS)[2]
  • A M68332EVS Evaluation System (EVS)2

 

Use of the XD Ada Ethernet interface requires the following:

·         An MVME374 or MVME162-212 Ethernet Interface Module

 

HOST REQUIREMENTS

An Integrity ServerTM -series processor running the OpenVMS Operating System Version 8.3 or later.

OPTIONAL HOST SOFTWARE

  • HP Ada V3.5A
  • HP DECsetTM Version 12.8 for OpenVMS Systems, which includes:
    • Language-Sensitive Editor/Source Code Analyzer V5.1 for OpenVMS
    • Code Management System V4.5 for OpenVMS
    • Digital Test ManagerTM V4.4 for OpenVMS
    • Module Management System V3.8 for OpenVMS

Note: The Language-Sensitive Editor is required for installation and use of  the XD Ada  Graphical User Interface

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

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

 

TM

VMEmodule, MVME177Bug, MVME167Bug, MVME133XTBug, MVME135Bug,  MVME147Bug are trademarks of Motorola Inc.

 

TM

Ethernet is a trademark of Xerox Corporation.

 

Company related details last updated May 2010

 

 


 

 

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



[1] Not for MC68000 or CPU32 targets.

[2] Some versions of the EVS may require upgrading before the MC68881/2 can be used; users wishing to use a coprocessor should contact Motorola for details of any hardware modifications which may be required.