DAC-1

Last updated

DAC-1, for Design Augmented by Computer, was one of the earliest graphical computer aided design systems. Developed by General Motors, IBM was brought in as a partner in 1960 and the two developed the system and released it to production in 1963. It was publicly unveiled at the Fall Joint Computer Conference in Detroit 1964. GM used the DAC system, continually modified, into the 1970s when it was succeeded by CADANCE.

Contents

History

Genesis

GM was an early computer user, using punched card machines as early as 1952 for engineering analysis. In 1955 they moved their computing services into the new Data Processing department of GM Research Laboratories. In 1956, together with North American Aviation, they developed the first "official" batch processing operating system for IBM systems, GM-NAA I/O. In 1958 they were one of the earliest users of IBM's new FORTRAN compiler. [1]

In June 1958 GM Research started a program to better understand the problems and potential improvements in the industrial design process. [1] The team found that each step of the process -from initial conception and body styling through engineering design and finally to detailed parts drawings- used different types of diagrams. Each division within the company had to have their own drawing departments to support them. Time was being lost, and errors introduced, when the diagrams moved from one department to another and had to be re-drawn into the local format. Even the task of looking up the diagrams in the engineering libraries represented a significant amount of time. When modifications were made to drawings, this process repeated itself.

Convinced that automation was a solution to at least some of these problems, in 1959 Donald Hart tasked the Data Processing department of GM Research to start developing a system to store diagrams for rapid retrieval and simple modifications. [2] The idea was that the diagrams would be digitized into the computer, displayed interactively to allow rotations, scaling and projections, and then printed on demand. Lookups would be handled via punched card queries, which would allow operators to quickly retrieve documents for manipulation into whatever local format the user needed, and then print it. Repetitive queries could be automated simply by saving the card stack.

Prototype

The Data Processing department had already been experimenting with an IBM 704 computer displaying points on the IBM 780 display which were recorded to 8 mm film. One early use was plotting traffic simulations. [1] However, the displays were not based on storage tubes, so the images disappeared shortly after they were drawn. In order to keep the image on the screen, the program had to be put into a loop, continually refreshing the display. While this was happening the computer could not be used for other tasks. Although it was suitable for demonstration purposes, a real-world system would need additional hardware to offload this task from the CPU.

Another problem was printing the diagrams. GM solved this problem by using an approach developed by Boeing, replacing the milling head of a computerized milling machine with a ball-point pen and connecting the inputs of the mill to the 704 computer. To address the extremely limited amount of memory available on the 704, they broke the diagrams down into 32-by-32-inch squares, which could be plotted with enough accuracy that they could be loaded up as separate tiles and still line up perfectly when plotted as part of complete diagrams. A set of rollers were added to allow the plotter to move a single 96-inch-wide (2,400 mm) piece of paper around the drawing surface on demand, meaning that the paper did not have to be cut into pieces. The paper was delivered in rolls, allowing diagrams to be any length. [2]

The final problem was to convert the existing diagrams, on paper, into computer data. The solution was to re-print the diagrams onto clear acetate and place them in front of the 780 display. The computer then moved the display's dot across the screen, where it would be periodically occluded by the lines on the acetate. A photomultiplier tube noticed these drops in output and recorded them. Since diagrams consist largely of whitespace and a few lines, a simple raster scan would be too time-consuming. Instead, when the program noticed a line it would scan a circle of points around the last hit, attempting to find the line again. The system allowed the digitizing of 6,000 points a second. [3] The output was a set of cubic polynomials that described the line smoothly.

DAC-1

The system, known as Digital Design, was demonstrated and improved throughout 1959. In order to avoid confusion over the term "digital", which at that time was most closely associated with fingers and not computing, the name changed to DAC-1. [2] By the summer it was clear the basic idea was feasible. In August, the team was given the go-ahead to start work with IBM to purchase an IBM 7090 computer and develop commercial versions of the display hardware.

The production system had to not only manipulate existing drawings, but also be capable of modifying them in the computer. Although the computer would not normally be used to produce new artwork, once the diagrams were scanned into the system, changes could be made without going through the entire scanning process again.

