DRTE Computer

Last updated

The DRTE Computer was a transistorized computer built at the Defence Research Telecommunications Establishment (DRTE), part of the Canadian Defence Research Board. It was one of the earlier fully transistorized machines, running in prototype form in 1957, and fully developed form in 1960. [1] Although the performance was quite good, equal to that of contemporary machines like the PDP-1, no commercial vendors ever took up the design, and the only potential sale to the Canadian Navy's Pacific Naval Laboratories, fell through. The machine is currently part of the Canadian national science and technology collection housed at the Canada Science and Technology Museum.

Contents

Transistor research

In the early 1950s transistors had not yet replaced vacuum tubes in most electronics. Tubes varied widely in their actual characteristics from tube to tube even of the same model. Engineers had developed techniques to ensure that the overall circuit was not overly sensitive to these changes so they could be replaced without causing trouble. The same techniques had not yet been developed for transistor-based systems, they were simply too new. While smaller circuits could be "hand tuned" to work, larger systems using many transistors were not well understood. At the same time transistors were still expensive; a tube cost about $0.75 while a similar transistor cost about $8. This limited the amount of experimentation most companies were able to perform.

DRTE was originally formed to improve communications systems, and to this end, they started a research program into using transistors in complex circuits in a new Electronics Lab under the direction of Norman Moody. Between 1950 and 1960, the Electronics Lab became a major center of excellence in the field of transistors, and through an outreach program, the Electronic Component Research and Development Committee, were able to pass on their knowledge to visiting engineers from major Canadian electronics firms who were entering the transistor field.

The key development that led to the eventual construction of the computer was Moody's invention of a new type of flip-flop circuit, a key component of all computer systems. Moody's design used a P-N-P-N junction, consisting of a PNP and NPN transistor connected back-to-back. Most machines of the era used Eccles-Jordan flip-flops; this was originally a tube-based concept that was being used by replacing the tubes with transistors. The P-N-P-N circuit offered much higher power output, allowing it to drive a greater number of "downstream" circuits without additional amplifiers. The overall effect was to reduce, sometimes greatly, the total number of transistors needed to implement a digital circuit. Moody published his circuit in 1956.

One downside, only realized later, is that the current draw of Moody's flip-flop was not balanced, so storing different numbers in them could lead to dramatically different current needs on the power supply. Generally this sort of changing load is something that should be avoided wherever possible to reduce noise generated when the power draw increases or decreases. At very low power levels, as in a computer, these pulses of noise can be as powerful as the signals themselves.

The computer

Although it appears it was never an official recommendation, by the mid-1950s the DRTE decided that the best way to really develop transistor techniques in a complex system was to build a computer. This was not something they needed for their own use at the time, it was simply an example of an extremely complex system that would test their capabilities like few other systems could. But as development continued, many of the engineers involved became more interested in computer design than electronics. This was outside the DRTE's charter and eventually a source of friction between the group and the DRB who funded them.

Starting about 1955, David Florida drove the development of a computer using Moody's flip-flop design. He examined existing computer designs and concluded that the main limitation in computer complexity was due largely to the burnout rate of the tubes; a more powerful design required more tubes, which meant more frequent burnouts. Although a number of truly massive machines had been built, like SAGE, most machines were much smaller in order to improve uptime. With transistors this limitation was removed; more complex machines could be built with little effect on reliability, as long as one was willing to pay the price for more transistors. With the price of transistors falling all the time, Florida's design included every feature he imagined would be useful in a scientific machine.

In particular, the design ultimately included a number of subsystems for input/output, a hardware binary/decimal converter, [2] floating-point hardware including a square root function, a number of loop instructions and index registers to support them, and used a complex three-address instruction format. The three-address system meant that every instruction included the address of up to two operands and the result. The system did not include an accumulator, the results of all operations being written back to main memory. This was desirable at the time, when computer memories were generally comparable in speed to the processors (today memory is much slower than processors).

Processor design

Florida had previously worked with the team building the Manchester Mark 1, and following their lead he designed the DRTE machine with 40-bit words. An instruction was broken down into four 10-bit parts, the instruction and three 10-bit addresses. This allowed a total main memory size of 2^10 = 1024 40-bit words, or 40 kB in modern terminology. Integers used 39 bits and one bit for a sign, while floating point numbers had an 8-bit exponent with one bit for the sign and a 32-bit mantissa with one bit for the sign. Florida felt that the three-address instruction format, including the addresses of two parameters and a result, would make programming easier than a register-based system.

An experimental version of the machine consisted of the basic math unit and memory handling. Construction of the complete system started in 1958 and was completed in 1960. The machine ran on a 5 microseconds/cycle lock, or 200 kHz, fairly competitive for a machine of the era. A floating point add took between 50 and 365 microseconds (μS). The longest instructions, divide or square root, took 5.3 milliseconds (ms) for floating point. Integer adds took about 200 μS, but other operations were handled in subroutines as opposed to hardware and took much longer; an integer division/square root required 8.2 ms for instance.

