27
ED 062 941 TITLE INSTITUTION SPCNs AGENCY REPORT NC PUB DATE NOTE EDRS PRICE DESCRIPTORS DOCUMENT RESUME BE 003 068 Minicomputers in the Digital Labczatory Program. National Academy Jf Engineering, Washington, D.C. Commission on Education. National Science Foundation, Washington, D.C. NSF-C310; Tsk-Ord-161 Apr 72 26p. MF-$0.65 HC-$3.29 *Computer Assisted Instruction; *Computer Oriented Programs; *Educational Technology; *Higher Education; Instructional Media; Laboratory Equipent; *Laboratory Training ABSTRACT The Task Force responsible for this document was established to study 2 major questions: (1) How should the minicomputer be used in the undergraduate classroom and laboratory program? and (2) What type of minicomputer facilities are needed to carry out the recommended program? The first question is treated in Part 1. Two types of applications are considered. A student in the computer engineering area will need a program that allows him to master all aspects of hardware, software, and systen design. The minicomputer, therefore, provides him with a unique educational tool to explore all of these areas. Other students in electrical engineering may not want or need to go into this depth of knowledge in the use of minicomputers. This section presents the different types of courses and laboratory work required to satisfy both of these needs. Part 2 considers the problem of specifying the facilities and equipment needed to implement the various aspects of the recommended program. It provides a general discussion of the factors that should be considered in selecting a Hinicomputer and indicates the problems that are likely to be encountered in day-to-day operation of the machine. (Author/HS)

DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

ED 062 941

TITLEINSTITUTION

SPCNs AGENCYREPORT NCPUB DATENOTE

EDRS PRICEDESCRIPTORS

DOCUMENT RESUME

BE 003 068

Minicomputers in the Digital Labczatory Program.National Academy Jf Engineering, Washington, D.C.Commission on Education.National Science Foundation, Washington, D.C.NSF-C310; Tsk-Ord-161Apr 7226p.

MF-$0.65 HC-$3.29*Computer Assisted Instruction; *Computer OrientedPrograms; *Educational Technology; *Higher Education;Instructional Media; Laboratory Equipent;*Laboratory Training

ABSTRACTThe Task Force responsible for this document was

established to study 2 major questions: (1) How should theminicomputer be used in the undergraduate classroom and laboratoryprogram? and (2) What type of minicomputer facilities are needed tocarry out the recommended program? The first question is treated inPart 1. Two types of applications are considered. A student in thecomputer engineering area will need a program that allows him tomaster all aspects of hardware, software, and systen design. Theminicomputer, therefore, provides him with a unique educational toolto explore all of these areas. Other students in electricalengineering may not want or need to go into this depth of knowledgein the use of minicomputers. This section presents the differenttypes of courses and laboratory work required to satisfy both ofthese needs. Part 2 considers the problem of specifying thefacilities and equipment needed to implement the various aspects ofthe recommended program. It provides a general discussion of thefactors that should be considered in selecting a Hinicomputer andindicates the problems that are likely to be encountered inday-to-day operation of the machine. (Author/HS)

Page 2: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Minicomputersin theDigital Laboratoryprogram

Cosine Committeea

U.S.DEPARTMENT OF HEALTH,

EDUCATION & WELFAREOFFICE OFEDUCATIONTHIS DOCUMENT HAS BEEN

REPRO-DUCED EXACTLY ASRECEIVED FROMIHE PEhSON OR

ORGANIZATION ORIG-INATING IT. POINTS OF VIEW OR OPIN-IONS STATED DO NOTNECESSARILYREPRESENT OFFICIAL OFFICE OF EDU-CATION POSITION OR POLICY.

MIN

April 1972

Commission on Education

II Mak.

Page 3: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

MINICOMPUTERS IN THE DIGITALLABORATORY PROGRAM

An Interim Report of the

COSINE COMMITTEE

of the

COMMISSION ON EDUCATION

NATIONAL ACADEMY OF ENGINEERING2101 Constitution Ave.

Washington, D.C. 20418

April 1972

Task Force on Minicomputers (VII)

Taylor L. Booth, Chairman, University of Connecticut

C. Gordon Bell, Carnegie-Mellon University

Cecil H. Coker, Bell Telephone Laboratories

Robert M. Glorioso, University of Massachusetts

Edward J. McCluskey, Stanford University

Frederic J. Mow le, Purdue University

David M. Robinson, University of Delaware

2

Page 4: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

COSINE TASK FORCE PUBLICATIONS

Task Fcrce I

Task Force I I

Task Force I I I

Task Force I V

Task Force V

TaskForce VI

Task Force VII

Task Force VUI

Some Specifications for a Computer-Oriented First Course inElectrical Engineering. September, 1968.

An Undergraduate Electrical Engineering Course on ComputerOrganization. October, 1968.

Some Specifications for an Undergraduate Course in DigitalSubsystems. November, 1968.

An Undergraduate Computer Engineering Option for ElectricalEngineering. January, 1970.

Impact ot Computers on Electrical Engineering EducationAView from Industry. September, 1969.

Digital Systems Laboratory Courses and LaboratoryDevelopment. March, 1971.

Minicomputers in the Digital Laboratory Program.April, 1972.

An Undergraduate Course on Operating Systlms Principles,June, 1971.

These reports have been prepared under the auspices of the Commission on Education ofthe Nation3I Academy of Engineering. Commission policy is to encourage the explorationof new ideas in engineering education. The Commission has been kept informed of thediscussions of the COSINE Committee but has taken no position on its reports orrecommendations.

The work of the COSINE Committee and these publications are supported in part by theNational Science Foundation under a.ntract NSF-C310, Task Order No. 161

a

Page 5: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

MINICOMPUTERS IN THE DIGITALLABORATORY PROGRAM

1-0 Prologue

The widespread availability of relatively low cost mini-compiters has led to their use as an integral part of manysystems. Minicomputers have taken over the function ofsuch special purpose devices as process controllers, com-munication switching systems and system monitoring units.They have made such tasks as Putomated typesetting orautomatic instrumentation control systems practical.

It is now highly desirable, that undergraduate electricalengine:ring students be introduced to Lhe minicomputerand learn how it can be used as a system component. Tomeet this need the undergraduate curriculum must be de-signed so that a student has an opportunity to work with a

minicomputer as an integrated part of his educational pro-gram. The availability of one or more minicomputers is anabsolute necessity for a computer engineering curriculum.

The introduction of minicomputer concepts into a de-partmental curriculum requires a considerable amount ofeffort by the faculty as well as the commitment of financialresources by the department. In March, 1971, a COS!NEreport, Digital Systems Laboratory Courses and LaboratoryDevelopment, [Ref. 2] presented a preliminary discussionof the place of the minicomputer in the undergraduatelaboratory program. At that time, it was recommended thata separate COSINE Task Force should consider the problemof bringing minicomputers into the undergraduate program.Therefore, Task Force VI IMinicomputerswas establishedin the fall of 1971 to study two major areas:

A. How should the minicomputer be used in theundergraduate classroom and laboratoryprogram?

3. What type of minicomputer facilities areneeded to carry out the recommendedprogram?

The first question is treated in Part I. Two types ofapplications are considered. A student in the computer en-

gineering area will need a program that allows him to mas-

ter all aspects of hardware, software and system design.

The minicomputer, therefore, provides him with a uniqueeducational tool to explore all of these areas. Other stu-dents in electrical ergineering may not want or need to gointo this depth of knowledge in the use of minicomputers.However, it is important for them to obtain an understand-ing of the place of minicomputers in general systems as wellas the capabilities and limitations inherent in these com-puters. This section presents the different types of coursesand laboratory work required to satisfy both of these needs.

Part I I considers the problem of specifying the facilitiesand equipment needed to implement the various aspects ofthe recommended program. It provides a general discussionof the factors that should be considered in selecting a mini-computer and indicates the problems that are likely to beencountered in day-to-day operation of the machine. Noattempt is made to recommend a specific computer, how-

ever, general system configurations needed to meet a vari-ety of educational goals are recommended.

USE OF MINICOMPUTERS INUNDERGRADUATE ELECTRICAL ANDCOh1PUTER ENGINEERING COURSES

2-0 Introduction

i'revious COSINE task force studies [1,2,3] have con-sidered the types of courses and curricula desirable to intro-duce computer concepts and computer ehgineering at theundergraduate level. Underlying all of the recommendationsin these reports is the implicit assumption that the studentwill have access to various types ot con iputer facilities as an

integral part of his studies. The form and complexity of

these facilities depends upon the particular courses offeredand the type of program undertaken by a student.

An examination of the various task force reports indi-cates that special computer facilites must be provided toservice the needs of the following general concept areas:

A. Computer programming and computingB. Machine level programming and computer

organizationC. Systems programming and operating systemsD. Project work involving the computer as a system

ele ment.Each of these areas requires a computer facility with

special features. For this report two classes of students are

considered; those planning to enter careers in computer en-

gineering and those interested in the use of computers as az

tool to solve problems in other areas. This section discusses

the computer facilities needed by students in each of theabove areas and indicates the role that the minicomputercan play in satisfying these needs.

21 Introductory Programming Courses and Computing

All engineering students require an introductory pro-gramning course in which they learn a higher level language,such as FORTRAN, BASIC, PL/I or ALGOL, and how touse a computer to help in the solution of engineering prob-lems. Most introductory programming courses make use ofeither the batch or time sharing facilities of the local com-puter center to carry the programming load of these coursessince this is often the most economical way to satisfy thisneed. During recent years a number of minicomputer manu-facturers* have developed small, relatively low cost timesharing and batch systems that can be used as the computerfacility for the introductory programming course. Theseminicomputer systems are particularly -+tractive for smallschool operation. However, under most conditions the abil-

* Digital Equipment'sTSS/8 and PDP-11/45 and HP's 2116 systemsarc typical of such systems.

4

Page 6: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

ity to use a minicomputer as a computational device andnumber cruncher should be thought of, at most, as a supple-ment to the facilities of the Computer Center.

Except in the situation where a minicomputer has beenpurchased with the particular goal of providing some typeof general purpose computation service, its main use shouldbe as a laboratory instrument. This report is addressed pri-marily to the needs of those courses that use the mini-computer as a laboratory device. Therefore the problem ofdeveloping computer facilities to handle the introductoryprogramming ct:urses and departmental computationalneeds is not considered.

2-2 Machine Language Programming and ComputerOrganization

The ever-increasing number of minicomputers in indus-try and government makes it desirable to incorporate atleast some minicomputer concepts into the undergraduateengineering curriculum. Modern communicatior s, control,manufacturing and testing systems often rely heavily on aminicomputer as part of the system. The market for mini-computers which are used as an integral part of some sys-tem by an Original Equipment Manufacturer (0.E.M.) isnow greater than the market for minicomputers used in the"stand-alone" mode. Applications of this type require adeeper understanding of computer organization and pro-gramming than is presented in an introductory program-ming course.

Almost every electrical engineering student will need abasic understanding of both the operational and hardwarecharacteristics of a computer and the concept of assemblerlanguage programming. A student planning on a career incomputer engineering must go far beyond this basic mate-rial and develop an indepth knowledge of all aspects ofcomputer hardware and softw-re design.

A complete understanding of these ideas cannot be ob-tained by reading texts and instruction manuals or listeningto lectures. A student must have the experience of develop-ing, testing and running a number of complete programs atthe machine level that involve the use of all the differentmachine features including input/output (I/0) devices.These skills can be developed by having the student cover(at least) the following topics in a set of programming ex-periments. References [4] , [5] , [6] and [13] discuss theseproblem areas in greater detail.

1. Basic Operation of a Mini-Computer

One of the chief advantages of a mini-computer is therelative simplicity of its machine language instruction set.The instruction set is usually restricted to data transfer in-structions between arithmetic register(s) [accumulator(s)]and memory, addition, a number of test and skip instruc-tions for conditional transfers, instructions for transmittinginformation over the I/0 channels, and a series of micro-instructions which manipulate the contents of the arith-metic register(s), including an instruction to HALT orSTOP the execution of a program. For this reason, program-ming in machine language gives the student an excellent op-portunity to learn and appreciate the relatively small set of