Once digitized, additional software could be used to convert the lines into a 3D shape. This was groundbreaking research at the time, and generated a flurry of research papers. [4] Once converted, the diagrams could be output into the APT numerical control language for direct output on milling machines. This would allow a design team to sketch out their ideas, put them into the system and clean them up, and then have the milling systems produce a physical model.

IBM partnership

In July 1960 IBM presented GM with a formal development contract for a "Graphic Expression Machine", or "Project GEM". [5] [6] The system was hosted by the 7090, IBM's then-standard large business offering, partnered with two new channel controllers for the yet-to-be-released IBM 1301 hard disk system, and a custom controller to drive multiple graphical terminals. Output from the terminals could be sent to a plotter, 35 mm slide film. [7] IBM estimated the system would be installed within 18 months after signing the contract. GM accepted the offer in November 1960. [8]

Development took longer than expected. While the 7090 was being installed at GM Research in Warren, MI, the GM teams were given use of one of IBM's own 7090s in Kingston, NY. As the original production date grew closer the number of GM employees traveling to NY became a serious budget problem, which was addressed when GM rented a Convair aircraft for ferry flights between the two sites. A more serious problem was the scanner system, and a joint GM-IBM team was able to finally address the issues. [9]

The system was given a full demonstration run at IBM's Kingston site in December 1962. The demonstrations were so well attended that bleachers were set up so that all of the attendees could see the terminal screen. The high usage demands during the demos eventually led to the disk system crashing. [8] The production DAC-1 system went live in Warren in April 1963. [8] At the time the 1301 was not ready, so an IBM 1401 and IBM 1405 were used instead. [9]

DAC-1 was one of the earliest production CAD systems to enter use, only the Itek built Digigraphics system beat it, albeit to the extent of a single machine before it was taken over by Control Data Corporation. [10]

In November 1963, DAC-1 was used to create a model of a trunk lid in a straight-through manner. An original sketch was read in, cleaned up on the terminal, converted into 3D and then output to a milling machine. [11]

Alpine

With the successful delivery of DAC-1, IBM turned to commercializing the system in "Project Alpine". The results of Alpine were the IBM 2250 graphics terminal, 2280 film recorder and 2281 film scanner. Unlike the DAC-1's 7090, the Alpine products were all aimed for use with the newly announced IBM 360 series of computers. The graphics terminal was quite successful and IBM became a major CAD vendor. The film printer and scanner found little use among customers that were moving to all-digital workflows, and were later withdrawn as supported products. [8]

End of DAC

DAC had always been intended to be a sort of "large area experiment", not a production system. As an experimental system, DAC was extremely successful, but the designers were well aware that additional development would be needed to make it really useful. In 1967 the CAD project was officially ended. By this point IBM had long abandoned the 7090 series for the 360, and was already working on its replacement, the IBM System/370. DAC was moved from Research to Fisher Body, but being outdated it was later donated to the University of Michigan. [12]

When polled, team leaders within the project universally pointed to the batch-oriented operating system as the primary impediment to a truly interactive design system, with computer performance and a hierarchical file system as secondary concerns. This led to the MCTS system, "Multiple Console Time Sharing System", a version of Multics adapted for their own use, which they developed on the CDC STAR-100 computer. [12]

Description

Operating system

The DAC-1 system included its own custom operating system, known, as was typical at the time, simply as "monitor". Monitor was based on the earlier batch processing systems developed at GM and IBM, but fed in the batches not from punched cards, but from the attached channel controllers instead. Terminals that had to exchange information with the host computer would place data in the controller for relay, which would cause an interrupt. The host machine would service the interrupt by copying the data from the terminal into the batch monitor, which would run it as if the input had come from a card stack. The DAC program consisted of a variety of small programs which were called by the batch monitor. Their output was then copied back to the terminals as if they were printers. Users who were not actively interacting with the terminals at any given time automatically gave up their time to other users. [9] Although the term was not in widespread use at the time, the DAC-1 system was thus an early example of a time-sharing system.