Memory system

The computer used core memory for all storage, lacking "secondary" systems such as a memory drum. Normally the memory for a machine would be built up by stacking a number of core assemblies, or "planes", each one holding a single bit of the machine's word. For instance, with a 40-bit word as in the DRTE, the system would use 40 planes of core. Addresses would be looked up by translating each 10-bit address into an X and Y address in the planes; for 1,024 words in the DTRE this needed 32×32 planes.

One problem with using core on the DRTE machine was that core required fairly high power in order to operate. Providing such power from transistors, which at the time were low-power only, represented a major challenge. Although one solution, commonly used at the time, was to build the core machinery out of tubes, for the DRTE machine this was considered one more challenge in transistor design. The eventual solution, designed primarily by Richard Cobbald, was entirely transistor-based, and later patented.

Another improvement introduced in their core design involved the handling of the read wire. Reading a location in core works by powering the address in question, as if you wanted to write a "1" to that location. If the core was already holding a "1" nothing will happen. However, if the core was holding a "0", the power will cause the core to change polarity to a "1". The small amount of energy used to do this causes a pulse to be output on a different wire, the read line. So to read data, you write "1" to that location, if a pulse is seen on the read line the location originally held "0", and no pulse means it held "1".

One problem with this system is that other cores on the same lines (X or Y) will give off a very small signal as well, potentially masking the signal being looked for. The conventional solution was to wire the read line diagonally back and forth through the plane, so that these smaller signals would cancel out—the positive signal from one would be a negative signal from the next as the wire passed through it in the opposite direction. However this solution also made wiring the core fairly difficult, and considerable amounts of research went into various ways to improve the cost of wiring core.

Cobbald's design made what in retrospect seems like an obvious change; the read wire was threaded across the planes instead of one per plane. In this system the read wire really did pass through only one set of powered lines, and the problems of the "extra signal" were avoided completely. It is not entirely surprising that this solution was not hit on before; cores were constructed a plane at a time and then wired together, whereas this method required the entire core to be built before the read wires could be added. The only major downside to the design is that it required more power to run.

Input/Output

I/O device on the DRTE design were extremely limited, consisting of a Flexowriter for output, and a paper tape reader at about 600 CPS for input. In particular, the system added a hardware binary-to-decimal/decimal-to-binary converter that was implemented inline with the I/O systems. [2] This allowed the paper tape to be punched in decimal codes which would be converted invisibly into binary and stored in memory while being read. The reverse was also true, allowing the machine to print the contents of memory directly to tape again. The system was tuned so that the machine could read or write data essentially for free; that is, the system could read and store data exactly as fast as the paper tape could feed it.

The system also offered a crude sort of assembler language support. Using the shift key, characters entered into the system represented mnemonics instead of numerical data, which would then be translated differently. For instance, the letters "AA" would add two floating point numbers, the numbers being stored in the two decimal addresses following. While being read, the paper tape's shift column would signal the BDC decoder to ignore the next codes.

The hardware implementation eventually revealed itself as an anti-feature. If one assumed that all the data being read and written was a decimal representation of binary data the system made perfect sense, but if the data was in some other form, more complex assembler language character codes for instance, it ended up simply adding complexity that then had to be turned off. The system was eventually removed when assembler programming became common. It also seriously limited the sorts of devices that could be hooked up, due to the careful tuning of the interface speed.

Further development and use

Parallel math unit

As soon as the prototype math unit was completed in 1957, [3] a new unit that operated on an entire word in parallel was started. This new unit was ready around the same time as the "full version" of the machine (1960–61) and was later retrofitted into the design. This improved speeds by about ten times, for instance, a floating-point add improved from 300 μs to only 40, multiplication from 2200 to 180 μs, and a square root from 5300 to 510 microseconds. Integer math was likewise improved by about the same factor, although "complex" arithmetic like multiplication remained in code as opposed to hardware. With the new math unit the machine was faster than the average contemporary system, although slower than "high end" machines like the IBM 7090 by about two to five times.

As with any research machine, the DRTE system was used for a number of "household" calculations, as well as the development of a number of simple computer games. These included tic-tac-toe and hangman, as well as a simple music generator that could play the Colonel Bogey March by attaching a speaker to a particular flip-flop.

DAR

In the late 1950s the US was in the midst of rolling out the SAGE system, and became interested in the effects of aurora borealis on radar operation. An agreement was eventually signed between the DRB and US Air Force, with the Air Force providing two million dollars to build a radar research center modelled on MIT's Lincoln Laboratory, which had provided much of the US technical lead in radar systems.