2

basic functions performed by a digital computer (or digitalsystem). Therefore, the first topic to be covered should pro-vide a student with an undustanding of a computer fromthe register level. This can be accomplished by requiring asimple program to be written (such as computing the sumof m-numbers or displaying a changing pattern of lights),then hand-loaded into core, executed, and provided withthe necessary test and HALT instructions to stop the com-puter at the completion of the program.

2. %3tom Software and Assembly LanguageProgramming

The programming of most minicomputers for use hia system is carried out using the assembler language asso-ciated with the computer. The writing and debugging of as-sembler programs is simplified if the student masters the op-eration of the assembler used by the computer to processassembly language ,Irograms as well as such system nro-grams as editors and debugging programs. Thus, after thestudent has been introduced to the basic operation and in-struction set of the computer, he should carry out a seriesof exercises that will teach him how to develop more exten-sive programs using the computer's assembly language.

3. Programming Techniques and Data Representations

To use a computer effectively, a student must developsuch programm;ng skills as counting, indexing, the use ofindirect addressing, the use of pointers, looping, and theconstruction and use of subroutines. These skills, while im-portant in themselves, also illustrate the trade-offs possiblebetween execution time and the amount of storage requiredto perform a given function u.sing different algorithms. Inaddition, the introduction of algorithms raises the questionof data representation, symbolic data and numerical data

(fixed point, floating point, signed numbers).The problems associated with the mismatch in timing

characteristics between a computer and its peripheral inputand output devices must be covered. Solutions to theseproblems such as the use of flags and buffers (asynchronousoperation) should be investigated. Once again the student isfaced with the question of data representation, this timeconverdng from the internal code of a computer to the ex-ternal code used by the peripheral device (such as ASCII forthe ASR33 teletype) and vice versa. Techniques for packingand unpacking words wher convertio.g from one code to an-other should be included here.

The classroom and laboratory work necessary to coverthese topics should form an integral course (as it should andusually does in an Introductory Programming Course)rather than being presented as two separate courses. Forthose topics which only involve writing assembler languageprograms to learn about assemblers or various data struc-tures, it may be expedient to have the students run theirprograms on a machine which is simulated on the main cam-pus computer. The development of such a simulated pro-gram is a straightfor vard task and several programs of thistype are available [SEDCOM Ref. 4, MOHAC Ref. 6, MIXRef. 7, SAMOS Ref. 12] .

For those topics dealing with computer organization and

Page 7: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

input/output operations it is vital that the student programand run his own prograrns directly on a computer. This op-portunity for "hands-on" programming experierce is animportant teaching aid. Experience at a large number ofschools has shown that the intimate relationship that devel-ops between the student and the machine is highly motiva-tional. A computer does not allow "partial credit". A stu-pid mistake, because of carelessness or fuzzy thinking, isforcefully brought home to the student when the computerdestroys his program or does not respond in the expectedmanner. This immediate feedback is invaluabf e. not only be-cause it forces the student to develop proper work habitsbut also because it quickly indicates those concepts andideas that he does not fully understand.

A handson mode of operation requires that the com-puter be available on a stand-alone basis since student in-duced failures cannot be tolerated on a system where a largenumber of other users are relying on the computer to carryout their computing tasks. This requirement can easily bemet by using a minicomputer. Under this condition it willprobably be necessary to have a minicomputer that is dedi-cated to running these student jobs exclusively for at leastsome portion of each day. Experience indicates that oneminicomputer available 24 hours per day can handle a classof 30 to 50 students depending upon the types of facilitiesavailable and the magnitude of the programming tasks as-signed the students.

The material discussed above is of an introductory na-ture. The needs of students wishing to follow a computerengineering course of study or those planning work in areasthat make extensive use of minicomputers as an integralpart of a system will need additional work. The computerengineering student will be interested in further work inboth software design and advanced system applicationswhile the student interested in the use of the computer willonly be interested in advanced applications.

2-3 Systems Programming and Operating Systems

The contents of an undergraduate course on operatingsystems principles has been thoroughly discussed in a recentCOSINE report [3]. Thus, this discussion will deal onlywith the experimental work that should be planned tocomplement this course. Many of the basic concepts of sys-tems programming can be illustrated by developing pro-grams to be run on the campus computer facility. However,for those students wishing to obtain a deep understanding

of opetating systems rather than just a general knowledge,it is important that a dedicated computer be available. Thisfacility could either be used in connection with the courseor for project work for students who have already completedthe course.

The primary problems of operating systems are resourcemanagement problems. These problems become especiallydifficult and challenging when the system is designed to al-low more than one user or one I/0 device to compete forsystem resources simultaneously. In such a system, thereare two difficult resource management problems: the prob-

3

lem of scheduling resources to conipeting requests and theproblem of protecting the resources allocated to one userfrom intentional or unintentional damage by arother user.

Models of resc.trce management schemes have provideda basis for analysis of the control properties and the perfor-mance properties of the schemes modeled. In addition,models are based on fundamental assumptions about thesystem being modeled. The validity of these assumptionsand the results of the analysis of the models can be betterunderstood if they are investigated experimentally with ac-tual systems. Thus the study of operating systems should in-clude an opportunity to carry out both experimental andtheoretical studies on an actual operating system.

Operating systems are structured in such a way that addi-tional special software features can be added to carry outspecific resource management tasks without interferingwith the overall operation of the operating system. Whenthis can ; F. done the facilities of the computer center pro-vide a means to satisfy the laboratory needs for experi-mental studies of resource management problems. In addi-tion, existing computet centers provide useful facilities forthe analysis of models of the dynamic allocation methodsof operating systems. These models are sometimes so com-plex that successful analysis is only possible via numericalmethods or simulation methods.

By carrying out projects involving interaction with theoperating system, a student faces and overcomes many ofthe real problems that must be solved when designing andusing an operating system. In a laboratory situation the stu-dent must not only design and implement a particular ex-periment but he must also develop methods to measure theexperimental system under actual operating conditions.Thus the laboratory facility used must provide ample roomfor mistakes and failures. Existing computer center facilitiesare not designed to serve as laboratories. In particular, ex-periments that might interfere with the general operation ofthe computer center cannot be tolerated. This means that aseparate experimental computer facility must be availablefor experimental work in systems programming and oper-ating systems.

Until recer,tly, special la'ooratory facilities for the studyof the major problems of operating systems have not beeneconomically feasible. Computer systems with the hardwarefeatures allowing memory protection and scheduling of si-multaneous processes have been prohibitively expensive.Minicomputers have now been developed to the pointwhere some of the new models have both the hardware fea-tures that make them technically feasible and a price thatmakes them economically feasible to serve as a laboratoryinstrument for the experimental study of operating sys-tems. The more flexibility that the mini-co:nputer has, suchas memory protection, memory mapping, multiple registersand tape and/or disk storage, the greater the range of ex-periments that can be performed. Features that are notincluded on the minicomputer can often be simulated orthe student can be asked to devise methods to carry out agiven task without using a particular feature. Assignmentsof the latter type are useful in that they impress upon thestudent the reasons why particular hardware features aredesirable as part of a computer's architecture.

Page 8: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

2-4 rroject Work Involving the Computer as a SystemElement

1

The minicomputer, because of its size and cost, is be-coming an integral part of many communication, instru-mentation and control systems. The computer engineermust be aware of the complete system. He must have a

working knowledge of basic machine organization, assem-bly level programming, hardware interfacing, software dy-namics and the basic principles of operating system designfor minicomputers. He must also be aware of the human en-gineering problems so that the system can be used with aminimal amount of effort by the user.

Many electrical engineering students outside of the com-puter engineering area will be called upon to design, workwith, or help incorporate minicomputers into larger systemsafter they graduate. It is only logical that a departmentshould provide them with an opportunity to becomeacquainted with the minicomputer as a system element.

This goal can be accomplished in a number of ways.Those students in a computer engineering program can beexpected to develop complete system packages as part oftheir work on projects involving operating systems. How-ever, they should also gain experience in using the com-puter as a system element without the necessity of devel-oping all of the system hardware and software needed tomake the system operational. The students not in computerengineering should understand the basic operations of aminicomputer as described in Section 2-2. They should beprovided an opportunity to devc:op systems that involve aminicomputer as a functional oiack box which is alreadyproperly interfaced to the otl er system components. Thedesign task then consists of ady sting the parameters of thesystem to reach a specified operational requirement, or thedevelopment of a program in an appropriate higher levellanguage to allow the minicomputer to perform a neededsystem task.

A minicomputer installation designed for use as a systemtool provides a wide range of experimental possibilities. Itsflexibility allows a student to investigate problems forwhich there are no easy analytical solutions. In particular,there are a number of design tasks that require the selectionof system parameters based upon a subjective design crite-rion such as "it sounds funny but the conversation is per-fectly understandable" or, "the response is fast enough tokeep the operator busy."

The types of experiments that a student can carry outusing a minicomputer are determined as much by facultyinterest as the availability of equipment. Experience atmany schools indicates that whenever there are one or morefaculty members with a strong desire to include projectwork involving minicomputers into a laboratory then thenecessary equipment can be obtained for the laboratory.Since the equipment problem is discussed in detail in Sec-tion I I I, the rest of this discussion will be devoted to a briefsummary of some typical projects that may be included in a

laboratory program devoted to the use of a minicomputeras a system element.

1. Communication Systems Digital communicationsystems can be studied quite easily using minicomputers.

The influence of sampling rates, amplitude quantization,data compression techniques or encoding techniques uponoverall system performance can easily be studied. In a corn-munication system the quality of the received informationfor a given application is often based upon subjective crite-ria. The ability to quickly vary one or more system param-eters in order to make comparative judgments of systeniperformance is a particularly effective educational tool.

2. Control Systems A wide range of experiments canbe built around a control system in which one of the majorcomponents is a minicomputer. The relationship betweensampling rates, quantization levels, and the time required tocarry out a given computational task upon ovt3rall systemperformance can be nicely illustrated in the laboratory. Dif-ferent types of nonlinear control techniques can also be il-lustrated and comparisons between different methods ofcontrol are easily investigated.

3. Signa/ Processing The use of digital filtering andFast Fourier Tran.form (F FT) techhiques to process infor-mation on a real-time basis can be studied by using a mini-computer. For example, problems of speech clipping andprocessing are easily carried out on a minicomputerequipped with A/D and D/A converters.

4. Instrumentation Systems The minicomputer hashad a major influence upon the area of real-time instrumen-tation. Projects directed at developing a complete instrumen-tation system involve measurement techniques, interfaceproblems, sampling problems and data reduction problems.In addition, decisions must be made concerning the presen-tation of the measured results in a useful manner.

5. Automatic Testing The minicomputer is an excel-lent device to control the automatic testing of components,modules and even complete systems. Projects requiring thedesign of a complete automatic test system for a given taskgives the student the opporturity to cover such tasks as testsignal generations, measurement of system responses, devel-oping system diagnosis techniques, data reduction and pre-sentation of results.

2-5 Summary

Table 2-1 summarizes the computer related educltionalobjectives that must be accomplished by an electrical engi-neering or computer engineering program if it is to preparea student properly for industry of further graduate study.With the exception of the first two objectives, these educa-tional goals cannot be accomplished adequately in the usualcomputing center environment. The most effective way toteach students about computer operation is to have a mini-computer available for their use. The alternatives of simulat-ing a minicomputer on a large machine or by means of pa-per computer studies will not do the job except in thoseareas that involve strictly software concepts that do not re-

quire interaction with the outside world or control of theoperation of the host computer. There are a slumber ofvalid reasons for this situation.

Minor modifications to either hardware or system soft-ware in a large computer system can have detrimental ef-

fect; on user-programs, particularly if they are initiated byinexperienced persons. Directors of central computing facil-

4

7

Page 9: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Table 2-1

Summary of EducationalObjectives

1. To provide training and programming experience usinghigh level languages.

2 To provide training and programming experience usingmachine code and assembly level coding.

3. To teach the student the fundamentals of machineorganizadon.

4. To provide the student with an experimental facility totest the ideas and concepis presented in courses onOperating Systems%

5. To provide the students with an experimental facility totest the ideas and concepts learned in courses dealingwith interfaeng and data processing.

