Có thể làm cho một máy tính đơn giản hoàn toàn với bảng mạch và các linh kiện điện tử cơ bản? Có khả thi không, ví dụ xây dựng một máy tính khoa học theo cách này?
Có thể làm cho một máy tính đơn giản hoàn toàn với bảng mạch và các linh kiện điện tử cơ bản? Có khả thi không, ví dụ xây dựng một máy tính khoa học theo cách này?
Câu trả lời:
Tôi sẽ không đồng ý rằng việc đặt một bộ vi điều khiển trên một chiếc bánh mì đủ điều kiện là xây dựng một máy tính trên một chiếc bánh mì. Ngoại trừ I / O (chẳng hạn như bàn phím và màn hình), bản thân một bộ vi điều khiển gần như là một máy tính hoàn chỉnh. Chỉ cần đặt nó trên một chiếc bánh mì và kết nối với một vài dây là chuyện nhỏ và có thể được thực hiện trong mười phút.
Khi OP hỏi: "Có thể tạo ra một máy tính đơn giản hoàn toàn bằng bánh mì và linh kiện điện tử cơ bản không?", Bằng các linh kiện điện tử cơ bản, tôi nghĩ nó có ý nghĩa tương tự như thế này:
Bây giờ, đó là một máy tính trên một chiếc bánh mì (tốt, một vài chiếc bánh mì), được chế tạo từ các thành phần cơ bản . Mô tả về nó ở đây . Nó được tạo thành từ một tá các loại IC 74LS00. (Tôi không nghĩ rằng chúng tôi muốn quay trở lại bóng bán dẫn; PDP-8 ban đầu có kích thước của một chiếc tủ lạnh nhỏ ).
Theo như một máy tính khoa học, nếu bạn chế tạo một máy tính đa năng như máy tính được trình bày ở trên, thì nó có thể được lập trình như một máy tính khoa học. Xây dựng một máy tính khoa học chỉ sử dụng IC logic (không có máy tính) sẽ vô cùng khó khăn; tất cả các nhà sản xuất máy tính như thế (Ti, HP, v.v.) đã sử dụng IC quy mô lớn đặc biệt . Đây là một máy tính được xây dựng tại nhà sử dụng IC máy tính 4 bit sớm.
Tôi sẽ đồng ý rằng nếu ai đó muốn khởi động máy tính và chạy càng nhanh càng tốt, thì sử dụng vi điều khiển là cách tốt nhất. Nếu một người muốn thực sự hiểu làm thế nào một máy tính hoạt động bên trong, thì việc xây dựng một trong những IC cơ bản là con đường đúng đắn.
Không chỉ có thể, tôi thực sự đã làm nó: xem https://www.vttoth.com/CMS/projects/47
Đây là hệ thống dây điện ở mặt sau của một trong những tấm bánh mì trông như thế nào:
Tất nhiên tất cả phụ thuộc vào thành phần nào đủ điều kiện là "cơ bản". Trong trường hợp của tôi, các thành phần cơ bản là 74 ... chip TTL, khoảng một trăm trong số chúng. Để xây dựng một máy tính hoàn toàn từ, giả sử, các bóng bán dẫn ... sẽ quá nhiều.
Ngoài ra, máy tính 4 bit của tôi thực sự không đủ mạnh để được sử dụng như một máy tính khoa học, chủ yếu là do các hạn chế của bộ nhớ (256 nybble 4 bit). Tuy nhiên, không quá khó để mở rộng không gian địa chỉ, có lẽ sử dụng cơ chế phân trang và 4096 nybble (địa chỉ 12 bit) có thể đã đủ, 65536 nybble (địa chỉ 16 bit) chắc chắn.
Có, điều đó là có thể, nhưng bạn cần nhiều hơn một chút so với chỉ một vài chiếc bánh mì để đưa ra một máy tính khoa học, tất nhiên tùy thuộc vào những gì bạn coi là một thành phần cơ bản: cho dù bạn gọi một bóng bán dẫn là một thành phần cơ bản, hay một cái lật , EEPROM hoặc chỉ một cái gì đó bạn có thể hàn từ tủ lạnh cũ.
Có một số câu trả lời hay ở đây, nhưng tôi chỉ muốn chỉ ra một điều mà mọi người thường không cân nhắc. Nhìn vào lịch sử của các thiết bị điện toán, khó khăn trong việc xây dựng một máy tính từ vỏ cây và đinh không phải là CPU cũng không phải ALU. Vấn đề chính là bộ nhớ. Bởi vì bạn cần một lượng lớn nó để toàn bộ khái niệm chương trình được lưu trữ hoạt động. Bạn có thể tạo CPU từ một vài flip-flop và cổng NAND; ví dụ, đối với một ứng dụng điện tử công suất với các ràng buộc cụ thể, tôi đã từng thiết kế một bộ vi xử lý chỉ sử dụng 69 flip-flop (4 thanh ghi 16 bit, 4 cờ và 1 bit thanh ghi trạng thái biểu thị FETCH / EXECUTE). Nó được thực hiện bằng silicon và mọi người viết phần mềm chạy trên nó. Điều đó đơn giản và nó phù hợp với kích thước tiếp xúc cống của bóng bán dẫn điện. Nhưng bộ nhớ cần thiết để lưu trữ bất kỳ chương trình hữu ích nào lớn hơn nhiều.
Ban đầu, bộ nhớ là điểm khởi đầu của thiết kế. Bạn có thể sử dụng rơle ổn định hai lần như đã thực hiện trong các cuộc trao đổi qua điện thoại sớm. Bạn có thể sử dụng ống chân không hoặc bóng bán dẫn để làm dép xỏ ngón; và các thanh ghi của CPU thường được thực hiện theo cách này. Nhưng đối với chương trình và lưu trữ dữ liệu, băng giấy, băng từ, đĩa quay hoặc trống quay đã được sử dụng. Ngay cả sóng âm trên dây thép liên tục được nhận và truyền lại bởi các thiết bị điện tử. Bất cứ điều gì bạn có thể nghĩ về điều đó có thể giữ một số bit trong một khoảng thời gian hợp lý với chi phí hợp lý. Máy tính tàu quỹ đạo Apollo và máy bay đổ bộ mặt trăng đã sử dụng các ký ức lõi cuộn lên như dây thừng. Tất cả những thứ này cần các thiết bị giao diện khác nhau và có tác động rất lớn đến những gì CPU cần để truy cập vào những loại ký ức đó. Bộ nhớ bán dẫn chỉ thực sự xuất hiện vào những năm 1970, cuối cùng loại bỏ sự phức tạp đó. Nhưng một lần nữa, RAM động hiện đại cũng không dễ dàng như vậy.
Sau đó, có thêm sự tuyệt vời của việc phải thiết kế phương trình đầu vào-đầu ra cho máy tính. Một vài bóng đèn là tốt cho một số ứng dụng nhưng nếu bạn cần nhập / xuất văn bản hoặc một cái gì đó thậm chí phức tạp hơn, bạn lại gặp nhiều khó khăn hơn. Đầu đọc thẻ đục lỗ, máy in và thiết bị đầu cuối giấy là một công việc lớn trong thời đại của họ. Thiết bị đầu cuối video chế độ văn bản VT100 từ năm 1978 có bộ nhớ và khả năng xử lý lớn hơn nhiều so với máy tính bảng tính khoa học của bạn.
Có thể, nhưng độ phức tạp và kích thước phụ thuộc vào những gì bạn gọi là linh kiện điện tử cơ bản. Một logic ALU và sequencer hơi phức tạp, nhưng có thể thực hiện được. Bộ nhớ rất đơn giản, nhưng mẫu cơ bản phải được lặp lại với số lần rất lớn (nghĩ 1000 lần).
Bên cạnh phần cứng, bạn cũng sẽ cần phần mềm chạy trên nó. Theo ước tính sơ bộ, đối với CPU phức tạp vừa phải (hướng dẫn 16 bit cổ điển mức dữ liệu 8 bit), nỗ lực phần mềm của bạn sẽ tương đương với nỗ lực phần cứng của bạn. (Đối với CPU đơn giản hơn, bạn sẽ cần nhiều nỗ lực SW hơn.) Và bạn sẽ tải SW đó vào máy như thế nào?
Săn bọ (và giải quyết) sẽ là một công việc thú vị. Tôi khuyên bạn nên bắt đầu viết trong VHDL và chạy nó trên trình giả lập, việc gỡ lỗi sẽ dễ dàng hơn nhiều so với một loạt chip và dây.
Hai sinh viên của tôi đã tạo ra CPU 16 bit với một số phần mềm cơ bản (bao gồm cổng phụ trợ GCC) trong ~ 1 năm, bắt đầu bằng mã VHDL và C để mô phỏng. ALU đã sử dụng chip 74181, bộ nhớ là RAM tĩnh và họ đã sử dụng atMega để giao tiếp giữa PC và máy tính của họ. Máy tính này một phần trên bánh mì không hàn và một phần trên PCB (thanh ghi 8 16 bit). (Hai người này không phải là học sinh trung bình!)
Vâng, nó là có thể. Nhưng bạn cần một vi điều khiển để làm toán. Đây là một dự án ví dụ. Nó sử dụng vi điều khiển AVR và màn hình LCD 16 × 2.