The DRB proposed a site between five and six hundred miles from the Churchill Rocket Research Range, which was already being used for extensive aurora research with their rocketry program. Such a location would allow the radars to directly measure the effects of aurora on radar by tracking the rocket launches. Eventually a site outside Prince Albert, Saskatchewan was selected; it has been suggested this was due to it being Prime Minister's John Diefenbaker home riding. The new site was opened in June 1959, known as the Prince Albert Radar Laboratory, or PARL.

In order to quickly record data during test runs, the DRTE built a custom system known as DAR, the Digital Analyzer and Recorder. DAR was a fairly high-priority project, and some of the manpower originally working on the DRTE computer were put on DAR instead. The machine itself consisted of a non-programmable computer that read the data into 40,000 bits of core memory, tagged it with timecode and other information, and then wrote it to magnetic tape. DAR was used for a number of years, and had to be rebuilt after a fire in 1962.

Alouette

In 1958 the DRB sent a proposal to NASA to launch a "topside sounder", which would take measurements of the Earth's ionosphere from space. This was a topic of some importance at the time; the DRB was conducting a major ionospheric research program in order to build a very-long-distance communications system (which would later be used on the Mid-Canada Line and DEW Line). The various US agencies that commented on the system were highly sceptical that the DRB could build such a device, but suggested they do so anyway as a backup to their own much simpler design. In the end the US design ran into lengthy delays, and the "too advanced" Canadian design was eventually launched in 1962 as Alouette I.

While Alouette was being designed, a major question about the lifetime of the solar cells powering the system came to be solved on the DRTE computer. They developed a program that simulated the effects of precession on the satellite's orbit, and used this information to calculate the percentage of time that sunlight fell on it. The result proved the system would have more than enough power. While it was designed with a lifetime of only one year, Alouette I eventually ran for ten years before being shut off.

The computer was also put into use generating tracking commands for the receiver dish antenna in Ottawa that downloaded data from Alouette. The antenna could not track through "straight up", and had to be rotated 180 degrees to track back down to the opposite horizon. The movement was controlled by a simple system reading a paper tape. The computer produced tapes so the dish would be slowly rotated as it tracked the satellite, thereby guaranteeing no "dead time". Eventually a library of tapes was built up for any possible pass.

Related Research Articles

Central processing unit Central component of any computer system which executes input/output, arithmetical, and logical operations

A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and input/output (I/O) operations specified by the instructions in the program. This contrasts with external components such as main memory and I/O circuitry, and specialized processors such as graphics processing units (GPUs).

Computer memory Device used on a computer for storing data

In computing, memory is a device or system that is used to store information for immediate use in a computer or related computer hardware and digital electronic devices. The term memory is often synonymous with the term primary storage or main memory. An archaic synonym for memory is store.

History of computing hardware From early calculation aids to modern day computers

The history of computing hardware covers the developments from early simple devices to aid calculation to modern day computers. Before the 20th century, most calculations were done by humans. Early mechanical tools to help humans with digital calculations, like the abacus, were referred to as calculating machines or calculators. The machine operator was called the computer.


The GE-600 series was a family of 36-bit mainframe computers originating in the 1960s, built by General Electric (GE). When GE left the mainframe business the line was sold to Honeywell, which built similar systems into the 1990s as the division moved to Groupe Bull and then NEC.

CDC 6600

The CDC 6600 was the flagship of the 6000 series of mainframe computer systems manufactured by Control Data Corporation. Generally considered to be the first successful supercomputer, it outperformed the industry's prior recordholder, the IBM 7030 Stretch, by a factor of three. With performance of up to three megaFLOPS, the CDC 6600 was the world's fastest computer from 1964 to 1969, when it relinquished that status to its successor, the CDC 7600.

Dynamic random-access memory Type of computer memory

