Microprocessor-Based Graphic Preprocessing Knot .I. E Lerallut,.l. Duchene and G. Fontenier UnivzfsitrdeTechnl,logiede forr@~gne,Centre de Recherchesde Royallie. &.I? 233.Z-60206Compitgnc.
1.
INTRODUCTION
The choice of a graphic processing system is to be based not only an the needs of the user, but also on the processing envimmnt into whfch it is to be ixerted. The role of a graphic terminal $s not only restrlcted to the passive display of data, but must also be capable of inteqweting the commando of the user, the purpose 3f which is to dynamically modify the parawxm of visualisation {windowing, drawing #&le, geometrical transforms, special graphic func,icris)+ New constraints are then introduced into the system resulting from the interactive ptatedu~*s necessary in any conversationalsystem 01;esawld then envisage several types of configurations for the graphic system, accordfng to the nature of the information cantext and the type of connection that relates it to the coeputer (Ij :
e
a terminal connected to a processing center : this type af connectCon aften mQnopo1 izes a large part wf Che nemory capacity of the main c0spuler and t& response times are very dependent
_ -
on the system's
load {I, 2).
ar independant system relying generally on processing mans of lim,ited capacity (3). through
3 frontal
cal-
it ronsote
co?itralled
mputer. to assure
It is up to the graphic processor tte interface with the user, the
culatcr conoccted with the main processing nranage~~~~t of the gsaphlc memory and the connection to the main unit. F‘urthermre,
it
for contour digitzing ring computer.
2.
SYSTEM
connected
France
to a time sham
DESCRIPTION
This system ha; been built around a Motorola 6800 microprucessor, according to a modular architecture previously reported by J. DUCHENE and al. (5). Since the system may opefsate either as a development system, or as an autanomous prototype, it fs necessary to have functional partitionning, each module serving a particular function, physically separated from others : processor function, ROE1 and RAM memory, serial or parallel input/output, multiprocessors interface, etc -,. As all the modu‘ies are standardized, ol?e may then rapidly build a general purpose system or a unique instrument by simply inserting as many boards as he needs for his application, .rithout having to imagine new hardware modules. The transition between the development system and the fina"i proCuct is thus direct. 2.1
nodules
description
The system's general organization is represented on figure 1. The modules are in the simple european fotmat :
-
CPU board, including clocks.
-
12 K bytes REPROM memor_v, containing the Debur~ging ptvgram, the peripherals management and communication prqrams, an Editor/@ssenibler and a Floating-Point Package.
-
16 K bytes dynamic refresh.
-
Floppy-disk controler, diskette drives.
must hc easy ix p~~,-ai;2and t~~"'ip~dwitil a &a;ihxly~junit (1. 41%
6800 microprocessor
RAM memory, driving
and
with internal twa 90 K bytes
J.-F, terallut et al.
376
Fig, I.Ceneral System Organization.
- Input/Output
molules:
.one parallel interface jP.A)* contiecte:: ii>tile keyboard and the line-prirrer. .one serial interface (ACM) for commun':aticn with the-PDP flb45. Eaua r.te is 240Cir current
1oop mode. .one 8 bits digital-to-analogconverter, dri:.Fng an XY plotter, giving a harl copy of t13 curves drawn on the video screen. .one parallel inter&e, used 3s an acq.isition modules, handling,the coordinates provided by the digitizer. {he tablet is J 2C" .y&I" magnetostrTct:Pde 5.8+face,control\& by an YMg microprocesso; that s tiepsthe ‘Y area, samples the coord,lnatesby .eansof mqnetic pen. lhese data are formatted I!r32 bits x+:i?t are sent to four latch circuirs, T1:cFM 59~ultiplt;xes the latches 8 bits hy 8 bits. The u!e~ may digitize ei:her point-by-point,ct-in a cantjnu-us mode by Following the contour with the pen. The sampling r&C@ is adjusted between 10 e:-d 100 aoints/sec,w?;th a maxin:alresol&ion cf O.QDS biCh.
are used ior the display on a 15" video monitor* The alpi~~~mericmo&tlez provides
.twwc videorams
a 23 l$nes 0f 8O characters field end takeS4096 locations 0f the proceSs0r memory. The graphic
module produces 5 512 x 512 dot mat+ix and uses 8 memory locations.Addressing is m&de bit by bit, enabling the stack?ng of multiple cards for color or grey scale applications (51. 80th cards have a built-in scroll regIstw. an ifiterndl refresh, 2nd are fully readiwr-ie aA-
drossabl%*
3. SOFTWARE ASPECTS 3.1. Choice of the operating mode The above described system may ouerate in three configurations,exclu;ively d&&mined by software and dynamically modifiable through a dispatching flag (Fig+ 2). Node I: operating as a simple terminal. In that case, the system is FF le transparent since the dispatchiny af communications takes place directly between the console and the nain computer. Mode 2: eunctiogningas a local system.This is wassical confiadk*$tion of a development system with its own-input/outputperipherals, direct!;,compatible with the instrumentalpr3totype, The previously defined modules may apply to either of them, by simply adding or substituting the desired functions, such as Debugging, Editor/Assemblerand Prom-Programmer,in order to finally adjust the prototype. Since the components of the final prototype are the same as those ol the development system, debugging each module and insuring its maintenance is quite easy, One may test programs by grafting baards on the development system, thereby enlisting the help of all its software support for the 'unction by function adjustment or debugging sf the protaty$Ge.On the other hand, ot)emay a; 7 devclop new programs "in situ", for i,specific qurpose; this is done on the machine itself by simply adding necessary modules for debugging aid, and a TTY interface. As a local system, it may take into account the acquisitions sent by the a:‘gitirer, interpret them and store all the peintS In b memory zone. The role oi thii mne
in that OF a data array for the processing pro-, grams. Pwthemwre, tha system may occasionally, during i3computation routine, mnverse with the central cmputer in a way that 5s transparent for the user, but provided for by the processing software {task activation, argument transmission
Microprocessor-Based
Graphic
Preprocessing
27'1
Knot
and result recovery, rtxeptiarr of a mcskago). While this mode offers all the resources of a development system, on the other hand, the ?pneb and capacity of the microprocesr,or do iimii tii:a processing of complex images. Zode 3: functionning as ? frontal acquisition system. In this case, t!~edispatching ic diiectnrj from the digitizer towards the ?DP II/K, xitlr the possibility of interaction with the cons~'l~. Acquisitions are taken into account by tile 51IOO microprocessor and sent to the PDP II/45 in the form of four ASCII characters for each coordinate. The connection being a 2400 baud rr7tczri;t! transmission, it is necessary to buffer the sz.4 quisitions. The maximal acquisition rate is us ;j 100 points/ssc, so a 16 K bytes buffer enable% the continuous digitizing of a contour during about 40 sec. If a circular t.uffer is used+ the filling/draining ratio increases the acquisition to 6G set without a break. Beyond tk~ir;time, the acquisition rate is 1irni':edby the transfer ?ate to the PDP 11/45, that is about 30 poiw/sec. (A possible improvement would consist or a ,flopa py-disk storage of tile acquisitions, in or&i- to minimize the number of memory chips& As the filling takes place, the transfer would be made block by block).
Mode 1 ---
Mode 2 --1
I
I
1
7
Filling and emptying pointers are controlled by different interrupt signals. In fact, the system must take into account 3 input pos~ibilit$eS:
li ,
1. ‘The coordinates given by the digitizer mustbe handled and stored into the memory tihatever the processor status may be, It is the highest priorit!y input, and the arrival of each coordinate produces a non-maskable interrupt request {htlI) to the microprocessor+ Then, it reads the coprdinates on the PIA and stores them in the circu lar buffer. Furthermore, the contour is proqressively drawn on the video screen as it is digitized.
1 Digitizer 1
Mode 3 Fig. 2. lransmiszion tion, ----: Possible
Table 1 lransmi?sion
I-
Message origin --
Modes; -: Interaction.
Cliyitizer
Connec-
ConTigurations -
-_ Pispatching flag
Message
‘&Pg
n&we
Destination
’
I Scrutation
1w
t
Actual
NM1
_l--.
Flode
I
1 I: 1111 1 1, :' 3 1 Z5'" flag 1 OTI -"____..*_________ __________________________________________..___
I
character
l
acquisition
I
changingflag
_---
__“_““_
___”
1 t
validation request
acquisition
I I
1 ““I
PDP 11/45
_.
____________--_ 1 1
3
UP 6800
1 0-l
_-__--+__-_
I
UP 6500
i
1. 2, 3
/______Y________jftPt9g;____i______-_l______