6. To provide the student with an experimental facility totest out ideas and concepts la-erned in courses on digitalprocess control, digital testing and equipmentmonitoring.

7. To provide students with an opportunity to understandby hands on experimentation, the relationships andinteractions between hardware and software. and theproblems presented by real-time programming problems.

8. To provide students with an opportunity to utilize thecomputer as a system element.

ities will not allow students to Interface hardware to thecentral comp Zer facilities or to modify existing operatingsystems. To obtain this type of experience stu lents must beable to work with a computer system that is not used to

serve the computer needs of the rest of the university. Aseparate, stand-alone minicomputer is an ideal solution.

The task of writing software for large computers is afrighful experience for a novice. This is due in part to thedifficulty in understanding the basic hardware organizationof the larger rr3chine with its many layers of control. Onthe other hand, the basic minicomputer organization can bequickly understood by the average student. Thus, the abil-ity of the student to understand the complete machine,including its memory organization, register transfer opera-tions and I/0 structure, quickly gives him the confidencethat he can, indeed, write, with a reasonable expenditure oftime and effort, complex programs which actually work.

The ability to get at and hang black boxes on mini-computers is also a necessity if digital control and real-timedata processing problems are to be considered. The rathertransparent architecture of the minicomputer allows an av-erage engineering student to interface instrumentationequipment to the machine, and write an operating systemwhich will control and exercise this equipment as a totalsystem.

The price of a minicomputer installation is often used toargue against the purchase of a minicomputer by a depart-ment. This objection is valid if the minicomputer is viewedas just another laboratory instrument. However this view-point does not take into account the tasks that a mini-computer can carry out or the different services that it can

5

provide to the educational program. When the full flexibil-ity of a minicomputer is considered, it will be realized thata minicomputer can be classified as a complete laboratoryrather than simply a laboratory instrument. Consequently,the price of developing a minicomputer laboratory is notout of line with the cost of establishing any other type ofengineering laboratory.

This section has presented an overview of the types ofexperiments that should be part of every educational pro-gram designed to introduce the use of minicomputers as asystem element. No attempt has been made to suggest spe-cific experiments or projects s!nce each school will have dif-ferent computer facilities and interest. The next part ofthis report will discuss the problem of creating a mini-computer laboratory facility that can be used to carry outthe kind of laboratory work discussed in this part of thereport.

MINICOMPUTER LABORATORY FACILITIES

10 Introduction

Once a department decides to buy one or more mini-computers for use in its educational program, there are twoimportant factors that should always be considered:

A. The system should serve the greatest number ofstudents for the least overall dollar investment.

B. The amount of computer time needed by thestudent to carry out an assignment should beminimized.

In terms of machine selection, these factors imply thatthe system has enough features and equipment flexibility toteach the desired concepts; at the same time it is configuredso that the equipment and software minimize the non-educational tas':s such as inputting programs, printing oflistings, or on-line typing and correction of programs.

The task of selecting a minicomputer is formidablebecause of the number of different machines and peripheraldevices that must be considered and evaluated. This part ofthe report has been prepared to aid in the selection processand will start with a general overview of the hardware andsoftware features that must be considered in specifying aminicomputer system. With this background it is then possi-ble to recommend specific computer configurations tomeet different educational needs within given financialconstraints.

Throughout the discussion no attempt is made to recom-mend a particular manufacturer or computer since each in-

stallation must be tailored to suit local needs. The final sec-tion will discuss miscellaneous topics concerned with theinstallation and maintenance of an instructional computerlaboratory.

3-1 Basic Computer Structure

The computer is a highly structured device. The majorcomponents that may be found in a computer system areillustrated in Figure 3-1. Every computer system will have aprimary memory which holds programs for the processor(usually called the central processing unit or CPU) to exe-

Page 10: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Primarymemory

Central

Processor

(CPU)

Console

Programmed control

input-output link(bus)

Linkto

human

ProgramControlledinput-outputdevices

Link to externalenvironment

Direct memorylink (bus)

access (DMA)

Secondarymemory(e.g., disk,tape)

Figure 3-1

Basic Computer Organization

cute. Communication between the computer and the out-side world can take place in a number of ways. The proces-sor has a console, consisting of lights and switches, whichallow manual communication with the processor. This is atedious method of information transfer and is used on' y forsuch basic operations of starting the computer, making mi-nor modifications to the information stored in the primarymemory or indicating a change in operational status of thesystem. Every computer will have at least one other input/output (I/O) device to provide for the major communicationbetween the computer system and the computer user. Thereare usually at least two distinct modes of I/0 informationtransfer. They are programmed data transfer and directmemory access (DMA) data transfer.

In programmed data transfer the transmission of infor-mation between the peripheral devices and the computer iscontrolled by a set of data transfer instructions issued bythe processor. The typical peripheral devices which fallwithin this category are teletypes, paper tape readers andpunches, printers, card reader and punches and analog-to-digital (A/D) converters. Most of these devices have rela-tively low data transfer rates (that is, 10 to 10,000 charac-ters per second), hence they can be controlled directly bythe processor.

The data transfer rates associated with programmed datatransfer devices represent one of the limiting factors in aneducational computer system. For example a typical com-puter program of 6,000 characters stored on paper tape re-quires 10 minutes of read-in time if the standard teletypepaper tape reader is used. Special purpose programmed I/0devices are available to speed up the information transfer

6

exists only ifdata may beremoved fromsystem

High datarate input-output device

rate. These devices are examined in detail in Section 3-4.The computational work cwrieri out by 2 computer is

mainly accomplished when the processor is operating on in-formation contained in primary memory. If the computingsequence must be temporarily halted while the computerwaits for a peripheral device to prepare for an informationtransfer sequence, the overall computational efficiency ofthe system drops. Computational efficiency can be im-proved by using faster I/0 data transfer devices. Anotherway to increase efficiency is to introduce an interruptcapability.

A processor with an interrupt capability carries out itsregular computational operation until it receives a signal,called an interrupt, from a peripheral device indicating thatthe device is ready to execute the data transfer. The pro-cessor then interrupts its computational sequence longenough to carry out the required programmed data transfer.It then goes on with the calculation at the point where itwas when the interrupt occurred. This type of operation al-lows the computer to minimize the amount of time that itspends waiting for information transfers to take place.

As higher data rate devices are connected to the com-puter, there is a need for transmitting data directly to theprimary memory without processor intervention. As shownin Figure 31 the direct memory access bus is connected di-rectly to the primary memory. In this type of informationtransfer the processor is unaware of the actual informationtransfer sequence. Thus the transmission speed is muchhigher than under programmed data transfer. Some of thetypical devices that use this method of information transferinclude secondary memory (e.g., disks and tape units) and

Page 11: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

very high data-rate links to specialized equipment (e.g.,high speed graphic display systems or analog-digital con-verters).

The above discussion provides a concise overview of themajor components of a computer sYstem. In the followingsections the important attributes of each component areaare discussed and some of the particular attributes that areof importance in developing a laboratory computer facilityto serve the educational goals presented in the first part ofthis report are presented. A much more detailed discussionof the organization of computer systems can be found inreferences 9, 10 and 11.

3-2 Systems Software

Every instruction that is executed by a computer mustbe encoded as a sequence of binary digits and stored in thecomputer's primary memory. Such an encoded instructionis called a machine language instruction. The set of all pos-sible encoded instructions form the machine language of acomputer. All programs to be executed by a computer mustultimately be expressed in the computer's machine lan-guage.

Obviously the computers machine language is not satis-factory for general programming use. To overcome this dif-ficulty every minicomputer manufacturer supplies a sot ofspecial programs, called system software, that are designed

to aid the computer user in developing a program to carryout a specific task.

It is extremely important that the system software avail-able for use by a student to carry out his programming as-signments be designed to minimize the amount of time heneeds to write and debug his programs. The typical systemsoftware available from computer manufacturers is aimedat either the experienced programmer or at users ofprocedureoriented languages. For the advanced studentsthis type of system software is adequate. Unfortunatelyvery little attention has been paid to the design of specialsystem software packages to aid in the teaching of introduc-tory software course material. Consequently it will be nec-essary to supplement the system software supplied by themanufacturer with special purpose system software de-signed specifically for educational use. This can be accom-plished by either developing the needed software "in house"or by locating and borrowing educational software packagethat have been developed at other schools. The followingdiscussion describes the typical major software programs-,upplied by manufacturers and gives an evaluation of theirusefulness in an educational environment.

3-2.1 ASSEMBLERS

The writing of machine language programs is simplifiedif short names, called mnemonics, are used to identify thebasic instructions, memory locations containing specific in-formation and data terms manipulated by the instructions.The set of program statements that can be formed fromthese mnemonics is called an assembler language. A programwritten in assembler language must be transformed intomachine language before it can be executed by the com-puter. This is accomplished by an assembler program.

An assembler takes, as input, a source program writtenin the given assembler language and converts it into an ob-ject program which can be put into the computer by aloader. The simplest assemblers generate one machine in-struction for each source program statement. More sophis-ticated assembler languages leave many of the routine book-keeping tasks to be taken care of by the assembler programrather than the programmer. The more advanced assemblersallow programmers to assign a name to a sequence of in-structions. This sequence is called a macro. Whenever theprogrammer wishes to use this sequence he inserts themacro name into the program. The assembler then insertsthe object program instructions that make up the macrointo the object program in the appropriate location. Assem-blers with this capability are called macro assemblers. Allmanufacturers supply an assembler; some will proclaimweaker or stronger forms of macro capabilities. In truth,macros are not very useful in a small machine. One nor-mally uses subroutines rather than repetitivel y evoke thesame sequence of instructions.

3-2.2 LOADERS

Machine language programs are externa II y stored on

paper tape, punched cards or magnetic tape using a specialcode which differs from the internal machine language codeof the computer. A loader program is a program that trans-fers the externally stored information into the computer'smemory.

The loaders supplied by different manufacturers canvary widely in complexity and capability. The simplest areabsolute loaders. The absolute location in memory wherethe stored program is to be placed is included as part of the

cxternally stored information. A relocating loader allowsthe location of the loaded program to be specified at thetime of loading. This allows the use of subroutines from alibrary of object language programs without having to reas-semble each subroutine for every use.

All minicomputers include a basic absolute loader aspart of the system software package. Relocating loaders areusually provided only for larger and more advanced systems.

3-2.3 EDITORS

An editor program is a program that allows a computeruser to load textual information into a computer and toedit it under control of a typewriter type keyboard. Editorsare good for quick program changes on machines that usepaper or magnetic tape as the medium of source programinput.

An editor program can often represent an unexpectedhidden cost to the system. The availability of a good editorprogram often encourages programmers to put off thinkingabout program details until they are seated at the com-puter. Thus a considerable amount of the computer's timemay be absorbed in the unproductive task of preparing ob-ject programs that could just as easily have been generatedoff line. Therefore the use of an editor program should berestricted to quick program changes under all situationswhere the computer has a high use factor.

710

Page 12: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

3-2.4 COMPILERS AND INTERPRETERS

Machine and assembler language programs require a con-siderable amount of special skill to develop. Several higherlevel programming languages have been designed so that aprogram may be written as a set of program statements thatclosely resemble the form of the mathematical statementsthat are used to describe the problem under investigation. Aspecial program must then translate the source program intoa form that can be used by the computer. There are twogeneral types of translator programs: compilers andinterpreters.

A compiler takes the input source program written inthe higher level language (usually FORTRAN for mostminicomputers) and converts it into an object program thatmust be put into the computer by a special loader program.Because of the usually severe memory limitations present inminicomputer systems, the compiler is usually of only mini-mal capability. This usually means that only a strippeddown version of the full language can be used. The com-piled object program is also often very inefficient since thecompiler program is not large enough to carry out any pro-gram optimization. Compilers are useful in situations wherethe need to obtain a working program in a sho,-t period oftime is more important than developing an optimizedprogram.

An interpreter is a translator program that accepts pro-gram statements (usually in BASIC, but possibly FOCAL*),stores them in memory in alphabetic form, and interpretsthem as numerical commands as it executes them. Inter-preters have more flexibility and ease of debugging thancompilers do, but they are slower and often do not offerthe same range of capabilities as compilers.