Unlike traditional batch systems, where operators manually scheduled workflows for fastest possible access to resources, DAC-1's workload would be unpredictable. This led to potential situations where one request could take a device offline for servicing, changing tapes for instance, only to have the next request data from that device. Although no general solution to the problem was found, the programmers invested considerable effort in ensuring that all of the modules needed for a particular operation could be loaded in a single "clump". [13]

The original 7090 had a single 32 kbyte bank of memory. In order to improve performance, the DAC-1 software was left in the core, isolated in one of two 16 kbyte logical banks. The other 16 kbytes held the batch monitor and an interrupt controller that drove it. With the introduction of the 7094, the two programs were separated into their own 32 kbyte physical stores. [9] This left little room for user programs and data. After the DAC-1 was first installed, the original 7090 was relegated to other tasks and was replaced by an IBM 7094-II. In addition to being faster, this machine was equipped with two 32 kbyte core memory stores, an unusual arrangement. The two banks allowed DAC to have an entire 32 kbytes to itself.

Programming

Programming on the DAC system was in IBM's FORTRAN IV compiler, but it quickly became clear that a language with graphics primitives would be highly desirable. GM started with an existing ALGOL 58 derivative from the University of Michigan, MAD (Michigan Algorithm Decoder), adding to it and creating their own version, NOMAD. NOMAD also included the ability to allow code to run anywhere in memory, which was very important, especially on the earlier machine with limited memory. Over 90% of the DAC system was written in NOMAD. [13]

A similar language was also developed for the special task of running on the channel controllers. The new language was named "Maybe", because it was not clear whether or not it would work. Maybe turned into a joint effort between GM and the University of Michigan, and was indeed used on the production system. [13]

The DAC-1 system also included a custom language intended for the users, not the programmers. DGL, for descriptive geometry language" was a simple domain-specific language that contained a number of basic geometrical operators and variable assignment. Users could write programs in DGL and input them into DAC using punched cards. The result were new modules that the user could call within the interactive environment. [13]

Terminals

DAC had been designed with a workflow in mind; paper and pencil sketching, digitizing on the reader, minor manipulation on the terminals, and then printing or modeling. In spite of it being the centerpiece of the operation, the graphics terminal was given little thought during the design process. [14] Performance issues limited diagrams to about 1,000 vectors; at this point the refresh time became so slow the display would become difficult to use due to flickering.

The IBM design used a capacitance screen with a metal pencil for input, providing a directly read X and Y coordinate. [14] The basic system was similar to modern touch screen systems like the iPhone, but not sensitive enough to detect a finger and instead required a wired conductor to complete the circuit. The pencil replaced the light pens because it was much faster to decode; a light pen had to wait for a pulse of light when a vector was being redrawn and then work its way through the list of vectors to find out which one was selected.

In use it was quickly discovered that holding the pen to the vertical monitor screen was extremely tiring, so the idea of using the terminal for input was abandoned. The GM team later visited Douglas Engelbart's lab where they saw the first computer mouse, and based future projects on this device instead. [14]

All of the terminals were connected to a single controller, and in turn to the 7090 via its Channel C input. Channel A and B were used to control magnetic tape drives, and Channel D controlled the 1301 disk.

Related Research Articles

<span class="mw-page-title-main">IBM 3270</span> Family of block-oriented display terminals and printers made by IBM

The IBM 3270 is a family of block oriented display and printer computer terminals introduced by IBM in 1971 and normally used to communicate with IBM mainframes. The 3270 was the successor to the IBM 2260 display terminal. Due to the text color on the original models, these terminals are informally known as green screen terminals. Unlike a character-oriented terminal, the 3270 minimizes the number of I/O interrupts required by transferring large blocks of data known as data streams, and uses a high speed proprietary communications interface, using coaxial cable.

<span class="mw-page-title-main">Mainframe computer</span> Large computer

A mainframe computer, informally called a mainframe or big iron, is a computer used primarily by large organizations for critical applications like bulk data processing for tasks such as censuses, industry and consumer statistics, enterprise resource planning, and large-scale transaction processing. A mainframe computer is large but not as large as a supercomputer and has more processing power than some other classes of computers, such as minicomputers, servers, workstations, and personal computers. Most large-scale computer-system architectures were established in the 1960s, but they continue to evolve. Mainframe computers are often used as servers.

