✨ENIAC
Glen Beck (hậu cảnh) và [[Betty Holberton|Betty Snyder (tiền cảnh) đang lập chương trình ENIAC trong tòa nhà BRL 328. (Ảnh Quân đội Hoa Kỳ, khoảng năm 1947-1955)|nhỏ|phải]] ENIAC ( hay Electronic Numerical Integrator and Computer, tiếng Việt: Máy tích hợp điện tử và máy tính) là máy tính kỹ thuật số đầu tiên có thể lập trình, điện tử cho mọi mục đích. Nó là máy hoàn chỉnh Turing và có thể giải quyết "một lớp lớn các bài toán số" thông qua việc lập trình lại.
Mặc dù ENIAC được thiết kế và chủ yếu được sử dụng để tính toán các bảng bắn pháo cho Phòng thí nghiệm Nghiên cứu Tên lửa của Quân đội Hoa Kỳ (sau này trở thành một bộ phận của Phòng thí nghiệm Nghiên cứu Quân đội), chương trình đầu tiên của nó là một nghiên cứu về tính khả thi của vũ khí nhiệt hạch.
ENIAC được hoàn thành vào năm 1945 và lần đầu tiên được đưa vào hoạt động cho các mục đích thực tế vào ngày 10 tháng 12 năm 1945.
ENIAC chính thức được đặt tại Đại học Pennsylvania vào ngày 15 tháng 2 năm 1946 và được báo chí gọi là "Bộ não khổng lồ". Nó có tốc độ nhanh hơn một nghìn lần so với tốc độ của máy cơ điện; sức mạnh tính toán này, cùng với khả năng lập trình có mục đích chung, khiến các nhà khoa học cũng như các nhà công nghiệp phấn khích. Sự kết hợp giữa tốc độ và khả năng lập trình cho phép thực hiện thêm hàng nghìn phép tính cho các vấn đề, vì ENIAC đã tính toán quỹ đạo trong 30 giây mà một con người mất 20 giờ (cho phép một giờ ENIAC thay thế 2.400 giờ của con người). Chiếc máy hoàn thiện và được công bố trước công chúng vào tối ngày 14 tháng 2 năm 1946 và chính thức được trưng bày vào ngày hôm sau tại Đại học Pennsylvania, có giá gần 500.000 đô la (tương đương 7.150.000 đô la năm 2020; đã điều chỉnh theo lạm phát). Nó được Quân đội Hoa Kỳ chính thức chấp nhận vào tháng 7 năm 1946. ENIAC ngừng hoạt động vào ngày 9 tháng 11 năm 1946 để tân trang và nâng cấp bộ nhớ, và được chuyển đến Aberdeen Proving Ground, Maryland vào năm 1947. Ở đó, vào ngày 29 tháng 7 năm 1947, nó đã được bật và hoạt động liên tục cho đến 11 giờ 45 chiều ngày 2 tháng 10 năm 1955.
Phát triển và thiết kế
Thiết kế và xây dựng của ENIAC được tài trợ bởi Quân đội Hoa Kỳ, Quân đoàn, Bộ Tư lệnh Nghiên cứu và Phát triển, do Thiếu tướng Gladeon M. Barnes đứng đầu. Tổng chi phí khoảng $ 487.000, . Hợp đồng xây dựng được ký ngày 5 tháng 6 năm 1943; Công việc trên máy tính bắt đầu bí mật tại Trường Kỹ thuật Điện Moore của Đại học Pennsylvania
ENIAC được John Mauchly và J. Presper Eckert của Đại học Pennsylvania, Hoa Kỳ thiết kế. Đội ngũ kỹ sư thiết kế hỗ trợ phát triển bao gồm Robert F. Shaw (bảng chức năng), Jeffrey Chuan Chu (bộ chia / bộ chia vuông), Thomas Kite Sharpless (lập trình viên bậc thầy), Frank Mural (lập trình viên bậc thầy), Arthur Burks (bộ nhân), Harry Huskey (đầu đọc / máy in) và Jack Davis (bộ tích lũy). Các lập trình viên nữ của ENIAC đảm nhận công việc phát triển đáng kể. Năm 1946, các nhà nghiên cứu từ chức tại Đại học Pennsylvania và thành lập Công ty Máy tính Eckert-Mauchly.
ENIAC là một máy tính mô-đun, bao gồm các bảng riêng lẻ để thực hiện các chức năng khác nhau. Hai mươi trong số các mô-đun này là bộ tích lũy không chỉ có thể cộng và trừ mà còn chứa một số thập phân có mười chữ số trong bộ nhớ. Các con số được chuyển giữa các đơn vị này qua một số buýt máy tính đa năng (hoặc khay, như chúng được gọi). Để đạt được tốc độ cao, các bảng điều khiển phải gửi và nhận số, tính toán, lưu câu trả lời và kích hoạt hoạt động tiếp theo, tất cả đều không có bất kỳ bộ phận chuyển động nào. Chìa khóa cho tính linh hoạt của nó là khả năng phân nhánh; nó có thể kích hoạt các phép toán khác nhau, tùy thuộc vào dấu hiệu của một kết quả được tính toán.
Các thành phần
Đến khi kết thúc hoạt động vào năm 1956, ENIAC chứa 18.000 bóng đèn chân không; 7.200 điốt tinh thể; 1.500 rơ le; 70.000 điện trở; 10.000 tụ điện; và khoảng 5.000.000 mối nối hàn tay. Nó nặng hơn , là khoảng kích thước, chiếm và tiêu thụ 150 kW điện năng. Yêu cầu về nguồn điện này dẫn đến tin đồn rằng bất cứ khi nào máy tính được bật, đèn ở Philadelphia sẽ tối đi. Đầu vào có thể được thực hiện từ đầu đọc thẻ IBM và một cú đấm thẻ IBM được sử dụng cho đầu ra. Các thẻ này có thể được sử dụng để tạo ra bản in ngoại tuyến bằng máy kế toán IBM, chẳng hạn như IBM 405. Trong khi ENIAC không có hệ thống lưu trữ bộ nhớ trong thời gian đầu, những thẻ đục lỗ này có thể được sử dụng để lưu trữ bộ nhớ ngoài. Năm 1953, một bộ nhớ lõi từ 100 từ do Burroughs Corporation chế tạo đã được thêm vào ENIAC.
ENIAC đã sử dụng bộ đếm vòng mười vị trí để lưu trữ các chữ số; mỗi chữ số yêu cầu 36 ống chân không, 10 trong số đó là triodes kép tạo nên các flip-flop của bộ đếm vòng. Số học được thực hiện bằng cách "đếm" xung với bộ đếm vòng và tạo ra xung mang nếu bộ đếm "quấn quanh", ý tưởng là mô phỏng điện tử hoạt động của các bánh xe số của một máy cộng cơ học.
ENIAC có 20 bộ tích lũy có dấu mười chữ số, sử dụng biểu diễn phần bù của mười và có thể thực hiện 5.000 phép tính cộng hoặc trừ đơn giản giữa bất kỳ bộ tích lũy nào trong số chúng và một nguồn (ví dụ, một bộ tích lũy khác hoặc một máy phát không đổi) mỗi giây. Có thể kết nối nhiều bộ tích điện để chạy đồng thời, do đó, tốc độ hoạt động cao nhất có thể cao hơn nhiều, do hoạt động song song. nhỏ|250x250px|Cpl. Irwin Goldstein (tiền cảnh) đặt các công tắc trên một trong các bảng chức năng của ENIAC tại Trường Kỹ thuật Điện Moore. (Ảnh quân đội Hoa Kỳ) Có thể nối dây mang của một bộ tích lũy vào một bộ tích lũy khác để thực hiện số học với độ chính xác gấp đôi, nhưng thời gian mạch mang bộ tích lũy đã ngăn cản việc đấu dây từ ba bộ trở lên để có độ chính xác cao hơn. ENIAC đã sử dụng bốn trong số các bộ tích lũy (được điều khiển bởi một đơn vị hệ số nhân đặc biệt) để thực hiện tới 385 phép nhân mỗi giây; năm trong số các bộ tích lũy được điều khiển bởi một bộ chia / bộ chia ô vuông đặc biệt để thực hiện tới 40 phép toán chia mỗi giây hoặc ba phép toán căn bậc hai mỗi giây.
Chín thiết bị khác trong ENIAC là thiết bị khởi động (khởi động và dừng máy), thiết bị quay vòng (được sử dụng để đồng bộ hóa các thiết bị khác), lập trình viên chính (kiểm soát trình tự vòng lặp), đầu đọc (điều khiển một đầu đọc thẻ đục lỗ của IBM), máy in (điều khiển một cú đấm thẻ IBM), máy phát không đổi và ba bảng chức năng.
Thời gian vận hành
Các tài liệu tham khảo của Rojas và Hashagen (hoặc Wilkes) Nhiều flipflop 6L6 và 6V6 đóng vai trò là trình điều khiển đường truyền để truyền xung qua cáp giữa các cụm khe cắm.
Một số ống này cháy gần như mỗi ngày, khiến ENIAC không hoạt động trong khoảng một nửa thời gian. Các ống đặc biệt có độ tin cậy cao không có sẵn cho đến năm 1948. Tuy nhiên, hầu hết các hư hỏng này xảy ra trong giai đoạn khởi động và hạ nhiệt, khi bộ sưởi ống và catốt chịu ứng suất nhiệt nhiều nhất. Các kỹ sư đã giảm các lỗi ống của ENIAC xuống mức chấp nhận được là một ống cứ hai ngày một lần. Theo một cuộc phỏng vấn vào năm 1989 với Eckert, "Chúng tôi có một ống bị hỏng khoảng hai ngày một lần và chúng tôi có thể xác định được vấn đề trong vòng 15 phút." Vào năm 1954, thời gian hoạt động liên tục dài nhất mà không gặp sự cố là 116 giờ - gần 5 ngày.
Lập trình
nhỏ|250x250px|Lập trình viên [[Jean Bartik|Betty Jean Jennings (trái) và Fran Bilas (phải) vận hành bảng điều khiển chính của ENIAC tại Trường Kỹ thuật Điện Moore. (Ảnh Quân đội Hoa Kỳ từ kho lưu trữ của Thư viện Kỹ thuật ARL)]] ENIAC có thể được lập trình để thực hiện các chuỗi hoạt động phức tạp, bao gồm các vòng lặp, các nhánh và các chương trình con. Tuy nhiên, thay vì các máy tính được lưu trữ chương trình tồn tại ngày nay, ENIAC chỉ là một tập hợp lớn các máy tính số học, ban đầu có các chương trình được thiết lập vào máy bằng sự kết hợp của hệ thống dây bảng cắm và ba bảng chức năng di động (chứa 120010 -đường chuyển mạch từng). Nhiệm vụ xử lý một vấn đề và ánh xạ nó vào máy rất phức tạp và thường mất hàng tuần. Do sự phức tạp của việc ánh xạ các chương trình vào máy, các chương trình chỉ được thay đổi sau một số lượng lớn các thử nghiệm của chương trình hiện tại. Sau khi chương trình được hình dung trên giấy, quá trình đưa chương trình vào ENIAC bằng cách thao tác các công tắc và cáp của nó có thể mất nhiều ngày. Sau đó là giai đoạn xác minh và gỡ lỗi, được hỗ trợ bởi khả năng thực thi chương trình từng bước. Hướng dẫn lập trình cho chức năng modulo bằng cách sử dụng trình mô phỏng ENIAC cho ta ấn tượng về một chương trình trên ENIAC trông như thế nào.
Sáu lập trình viên chính của ENIAC, Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas và Ruth Lichterman, không chỉ xác định cách nhập các chương trình ENIAC mà còn phát triển sự hiểu biết về hoạt động bên trong của ENIAC. Các lập trình viên thường có thể thu hẹp lỗi thành một ống bị lỗi riêng lẻ mà kỹ thuật viên có thể tìm ra để thay thế.
Lập trình viên
Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Meltzer, Fran Bilas và Ruth Lichterman là những người lập trình viên đầu tiên của ENIAC. Họ không phải là nhà khoa học máy tính và nhà sử học Kathryn Kleiman đã từng nói, họ không phải là "những quý cô tủ lạnh", tức là những người mẫu tạo dáng trước máy để chụp ảnh báo chí. Tuy nhiên, một số phụ nữ đã không nhận được sự công nhận cho công việc của họ trong ENIAC trong suốt cuộc đời của họ.
Những lập trình viên ban đầu này được thu hút từ một nhóm khoảng hai trăm phụ nữ làm máy tính tại Trường Kỹ thuật Điện Moore thuộc Đại học Pennsylvania. Công việc của máy tính là tạo ra kết quả số của các công thức toán học cần thiết cho một nghiên cứu khoa học hoặc một dự án kỹ thuật. Họ thường làm như vậy với một máy tính cơ học. Những người phụ nữ đã nghiên cứu logic, cấu trúc vật lý, hoạt động và mạch điện của máy để không chỉ hiểu toán học của máy tính mà còn cả bản thân máy. Đây là một trong số ít các hạng mục công việc kỹ thuật dành cho phụ nữ vào thời điểm đó. Betty Holberton (nhũ danh Snyder) tiếp tục giúp viết hệ thống lập trình tổng hợp đầu tiên (SORT / MERGE) và giúp thiết kế các máy tính điện tử thương mại đầu tiên, UNIVAC và BINAC, cùng với Jean Jennings. McNulty đã phát triển việc sử dụng các chương trình con để giúp tăng khả năng tính toán của ENIAC.
Herman Goldstine đã chọn các lập trình viên mà ông gọi là các nhà điều hành, từ các máy tính đã tính toán bảng đạn đạo với máy tính bàn cơ học và máy phân tích vi sai trước và trong quá trình phát triển ENIAC. Dưới sự chỉ đạo của Herman và Adele Goldstine, các máy tính đã nghiên cứu bản thiết kế và cấu trúc vật lý của ENIAC để xác định cách thao tác với các công tắc và cáp của nó, vì ngôn ngữ lập trình vẫn chưa tồn tại. Mặc dù những người đương thời coi việc lập trình là một nhiệm vụ văn thư và không công khai công nhận tác động của các lập trình viên đối với việc vận hành và thông báo thành công ENIAC, McNulty, Jennings, Snyder, Wescoff, Bilas và Lichterman kể từ đó đã được công nhận vì những đóng góp của họ trong lĩnh vực điện toán.
Chức danh "lập trình viên" và "nhà điều hành" ban đầu không được coi là những nghề phù hợp với phụ nữ. Sự thiếu hụt lao động do Thế chiến thứ hai tạo ra đã giúp phụ nữ tham gia vào lĩnh vực này. Tuy nhiên, lĩnh vực này không được coi là có uy tín, và việc thu hút phụ nữ được coi là một cách để giải phóng nam giới để có thêm lao động có kỹ năng. Về cơ bản, phụ nữ được coi là đáp ứng nhu cầu trong một cuộc khủng hoảng tạm thời. Adele Goldstine đã viết mô tả kỹ thuật ban đầu của ENIAC.
Vai trò trong việc tạo bom khinh khí
Mặc dù Phòng thí nghiệm nghiên cứu đạn đạo là nhà tài trợ của ENIAC, nhưng sau một năm thực hiện dự án kéo dài 3 năm này, John von Neumann, một nhà toán học làm việc về bom khinh khí tại Phòng thí nghiệm Quốc gia Los Alamos, đã biết đến chiếc máy tính này. Thành công của dự án này đã cho thấy giá trị của phương pháp Monte Carlo trong khoa học.
Phát triển sau đó
Một cuộc họp báo đã được tổ chức vào ngày 1 tháng 2 năm 1946, và chiếc máy hoàn chỉnh đã được công bố trước công chúng vào tối ngày 14 tháng 2 năm 1946, với những minh chứng về khả năng của nó. Elizabeth Snyder và Betty Jean Jennings chịu trách nhiệm phát triển chương trình quỹ đạo trình diễn, mặc dù Herman và Adele Goldstine đã ghi công vào nó. Máy được chính thức dành riêng vào ngày hôm sau tại Đại học Pennsylvania. Không ai trong số những người phụ nữ tham gia vào việc lập trình máy hoặc tạo ra cuộc trình diễn được mời tham dự buổi biểu diễn chính thức cũng như bữa tối ăn mừng được tổ chức sau đó.
Số tiền hợp đồng ban đầu là $ 61,700; chi phí cuối cùng là gần 500.000 đô la (khoảng 6.600.000 đô la ngày nay). Nó chính thức được Quân đội Hoa Kỳ chấp nhận vào tháng 7 năm 1946. ENIAC ngừng hoạt động vào ngày 9 tháng 11 năm 1946 để sửa chữa và nâng cấp bộ nhớ, và được chuyển đến Aberdeen Proving Ground, Maryland vào năm 1947. Tại đó, vào ngày 29 tháng 7 năm 1947, nó đã được bật và hoạt động liên tục cho đến 11:45 tối vào ngày 2 tháng 10 năm 1955.
Vai trò trong sự phát triển của EDVAC
Vài tháng sau khi ENIAC công bố vào mùa hè năm 1946, như một phần của "nỗ lực phi thường để bắt đầu nghiên cứu trong lĩnh vực này", Lầu Năm Góc đã mời "những người hàng đầu về điện tử và toán học từ Hoa Kỳ và Anh. "
ENIAC là một thiết kế độc nhất vô nhị và không bao giờ được lặp lại. Sự đóng băng về thiết kế vào năm 1943 có nghĩa là thiết kế máy tính sẽ thiếu một số cải tiến đã sớm trở nên phát triển tốt, đặc biệt là khả năng lưu trữ chương trình. Eckert và Mauchly bắt đầu làm việc trên một thiết kế mới, sau này được gọi là EDVAC, đơn giản hơn và mạnh mẽ hơn. Đặc biệt, vào năm 1944, Eckert đã viết mô tả của mình về một đơn vị bộ nhớ (đường trễ thủy ngân) sẽ chứa cả dữ liệu và chương trình. John von Neumann, người đang tư vấn cho Trường Moore về EDVAC, đã tham gia các cuộc họp của Trường Moore, tại đó khái niệm chương trình được lưu trữ đã được xây dựng. Von Neumann đã viết một bộ ghi chú chưa hoàn chỉnh (Bản thảo đầu tiên của Báo cáo về EDVAC) nhằm mục đích sử dụng như một bản ghi nhớ nội bộ — mô tả, xây dựng và diễn đạt bằng ngôn ngữ logic chính thức về các ý tưởng được phát triển trong các cuộc họp. Quản trị viên ENIAC và nhân viên bảo mật Herman Goldstine đã phân phối các bản sao của Dự thảo đầu tiên này cho một số chính phủ và tổ chức giáo dục, thúc đẩy sự quan tâm rộng rãi đến việc xây dựng thế hệ máy tính điện tử mới, bao gồm Máy tính tự động lưu trữ trễ điện tử (EDSAC) tại Đại học Cambridge, Anh và SEAC tại Cục Tiêu chuẩn Hoa Kỳ.
Cải tiến
Một số cải tiến đã được thực hiện đối với ENIAC sau năm 1947, bao gồm cơ chế lập trình lưu trữ chỉ đọc ban đầu sử dụng các bảng chức năng dưới dạng ROM chương trình, sau đó lập trình được thực hiện bằng cách thiết lập các công tắc. Ý tưởng này đã được Richard Clippinger và nhóm của ông, một mặt, và Goldstines, đưa ra trong một số biến thể, mặt khác, và nó đã được đưa vào bằng sáng chế ENIAC. Clippinger đã tham khảo ý kiến của von Neumann về bộ hướng dẫn cần thực hiện. "Lần chạy sản xuất đầu tiên" của các kỹ thuật mã hóa mới về vấn đề Monte Carlo diễn ra vào tháng 4. Sau khi ENIAC chuyển đến Aberdeen, một bảng thanh ghi cho bộ nhớ cũng được xây dựng, nhưng nó không hoạt động. Một bộ phận điều khiển chính nhỏ để bật và tắt máy cũng được thêm vào.
Việc lập trình chương trình lưu trữ cho ENIAC được Betty Jennings, Clippinger, Adele Goldstine và những người khác thực hiện. chạy một chương trình của Adele Goldstine cho John von Neumann. Việc sửa đổi này làm giảm tốc độ của ENIAC xuống hệ số 6 và loại bỏ khả năng tính toán song song, nhưng nó cũng giảm thời gian lập trình lại xuống còn hàng giờ thay vì hàng ngày, nó được coi là rất đáng để mất hiệu suất. Ngoài ra, phân tích cũng chỉ ra rằng do sự khác biệt giữa tốc độ điện tử của tính toán và tốc độ cơ điện của đầu vào / đầu ra, hầu hết mọi vấn đề trong thế giới thực đều hoàn toàn bị ràng buộc vào / ra, ngay cả khi không sử dụng song song của máy ban đầu. Hầu hết các phép tính sẽ vẫn bị ràng buộc I / O, ngay cả sau khi giảm tốc độ do sửa đổi này áp dụng.
Đầu năm 1952, một bộ chuyển số tốc độ cao đã được thêm vào, giúp cải thiện tốc độ chuyển số lên hệ số năm. Vào tháng 7 năm 1953, bộ nhớ lõi mở rộng 100 từ được thêm vào hệ thống, sử dụng biểu diễn số thập phân được mã hóa nhị phân, vượt quá 3 số. Để hỗ trợ bộ nhớ mở rộng này, ENIAC đã được trang bị một bộ chọn Bảng Chức năng mới, một bộ chọn địa chỉ bộ nhớ, các mạch định hình xung và ba lệnh mới đã được thêm vào cơ chế lập trình.
Nguồn tham khảo
- Eckert, J. Presper, The ENIAC (in Nicholas Metropolis, J. Howlett, Gian-Carlo Rota, (editors), A History of Computing in the Twentieth Century, Academic Press, New York, 1980, pp. 525–540)
- Eckert, J. Presper và John Mauchly, 1946, Outline of plans for development of electronic computers, 6 pages. (The founding document in the electronic computer industry.)
- Fritz, W. Barkley, The Women of ENIAC (in IEEE Annals of the History of Computing, Vol. 18, 1996, pp. 13–28)
- (also reprinted in The Origins of Digital Computers: Selected Papers, Springer-Verlag, New York, 1982, pp. 359–373)
-
*Mauchly, John, The ENIAC (in Metropolis, Nicholas, Howlett, Jack; Rota, Gian-Carlo. 1980, A History of Computing in the Twentieth Century, Academic Press, New York, , pp. 541–550, "Original versions of these papers were presented at the International Research Conference on the History of Computing, held at the Los Alamos Scientific Laboratory, 10–ngày 15 tháng 6 năm 1976.")
-
*Rojas, Raúl; Hashagen, Ulf, editors. The First Computers: History and Architectures, 2000, MIT Press,