One of the biggest problems encountered in the use of acompiler is the time it takes to process a source languageprogram. The time can be quite long depending upon theconfiguration of the computer used and the design of thecompiler. The basic system involving a minimal machinewith paper tape input can require up to 20 minutes to loadthe compiler into memory before processing starts. Fromthis we see that it is impractical to plan on using higherlevel languages such as FORTRAN on minimal machines.The amount of time can be reduced by using higher speedinput devices such as a high speed paper tape reader or adisk.

Interpreter programs also take a considerable amount oftime to load on minimal machines. However once the pro-gram is loaded it remains in memory while all of the sourceprograms are executed.

An interpreter which allows the insertion of machine lan-guage subroutines in the execution sequence is desirable ifthere is a need to be able to operate any special peripheraldevices the computer may have. This is a job for a reason-ably skilled programmer.

Many of the iuterpreters supplied with minicomputersdo not have this capability. Like assemblers and compilers,interpreters have a specific range of applications where theyare well suited, but for others they are quite useless.

* FOCAL is the interactive language of Digital Equipment Corp.

3-2.5 DEBUGGING PROGRAMS

Debugging programs allow the programmer to run a newprogram under control to check to see if it runs correctly. Awide range of errors can be corrected by typing simple com-mands from the keyboard. The use of debug programs is amatter of personal style. They are very useful in introduc-tory courses since they allow the student to ilvestigate theoperation of his program under actual operat .ng conditions.Some debug programs work on machine language users pro-grams. Others use the symbol table of the compiler or as-sembler to allow one to examine quantities by name with-out looking up the actual memory locatiol in a programlisting. In computers with disk or tape bu k storage, thedebug packages of some manufacturers c minate much of 'the need for printing.

3-2.6 SPECIAL PURPOSE PROGRAMS

A library of math subroutines can be useful even if acompiler language is not the principal mode of operation ofthe machine. Trigonometric, statistical and polynomial-algebraic subroutines may be useful for projects involvingscientific applications. A subroutine library editor is usefulfor maintenance of the system library in scientific appli-cations. In projects, where programs tend to become large,a good library editor can save machine time by encouragingprogrammers to prepare private libraries. For other appli-cations, a library editor is less important.

When a much larger computer system is purchased withsome form of secondary storage then additional software isneeded to make efficient use of the system. A file systemor disk operating system (IDOS) provides a way of allo-cating space in a disk and accessing it by name rather thannumerical address. A system executive program or monitorprovides a way of calling in programs from magnetic tapeor disk. A real-time executive provides a means to swap dif-ferent parts of a large program into and out of main mem-ory from disk thus allowing secondary storage to substi-tute for primary memory. "Real time" for one applicationcan be intolerably slow for another. If an application needsjob-swapping software, the mar.ufacturer's version of it maystill not suit those needs or the machine configuration.

3-2.7 EDUCATIONAL SOFTWARE

The major problem with softwaresupplied by a manu-facturer is that each program is designed to carry out onetype of task on a large problem. Most educational appli-cations, particularly at the introductory level, deal withshort, student generated programs in which it is common tofind a large number of errors. Special teaching software isdesirable to minimize the amount of time a student mustspend in locating and correcting these errors and in testingthe program to prove that it is operating properly. Com-bined editor-assembler-debugging programs are useful forsmall programs. In this case the student can create, debugaid run a machine level program in an interactive manner.Programs of this type are usually not supplied by the manu-facturer, except for the larger machines with some form ofbulk storage such as a disk, and must be developed locally.

8

11

Page 13: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Sometimes useful educational software can be obtainedfrom the user groups that have been formed by the differ-ent manufacturers. There is, however, a definite need todevelop better ways to handle the exchange of softwareand software ideas between schools.

The teaching process is another way in which specialpurpose software can be developed. In each class there areusually a few very enthusastic students who really enjoysoftware development projects. If a list of "needed soft-ware" is developed, it serves as a source of project work forthese students. Whenever any software is developed it is im-perative that it be properly documented. This documenta-tion should include a complete commented listing of theprogram, a flow chart, a discussion of how the program isorganized and how it is used. A project should not be con-sidered complete until this documentation is finished. If thesoftware developed has any general use it should be sub-mitted to an appropriate users group for general distribu-tion. The "honor" of having a program selected for sub-mission is often an added incentive for the student to do agood job on the project.

3-3 PRIMARY MEMORY AND CNETRAL PROCESSORATTRIBUTES

The primary memory and central processor form thenucleus of any computer system. Once a decision is madeconcerning these two units a complete pattern is set for thespecification of all other system components. This sectionexplores the important attributes associated with primarymemory and the central processor and indicates which at-tributes are of particular importance in selecting a computerfor use in an educational program.

13.1 PRIMARY MEMORY

The basic information storage element in a computer canstore a signal with a value of either 0 or 1. Usually more in-formation thrm this must be stored. To do this the storageelements are grouped together to form a register. A registerwith n storage elements is called an n-bit register. The mainmemory of a computer has a large number of identical reg-isters arranged in an orderly manner, something like a collec-

tion of post office boxes. Most of the memory systems aredesigned so that each register in the memory is directly ac-cessible to the central processor. Each of the registers in thememory holds one word of information. The word length ofthe memory is the size of the basic register and the memorycycle time is the time required to access any memory word.

There are three important attributes of primary mem-ory which influence the operation of the computer and thetypes of problems it can solve. They are:

a) The word length measured in bitsb) The memory size measured in wordsc) The speed or data rate measured in terms of

cycle timeCurrently most primary memories are constructed usingmagnetic co, a technology. In the future there will probablybe a shift to integrated circuit memories as integrated cir-cuit technology develops better memory units at lowerprices.

For every application there can be an optimum wordlength. However, if the computer is to be used in a widerange of different situations it is not possible to select anoptimum length. In this case the criterion is to select thelargest word length possible within the financial constraintsimposed by the fact that memory price increases directlywith word length.

Since word length has a strong influence upon the typesof tasks that computers can perform, it has often been usedto provide a rough method of machine classification. Oneclassification [Ref. 8) that has been suggested is given inTable 3-1.

The length of a computer word influences how data andthe machine language instructions executed by the pro-cessor are stored in memory. A word should be largeenough to hold and allow manipulation of data (which use

multiple words to form larger data strings) and also hold theinformation needed by the processor to execute an instruc-tion.

Memory size is somewhat similar to word length in thatlarger memories allow larger programs and more data to bestored. The minimum memory size selected for a general

purpose system is 4K words (here K stands for 1024=210).Such a size is both large enough for most student projects

Table 3-1

Possible Classification ofSmall Computers

Max. addressableName INcrd length primary memory

(words)

micro . 8 12 bits 4K

mini 12 16 bits 32K

midi 16 24 bits 65K 128K

Note:

Number of registersin central processor

(words)

2

2 4

4 16

K = 1024=210 when referring to information storage capability.

91 2

Data-type

integers, words,boolean (bits)vectors (viaindex registers)double lengthintegers (andoccasionallyfloating point)

Page 14: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

(since even the most facile programmer can probably codeless than 100 instructions per day) and the systems pro-grams necessary to support this programming effort. Moreadvanced applications will require larger memories to holddata and large programs. Currently the cost of add-onmemory installed after the initial delivery of the computeris minimal for most new computers. Thus a safe policy maybe to start with the minimal memory size of 4K and thenplan on adding additional memory as system needs grow.

In selecting a computer system particular attentionshould be paid to the cost involved in adding extra corememory to the system. In some computers the cost of

adding an extra 4K of core memory is almost equal to theprice of the basic machine. In some of the newer systemsadditional core memory can easily be added at moderatecost without any modifications to the original machine.

Memory size is perhaps most important as it affects theavailability and capability of software supplied by the man-ufacturer. Therefore, if one or more manufacturer suppliedsoftware packages are considered to be of importance to theoverall laboratory effort, it is important to make sure thatadequate memory capacity, as well as other required com-ponents, is available to accommodate these softwarepackages.

Memory speed, or inversely, the memory cycle time, is a

measure of how fast the processor can place information inmemory or remove it from memory. This is probably thecomputers' least important parameter for most of the edu-cational activities considered in this report. Currently theaverage memory has a speed of about 1 megahertz, or acycle time of 1 microsecond. Since most of the input-output devices are usually quite slow and only minimallength computational tasks will be performed by the sys-tem, it is hard to justify additional cost for a factor of twoor even three in speed. There are a few conditions, such as

realtime experiments, where high data rates may form aparticularly important part of the computational load of thesystem. For these cases speed might be a much more criti-cal parameter.

3-3.2 THE PROCESSOR

Perhaps the single most important consideration of thecentral processor is its console. The console is the com-ponent through which the user communicates with thecomputer in the "hands on" mode of operation. The con-sole has switches for information inputs, and lights to viewresults. It is desirable to have all the registers which maycontain meaningful information for the user to be indicatedon the console. The switches should be very durable (acommon failing of minicomputers) and similarly the lightsshould be mounted to allow easy replacement. The designshould be conservative so the lights will not to burn outreadily.

The processor is somewhat less important than the pri-mary memory because it is constrained by memory attri-butes. The processor word length and speed are almostalways locked to the properties of the primary memory as-sociated with the processor. Each processor will have anumber of design "features" that are singled out by the

manufacturer as making their particular machine betterthan that of a competitor. The features of competing pro-cessors are often very hard to evaluate. The best (and al-most only) method of evaluating processors is to write andrun a set of representative programs (called benchmarkprograms) on each processor and compare overall results.This is extremely difficult to do since these benchmarksmust be representative of all the types of jobs a machinewill run over its lifetime. An even more important bench-mark consideration is deciding on the language of thebenchmark. For example, while a machine may have a num-ber of nice features, the FORTRAN compiler supplied bythe manufacturer may not use them hence they areworthless if programs being run are written in FORTRAN.The selection of a processor for instructional use can usu-ally be accomplished without this elaborate evaluation pro-cess. The main consideration in this case is that the pro-cessor have as many features as possible, consistent withother requirements, that will expose the student to a widerange of programming techniques.

The machine language instructions executed by the pro-cessor are represented by a bit sequence. These instructionsare stored in memory and each instruction will occupy oneor more computer words. Thus the memory required(hence, cost) to hold a program to carry out a particulartask can vary by a factor of two or three. Therefore theorganization of the processor is an important factor in thisregard and cannot be totally ignored.

In order to get higher program "code" density (i.e., thenumber of bits to hold a program that performs a givenfunction), more sophisticated means of accessing memoryare usually added to the processor. These features can

cloud the initial exposure for the student. Ideally, if multi-ple computers are available, a student might start with a

very simple, minimal computer, such as a PDP-8, and thenlater be introduced to a computer with more advanced fea-tures, such as index registers and multiple general purposeregisters. The features relating to program "code" density,are usually features of the instruction set, and these aregiven in Table 3-2.

The ability of a processor to access and operate rapidlyon a large number of data types, such as bytes, character

strings, integers and floating-point numbers, is a main fea-ture of a processor. All of the operations needed to operateon any data type can be realized by programs. In manycases special hardware capabilities can be included in theprocessor to handle special tasks. For example built-in mul-tiply and divide operations are often useful for several typesof high-data-rate real-time processing. Similarly, if a ma-chine is to be used for very general computation, floatingpoint arithmetic is useful. The floating point feature is usu-ally not found in current minimal machines, and althoughimportant for certain applications, must be carefully justi-fied if an additional cost is involved.

Most basic machines are designed so that any informa-tion contained in a memory location can be modified if theinstruction being executed by the processor indicates thatthis should be done. There are many situations where it isdesirable to protect the information in one or more mem-ory locations from being changed. This is particularly true

1 0

1.3

Page 15: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Table 3.2Computer Features Useful

(and Necessary) to IllustrateVarious Techniques

1. Multiple processor registers. General registers whichallow use as accumulators, indexing registers, programbase, and stack registers. (Used in larger compilers).

2. Data-types and data operators.a. Stacks. Useful for subroutines calling and storage,

and teaching recursion.b. Bytes and character strings. Useful in teaching