<span class="mw-page-title-main">PDP-11</span> Series of 16-bit minicomputers

The PDP–11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the late 1990s, one of a set of products in the Programmed Data Processor (PDP) series. In total, around 600,000 PDP-11s of all models were sold, making it one of DEC's most successful product lines. The PDP-11 is considered by some experts to be the most popular minicomputer.

<span class="mw-page-title-main">Programmable logic controller</span> Programmable digital computer used to control machinery

A programmable logic controller (PLC) or programmable controller is an industrial computer that has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, machines, robotic devices, or any activity that requires high reliability, ease of programming, and process fault diagnosis.

Computerized batch processing is a method of running software programs called jobs in batches automatically. While users are required to submit the jobs, no other interaction by the user is required to process the batch. Batches may automatically be run at scheduled times as well as being run contingent on the availability of computer resources.

<span class="mw-page-title-main">User interface</span> Means by which a user interacts with and controls a machine

In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine from the human end, while the machine simultaneously feeds back information that aids the operators' decision-making process. Examples of this broad concept of user interfaces include the interactive aspects of computer operating systems, hand tools, heavy machinery operator controls and process controls. The design considerations applicable when creating user interfaces are related to, or involve such disciplines as, ergonomics and psychology.

<span class="mw-page-title-main">Compatible Time-Sharing System</span> Computer operating system

The Compatible Time-Sharing System (CTSS) was the first general purpose time-sharing operating system. Compatible Time Sharing referred to time sharing which was compatible with batch processing; it could offer both time sharing and batch processing concurrently.

<span class="mw-page-title-main">RAMDAC</span> Color to analog voltage table

A random-access memory digital-to-analog converter (RAMDAC) is a combination of three fast digital-to-analog converters (DACs) with a small static random-access memory (SRAM) used in computer graphics display controllers or video cards to store the color palette and to generate the analog signals to drive a color monitor. The logical color number from the display memory is fed into the address inputs of the SRAM to select a palette entry to appear on the data output of the SRAM. This entry is composed of three separate values corresponding to the three components of the desired physical color. Each component value is fed to a separate DAC, whose analog output goes to the monitor, and ultimately to one of its three electron guns.

<span class="mw-page-title-main">Coprocessor</span> Type of computer processor

A coprocessor is a computer processor used to supplement the functions of the primary processor. Operations performed by the coprocessor may be floating-point arithmetic, graphics, signal processing, string processing, cryptography or I/O interfacing with peripheral devices. By offloading processor-intensive tasks from the main processor, coprocessors can accelerate system performance. Coprocessors allow a line of computers to be customized, so that customers who do not need the extra performance do not need to pay for it.

<span class="mw-page-title-main">Tandy 2000</span> Personal computer by Radio Shack

The Tandy 2000 is a personal computer introduced by Radio Shack in September 1983 based on the 8 MHz Intel 80186 microprocessor running MS-DOS. By comparison, the IBM PC XT used the older 4.77 MHz Intel 8088 processor, and the IBM PC/AT would later use the newer 6 MHz Intel 80286. Due to the 16-bit data bus and more efficient instruction decoding of the 80186, the Tandy 2000 ran significantly faster than other PC compatibles, and slightly faster than the PC AT. The Tandy 2000 was the company's first computer built around an Intel x86 series microprocessor; previous models used the Zilog Z80 and Motorola 6809 CPUs.

<span class="mw-page-title-main">AIM-65</span>

The Rockwell AIM-65 computer is a development computer introduced in 1978 based on the MOS Technology 6502 microprocessor. The AIM-65 is essentially an expanded KIM-1 computer. Available software included a line-oriented machine code monitor, BASIC interpreter, assembler, Pascal, PL/65, and Forth development system. Available hardware included a floppy disk controller and a backplane for expansion.

<span class="mw-page-title-main">Professional Graphics Controller</span> Graphics adapter and display standard for early IBM PCs

Professional Graphics Controller is a graphics card manufactured by IBM for PCs. It consists of three interconnected PCBs, and contains its own processor and memory. The PGC was, at the time of its release, the most advanced graphics card for the IBM XT and aimed for tasks such as CAD.

