- 84
-DN590 TURBO Q p o llO
Description
The DN590 TURBO is A p o llo 's high-end color graphics w orkstation designed specifically fo r co m p u te intensive applications th at require shaded 3-D graphics. T he DN590 TURBO com bines the dedicated co m p u tin g p o w e r of the MC68020 m icroprocessor and the MC68881 floating point coprocessor w ith a series o f highly specialized graphics processors. T he result is a u niq u e ly w ell balanced graphics w o rk
station fu lly integrated w ith in Apollo's fam ily o f w orkstations.
T h e DN590 TURBO offers tru ly spectacular tru e color graphics. A d ed i
cated vid eo m e m o ry offers 24 color planes and the ab ility to d isplay over 16.7 m illio n colors sim u ltan eo u s ly in a w in d o w . For high speed 3-D rendering the DN590 TURBO offers both d ouble buffering and Z-bu fferin g operations.
The optio nal 3DGA” graphics accelera
to r not o nly transform s an d clips 3-D floating point coordinates, b ut p e r-’
fo rm s lighting m o d el calculations at ex tre m e ly fast rates. In ad d itio n , the DN590 TURBO has virtu al m e m o ry graphics th at lets users h an d le the largest and m o st c o m p lex graphics ap p lication w ith o u t d isplay list size lim itations.
As a fu lly co m p atib le m e m b e r of Apollo's fa m ily o f w orkstation s, the DN590 TURBO lets users en joy th e high pro du ctivity o f d istributed processing afforded by the D o m ain co m p u tin g en viro n m e n t.
Features
■ Double buffering of pseudo color images, with full Z-buffer support
■ A dvanced lighting m o d el including:
up to 16 light sources, 24 plane RBG support, colored light sources, atte n u ation o f light sources, s p o tlights w it h , attenu atio n, specularity, highlights, and surface p ro perties
D isplay. a 16.7 million colors displayed, from
a palette of 16.7 million colors; 24 color bit-planes planes
b Over 130,0003-D floating point transformed, clip-checked vectors per second w ith 3DGA
ra-Extremely fast, smooth shaded Z-buffered polygons
b 19-inch non-glare m onitor; high- resolution 1280 x 1024, bit-m apped display;
b Integrated MC68020 processor and MC68881 floating point coprocessor w ith 16K byte physical cache m em o ry n Up to 56 concurrent processes; 2G
bytes virtual address space per process
b Optional high-perform ance floating point coprocessor accelerator ( FPX") n 5V4 inch 190M byte form atted and dual
190M byte W inchester disk options;
'U inch 60M byte streaming tape drive option
o Four-slot IEEE 796 MULTIBUS adaptor options
D N 590TU f!BO 's B a la n c e d A r c h it e c t u r e
V id e o
O u tp u t
Benefits
b High performance compute-intensive capacity coupled with tightly inte
grated graphics provide a well bal
anced workstation environm ent a Integrated graphics processors yield
highest levels of interactive perfor
mance in a sophisticated 3-D m u ltiw in dow environm ent
b Double buffering provides smooth dynam ic motion of w irefram e and solid geometric objects
n Sophisticated lighting rnodel for fast realistic geom etry at render tim e
° 3DGA module provides hardw are sup
port for lighting model calculations b Virtual m em ory graphics allow s rapid
displav of objects of almost unlim ited size without the limitations of dedi
cated display list m em ory
n M ultiple light sources perm it greater control of com pufer synthesized renderings '
■ Compatible with entire A pollo product fam ily
Advanced Functionality
The DN590 TURBO’S com putational power, and high resolution graphics are displayed in a true m ultiw indow , multitasking environment. Apollo's
low -profile, detachable keyboard comes w ith p rogram m able keypad and optional mouse.
Based on the powerful MC68020 microprocessor and the MC6888! float
ing point coprocessor, the DN590 TURBO also features an optional high perform ance FPX floating point accel- . erator. And the DN590 TURBO features 2 gigabytes of virtual address space per process so that users can develop and run extrem ely large programs.
Apollo supports the tw o most popular UNIX* operating systems:
Berkeley 4.2 and System V Release 2.
Users can run applications in either operating system or both sim ultane
ously. Users can enjoy all the benefits of the UNIX standards running in a distributed processing environm ent.
The AEGlS“ operating system pro
vides a true m ultiw indow , m ultitask
ing environm ent and a distributed file system that lets users transparently share data and resources. Any of these operating systems can run in different w indow s simultaneously, let
ting users easily w ork in the operating system they select.
In addition the DN590TURBO takes full advantage of Apoflo's Public Dom ain" networking, linking w ork
station networks to a host of other
com puting environm ents such as PC, m a in fra m e ,s u p erm in is an d a host of UNIX-based systems.
Advanced System Architecture The DN590 TURBO's CPU features a com bination o f som e of the industry's most advanced technologies.
The high-speed, 16K byte cache m em o ry is fully integrated into the pipelined CPU architecture. This physi
cal cache m e m o ry lets program s access instructions and data in a no
w ait state im plem entation.
The DN590TURBO also provides access to up to 16M bytes of high
speed ECC memory. This ECC m em o ry features a 120-nanosecond cycle tim e DRAMs, and provides single-bit error detect-and-correct and double-bit detect.
The DN590 features m odular design and construction. Three int grated m o d u le s - Processor/Graphics, Mass Storage, and MULTIBUS"
m o d u le s - fit neatly into one system unit. M odules feature separate fans and pow er supplies that lend th e m selves to high reliability and makes servicing easy.
- 86
-G raphics S u bsystem
T he graphics section is th e key to th e DN590 TURBO'S virtu al m e m o ry g ra p h ics capabilities. It includes a d isplay processor, an d integral im a g e d isplay
Hierarchical Interactive G rap h ics S ys
tem (PHIGS) constructs. A n d th e 3DGA can transform and clip 3-D, IEEE 32-bit floating point co o rdinates at rates up to 130,000 vectors per second.
T he d isplay processor su pports th e DN590's 19-inch, 1280 x 1024 color d isplay th at features b oth tilt and sw ivel, and a non -glare filte r th at e lim i
nates th e need fo r special lighting.
T he d isplay processor co n tain s m u lti subsystem p erform s basic functions such as bit-blts, raster o p e ratio n , d raw in g and fill o peratio ns. A nd it p er
fo rm s all h igh-level fu nctio n s such as co m p lex lig h t source calculations, G ouraud shading, 3-D m a trix tra n s
fo rm s, and clipping.
T he DN590 TURBO's co m b in a tio n of fu nctio n ality and p erfo rm an ce m akes it ideally suited fo r a w id e range o f graphics intense ap p lications such as 3-D solids m o d e lin g , w ir e fra m e and im a g e processing. V ector gen eration is at a rate in excess o f 16M pixels/second. R ectang ular areas can be filled at a rate in excess o f 125M pixels/second. Block transfers (bit- blts) are p erfo rm ed at a rate o f 22M
The.display frame buffer memory is designed to allow advanced opera
tions such as double buffering, and Z-buffering to operate at very high speeds. In addition the 3DGA aids in this process by performing the appro
priate transformations. The 3DGA
dedicated graphics processor is a multistage processing system that handles all the complex geometry fea
tures required for real-time graphics operations. Through the use of a spe
cial VLSI processor and an on-board
M M U , the 3DGA can actually process complex objects directly from Graph
ics Metafiles resident in virtual m e m ory. The 3DGA provides a significant technology breakthrough by bringing virtual memory techniques to graph
ics processing. This allows even very large objects to be rapidly displayed without regard for any limited display list memory.
Once the Metafile is read, the
3DGA traverses the hierarchical struc
tures as required by the selected view, while simultaneously performing bounding box trivial rejection. 3DGA
then interprets and executes the com
mands, attributes, and control infor
mation that represent the geometry of the stored object. The 3DGA trans
forms the three-dimensional floating point coordinates in orthographic or perspective projection using special
VLSI flo atin g p oin t processors and p erfo rm s h ard w are clipping prior to o u tp u t o f the resulting screen space p rim itives to th e display processor fo r d raw in g .
Advanced Lighting Model
The DN590 TURBO features th e m ost advanced lighting m odel availab le on an y w orkstation . M u ltip le light sources are incorporated to p erm it g rea ter control o f c o m p u ter synthe
■ Cone of influence (Spotlights)
In ad d itio n th e DN590 TURBO's lighting m o d el allow s object surfaces to h ave distinct p ro perties such as specular hue, base hue, and reflection coefficients, to d efin e and sim u late th e
- 87
-Processor Subsystem
The DN590TURBO's processor section contains the 32-bit VLSI MC68020 p ro cessor that includes a full 32-bit CPU w ith 16 registers and a 256 byte instruction cache. T he MC68020 fe a tures 3-stage pipeline processing that allow s concurrent execution o f up to three instru ction s.T he processor m o d ule lets the DN590 su p po rt up to 56 concurrent processes w ith up to 2G bytes of address space per process.
The DN590 TURBO includes the MC68881 floating point coprocessor as standard eq u ip m ent. T he MC68881 p erform s floating point operations according to the IEEE 754 standard for binary floating point arithm etic. It fea
tures an advanced CPU, eight 80-bit registers, th ree 32-bit control registers, and a coprocessor interface to the MC68020.
The CPU directly addresses mem
ory through an onboard Memory Management Unit (M M U). The MMU is designed to support demand paging requirements from the disk or access to or from the high performance Domain network. This feature allows the Domain network to provide trans
parent file access around the network, greatly enhancing the sharing of infor
mation and graphical data.
The DN590 TURBO is available in
8M and 16M byte ECC memory configu
rations. Also available is an optional high-performance floating point ac
celerator (FPX) that transparently increases performance by a factor of up to six depending on operation over the MC68881.
Mass Storage Module
The DN590 TURBO’S 5’« inch 190M byte, dual 190M byte W inchester disks, and Va inch 60M byte stream ing cartridge tape drive provides local mass storage and convenient, high-speed backup.
A single co n tro ller supports both the tape and disk units and uses industry standard interfaces to allo w th e easy integration o f larger capacity devices as th ey becom e available. The Mass . S torage M o d u le uses an 8088 m icro processor, and contains a VME interface and DMA control logic, a b attery-backed clock/calendar device, and a separate p ow er supply and fan.
Expar. jio n M o d u le
T h e DN590 TURBO's o p tio n expansion m o d u le includes a 4-slot MULTIBUS p eripheral adaptor, p o w e r supply, and fans. A p o ilo provides a va riety o f p eripherals for the MULTIBUS adap to r;
in ad d itio n, users can add devices as ap p ro priate fo r th eir applications.
Apollo's GPIO so ftw are lets application p ro g ram m ers w rite drivers in high level languages fo r MULTIBUS devices.
FPX O ptio n FPX instruction set can increase p er
fo rm ance by as m uch as 2 to 6 tim es in floating point intensive applications such as sim u lation , finite e le m en t analysis and m o d elin g .
T he FPX option is fu lly object co d e-co m p atib le w ith th e MC68881, and transparently runs p rogram s co m p iled for the MC68881. As a result, reco m p iling of ap p lications is not required before users and developers
can take a d va n ta g e of th e FPX's high p erfo rm an ce levels.
Domain Graphics Resources Apollo offers application program
mers the most comprehensive set of integrated graphics tools in the in
dustry today. The Domain Graphic Resources (DGR’") provide a range of complementary products that form the foundation needed to develop and execute graphics based applications.
DGR software can offload routine graphics tasks and simplify the appli
cation programming process In this way, the Domain Graphics Resources speeds the development cycle and optimizes application performance.
DGR products address four functional areas; User Environment, Specialized Program Interfaces, Industry Standard Program Interfaces, and Graphics Ter
minal Emulation.
The Toolkit Solution
Apollo's graphics toolkit reduces the software development effort there
fore allowing the solution to be brought to market quickly.
Of course, these sophisticated graphics tools can run on any Apollo workstation without modification.
- 88
I
au to m atically taking ad van tag e o f the
■ specific features and fu nctio n ality th at each system offers.
All of th e rich h ard w are-b ased fu nctio n ality provided by the high end w orkstations is em u la te d by s o ftw are on the low er-cost fam ily o f w o rk s ta tions. This provides users w ith total graphics integration and a cost- effective alternative fo r expensive application and pro gram d eve lo p m e n t efforts.
DN590 TURBO H a rd w a re Features
■ H ig h-p erform an ce, no-w ait state, pipelined 32-bit'vLSI CPU design w ith 16K byte physical cache m em ory, based on the MC68020 processor and including an MC68881 floating point coprocessor
■ S u pp o rt fo r up to 16M bytes of h ig h speed ECC m e m o ry
■ 2 gigabytes o f virtu al address space for each o f 56 concurrent processes
■ 32-bit system bus w ith up to 14M b yte/
second bust m o d e bandw idth
■ H ig h-p erform an ce FPX floating point accelerator option
■ 3DGA graphics accelerator option
■ Low -profile, detachable keyboard w ith p ro g ram m ab le keypad and optional
* Color Display Features
■ Double buffering of pseudo color im ages, w ith full Z -b u ffer support
* Advanced lighting m odel including:
• Up to 16 light sources
• 24 plane RBG support
• Colored light sources
• A ttenu atio n of light sources
• Spotlights w ith attenuation
• Specularity, highlights
fo rm ed, clip-checked vectors per sec
ond w ith 3DGA
* 3DGA renders display lists directly fro m v irtu al m e m o ry ; optio nal clip-checked, vectors per second
■ Bit-blts at up to 40M pixels/second
* S ixteen logical raster-ops at up to 30M pixels/second
* A rea fills at up to 125M pixels/second
■ 2x z o o m by pixel replication
■ RS343A RGB video o u tp u t w ith co m posite sync on green
DN590 TURBO P eripheral O ptio ns
* 5V. inch 86M byte, 155M, o r dual 155M and fo reig n facilities/p ro tocols
Softw are UNIX stand ards: Berkeley 4.2 and Sys
tem V Release 2
tions packages available
DN590 TURBO Specifications Physical dim ensions:
Electronics Cell: height 62.2 cm (24.5 in.), width 34.3 cm (13.5 in.), depth 72.4 cm (28.5 in.)
Color M onitor: 19-inch, height 53.3 cm (21.0 in.), width 56.4 cm (22.2 in.), depth 220 watts, 47/63HZ, 750 BTU/hr.
Operating Environm ent:
Temperature: 15C to 32C (60F to 90F) Hum idity: 20% to 80% relative Ceiling: 0-2.1 km (0-7000 ft)
N o rth A m e ric a n Sales and S ervice O ffices:
N o rth e a s t R e g io n : Boston (617) 8 7 2 -4 3 0 2 IU (617) 256-6600.H a rtfo rd (2031287-0155,N ew ark (201) 535-0900, N e w York (516) 496-4800, P h ila d elp hia (215) 768-9730, P ittsb u rg h (412) 471-3905, Roches
te r (716) 385-6871, A lb a n y (518) 458-7121. S o u th east R e g io n : A tla n ta (404) 393*4720, A u stin (512) 323-0230, B a ltim o re (301) 859-0825, D allas (214) 869-1491, H ou sto n (713) 871-1991, O rla nd o (305) 843-8095, Raleigh (919) 544-1715, Tulsa (918)254- 9676, W a s h in g to n (7031 556-9810, Ft. L auderdale
land (503) 641-6948, Salt Lake C ity (801) 265-9881, Santa Clara (408) 496-2900, S eattle (206) 453- 5544, S o u th w e s t R e g io n : D enver (303) 792-5700, El S e g u n d o (213) 640-1121, Los A n g ele s (818) 883- 5111. O range C o u n ty (714) 768-2988, Phoenix (602) 277-9103, San D iego (619) 458-9921, Can
a d a : A lb e rta - C alg a ry (403) 234-8737, Ontario Padova (39-49) 656-144, Rome (39-6) 598-4941, Turin (39-11) 506 906, Ja pa n : Osaka (31-6) 251 5491, Tokyo (81-3) 5881561, Yokohama (81-45) 311 8012, N agoya (81-52) 204 7361, S a pporo (81- m anuals, available fro m local sales representatives.
C o p y rig h t © 1987, A p o llo C om p u te r Inc..
C he lm sfo rd , M A.
apollo
- 90
-Janosz Gocałek Jacek Klauziflski Andrzej Rózga
System Programowania Modula-2 dla minikomputera MERA-400 w systemie operacyjnym CROGK-5
1. Charakterystyka systemu Modula-2.
System programowania MODULA-2 składa sie z następujących ele
mentów:
- egzekutora (programu nadzorczego) - kompilatora jeżyka Modula-2 - programu łączącego (LINKER)
- programów "pomocniczych i bibliotek standardowych’
. y
Egzekutor jest prosr.amem stale rezydującym w pamięci opera
cyjnej podczas pracy systemu Modula-2 i zazwyczaj pozostałe programy » zarówno systemowe jak i użytkowe » wykonywane sa pod jeso kontrola.
Kompilator umożliwia-kompilacje tzw. jednostek kompilacyjnych (modułów)» znajdujących sie w zbiorach zewnętrznych. Jednostka kompilacyjna jest źródłowa postać modułu :
- definicyjnego - implementacyjnego - programowego.
Skompilowany program główny (jest nim najczęściej moduł prog
ramowy) przed załadowaniem do pamięci operacyjnej musi zostać połączony ze wszystkimi » oddzielnie skompilowanymi modułami » z których importuje on obiekty. Połączenie skompilowanych modułów oraz ostateczne formatowanie postaci programu dokonuje sie pod
czas pracy programu łączącego.
Programy znajdujące sie w zbiorach wygenerowanych przez prog
ram łączący (LINKER) mosa być załadowane do pamięci operacyjnej i uruchomione przez egzekutor systemu. Programy w tej postaci mosa być także załadowane do pamięci operacyjnej i uruchomione przez inne» aktualnie wykonywane » programy użytkowe jako ich nakładki (overlays).
Ostatnim » lecz niezwykle istotnym » składnikiem systemu jest zbiór plików zawierających moduły biblioteki systemu. Moduły znajdujące sie w tych zbiorach » udostępniające miedzy innymi o- peracje we/ws» mosa być importowane przez programy użytkowe.
Program łączący automatycznie dołączą odpowiednie moduły biblio
teczne do modułu programowego.
U systemie programowania Modula-2 przyjęto pewien zbiór stan
dardowych rozszerzeń nazw zbiorów.
Rozszerzenia zbiorów jakie przyjęto we wzorcowej wersji jeży
ka Modula-2» w tej realizacji zostały zmienione. Różnica wynika z własności systemu operacyjnego. Przyjęto rozszerzenia zbiorów
“ 9 1
-dwuliterowe poprzedzone znakiem "/" ( XLN» ZLD itd.). Każde z tych rozszerzeń określa kategorie zawartości zbioru informacji znajdujących sie w zbiorze» np. rozszerzenie XDF dla zbiorów za
wierających źródłowa postać modułów definicyjnych» czy rozsze
rzenie XLD dla zbiorów zawierających skompilowane i połączone programy.
Stosowanie standardowych rozszerzeń jest wygodne» pozwala bo
wiem na łatwe określenie rodzaju zawartości zbioru» a ponadto pozwala na ppmijanie rozszerzeń podczas specyfikacji Plików wej
ściowych dla programów systemowych. Przyjęta w systemie konwen
cja dotyczącą rozszerzeń nazw zbiorów nie jest obligatoryjna i Użytkownik ma pełna swobodę w wybieraniu rozszerzeń nazw wyko
rzystywanych zbiorów.
Określenie zbiorów wejściowych dla uaktywnionych programów systemowych odbywa sie wedłu3 takiego samego» dla wszystkich programów » schematu. Na monitorze ekranowym wyświetlane zostaje pytanie o nazwę zbioru zawierającego określone dane. Uprowadza
jąc z klawiatury nazwę odpowiedniego zbioru» w przypadku niektó
rych programów użytkownik może także dołączyć nowe opcje» okreś
lające tryb pracy programu. Opcje wprowadza sie bezpośrednio po nazwie programu» poprzedzając każda z nich znakiem Opis znaczenia opcji poszczególnych programów zamieszczono w dalszej części opracowania.
Fakt zakończenia wprowadzania nazwy zbioru » użytkownik syg
nalizuje wysłaniem znaku (cr) . Procedura odczytującą nazwę zbio
ru » w każdym przypadku zna standardowe rozszerzenie jeso nazwy oraz w niektórych przypadkach także standardowa nazwo właściwa.
Jeżeli użytkownik » wprowadzając nazwę zbioru » pominie jeden z jej składników» automatycznie przyjmowany jest odpowiedni skład
nik nazwy standardowej. U niektórych przypadkach » np. podczas kompilacji» przy wprowadzaniu nazw zbiorów zawierających impor
towane moduły» możliwe jest nawet całkowite pominiecie nazwy zbioru i wysłanie jedynie znaku sterującego <cr> (kompilacja z opcja Query).
W takich przypadkach nazwa właściwa tworzona jest z pier
wszych sześciu liter nazwy poszukiwanego modułu (dlatego celowe jest nadawanie takich samych nazw modułom i zbiorom » które je zawieraja).
Kompilator i program łuczacy moga poszukiwać niezbędnych im zbiorów (kompilator - zbiorów symboli» program łączący - zbiorów z kodem oddzielnie skompilowanych modułów) według dwóch strate
gii:
Strategia standardowa polega na automatycznym poszukiwaniu potrzebnych zbiorów wg. nazw standardowych. Podczas takiego po
szukiwania wyświetlana jest informacja o jego rezultacie» jednak w przypadku niepowodzenia użytkownik nie ma możliwości wprowa
dzenia nowej nazwy.
Druga strategia » wymuszona opcja Q » polega na wprowadzeniu odpowiednich nazw zbiorów przez użytkownika. Wysyłając znak cr»
użytkownik może spowodować poszukiwanie zbioru wg. nazwy stan
dardowej» jednak w przypadku niepowodzenia ma on możliwość pow
tórnego wprowadzania nazwy tego samego zbioru.
Zbiory wyjściowe programów systemowych posiadaja te sama naz
wo ułuściwa co zasadniczy zbiór wejściowy. Zbiory te otrzymują standardowe» dla danej kategorii danych » rozszerzenie nazwy.
- 92
-2. MODULA - Program nadzorcza sastemu.
Egzekutor sastemu programowania Modula-2 jest jedansM progra
mem tego sastemu* ładowanam do pamięci operacaJnej przez sastem operacaina CR00K-5.
Jest on programem stale rezaduiacsm w pamięci operacajnej podczas praca sastemu. Udostępnia on własna Jezak komend* dzięki któremu użatkownik może żadać załadowania i wakonania odpowied
nich programów (sastemowach lub użatkowach).
Na ogół wszastkie programa wakonawane sa pod kontrola egzeku
tora. Jeso głównsm zadaniem jest udostępnienie wakonawansm prog
ramom odpowiedniej maszsns wirtualnej. Maszana ta posiada pełna
ramom odpowiedniej maszsns wirtualnej. Maszana ta posiada pełna