about translators, and communication equipment.C. Multiply and divide operations. (Problem

dictated).d. Double and multiple precision arithmetic.e. Floating point arithmetic.

3. Addressing modes (e.g., immediate, indexed, indirect).Used in larger computers.

4. Program protection and relocation. Various schemesranging from: a protect bit per word (s), to base andsize (relocation), to a set of page registers, to segmentname registers are useful. Each allows various (increas-ingly more complex) principles to be illustrated.

5. Program interrupts. Multiple levels are useful both toillustrate the principle of concurrent operation and forparticular applications.

if work is being done on systems that will allow multiple,independent programs to be operated in quasi parallel (i.e.,by rapidly switching from program to program). To allowthis ability requires that the processor have some form ofmemory protection capability.

A number c. degrees of protection can be providedranging from fully programmed protection (which may re-quire a significant amount of the processor's capability) tovery general hardware, which provides an environment foreach program as though it were running by itself. Whilehaving this facility generally available may be an asset, itcan probably only be justified if the computer is to be usedfor serious multiprogramming operating system projects.

Some newer computers are organized about micropro-gramming principles. A small, fast, internal (micropro-grammed) processor is used to provide a basic set of hard-ware operations. Each instruction in the instruction setthat the machine user sees is implemented as a micropro-gram consisting of a sequence of these basic hardware oper-ations. The definition of the user instruction set is accom-plished by defining a microprogram for each instruction.These programs are stored in a fast, usually read-only,memory. The user's program is then written in terms of theinstructions contained in the resulting instruction set. Thisprogram is held in a conventional memory and is executedby the processor in the conventional manner.

Microprogramming can be used to provide variations inthe instruction set available to the user. However, in mostcurrent computers the lower level microprograms reside inread-only memory, thus it is usually a difficult and/ or ex-pensive task to change them. From the viewpoint of pro-

gramming there is no conceptual difference between amicroprogram machine and a conventional machine. In factthe instruction set of many minicomputers are often veryclose to the basic instruction set of a microprogrammedprocessor. Should a microprogrammable machine be se-lected where the user can change the instruction set, thenone must be prepared to provide local software support forthe machine.

If the microprogramming of the instruction set can beeasily changed this becomes a very handy feature for ex-perimental work by students interested in computer de-sign. However a standard instruction set should be definedfor all other applications.

One of the major tasks of the processor is to be able tocommunicate with external I/0 devices. These devices maybe the standard I/0 devices needed for regular operation ofthe computer or they may be specially designed devices de-veloped by students as part of a project. Thus the ease withwhich a processor can be interfaced to these devices is animportant feature of the processor and should be carefullyconsidered.

Normally data is transferred by (1) the processor issuinga command to the input-output device, (2) the device acti-vating an interrupt sequence that causes the procesor to is-sue the proper information transfer commands to the input-output device, (3) the processor and the device operatingindependently and in parallel. In all these cases the flexibil-ity of the computer is strongly influenced by the ease withwhich these different types of transfers are performed.

The first two transfers are programmed informationtransfers. The processor must be able to select the device tobe used and then send out the necessary commands to ac-complish the transfer. A processor should be selected whichis designed so that a wide range of devices can easily be in-terfaced to the computer and controlled by the programmedinformation transfer facility.

The interrupt facility simply switches the program cur-rently operating to an alternative program which is asso-ciated with the interrupting device. The important attributeis the interrupt response time, which is the time betweeninterrupt request and the time the interrupt is acknowl-edged. Since all computers have this facility, it is hard todifferentiate among them. However, both the capabilityfor the interrupt to transfer program control to a uniqueprogram associated with the interrupting device, and theprovision of a number of interrupt levels so that relativepriorities between input devices may be established are de-sirable features. They simplify coding, illustrate good pro-gramming principles and require less programming overheadthan simpler interrupt methods. For the neophyte, how-ever, programming for a multilevel interrupt system can bequite difficult and take considerable debugging time to cor-rect programming errors. All of the features of an interruptcan be realized on a one level interrupt system by pro-gramming techniques at an increase in interrupt responsetime.

For the parallel transfer of information it is necessary tohave a direct memory access link (bus) associated with theprocessor. This link is required if high data rate devicessuch as disks or tape units are to be used with the com-

1

14

Page 16: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

puter. The capability of using direct memory transfer isalso desirable for use in more advanced laboratory work.

The physical characteristics of the direct memory accesslink, like that of the program controlled input-output link,are the most important consideration. In some computersboth links use the same cables or bus (e.g., a unibus). Thisallows the student flexibility in designing the interfacewithout drastically affecting the cost. In other computersthe direct memory access link is completely separate andrequires special interface uffits for each device that is to beconnected to the link.

An often overlooked property of any interfacing ar-rangement is the way that the physical connections aremade between the computer and the external device. Thisfeature is a very important part of an input-output inter-face that will be used by students in carrying out projects.Here, the user should consider the cables, connectors, logictype, and general construction of the machine as it pro-vides for ease of interfacing. The cables and connectorsmust be robust if they are to stand up to normal studentuse and misuse.

Student projects will take on a variety of forms. Theinterface should be designed so that student designed and

other special hardware can be easily attached to the com-puter. In particular, a well defined standard interfacingpolicy should be established so that the students will have a

design standard to follow when they are developing a sys-tern that must be interfaced to the machine.

Table 3-3 summarizes the important attributes of theprimary memory and central processor that should be con-sidered. The relative importance of each attribute in theevaluation of a computer is indicated on a scale of 1through 4. A rating of 1 indicates that the attribute is veryimportant to the overall operation of the system and shouldbe considered in detail when evaluating a given computersystem. A rating of 2 indicates that the attribute should becarefully considered while an attribute with a 3 rating maybe of importance under some conditions. An attribute witha rating of 4 is usually of minimal importance in selecting acomputer system.

14 Basic Input/Output Devices

The most critical part of a computer system, from aneducational viewpoint, is the method used to provide com-munication between the student and the computer. Each

Table 3-3Computer Attributes and Their General

Importance to Teaching

Component Technology Attributes Rating

Primary memory Core and possiblyintegrated circuitry

Memory size: 4K*, 8K, >16K words

Word length: 8,12,16*,18,24bits

1

2

Memory speed: 1.0 microseconds 4

Console (light and switch robustness) 1

Central Integrated Instruction-set (general 2Processor (CPU) circuitry Data-types: words, integers,

real addressing modes (methods)

registers (accumulators, index,general purpcse)

Protection and relocation 3

Microprogramming 4

Input/output Programmed input-output link 1

access link Interrupt response time 3Cables, connectors, and access 1

Direct memory General 3access link Cables, connectors and access 1

Maximum speed 3

*Average value

Rating Scale1 - Very important; 2 - Look at carefully; 3 - May be important; 4 - Usually ignore.

12

15

Page 17: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

computer system will need some equipment to accomplishthe following basic input/output tasks (roughly in the orderof importance)

A. A means to load system programs such as as-semblers and editors.

B. A means to read student prepared sc..irceprograms.

C. A means for the student to interact with thecomputer.

D. A means for printing or displaying listing ofcomplete programs.

There are a number of ways that these tasks can be per-formed. The selection of input/output devices for a partic-ular system should therefore be approached from the view-

point of long range educational efficiency rather than theminimization of initial cost.

Every computer system must provide at least the follow-ing minimal input/output capability.

A. A keyboard which may be used to enter informa-tion and interact with the cemputer.

B. A printer or other alphanumeric display device tooutput messages to the user.

C. A means for entering machine readable programs.D. A means for outputting permanent machine read-

able programs.

The standard input/output device usually found on aminimal minicomputer system is a teletype with a paper-tape reader-punch. Such a unit carries out all of the neces-sary input/output tasks. A teletype is, however, quite slowand leads to inefficient use of the system for the type oftasks considered in this report.

The three basic methods of external program storagethat are in widespread use on minicomputers are:

A.B.

C.

Paper tape

Cards

Magnetic tape (small tapes and cassettes)

The selection of a method of external program storagenot only influences the type of input/output device thatmust be included on the computer but also influences thetype of equipment that is needed for the off line prepara-tion of programs.

This section will present a discussion of the advantagesand disadvantages of a number of different input/outputdevices. The emphasis of th6 discussion will be upon theusefulness of each device as part of an educational com-puter system. The comments on overall performance capa-bilities of the different devices are independent of systemapplication. However, the usefulness of a particular deviceas a system component is strongly influenced by plannedsystem use. Thus, if the planned computer system mustserve other needs, every attempt should be made to matchthe I/0 equipment to the type of information that must behandled by the system. In selecting any I/0 equipment forstudent use the ruggedness of the equipment is perhaps oneof the single most important characteristic to be considered.

13

3-4.1 TELETYPES

Because of their low initial cost, teletype units havebecome standard as the input/output device of many com-puter systems. The unit actually consists of two subunits;an input unit consisting of a typewriter type keyboard andpaper tape reader, and an output unit consisting of aprinter and a paper tape punch. One input and one outputunit can usually operate in parallel at a rate of 10 charac-ters (or bytes of 8-bits) per second.

The keyboard/printer is used to allow the user to com-municate directly with the computer while the paper-tapeis the basic media for external program storage.

The ten character/second typing rate is not a problemwhen information is to be typed into the computer sincethis far exceeds the typing capability of any student. Thisrate can be painfully slow when a student is waiting for thecomputer to read in a paper tape, to print out informationor to punch out a paper tape. In fact this low data rate canintroduce serious inefficiencies in the use of the computersystems.

A considerable amount of programming effort involvesthe use of system programs such as assemblers, editors orcompilers. A typical program of this type may contain6,000 characters. The task of reading in this program re-quires 10 minutes of readin time at a 10 character/secondreading rate. The FORTRAN compiler for some computersrequires almost a half hour of read-in time each time aFORTRAN program is processed. Similar delays occurwhen a large program listing must be printed or a long ob-ject program must be punched on paper tape.

If a teletype must be used as the primary input/outputdevice, then every effort should be made to minimize theamount of time needed to execute an information transferoperation. This can be accomplished by eliminating asmany unnecessary characters as possible from the informa-tion stream (i.e., comments from listings, long characterstrings for mnemonics, spaces on tapes etc.).

There are a number of ways the bottleneck introducedby the teletype can be removed. Unfortunately an increasein speed also means an increase in price. Several useful al-ternatives to one or more input/output functions of the tele-type will now be considered.

3-4.2 HIGH SPEED PAPER TAPE READERS ANDPUNCHES

The standard input on most minicomputers has beenpaper tape. One way to speed up the input process is to usea high-speed photo-electric paper tape reader. These readersare 30 times faster than the standard teletype reader. Thusa program that requires 30 minutes to be read on a teletypereader can be read in 1 minute by a high speed reader.

High-speed paper tape punches can speed up the outputprocess of generating a paper tape. Unfortunately high-speed punches are only about 5 times faster than a teletypepunch. If a choice must be made it is much more desirableto add a high speed reader to the system before a high-speedpunch since much more information must be read frompaper tapes than punched onto paper tapes in carrying outnormal assignments.

Page 18: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

When paper-tape is used in a system one or more spareteletypes should be available for the offline preparation ofsource tapes and printing of output listings. The off-linegeneration of tapes has the drawback that it is very hard tomake corrections on tapes.

3-4.3 CARD READERS AND CARD PUNCHES

There are two types of card inputs that are available:mark/sense cards and punched cards. Mark/sense cards re-quire the student to use a pencil to darken boxes on thecard corresponding to the character or character sequencehe wishes to indicate. This method of card preparation isvery tedious and time consuming. Thus, mark/sense cardsare of limited value in any applicat:on involving programswith a larger number of statements. The addition of a

mark/sense card reader should only be considered if thereis a special need for such a device to handle a specific classof problems not associated with the general education ac-tivities planned for the system.

There are now several low cost card readers that areavailable for use with minicomputers. These readers haveabout the same data rates as a high speed paper tape reader.The main problem with a punched-card card-reader is theneed for some method to prepare the cards.

An offline card punch is more expensive than a teletype.Cards are much more convenient for correctinp and editingbut listing and proofreading cards offline is a problem. Theediting speed advantage may allow one keypunch to serveas well as two teletypes.

The card reader should be selected as the high speed in-put device if it is possible to easily use the facilities of thecomputer center to take some of the load off the mini-computer. This can be done in a number of ways. For ex-ample, the minicomputer's assembler program can be simu-lated on the computer in the computer center. This pro-gram can then be used to carry out preliminary assemblyand debugging (through removal of errors in the assemblylanguage statements) tasks. This simulation program willprobably have to be developed locally. It is also possible touse the computer center's printer to obtain offline listingsof programs. This approach will reduce but not eliminatethe need for paper tape or magnetic tape input/outputfacilities on the laboratory computer.

Whenever a card reader is used there is always a need tohave a local card punch facility for students to preparecards. This may be either a standard key punch (which israther expensive) or one of the manual punches (which re-quires the student to punch the actual binary code) thatare available. The addition of a card punch to the mini-computer as an output device is very expensive.

3-4.4 CASSETTE AND OTHER SMALL MAGNETICTAPE UNITS

In recent years the cassette magnetic tape has beenadapted for use as a data storage medium. A digital cassettetape unit is about as expensive as a card reader and hascomparable data rates. Cassette tapes provide a very com-pact means for storage of large amounts of program mate-rial. In the past some of these tape units have displayed

marginal reliability. Thus particular care should be taken ifit is decided to purchase this type of unit. The technologyin this area is advancing rapidly and some of the earl./ prob-lems will be eliminated in the near future if they have notalready been corrected.

Cassette tapes are ideal for the storage of computer gen-erated information and system programs since informationis easily transferred between the computer and a tape. Atpresent the preparation of cassette tapes offline or theoffline listing of a progi am stored on a tape presents a prob-lem. However, if offline preparation and listing techniquesbecome better developed this form of input and output willbe one of the better all around input/output mediums forminicomputers.

Other conventional tape units are also available for useon minicomputers. Some of these units use IBM compat-ible tapes and provide both high data transfer rates and highreliability. The cost of these tape units is somewhat higherthan a cassette unit but the greater flexibility, speed andusefulness in some particular applications may justify theadded cost.

3-4.5 DISPLAY TERMINALS AND HIGH SPEEDPRINTERS

When a student is waiting for output information fromthe computer, the 10 character/second printing rate of theteletype can be painfully slow. There are two types of out-puts needed. During the time a student is working with thecomputer there is a need for the transfer of messages be-tween the computer and the student informing him of theoperation of his program. These messages are for informa-tion purposes only and do not need to be saved. At the endof a program development or the completion of a giventask there is usually a need for a complete program listingor the printing of an extensive amount of other informa-tion. This information must usually be in a permanentform.

A number of graphic display terminals using storageCRT displays are currently on the market for a little morethan twice the price of a teletype. These terminals are wellsuited to the normal computer-student communication re-quirements. The use of these terminals can often reduce theneed for a large number of print-outs during a work session.At the end of the session a single print-out will be needed.

A teletype is a very slow device for printing completelistings of programs. If a teletype must be used then every ef-fort should be made to reduce the amount of printed out-put information that is required in a program. If some formof high speed output is available, such as a high speed tapepunch or card punch or a cassette tape unit, it may be pos-sible to record the desired output information and do theactual printing offline. The facilities at the computer centermight help with this problem.

Several moderate.cost, medium-speed printers have re-

cently been introduced. These printers, which operate atspeeds up to 300 lines a minute, can significantly reducethe amount of time the computer must spend generatingprinted output. If a number of minicomputers are used inthe same laboratory, the z,verall cost can be reduced if the

14

17

Page 19: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

printer can be used on a time-shared basis by all of thecomputers.

3-5 Expanded Memory and Secondary Storage

A minimal computer system with 4K words of memoryis satisfactory for most introductory and many intermediateand advanced projects. Extra memory, however, introducesmany advantages and should be considered next in impor-tance to having high-speed input/output capabilities.

Memory capacity can be expanded in two ways: by theaddition of more core memory or by the addition of sec-

ondary memory units such as magnetic disks, magnetictapes or magnetic drums. Three important parameterscost, speed and capacitymust be considered in selectingthe method to be used to add additional memory capacityto the system.

3-5.1 CORE MEMORY

Additional core memory will be needed as the systemexpands and more sophisticated projects are undertaken.When secondary memory units are added, extra memoryspace is required to hold the software systems associatedwith these units if adequate memory space is to be providedfor users' programs. At least 8K of memory should be pres-

ent on an expanded system. However, 12K or 16K of mem-ory would be even better. The cost of expanding memorybeyond 16K is usually not justified for an educationalsystem and the money is better spent on expanding the

secondary storage capabilities of the system or adding otherfeatures.

The addition of core memory is the most costly way ofexpanding the system's overall storage capability. Thus oneapproach might be to first expand the memory to 8K, thenadd some form of secondary storage and then add an addi-tional 4K to 8K of core memory.

3-5.2 SECONDARY MEMORY

The availability of secondary memory in a computersystem provides considerable flexibility for the system.Secondary memories may provide one or more of the fol-lowing four functions:

(a) Holding programs and program libraries for fast,easy access.

(b) Bulk storage of data for later use.(c) As a media to temporarily hold parts of one or more

programs while another program is being run.(d) Communication with another computer (i.e., a reel

of magnetic tape can be used to transfer informa-tion from one computer to another).

All of these functions provide for greater flexibility andspeed when the computer system is in use.

There are three common types of secondary memory.They are:

(a) magnetic tape(b) magnetic disks(c) magnetic drumsAs has been previously discussed, magnetic tape units

can serve as large information storage units. Another advan-

tage is that the tapes can be easily transported from oneunit to another or interchanged. In this way each user canbuild up an individual file on a tape and then take it withhim when he completes his use of the computer.

Disks and drums have essentially the same capability asfar as the system is concerned. They can store a largeamount of information in a relatively small space. Thestorage medium (disk or drum) is permanently connectedto the computer and hard, if not impossible, to remove.

The access time is the most critical parameter of second-ary memory. This is the time between a request for infor-mation and the availability of the information. Disks anddrums have the lowest access time since all information isno more than a revolution away. The access time of a tapeis a variable depending upon how much of the tape must besearched before the information is located.

Data in secondary memory is usually stored in blocks.Once a block of information is found the characters thatmake up the information stored in a block must be trans-ferred to the main memory. The data transfer rate (incharacters/second) then indicates how fast informationcan be transferred once the block in which it is stored islocated. The data-rate characteristic of a device is of lesserimportance because it is usually dominated by access time.

The total time, t, to transfer a block of information istherefore

block-length (in characters)t = access time +data-rate (in characters/second)

Table 3-4 compares the relative capabilities of the differentsecondary memory units. These units may serve any one ofthe following four functions:

p - long term program storaged - data (result) memorys - swapping memory which holds programs that are in

the process of being executed but are currentlyinactive

i - interchange memory which is used to carry datafrom one machine to another

For most teaching use, program memories are importantbecause they facilitate handling of the programs themselves.Memories used for holding data are also important becausethese can extend the computer's primary memory by pro-viding a temporary storage for later processing, (usuallymagnetic tape). The use of memories for interchanginginformation may be important since this permits usinglarger facilities. For example, small computers have tradi-tionally controlled and gathered data at an experiment; thedata is then carried to a large machine for final analysis.Disk memories are often used to hold one or more programswhich are temporarily inactive. This use probably occurs inthe larger computers' configurations when several users aresimultaneously sharing a single computer (time-sharing).

3-6 Other Peripheral Devices

The usefulness cri a minicomputer as a teaching devicedepends to a considerable extent upon its flexibility. Thereare a number of special purpose peripheral devices thatallow the minicomputer to be connected as part of a larger

15 48

Page 20: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Table 3-4

Attributes of Secondary Memory

Device Memory Size(char)

Cassette

Tape

Addressable*Mag. Tape

Conventional*Tape

Disk pak*

High per-*formancedisk, ordrum

Access Time Data - rate Function**

Sequential 300ch/sec

500K Sequentialat read speed 15K ch/sec p,d

1-10 million Sequentialat read speed 4K - 1.2

millionch/sec

800K up 1/4 sec or 24K 120Kfaster ch/sec

32K-800K 1/20-1/60 sec 120K - 3millionch/sec

p,d,i

p,d,3

d,s

* Usually requires DMA channel because of high data rates.

** p - long term program, d-data (result) memory, s-swapping memory which holdsprograms that are in the process of being executed but which are currently inactive,i - interchange memory which is used to carry data from one machine to another.

external system. The range and number of these peripheralsdetermines, to a large extent, the types of problems thatcan be solved with the computer.

The price of many of the peripherai devices are decreas-ing while overall performance is increasing with time. There-fore it is often advantageous to wait until a particular deviceis needed before it is purchased. This, of course, assumes

that the extra installation cost associated with adding a

device at a later time will not make the addition of thedevice excessively more than the cost of the device if it isinstalled at the time the original machine is purchased.

The following devices have been found to he particularlyuseful. The operational characteristics included in the dis-cussion represent those that can be expected from currenttechnology.

A. Analog-to-digital (A/D) Converters: An A/D con-verter transforms an analog signal into a digital signal.The important parameters are sampling rate (samples/second), conversion time (seconds) and resolution(bits/sample). A 10 bit AID converter with a conversiontime of 10 to 20 microseconds should be sufficient formost applications.

The flexibility of an A/C coiwerter can be im-proved by using a multiplex switch to allow more thanone input analog signal to be connected in sequence tothe A/D converter. A 4 to 6 channel switch is usuallysufficient for most applications.

B. Digital-to-analog (D/A) converters: A D/A con-

16i9

verter transforms a digital signal into an analog signal.The important parameter is response time which shouldbe in the range of 3 to 5 microseconds.

It is often desirable to have from 4 to 6 D/A out-put channels. Each channel should be connected to aseparate buffered D/A converter so that the outputvoltage remains constant until the computer changes thevalue of the output by placing a new digital signal in thebuffer.

C. External Timer or Clock: An external timer orclock is almost a mandatory option because it providesthe computer and program with knowledge of actualtime. Experiments in communication, instrumentation,control, etc., usually require "timing" cap ibilities.

To provide maximum flexibility the dock shouldbe under computer control so that it can be stilled orstopped on command. It should aiso be able to generatetiming pulses strings with a controllaole peridd from a

few microseconds to seconds.

D. Relay Closures and Contact Sensors: These de-vices provide switching that can be used to start and stopexternal processes or sense when a certain task has beencompleted.

E. Graphical Input Devices: A number of specialpurpose tablets have been developed to allow a user toenter graphical information concerning the position of aspecial "pen". These devices are of somewhat limiteduse on small computers but they can be very useful for

Page 21: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

situations where a large amount of graphical input infor-mation must be entered into the machine.

F. Displays: CRT displays provide a ve-y useful out-put medium when used in connection with D/A con-verters. For small computers the storage scope displayunits are best since they do not need to be continuallyrefreshed.

G. Plotters: X-Y plotters are useful when graphicaldata must be recorded. Some of the X-Y plotters de-signed to work with analog signals are able to workdirectly with signals from D/A converters. Howeverothers are not suited to this type of signal. Any plotterused with a computer should have a pen that can beraised and lowered under computer control.

H. Student Interface Connection: When a student isworking on different types of input/output projects, it isnecessary to allow him to use all of the different input/output facilities. Thus, standard connectors should beavailable so that the student can interconnect the equip-ment that he has developed to the appropriate data orcontrol line in the computer. All control and data linesbrought out to this connector should be fully bufferedand protected so that the student cannot damage thecomputer through carelessness or mistakes.

It is also useful to have one or more data bufferregisters that can be used as general interface registers. Inthis way it is possible to minimize the amount of hard-ware that the student has to develop and allows him toconcentrate upon the particular information transfertask on which he is working.All of these devices can usually be added to a computer

system after the initial purchase of the machine. Thus, inselecting a basic system the cost of future expansion to in-clude one or more of these devices should be considered.

3-7 Additional Consideratiors in Minicomputer Selection

The task of selecting a minicomputer involves a numberof considerations. The primary objective is to purchase thebest computer to satisfy a given educational objective. How-ever, there are a number of other related factors that willdetermine the effectiveness of the computer in satisfyingthe educational objectives for which it was purchased. Thissection will consider these factors.

3-7.1 SITE SELECTION

Although the physical size of most basic minicomputersis such that they could easily be placed on a bench in alaboratory, past experience at a number of schools has indi-cated that it is best to buy a minicomputer installed in a

regular floor-rack. This approach serves a number of impor-tant purposes.

The computer is the focal point of a number of activities.If it is rack mounted, an area in the laboratory can be re-served exclusively for its use. Since there are usually a largenumber of people using the computer, an area should beselected that will provide enough work space for workingon programs while riot actually on the machine. It is alsodesirable to have the area organized in such a way that it ispossible to use the computer "after hours". Many depart-

ments have found that their minicomputer is used 24 hoursa day if provisions can be made to allow students access tothe machine at night.

One of the main advantages of a minicomputer is itsusefulness as a systems element. As indicated previously, a

number of projects will probably be developed where thecomputer must be interfaced to other hardware. If the com-puter is rack mounted it will take up less than a fourth ofthe rack area, leaving enough space for added peripherals as

well as a standard interface arrangement that wiil make iteasy to interface the computer to student projects.

The amount of floor area needed for the minicomputerdepends to a considerable extent upon its use. If the mainuse is as a stand-alone computer for running software

projects then adequate space must be provideci for easyaccess to the input terminal and any peripheral deviceswhich the operator must use.

When the minicomputer is interfaced with external hard-ware it is necessary to have a considerable amount of spaceavailable in the laboratory to accommodate the hardware.There are two ways to meet this need. If the laboratory islarge enough, laboratory work bench area in the lab can beassigned to each project. The whole project is then devel-oped in the laboratory and can be connected to the com-puter through a cable run from the work bench to the com-puter. One should not, however, underestimate the amountof space needed tor each project. Experience has shownthat each project will typically require a six foot long workbench area. This space will be tied up by this single projectuntil it is completed. When the hardware development can-not be accommodated in the computer room, provisionshould be made for the use of either a rolling table to bringequipment into the room or cable connections between thehardware area and the computer area.

The interaction of the computer with experiments in re-mote laboratories is often necessary when the experimentsinvolve special purpose equipment. For low speed transmis-sion up to 1200 baud, telephone lines and data modems canbe used. Twisted pair cable can be used up to approximately1 MHz. Coax cable can be used for data up to several mega-hertz.

Conventional room air conditioning can normally handlethe temperature/humidity requirements for basic minicom-puters. As the system increases in size, a more extensive airconditioning system will be necessary. The air conditioningsystem must be designed so that it is operational during thewinter as well as the summer.

All computers are sensitive to dust. Thus it is desirableto use floor tiles to cover a concrete floor. It is not neces-sary, however, to have special raised floors typical of thosefound in computer centers.

Standard laboratory electrical service is adequate formost minicomputer installations. However if the system isexpanded to include a number of peripheral devices, suchas disks or display systems, it is often desirable to provideelectrical service that is totally dedicated to the use of thecomputer system.

Other than the simple precautions listed above, a mini-computer installation can be placed almost anywhere thatis convenient. Experience has shown, however, that the

17

20

Page 22: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

computer area will experience a high use factor and priorplanning should include the consideration of general con-venience of the system users and the possibility for easyfuture expansion.

3-7.2 DAY-TO-DAY HARDWARE MAINTENANCE

When a minicomputer becomes the central instructionalcomponent in an educational program, it is imperative thatthe amount of down time due to computer failure and rou-tine servicing be minimized. This means that some form ofmaintenance program must be developed consistent withavailable financial resources and educational needs.

Experience has shown that once a minicomputer has runfor a few months and the minor system adjustments andmodifications made, the basic central processor will runvirtually error free. The majority of unscheduled downtime will be caused by mechanical failures in peripheralcomponents, teletypes, readers, punch tapes, etc. In addi-tion, there are several preventative maintenance tasks thatmust be performed periodically on the system.

The most desirable situation is to be able to employ aregular technician to maintain the complete computer in-stallation. As a minimum, the technician should have a gen-eral electronic background with, hopefully, some experiencein digital systems. The necessary training to maintain thespecific computer purchased can be obtained by sendingthe technician to take the standard maintenance courseoffered by most manufacturers. One limitation of thesecourses is that they often do not cover the diagnostic proce-dures and maintenance problrims associated with the com-puter's peripheral componenv. Maintenance courses onthese devices are usually available at a reasonable cost.

If a technician is not available to assume responsibilityfor the machine, it is imperative that some faculty membertake the overall responsibility. This is not to imply that heshould do the actual maintenance but he should 'have theauthority and resources to see that it is done. There are anumber of ways that this can be accomplished.

Complete field maintenance contracts are available frommost minicomputer manufacturers. These are run on aprofit basis and, in general, barring a catastrophic systemfailure are somewhat expensive. There are, however, someoff-setting features if the service center is located reasonablynearby. A complete stock of spare parts does not have td bemaintained by the department and the complete field ser-vice operation is available to handle unusual problems.

If local conditions do not allow for a full time technicianor a full service contract, a graduate assistant assigned fulltime to the system or a part-time technician should be avail-able. This arrangement should be backed up with the avail-ability of a per-call field maintenance agreement.

When you elect to maintain the system yourself it is ad-visable to purchase a smell quantity of spare parts for thesystem. (Most field service technicians are more than willingto provide a list of what is needed.) Failed parts not stock-piled can usually be obtained quickly on an exchange basisplus handling charge from a regional service center.

As a precautionary measure, it is often advisable to havea periodic (once a year) preventative maintenance test and

18

recertification test run on the computer by trained main-tenance people.

If graduate students are to be used as system engineers,the problems of graduation and documentation will have tobe faced. The former problem can be alleviated by usingmore than one student employed on an overlapping basis.Maintaining adequate documentation on all system modifi-cations (hardware and software) is a very difficult problemand can only be solved by using a strong hand. Poor hard-ware or software documentation can prove to be very costlysince a considerable amount of time can be consumed justtrying to reconstruct what the system is trying to do if nodocumentation is available. The problem of poor documen-tation often occurs if the modification was developed aspart of a project laboratory course. Under this situation thesatisfactory completion of the course should require com-plete and acceptable documentation.

If the minicomputer is to be used in a project lab environ-ment with external black boxes hung on the computer,there is the possibility of accidental damage to the com-puter due to faulty external circuit design. To minimize thepossibility of such failures, it is advisable to build a bufferunit between the computer and some sort of universal I/0patch panel or connector. In many cases, failure to ade-quately protect the computer, will void maintenancecontracts.

Lastly, be sure to provide a small budget for the every-day needs of the computer, such as paper, cards, papertapes, magnetic tapes, etc., which are required to keep thefacility running.

3-7.3 UTILIZATION OF THE COMPUTER CENTER

The specialized service of the central computer centercan be used in several ways to increase the efficiency of aremote minicomputer facility. However, a great deal ofadvanced planning and discussion of goals with the com-puter center staff will probably be required to insure theclose working relationship necessary for smooth interactionwith thecenter.

When the minicomputer facilities are not sufficient tohandle the introductory machine level programming workit is often possible to use the computer center facilities torelieve some of this load. This can be done by writing anassembler and a simulator for an existing minicomputerwhich can be run on the center's computer in either a batchor remote time sharing mode. Most of the initial program-ming experience needed to gain familiarity with machineand assembler language concepts can be obtained in thismanner. When the students start using the department'sminicomputer, the availability of a minicomputer assembleron the center's computer which yields loadable object codecan greatly decrease the time lost loading text editors andassemblers on the minicomputer, therby allowing for betterutilization of the machine.

The use of an alternate assembling procedure is particu-larly important when large numbers of students are execut-ing programs on the minicomputer. By utilizing the facilitiesand services provided by a central computer center, much ofthe text editing and syntactic debugging of programs can be

Page 23: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

done offline (i.e., not on the minicomputer).For large classes of students (30 or more), the initial

programming experience should be in a batch processingenvironment with fast turn around time. The students can

then be introduced to hands-on experience when they havedemonstrated their ability to write and assemble correctcode. If large groups of students are competing for time ona minicomputer, offline programming and editing is a mustif the students are to use their on-line time efficiently.

If a variety of simulator programs for existing or papercomputers are available on the center's computer, a richerprogramming experience can be provided for the students.The task of writing either the simulator or assembler for aminicomputer is a good project for students interested insystem programming.

Another way of increasing the capability of a minicom-puter is to connect the computer to the central computerby means of a time sharing or remote batch link if such ser-

vices are available. To be effective, the link should be rea-sonably fast, 9,600 baud or better. By means of thisconnection, the minicomputer can make use of the periph-eral equipment (card readers, line printers, plotters andbulk storage devices) of the main computer. Also by meansof this link, back up number crunching can be prov4dedfor real time problems using the minicomputer as a datahandling and communications processor.

3-8 Configurations For Specific Applications

The previous discussion presents a comprehensive over-view of the various items that must be considered in speci-fying a minicomputer system for departmental use. Thefinal specification of a particular computer configure -.iondepends upon the educational tasks it must perform, thefunds available and local faculty preferences. This sectionprovides a general outline of the type of system configura-tion that is needed to satisfy a number of different needs.

The range of uses for a departmental computer can berepresented by the following five typical tasks (in order ofincreasing difficulty):

A. Introduction to machine level computing.Experience in hands-on operation of a small machine.Machine language and assembler language program-ming. Use of standard input-output techniques.

B. Study of computer hardware and interfacing.Techniques of interfacing different devices to thecomputer. Study of hardware-software interactionand trade-offs.

C. Study of the computer as a system element.Emphasis is upon the use of a computer as a compo-nent part of real-time systems use in instrumentation,control and signal processing.

D. General project laboratory work.The computer becomes a tool that :an be used aspart of a system to solve problems.

E. Study of advance computing techniques.Investigating of such techniques as data structures,file management, multiple-task processing, jobscheduling and organization of operating systems.

In most situations a single computer will have to be

19

Air...

available to carry out more than one of the above tasks. Thefollowing discussion indicates the particular minimal capa-

bilities necessary for each task and suggests the desirablefeatures to add to a system as greater capability is desired.Experience has shown that many schools start out with a

basic system and then slowly expand their systems as timeand funds permit. Thus, in designing a system, possiblefuture growth should be considered along with currentneeds.

3-8.1 INTRODUCTORY LABORATORY CONFIGURA-TIONS

Introductory instruction requires only a small computer.The main consideration is to minimize the amount of timethe student spends carrying out the routine tasks of process-

ing programs and obtaining listings. This means that any ofthe standard minicomputers with 4K memory are satisfac-tory. A machine with a common or typical instruction set ispreferable to a very unique machine, but this is a secondaryconsideration. Experience in programming one machinereadily generalizes to others.

The minimal input/output needs can be served by usingthe teletype that is almost standard with these machines. Asindicated previously there are a number of relatively inex-pensive additions that can be added to obtain greater I/0efficiency. Either a high speed paper tape reader or cardreader should be the first improvement considered. Nor-mally the paper tape reader Is the best selection unless it ispossible to use the facilities easily of the computer centerto help with the preparation and processing of punchedcards. A high speed paper tape punch or card punch is desir-ahe but not as important as the high speed reader.

Some type of graphic display terminal is also a desirableaddition to the minimum system if any growth is anticipatedThis terminal can, however, be postponed at some sacrificeto efficiency of system use. Another way to improve effi-ciency of system use is to add secondary storage in the formof an addressable magnetic tape device. This could either bea cassette tape LI I lit or a low cost standard computer tapeunit.

3-8.2 INTERMEDIATE LABORATORY CONFIGURA-TIONS

The structural features needed for a study of computerhardware and interfacing techniques are the same as for theintroductory programming work. The major exception isthat the machine should be chosen with a view toward beingrepresentative and versatile in methods of hardware inter-facing.

Preferably the machine should allow interfacing at abasic level such as an "I/0 bus", rather than only throughspecial de%;cr.. interface cards or "Channels". The machineshould be capable of information transmission throughsome form of "direct memory access" block transfer mech.anism, as well as a programmed word-by-word mechanism.

Standard connectors should be included that make all con-

trol and data lines available for student projects. The com-puter should also have an input/output interrupt facility.

e)2

Page 24: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Priority interrupt capabilities are useful but not absolute! ynecessary at this level.

It is also useful to have one or more data buff:I registersthat can be used as general interface registers. In this way itis possible to minimize the amount of hardware that thestudent has to develop and allows him to concentrate uponthe particular information transfer task on which he isworking.

3-8.3 THE COMPUTER SYSTEM LABORATORY

The two previous computer configurations center aroundthe computer almost as an end in itself. When the computeris considered from the viewpoint of being a system element,then the emphasis centers on what the computer can dorather than upon trying to acquaint the student with specificdetails of machine level programming and debugging. Labo-ratory work involving the computer as a system elementshould spare the student from as many Fvogramming detailsas possible so that there will be time to accomplish a higher-level goal.

A measure of the effectiveness of a laboratory assign-ment is the time it takes to go from the start of a task tothe end result. Thus it is desirable to allow the student touse a higher level language to carry out as many program-ming tasks as possible.

This approach reduces the number of human =ors thatmust be located and corrected approximately in proportionto the number of program statements necessary for a givenjob. The speed of making these corrections will dependupon the computer and the language.

An interpretive language such as BASIC or FOCAL isvery useful in those experiments where processing time isnot important. Interpretive language allows the fastest turn-around time from making a correction to seeing the result.It also provides useful debugging assistance as well. Unfor-tunately an interpreter gains this capability at the expenseof execution speed. For those problems where an interpre-tive language is too slow, a compiler language such as

FORTRAN or ALGOL is useful. The speod of developingprograms can be improved by having predeveloped assemblylanguage subroutines available to drive problem orientedperipheral devices connected to the system.

Efficient interpreters and compilers require at least 8Kto 12K of primary memory. I n this lase the larger thememory, the greater the range of information processingtasks that can be undertaken.

In addition to the need for expanded primary memorythere is an increased need for some form of secondarymemory such as a standard tape unit or a disk. This addi-tion is desirable since many interesting system applicationsinvolve the handling of a large amount of real-time data.The availability of secondary storage also makes it easierfor students to use the system software packages in develop-ing programs. For exampie the time needed for a source-level correction in a FORTRAN or ALGOL program canbe accomplished in a few minutes if a disk or tape residentcompiler is available. The same correction can take con-siderably longer if a paper tape or punched card dependentsoftware system is used.

Signal processing experiments force minimum require-ments on word length. Because of roundoff errors, 16 bitsis really minimal for integer arithmetic programming ofdigital filters, if signal-to-noise ratios of 40 or 50 DB. areto be maintained. A machine with 12 bit words will thusrequire the tose of double precision arithmetic to achieve ,

desired results. Additional equipment for the surveymachine should include such things as relays and senselines, A/D and D/A converters, voltage controllable oscilla-tors, digital A-C voltmeters, real-time clocks, displays andother equipment for computer-controlled tests.

3-8.4 PROJECT LABORATORIES

Equipping a projects laboratory can be more expensivethan equipping an applications survey laboratory. Theemphasis on elimination of programming details is muchthe same as in the survey course, but the requirements ofprojects may be greater and more varied. Experiments ofthe applications survey laboratory can be tailored to thecapabilities of the machine. The projects laboratory ma-chine, however, is subject to the outside requirements ofreal problems that must be unique in their own right.

Projects are apt to need at least one of the following:1. Data Storageeither high-capacity magnetic tape or

disk.

2. Data Transportation to the Computer Centereithermagnetic tape or a data link.

3. Large Memorythere is no upper limit here, but areasonable choice is 12 or 16 K with a fast disk andprocedures for overlaying different phases of theprogram.

4. High Speedan interpretive language is entirely tooslow for some signal processing.

5. Longer Word Length-16 bits can be inadequate formany signal-processing needs. Differences of largenumbers occur, for example, in high-rejection filtersand in filters with low-frequency singularities, com-pared to the sampling rate.

A 16K machine with disk, magnetic tape and hardwarefloating point or integer double precision arithmetic is usu-

ally too rich for a one time budget. Thus a reasonable approachis to start out with a small but expandable machine that isuseful for projects of immediate interest, and hope to ex-pand as new needs and funds develop.

Software for the projects machine has much the samecharacter as an applications survey machine. There willprobably be more need for math library subroutines andhigher computation speeds. If the machine has a disk sothat the turn-around time for a source-level correction anbe kept low, the best mode of operation is to use a com-piler hnguage like FORTRAN augmented with assembly-language subroutines where speed is needed. An editor forpreparing and modifying subroutine libraries will be usefulboth for the system library and for individual studentprivate libraries.

3-8.5 ADVANCED PROGRAMMING LABORATORY

A course in Advanced Programming Techniques will re-

quire a machine of intermediate sizeabout 8K. File man-

20sr),3