ColorCAM was both a CAD and a computer-aided manufacturing (CAM) system for printed circuit boards (PCB). Introduced in 1983 by Lothar Klein, LKSoft, it was one of the first systems running on a personal computer instead of a workstation or mainframe, which was typically the case for all CAD applications at that time.

<span class="mw-page-title-main">CPT Corporation</span> Producer of word processing machines

CPT Corporation was founded in 1971 by Dean Scheff in Minneapolis, Minnesota, with co-founders James Wienhold and Richard Eichhorn. CPT first designed, manufactured, and marketed the CPT 4200, a dual-cassette-tape machine that controlled a modified IBM Selectric typewriter to support text editing and word processing.

VS/9 is a computer operating system for the UNIVAC Series 90 mainframes, used during the late 1960s through 1980s. The 90/60 and 90/70 were repackaged Univac 9700 computers. After the RCA acquisition by Sperry, it was determined that the RCA TSOS operating system was far more advanced than the Univac counterpart, so the company opted to merge the Univac hardware with the RCA software and introduced the 90/70. The 90/60 was introduced shortly thereafter as a slower, less expensive 90/70. It was not until the introduction of the 90/80 that VS/9 finally had a hardware platform optimized to take full advantage of its capability to allow both interactive and batch operations on the same computer.

SCION's MicroAngelo was an early graphics card for S-100 bus computers. Each MicroAngelo board produced a 512 by 480 pixel monochrome image, high resolution for the era. The MicroAngelo Palette Card used the output of multiple MicroAngelo's as individual bit-planes to produce images with up to 256 colors. Early versions of AutoCAD supported the MicroAngelo system.

Digigraphics was one of the first graphical computer aided design systems to go on sale. Originally developed at Itek on the PDP-1 as EDM, the efforts were purchased by Control Data Corporation and ported to their machines, along with a new graphics terminal to support it. Systems cost almost $500,000 and supported only a few users at a time, so in spite of a number of advantages it was not cost competitive with traditional manual methods and only a few systems were sold.

Designers have used computers for calculations since their invention. Digital computers were used in power system analysis or optimization as early as proto-"Whirlwind" in 1949. Circuit design theory or power network methodology was algebraic, symbolic, and often vector-based.

<span class="mw-page-title-main">Vectrix Corporation</span>

Vectrix Corporation was a manufacturer of high-resolution color computer graphics products. Formed in 1980 by Richard Katz, the company's first products were the VX family of graphics terminals, followed by the Pepe graphics cards for the IBM XT and AT.

References

Notes

  1. 1 2 3 Origin, pg. 41
  2. 1 2 3 Origin, pg. 42
  3. Origin, pg. 43
  4. Interpolating, 1968
  5. "SIGGRAPH Computer Graphics Newsletter - Computer Graphics Pioneers". Archived from the original on 2015-09-24. Retrieved 2014-10-10.
  6. Origin, pg. 44
  7. Origin, pg. 53
  8. 1 2 3 4 Origin, pg. 45
  9. 1 2 3 4 Origin, pg. 46
  10. First, pg. 8
  11. Origins, pg. 53
  12. 1 2 Origins, pg. 54
  13. 1 2 3 4 Origin, pg. 48
  14. 1 2 3 Origin, pg. 49

Bibliography

  • Krull, F.N. (1994). "The origin of computer graphics within General Motors". IEEE Annals of the History of Computing. 16 (3): 40. doi:10.1109/MAHC.1994.298419. S2CID   17776315.
  • Technical Information Department, "Design Augmented by Computers - The General Motors DAC-1 System", Search, General Motors Research Laboratories, October 1964
  • Devere, G. S., Hargreaves, B. and Walker, D. M., "The DAC-1 System", Datamation, Volume 12 Number 6 (June 1966), pp. 37–47
  • J.M. Bookston, "The DAC-1 Procedure for Interpolating Surfaces Through a Network of Intersecting Space Curves," Research Report CT-48, General Motors R&D Center, 1968
  • David Weisberg, "The First Commercial CAD System" Archived 2021-09-06 at the Wayback Machine , 2006

Further reading