
- 237 - PROGRAMMABLE DIGITAL MICROCIRCUITS - A SURVEY WITH EXAMPLES OF USE C. Verkerk CERN, Geneva, Switzerland 1. Introduction For most readers the title of these lecture notes will evoke microprocessors. The fixed instruction set microprocessors are however not the only programmable digital mi• crocircuits and, although a number of pages will be dedicated to them, the aim of these notes is also to draw attention to other useful microcircuits. A complete survey of programmable circuits would fill several books and a selection had therefore to be made. The choice has rather been to treat a variety of devices than to give an in- depth treatment of a particular circuit. The selected devices have all found useful ap• plications in high-energy physics, or hold promise for future use. The microprocessor is very young : just over eleven years. An advertisement, an• nouncing a new era of integrated electronics, and which appeared in the November 15, 1971 issue of Electronics News, is generally considered its birth-certificate. The adver• tisement was for the Intel 4004 and its three support chips. The history leading to this announcement merits to be recalled. Intel, then a very young company, was working on the design of a chip-set for a high-performance calculator, for and in collaboration with a Japanese firm, Busicom. One of the Intel engineers found the Busicom design of 9 different chips too complicated and tried to find a more general and programmable solu• tion. His design, the 4004 microprocessor, was finally adapted by Busicom, and after further négociation, Intel acquired marketing rights for its new invention. The firm's marketing department, however, was not interested in the product, arguing that the new chip would conquer 10% at most of the minicomputer market, which was then 40'000 yearly. History15does not record what happened to the marketing manager What happened to the microprocessor is well known : the 4-bit 4004 was superseded after one year by the first 8-bit processor, the 8008, followed in 1974 by the 8080 and the 6800 and by PACE, the first 16-bit microprocessor. The years 1978/79 saw the birth of the well known 16-bit devices : Intel 8086, Zilog Z8000 and Motorola 68000 and also the highly capable 8-bit 6809. Sales also rose with an astounding speed : in 1979, 75 mil• lion microprocessors were sold and at the end of the year the total number sold was 110 million. This rate of growth has been maintained since. What happened to all these processors ? Very few were in fact used as direct re• placements of minicomputers, at least in the beginning. Many were used in a large variety of control applications, replacing random logic. The overwhelming majority however ended in new applications which even the most imaginative marketing manager could not foresee : arcade games, car ignition systems, home appliances, hobby compu• ters, office automation systems, etc. The microprocessor was invented to replace random logic and the first to apply it were electronics engineers, accustomed to logic design, but not well versed in pro• gramming. The programs these engineers developed were in general short and dedicat• ed. As soon as they were considered to be working, these programs were "petrified" in - 238 - a Read-Only Memory (ROM). In the early days most programming was done in "hexa• decimal", e.g. directly in the machine language. The majority of the users were una• ware of the possibilities better programming tools could provide. Even assembly lan• guage programming was believed to be beyond reach both for the engineers and for the micro-computer systems (There is a book, published in 1976/77 which dedicated exactly two of its 300 or more pages to assembly language). It should therefore be no surprise that the early generations of microprocessors had rather primitive architectures. Tech• nological limitations obviously were also an important obstacle to making supermicros, but it was not the only one, contrary to popular belief. In more recent applications, such as office automation systems and personal compu• ters, a better architecture of the microcomputer is required, in order to sup• port higher-level language programming. These systems are in fact used in much the same way as mainframes and larger minicomputers are. They therefore run operating systems, have real peripherals attached to them (hard or flexible disc, alphanumeric or graphic display, keyboard and high-quality printer) and the user expects to find high-level language compilers in addition to special application packages. Part of these notes will attempt to describe in how far the modern 16-bit microprocessors satisfy the requirements of efficient implementation of high level languages and operating systems. Besides making it easier to program microprocessors, semi-conductor manufacturers have also constantly strived to improve their performance. Working with longer words , as the 16-bit processors do, in itself improves the performance considerably. Progress in MOS device technology has resulted in speeding up the internal operations by more than an order of magnitude. Performance improvements were also sought in two other directions : use of bipolar device technology to overcome the speed limitations of earlier MOS devices and the use of arithmetic attachments to increase the numeric pro• cessing power. The first road led to the bit-slice microprocessor, whereas the second ended in the design of a few interesting floating-point arithmetic devices. Both will re• ceive some attention in these lectures. The modern microprocessors, where the designer succeeded in putting of the order of 10s transistors on a little chip of silicon, usually 6x6 mm2, are perfect examples of the so-called "Very Large Scale Integration" (VLSI) technique. That this has been at all possible is, in addition to the progress in device technology mentioned before, due to the availability of Computer-Aided Design systems and techniques. The latter, and the need to form design engineers for the semi-conductor industry, has spurred the work on VLSI which is now undertaken at a number of Universities and Research laboratories. Some interesting results have been obtained , and the last part of these notes will briefly review a few. The research is mainly oriented towards investigating novel computer architectures, but also some devices for practical use have been de• signed in universities. A microprocessor chip is not a viable object, generally speaking, without its com• plement of support chips : memory in its different appearances, interface adapters, er• ror detection circuits, analogue-to-digital converters, etc.. Many of these support cir• cuits have wide possibilities for control by the microprocessor and should therefore be included in the class of programmable digital microcircuits. A few will be mentioned, mainly because they have found uses in high-energy physics experiments. - 239 - Table I Classification of the processor chips CALCULATOR CHIPS r- 1 bit - t bit *FIXED INSTRUCTION - *8 bit *SET MICROPROCESSORS •»16 bit L 32 bit SINGLE CHIP MICROPROCESSORS PROCESSORS i-» C R) ALU MSECUENCER '* BIT—SLICES [-SUPPORT (MAU.DMA) LsPECIAL (FFT) -SPECIAL PURPOSE (CIPHER, «GRAPHICS, »SYSTOLIC, MOUSE) VLSI -TREE MACHINES -SIMPLE INSTRUCTION SET *(LISP, RISC) LNON-VON NEUMANN Table II Examples of support chips [-»RAM ) -»MEMORY -{-ROM V L-EPROM __ ) FIRMWARE CHIPS •TIMERS/EVENT COUNTERS .-MULTIPLIERS '-* ARITHMETIC • L*FLOATING POINT PROCESSOR SUPPORT -»MEMORY MANAGEMENT -PLAs, PALS —,-IKTERRUPT CONTROLLER DMA CONTROLLER -GENERAL INTERFACE •PARALLEL -(SERIAT L KEYBOARD, LED DISPLAY -DISC-, CASSETTE INTERFACE CRT CONTROLLER, CHARACTER GENERATOR -DOT-MATRIX PRINTER CONTROL t-i/o SUPPORT - -COMMUNICATION (HLDC, ETHERNET, ETC.) CYCLIC REDUNDANCY CHECK -ENCRYPTION, DATA SECURITY •INTER-BUS CONNECTION, TRANSCEIVERS -IEEE-488 TRANSCEIVERS -BURST-ERROR DETECTION TEPPER MOTOR IGITAL —> ANALOG SNALOG > DIGITAL SYNTHESIS t-SPEECH ANALYSIS - 240 - Finally, if we were to make some classification scheme of the whole area of pro• grammable digital microcircuits, we could distinguish between the processors proper and the support chips. The processors can be further subdivided into user-programmable and fixed program processors (e.g. the marvels you find inside your electronic watch). Still finer sub-divisions of the user-programmable processors and the support chips are shown in Table I and II. The devices which will receive some attention in the following pages are marked with an asterisk. 2. Bit-Slice Microprocessors. The Field Effect Transistor, implemented in MOS technology made it possible to put a complete processing unit on a single chip. First (1970) 4-bits wide, soon 8-bits (=1973) and later (1978) 16-bits. Constant improvements in packing density and power dissipation of the transistors made this progress possible. The earlier microprocessors lacked however dramatically in power when compared to even the lowest range of the computers then available. The processing speed could only be improved by using bipo• lar technologies (signal propagation times through a gate of 1-3 ns, compared to »10 ns for MOS technology around 1974), but these did not allow the packing density and the power dissipation needed. Instead of a complete 8-bit processor, including instruction decoding and control, interrupt handling etc., which was possible in MOS technology, either TTL or ECL technologies allowed at best the implementation of a 4-bit wide Arithmetic and Logic Unit with its control and a few registers. To make use of such an ALU in a processor, external control circuitry is needed to ensure proper execution of the instructions in a program. On the other hand, longer data-words could be easily handled by concatenating several chips, as many as the number of bits in the data word required : 8 4-bit chips put together produce a 32-bit processor. The cir• cuit represents therefore a 4-bit wide vertical "slice" of the 32-bit processor, including its internal registers used in arithmetic operations (such as accumulators or general re• gisters and condition code registers).
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages34 Page
-
File Size-