Page 25: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

Table 3-5Desirable Attributes of A Computer for a

Given Task

Teaching Task Rating Component Attribute1-Necessary2-Strongly

desirable3-Good to have

Introductory 1 Primary memory 4K, 12 or 16-bit anyspeed

CPU Preferably simple andstraight-forward

I/0 Peripherals Teletype, paper-tapereader and punch, orcard reader

3 Secondary memor Addressable tape orother

Hardware and 1 Primary memory, CPU, Same as above, PLUS:Interfacing I/0 Devices

I/0 methods An assortment of low-level I/0 methods;1 or more interrupts

3 Secondary memory Addressable tape or other

Computer as a 1 Memory 12 K or more, 16 bits orSystems element more. Speed somewhat

importantCPU Straight-forward, but

possibly more complexI/0 peripheral Cards or fast tape; scopeSpecial I/0 A/D, D/A converters,

relays, sense lines;

some engineering

devices to control

AdvancedTechniques

2 Secondary memory

3

1 CPU

I/0 Several external devicesof various speeds,

capable of interrupting

Secondary memory Preferably high performancedisk, but pack disk, evenaddressable tape

Tape or pack disk

High-performance disk

8K or more, 16 bit ormore. Advanced, complexmachine desirable

2 CPU Memory protection andrelocation

