DAC-1 は、Design Augmented by Computerの略で、最も初期のグラフィカルコンピュータ支援設計システムの 1 つです。ゼネラル モーターズによって開発され、 1960 年にIBM がパートナーとなり、両社でシステムを開発して 1963 年に製品化しました。1964年、デトロイトで開催されたFall Joint Computer Conferenceで公開されました。GM は DAC システムを継続的に改良しながら 1970 年代まで使用し、その後 CADANCE に引き継がれました。
歴史
創世記
GM はコンピュータの初期のユーザーであり、1952 年にはすでにエンジニアリング分析にパンチ カードマシンを使用していました。1955 年に、GM はコンピューティング サービスを GM リサーチ ラボラトリーズの新しいデータ処理部門に移しました。1956 年には、 North American Aviationと共同で、 IBM システム用の最初の「公式」バッチ処理 オペレーティング システムであるGM-NAA I/Oを開発しました。1958 年には、IBM の新しいFORTRANコンパイラーの最も初期のユーザーの 1 つとなりました。[1]
1958 年 6 月、GM リサーチは工業デザインプロセスにおける問題点と改善の可能性をより深く理解するためのプログラムを開始しました。[1]チームは、プロセスの各ステップ (初期の構想とボディ スタイリングからエンジニアリング デザイン、そして詳細な部品図面まで) で、異なる種類の図面が使用されていることを発見しました。社内の各部門には、それぞれをサポートする独自の製図部門が必要でした。図面が部門間で移動し、ローカル形式に再描画される際に、時間の浪費やエラーの発生が発生していました。エンジニアリング ライブラリで図面を検索する作業にもかなりの時間がかかりました。図面に変更が加えられると、このプロセスが繰り返されました。
自動化がこれらの問題の少なくとも一部に対する解決策であると確信したドナルド・ハートは、1959年にGMリサーチのデータ処理部門に、迅速な検索と簡単な変更のために図表を保存するシステムの開発を開始するよう指示しました。[2]そのアイデアは、図表をコンピューターにデジタル化し、回転、拡大縮小、投影ができるように対話的に表示し、オンデマンドで印刷するというものでした。検索はパンチカードクエリを介して処理され、オペレーターはユーザーが必要とするローカルフォーマットで操作するドキュメントをすばやく取得し、印刷することができます。繰り返しのクエリは、カードスタックを保存するだけで自動化できます。
プロトタイプ
データ処理部門では、すでにIBM 704コンピューターで、8ミリフィルムに記録されたポイントをIBM 780ディスプレイに表示する実験を行っていました。初期の用途の1つは、交通シミュレーションのプロットでした。[1]しかし、ディスプレイはストレージチューブに基づいていなかったため、画像は描画後すぐに消えてしまいました。画像を画面に表示し続けるには、プログラムをループに入れて、ディスプレイを継続的に更新する必要がありました。これが行われている間、コンピューターを他のタスクに使用することはできませんでした。デモンストレーションには適していましたが、実際のシステムでは、CPUからこのタスクをオフロードするために追加のハードウェアが必要になります。
もう一つの問題は、図面の印刷であった。GMは、ボーイングが開発した方法、すなわち、コンピューター制御のフライス盤のフライスヘッドをボールペンに置き換え、フライス盤の入力を704コンピューターに接続することでこの問題を解決した。704で利用できるメモリの量が極めて限られていることに対処するため、GMは図面を32×32インチの正方形に分割した。これは、別々のタイルとしてロードしても、完全な図面の一部としてプロットしたときに完全に整列できるほどの精度でプロットできるものであった。ローラーのセットが追加され、プロッターが96インチ幅(2,400 mm)の紙1枚をオンデマンドで描画面の周囲に移動できるようにしたため、紙を細かく切る必要がなくなった。紙はロールで配送されたため、図面は任意の長さにできた。[2]
最後の問題は、紙の上にある既存の図表をコンピュータデータに変換することだった。解決策は、図表を透明なアセテートに再印刷し、780 ディスプレイの前に置くことだった。すると、コンピュータは画面上のドットを移動させ、アセテート上の線によって定期的に隠される。光電子増倍管がこれらの出力の低下を検知し、記録した。図表は大部分が空白と数本の線で構成されているため、単純なラスタースキャンでは時間がかかりすぎる。その代わりに、プログラムは線を検出すると、最後のヒットの周りの点の円をスキャンし、再び線を見つけようとした。このシステムでは、1 秒間に 6,000 点をデジタル化できた。[3]出力は、線を滑らかに表す 3 次多項式のセットであった。
DAC-1
デジタルデザインとして知られるこのシステムは、1959年を通して実証され、改良された。当時「デジタル」という用語がコンピューターではなく指と最も密接に関連していたため、混乱を避けるために、名前はDAC-1に変更された。[2]夏までに、基本的なアイデアが実現可能であることは明らかだった。8月、チームはIBMと協力してIBM 7090コンピューターを購入し、ディスプレイハードウェアの商用バージョンを開発する 作業を開始する許可を得た。
制作システムは、既存の図面を操作するだけでなく、コンピューター内で図面を修正する機能も備えている必要がありました。通常、コンピューターは新しいアートワークの制作には使用されませんが、図面がシステムにスキャンされると、スキャンプロセス全体を再度実行することなく変更を加えることができます。
デジタル化されると、追加のソフトウェアを使用して線を3D形状に変換できます。これは当時画期的な研究であり、多くの研究論文が発表されました。[4]変換されると、図はAPT 数値制御言語に出力され、フライス盤に直接出力できます。これにより、設計チームはアイデアをスケッチし、システムに入力してクリーンアップし、フライス盤で物理モデルを作成できます。
IBMとのパートナーシップ
1960年7月、IBMはGMに「Graphic Expression Machine」または「Project GEM」の正式な開発契約を提示した。[5] [6]このシステムは、IBMの当時の大企業向け標準製品である7090でホストされ、まだリリースされていなかったIBM 1301ハードディスクシステム用の2つの新しいチャネルコントローラと、複数のグラフィカル端末を駆動するためのカスタムコントローラと連携していた。端末からの出力は、プロッタ、35mmスライドフィルムに送信できた。[7] IBMは、契約締結後18か月以内にシステムが導入されると見積もった。GMは1960年11月にこの提案を受け入れた。[8]
開発には予想以上に時間がかかった。7090がミシガン州ウォーレンのGMリサーチに導入されている間、GMチームはニューヨーク州キングストンにあるIBMの7090の1台を使用することになった。当初の生産日が近づくにつれ、ニューヨークへ出張するGM従業員の数が深刻な予算問題となったが、GMは2つの拠点間のフェリー便のためにコンベア機を借りることで対処した。より深刻な問題はスキャナーシステムであり、GMとIBMの合同チームが最終的に問題に対処することができた。[9]
1962年12月、IBMのキングストン工場でシステムの完全なデモが行われた。デモには多くの人が参加したため、参加者全員が端末画面を見ることができるように観覧席が設けられた。デモ中の高使用率により、最終的にディスクシステムがクラッシュした。[8]生産用のDAC-1システムは1963年4月にウォーレンで稼働を開始した。[8]当時1301はまだ準備が整っていなかったため、代わりにIBM 1401とIBM 1405が使用された。[9]
DAC-1は最も早く実用化されたCADシステムの1つであり、Control Data Corporationに買収される前は1台のマシンでしかなかったものの、Itek製のDigigraphicsシステムだけがDAC-1を上回っていました。[10]
1963年11月、DAC-1を使用してトランクリッドのモデルを一貫生産した。オリジナルのスケッチを読み込み、端末上でクリーンアップし、3Dに変換してからフライス盤に出力した。[11]
高山
DAC-1 の成功を受けて、IBM は「プロジェクト Alpine」でシステムの商品化に着手しました。Alpine の成果は、IBM 2250グラフィックス ターミナル、2280 フィルム レコーダー、2281 フィルム スキャナーでした。DAC-1 の 7090 とは異なり、Alpine 製品はすべて、新しく発表されたIBM 360シリーズのコンピューターで使用することを目的としていました。グラフィックス ターミナルは非常に成功し、IBM は主要な CAD ベンダーになりました。フィルム プリンターとスキャナーは、オール デジタル ワークフローに移行していた顧客の間ではほとんど使用されなかったため、後にサポート対象製品から撤退しました。[8]
DACの終了
DAC は、生産システムではなく、一種の「大規模実験」として常に意図されていました。実験システムとして、DAC は非常に成功しましたが、設計者は、それを本当に役立つものにするには追加の開発が必要であることを十分に認識していました。1967 年に、CAD プロジェクトは正式に終了しました。この時点で、IBM は 7090 シリーズを 360 に切り替え、すでにその代替であるIBM System/370に取り組んでいました。DAC は研究部門からフィッシャー ボディに移されましたが、時代遅れになったため、後にミシガン大学に寄贈されました。[12]
アンケート調査では、プロジェクト内のチームリーダーは、バッチ指向のオペレーティングシステムが真のインタラクティブ設計システムの主な障害であると一様に指摘し、コンピュータのパフォーマンスと階層型ファイルシステムは二次的な懸念事項であると指摘した。これが、CDC STAR-100コンピュータ上で開発された、 Multicsを独自に適応させたバージョンであるMCTSシステム(Multiple Console Time Sharing System )につながった。[12]
説明
オペレーティング·システム
DAC-1 システムには、当時一般的だったように、単に「モニター」と呼ばれていた独自のカスタムオペレーティング システムが含まれていました。モニターは、GM と IBM で開発された以前のバッチ処理システムに基づいていましたが、バッチはパンチ カードからではなく、接続されたチャネル コントローラから入力されました。ホスト コンピュータと情報を交換する必要のある端末は、リレー用のデータをコントローラに配置し、割り込みを発生させます。ホスト マシンは、端末からバッチ モニターにデータをコピーして割り込みを処理します。バッチ モニターは、入力がカード スタックから来たかのようにそれを実行します。DAC プログラムは、バッチ モニターによって呼び出されるさまざまな小さなプログラムで構成されていました。それらの出力は、プリンターのように端末にコピーされました。特定の時点で端末をアクティブに操作していないユーザーは、自動的に他のユーザーに時間を譲りました。[9]この用語は当時広く使用されていませんでしたが、DAC-1 システムはタイムシェアリング システムの初期の例でした。
従来のバッチ システムでは、オペレーターがリソースに最速でアクセスできるようにワークフローを手動でスケジュールしていましたが、DAC-1 のワークロードは予測不可能でした。このため、1 つのリクエストでデバイスがオフラインになり、テープ交換などのサービスを受けると、次のリクエストではそのデバイスからデータが取得されるという状況が発生しました。この問題の一般的な解決策は見つかりませんでしたが、プログラマーは特定の操作に必要なすべてのモジュールを 1 つの「塊」にロードできるようにするために多大な労力を費やしました。[13]
オリジナルの 7090 には 32 キロバイトのメモリバンクが 1 つありました。パフォーマンスを向上させるために、DAC-1 ソフトウェアはコア内に残され、2 つの 16 キロバイトの論理バンクの 1 つに分離されました。他の 16 キロバイトには、バッチモニターとそれを駆動する割り込みコントローラーが格納されました。7094 の導入により、2 つのプログラムはそれぞれ独自の 32 キロバイトの物理ストアに分離されました。[9]これにより、ユーザープログラムとデータのためのスペースがほとんどなくなりました。DAC-1 が最初にインストールされた後、オリジナルの 7090 は他のタスクに追いやられ、IBM 7094 -II に置き換えられました。このマシンは高速であることに加えて、珍しい構成として 2 つの 32 キロバイトのコアメモリストアを備えていました。2 つのバンクにより、DAC は 32 キロバイト全体を独自に持つことができました。
プログラミング
DACシステムでのプログラミングはIBMのFORTRAN IVコンパイラで行われていたが、グラフィックスプリミティブを備えた言語が非常に望ましいことがすぐに明らかになった。GMはミシガン大学の既存のALGOL 58派生言語MAD(Michigan Algorithm Decoder)をベースに、それに追加して独自のバージョンNOMADを作成した。NOMADには、コードをメモリ内の任意の場所で実行できるようにする機能も含まれており、これは特にメモリが限られていた初期のマシンでは非常に重要だった。DACシステムの90%以上はNOMADで書かれていた。[13]
同様の言語は、チャネル コントローラ上で実行する特別なタスクのためにも開発されました。新しい言語は、動作するかどうかが明確でなかったため、「Maybe」と名付けられました。Maybe は GM とミシガン大学の共同作業となり、実際に生産システムで使用されました。[13]
DAC-1 システムには、プログラマーではなくユーザー向けのカスタム言語も含まれていました。DGL (descriptive geometry language) は、いくつかの基本的な幾何学演算子と変数割り当てを含む単純なドメイン固有言語でした。ユーザーは DGL でプログラムを作成し、パンチカードを使用して DAC に入力することができました。その結果、ユーザーが対話型環境内で呼び出すことができる新しいモジュールが生まれました。[13]
ターミナル
DACは、紙と鉛筆でスケッチし、リーダーでデジタル化し、端末で少し操作し、その後印刷またはモデリングするというワークフローを念頭に置いて設計されていました。グラフィックス端末は操作の中心であるにもかかわらず、設計プロセスではほとんど考慮されていませんでした。[14]パフォーマンスの問題により、ダイアグラムは約1,000ベクトルに制限され、この時点で更新時間が非常に遅くなり、ちらつきのためにディスプレイが使いにくくなりました。
IBMの設計では、入力に金属製の鉛筆を備えた静電容量スクリーンを使用し、X座標とY座標を直接読み取ることができました。 [14]基本的なシステムはiPhoneなどの現代のタッチスクリーンシステムに似ていましたが、指を検出できるほど感度が高くなく、代わりに回路を完成させるために有線導体が必要でした。鉛筆がライトペンに取って代わったのは、デコードがはるかに高速だったためです。ライトペンは、ベクトルが再描画されるときに光のパルスを待ってから、ベクトルのリストを順に調べてどれが選択されているかを調べる必要がありました。
実際に使ってみると、縦長のモニター画面にペンを当てるのは非常に疲れるということがすぐに分かったため、入力に端末を使用するというアイデアは断念された。GMチームは後にダグラス・エンゲルバートの研究室を訪れ、そこで最初のコンピュータマウスを見て、将来のプロジェクトをこのデバイスに基づいて進めることにした。[14]
すべての端末は 1 つのコントローラに接続され、そのコントローラはチャネル C 入力を介して 7090 に接続されました。チャネル A と B は磁気テープドライブを制御するために使用され、チャネル D は 1301 ディスクを制御しました。
参考文献
注記
- ^ abc Origin、41ページ
- ^ abc Origin、42ページ
- ^ 起源、43ページ
- ^ 補間、1968年
- ^ 「SIGGRAPH Computer Graphics Newsletter - Computer Graphics Pioneers」。2015年9月24日時点のオリジナルよりアーカイブ。2014年10月10日閲覧。
- ^ 起源、44ページ
- ^ 起源、53ページ
- ^ abcd Origin、45ページ
- ^ abcd Origin、46ページ
- ^ まず、8ページ
- ^ 起源、53ページ
- ^ ab オリジンズ、54ページ
- ^ abcd Origin、48ページ
- ^ abc Origin、49ページ
文献
- Krull, FN (1994)。「ゼネラルモーターズにおけるコンピュータグラフィックスの起源」IEEE Annals of the History of Computing 16 ( 3): 40. doi :10.1109/MAHC.1994.298419. S2CID 17776315。
- 技術情報部門、「コンピュータによる設計の拡張 - ゼネラルモーターズ DAC-1 システム」、検索、ゼネラルモーターズ研究所、1964 年 10 月
- Devere, GS、Hargreaves, B.、Walker, DM、「DAC-1 システム」、Datamation、第 12 巻第 6 号 (1966 年 6 月)、37 ~ 47 ページ
- JM ブックストン、「交差する空間曲線のネットワークを介してサーフェスを補間する DAC-1 手順」、研究レポート CT-48、ゼネラルモーターズ R&D センター、1968 年
- David Weisberg、「最初の商用 CAD システム」、2006 年、Wayback Machineで 2021 年 9 月 6 日にアーカイブ
さらに読む
- [1] 2012年12月1日にWayback Machineにアーカイブされ、DAC-1の画像と動画が含まれています。