Dynamic random-access memory is a type of random-access semiconductor memory that stores each bit of data in a memory cell consisting of a tiny capacitor and a transistor, both typically based on metal-oxide-semiconductor (MOS) technology. The capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors slowly leaks off, so without intervention the data on the chip would soon be lost. To prevent this, DRAM requires an external memory refresh circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory (SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory, since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence.

Magnetic-core memory A type of computer memory used from 1955 to 1975

Magnetic-core memory was the predominant form of random-access computer memory for 20 years between about 1955 and 1975. Such memory is often just called core memory, or, informally, core.

IBM 1620 IBM scientific computer released in 1959

The IBM 1620 was announced by IBM on October 21, 1959, and marketed as an inexpensive "scientific computer". After a total production of about two thousand machines, it was withdrawn on November 19, 1970. Modified versions of the 1620 were used as the CPU of the IBM 1710 and IBM 1720 Industrial Process Control Systems.

The IBM 1401 is a variable-wordlength decimal computer that was announced by IBM on October 5, 1959. The first member of the highly successful IBM 1400 series, it was aimed at replacing unit record equipment for processing data stored on punched cards and at providing peripheral services for larger computers. The 1401 is considered to be the Model-T Ford of the computer industry, because it was mass-produced and because of its sales volume. Over 12,000 units were produced and many were leased or resold after they were replaced with newer technology. The 1401 was withdrawn on February 8, 1971.

UNIVAC was a line of electronic digital stored-program computers starting with the products of the Eckert–Mauchly Computer Corporation. Later the name was applied to a division of the Remington Rand company and successor organizations.

Apollo Guidance Computer Guidance and navigation computer used in Apollo spacecraft

The Apollo Guidance Computer (AGC) is a digital computer produced for the Apollo program that was installed on board each Apollo command module (CM) and Apollo Lunar Module (LM). The AGC provided computation and electronic interfaces for guidance, navigation, and control of the spacecraft.

UNIVAC II vacuum tube commercial computer released in 1958

The UNIVAC II was an improvement to the UNIVAC I that UNIVAC first delivered in 1958. The improvements included core memory of 2,000 to 10,000 words, UNISERVO II tape drives which could use either the old UNIVAC I metal tapes or the new PET tapes, and some of the circuits were transistorized although it was still a vacuum tube computer. It was fully compatible with existing UNIVAC I programs for both code and data. It weighed about 16,000 pounds.

The history of general-purpose CPUs is a continuation of the earlier history of computing hardware.

The Orion was a mid-range mainframe computer introduced by Ferranti in 1959 and installed for the first time in 1961. Ferranti positioned Orion to be their primary offering during the early 1960s, complementing their high-end Atlas and smaller systems like the Sirius and Argus. The Orion was based on a new type of logic circuit known as "Neuron" and included built-in multitasking support, one of the earliest commercial machines to do so.

Ferranti's Argus computers were a line of industrial control computers offered from the 1960s into the 1980s. Originally designed for a military role, a re-packaged Argus was the first digital computer to be used to directly control an entire factory. They were widely used in a variety of roles in Europe, particularly in the UK, where a small number continue to serve as monitoring and control systems for nuclear reactors.

Atlas (computer) Supercomputer of the 1960s

The Atlas Computer was one of the world's first supercomputers, in use from 1962 until 1971. It was considered to be the most powerful computer in the world at that time. Atlas' capacity promoted the saying that when it went offline, half of the United Kingdom's computer capacity was lost. It is notable for being the first machine with virtual memory using paging techniques; this approach quickly spread, and is now ubiquitous.

Random-access memory Form of computer data storage

Random-access memory is a form of computer memory that can be read and changed in any order, typically used to store working data and machine code. A random-access memory device allows data items to be read or written in almost the same amount of time irrespective of the physical location of data inside the memory. In contrast, with other direct-access data storage media such as hard disks, CD-RWs, DVD-RWs and the older magnetic tapes and drum memory, the time required to read and write data items varies significantly depending on their physical locations on the recording medium, due to mechanical limitations such as media rotation speeds and arm movement.

Ferranti's Sirius was a small computer released in 1961. Designed to be used in smaller offices without a dedicated programming staff, the Sirius used decimal arithmetic instead of binary, supported Autocode to ease programming, was designed to fit behind a standard office desk, and ran on UK standard mains electricity with no need for cooling. It was also fairly slow, with instruction speeds around 4,000 operations per second, and had limited main memory based on delay lines, but as Ferranti pointed out, its price/performance ratio was difficult to beat.

The Datamatic Division of Honeywell announced the H-800 electronic computer in 1958. The first installation occurred in 1960. A total of 89 were delivered. The H-800 design was part of a family of 48-bit word, three-address instruction format computers that descended from the Datamatic 1000, which was a joint Honeywell and Raytheon project started in 1955. The 1800 and 1800-II were follow-on designs to the H-800.

Philco was one of the pioneers of transistorized computers. After the company developed the surface barrier transistor, which was much faster than previous point-contact types, it was awarded contracts for military and government computers. Commercialized derivatives of some of these designs became successful business and scientific computers. The TRANSAC Model S-1000 was released as a scientific computer. The TRANSAC S-2000 mainframe computer system was first produced in 1958, and a family of compatible machines, with increasing performance, was released over the next several years.

References

  1. "The DRTE Computer". friendsofcrc.ca. Note 3. Retrieved 2017-12-28.
  2. 1 2 https://ieeexplore.ieee.org/document/279230/ Dirty Gertie: The DRTE Computer, retrieved 2018 Jan 17
  3. "The DRTE Computer". friendsofcrc.ca. Retrieved 2017-12-28.