21

Page 26: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

agement, job scheduling a swap-out experiments willrequire a disk (or perhaps addressable magnetic tape).Input/output both through direct memory access and word-by-word programmed transfer with interrupts is desirable.

There must be external equipment to be controlled, andequipment to generate and use data at high and low speeds,both continuously and sporadically. This need not be expen-sive, however; microphones, loudspeakers, lights, photocells,even electric trains serve admirably for this purpose.

When a department reaches the point where it needs acomputer facility to study advanced computing techniquesit will, of necessity, have one or more faculty members withexpertise in this area. These faculty members will be able toadvise the department in the development of computerfacilities for this advanced level work.

The different possible computer configurations thatshould be considered for each type of task are summarizedin Table 3-5. The relative importance of different compo-nents to the teaching task of a given area is indicated by arating of 1 through 3. A rating of 1 indicates that the compo-nent is of central importance, a rating of 2 indicates that itis strongly desirable to have the component, and a rating of3 indicates that the component is useful to have, but not atthe expense of other needs.

IV. CONCLUSIONS

Today's electrical engineer must be familiar with thecharacteristics and operations of minicomputers. This meansthat every electrical engineering department should have atleast one minicomputer available for use as part of theundergraduate laboratory program. Cost is no longer alimiting factor since it is possible to obtain a basic systemfor approximately six thousand do!lars. Once a basic systemis installed it can be slowly expanded by adding peripheralsas the use of the system grows.

The development of a minicomputer laboratory facilityshould be carried out with the same amount of care and ad-vanced planning that goes into the development of anylaboratory. The planning of the initial system should bedone so that it is flexible enough to allow for future growth.Under ideal conditions this planning would include identifi-cation of the faculty members who will be responsible forthe development of the system and a long range commit-ment of funds to insure proper growth and maintenance.

Minicomputers are playing an increasingly important rolein many different areas throughout institutions of highereducation. It is not uncommon to find minicomputers usedin research laboratories to replace special purpose equip-ment. This means that there is usually a need for a course tointroduce students from other fields to the operation anduse of minicomputers and how to interface minicomputersto different pieces of equipment. The development ofcourses to satisfy this need is a valuable way of developingthe interdisciplinary interaction that provides interestingprojects for student project laboratory work. The good willgenerated by the successful completion of an interdisciplin-ary project should not be overlooked.

22

The increasing attention being paid to minicomputers byboth computer manufacturers and peripheral manufacturersmeans that there should be major new developments thatwill lower the price and increase the flexibility of minicom-puter systems. As these developments occur this will meanthat much more extensive problems can be carried out byundergraduate students. It is therefore becoming more im-portant that each electrical engineering department shouldhave at least one faculty member whose interest lies in thecomputer area to supervise the development of both theminicomputer facilities and the academic programs that usethese facilities.

The development of a minicomputer laboratory facilityrequires a considerable amount of time and effort of one ormore interested faculty members as well as a realistic com-mitment of funds by the department. Laboratory work ofthis type requires a considerably larger amount of time,effort and money than the development of a lecture course.The time and effort can be reduced if an effort is made tocommunicate new developments and ideas among thefaculty members at the different schools who are workingon laboratory developments of this type. This developmenteffort could be helpful in the following ways:

a) When new educational software is developed for agiven computer system the program should be sub-mitted to an appropriate users' group so that it canbe made available to others.

b) A book is needed that discusses the use of a mini-computer as a system element. It should concentrateupon the practical problems that are encountered inapplying a computer to realistic real-time system prob-lems rather than a theoretical discussion of computerorganization.

c) Meetings should be organized for faculty members toexchange ideas and experiences absut laboratory work.These meetings could be held in conjunction withregional ASEE, IEEE or ACM meetings.

d) Interesting projects, and the support required to pur-chase the necessary supplies to carry them out, canoften be obtained by working with local industries,public institutions or even other departments in theschool. The full potential of this source of projectscan only be realized by careful planning and coopera-tion among all parties involved. The proper selectionof the students to work on these projects is critical.An improper match between student capabilities andexpected results will leave all parties to the projectunhappy.

References

1. COSINE Task Force Report IVAn UndergraduateComputer Engineering Option for Electrical Engineer-ing, January 1970.

2. COSINE Task Force Report VIDigital Systems Labo-ratory Courses and Laboratory Development, March1971.

3. COSINE Task Force Report VII IAn UndergraduateCourse on Operating Systems Principles, June 1971.

Page 27: DOCUMENT RESUME BE 003 068 Minicomputers in the Digital … · 2013-10-24 · ED 062 941. TITLE INSTITUTION. SPCNs AGENCY REPORT NC PUB DATE NOTE. EDRS PRICE. DESCRIPTORS. DOCUMENT

4. Booth, T. L., Digital Networks and Computer Systems,John Wiley, New York, 1971.

5. Gear, C. W., Computer Organization and Programming,McGraw Hill, New York, 1969.

6. Reilly, E. D., Jr. and Federighi, F. D., The Elements ofDigital Computer Programming, Holden-Day, SanFrancisco, 1968.

7. Knuth, D. E., The Art of Computer Programming,Vol. 1, Addison-Wesley, Reading, Massachusetts, 1968.

8. Bell, G., Cady, R., McFarland, H., Delagi, B., O'Laughlen, J.,Noonan, R. and Wulf, W., A New Architecture for Mini-computersThe DEC POP-11 AF IPS, SJCC 1970,Vol. 36, pp. 657-675.

23

9. Bell, G. and Newell, A., Computer Structures: Readingsand Examples, McGraw-Hill, New York, 1971.

10. Gschwind, H. W., Design of Digital Computers, Springer-Verlag, New York, 1967.

11. Foster, C., Computer Architecture, Van NostrandReinhold Company, New York, 1970.

12. Forsythe, A. I., Keenan, T. A., Organick, E. I. andStenberg, W., Computer Science: A First Course,John Wiley, New York, 1969.

13. Stone FLA., Introduction to Computer Organization andData Structures, McGraw-Hill, New York, 1972.

a6