Ánh xạ bộ xử lý vào sơ đồ mạch


11

Tôi là một nhà phát triển phần mềm (sử dụng các ngôn ngữ cấp cao như .NET, C, C ++, v.v.) cố gắng hiểu cách thức máy tính hoạt động ở mức thấp hơn.

Tôi quen thuộc với sơ đồ này:

Tôi đang cố gắng đạt được cái nhìn sâu sắc ở mức độ cao về cách sơ đồ trong liên kết ánh xạ tới sơ đồ mạch như thế này:

Ví dụ, hãy xem tuyên bố ngôn ngữ lắp ráp:

ADD 1,2

Tôi đang cố gắng hiểu làm thế nào bộ xử lý tạo ra '3' làm đầu ra. Tôi nhận ra rằng câu hỏi này có thể khó trả lời bằng những thuật ngữ đơn giản. Nếu có, thì một liên kết sẽ có ích, có lẽ là một cuốn sách.


Với tham chiếu đến sơ đồ đầu tiên bạn đã đăng, các chi tiết bạn cần về số học thực tế đều được ẩn trong khối lớn có nhãn "ALU": mọi khối khác trên sơ đồ đó chỉ ở đó để lấy 1,2 và "thêm" vào ALU và kết quả ra một lần nữa. Biết được điều đó, bạn có thể bắt đầu đọc cách ALU hoạt động, nếu đó là những gì bạn đang hỏi ..
Brian Drumond

5
Sơ đồ đầu tiên của bạn ánh xạ tới CPU Z80 trong sơ đồ thứ hai.
starblue

Câu trả lời:


7

Vấn đề là để hiểu làm thế nào máy tính đạt được 1 + 2 = 3, bạn phải hiểu sâu hơn về 2 cấp độ so với bạn đã đi.

Khoảng một máy tính được tổ chức (về lĩnh vực nghiên cứu) như thế này từ mức cao nhất của sự trừu tượng đến thực tại vật lý nhất:

  1. Phần mềm ứng dụng
  2. Máy ảo
  3. Hệ điều hành
  4. BIOS
  5. Những hệ thống nhúng
  6. Khối IP (Đơn vị phụ / Thiết bị ngoại vi)
  7. Khối logic
  8. Cấp độ cổng
  9. Cấp độ bóng bán dẫn
  10. Chất bán dẫn
  11. Vật lý thiết bị

Để hiểu chính xác lý do tại sao máy tính có thể tạo ra 2 + 1 = 3, trước tiên bạn phải quyết định những gì bạn sẵn sàng chấp nhận "dựa trên đức tin" và những gì bạn sẽ không tin cho đến khi bạn tiếp thu nó. Thông tin đó sẽ ở cấp độ hai dưới mức bạn hiểu. Vì vậy, nếu bạn muốn hiểu một mạch cộng ở mức logic, bạn sẽ cần hiểu những điều cơ bản của bóng bán dẫn "kỹ thuật số" (cụ thể là CMOS).

Sử dụng trang web trước đây của bạn làm ví dụ, xem xét tài nguyên này . Nó thảo luận về "Bộ cộng đầy đủ" - mạch mục đích hoàn toàn chung tối thiểu có khả năng cộng / trừ bao gồm cả mang và mang đi.

Bạn cũng sẽ cần hiểu cách các số được biểu diễn trong phần bù 2 (hệ thống số được sử dụng trong các máy tính hiện đại cho số học số nguyên).

Nếu bạn thực sự muốn một khóa học giới thiệu đẳng cấp thế giới, tôi không thể giới thiệu Giáo sư Scott Wills tại Georgia Tech đủ cao. Ông đã qua đời năm ngoái vì bệnh ung thư, nhưng khóa học của ông vẫn tiếp tục . Lớp Georgia Tech ECE2030 (giới thiệu về kỹ thuật máy tính) có sách giáo khoa và bài tập trực tuyến.

Chúc may mắn!


Cảm ơn vì điều đó. +1. Tôi là một nhà phát triển .NET, mặc dù tôi có kinh nghiệm với C và C ++. Tôi hiểu rằng C # được biên dịch thành Ngôn ngữ trung gian và trình biên dịch JIT nhắm vào kiến ​​trúc máy tính bằng cách biên dịch mã IL một cách nhanh chóng. Tôi đang cố gắng hiểu làm thế nào một vi điều khiển có thể nhận được toán hạng và opcode và tạo ra một đầu ra. Tôi am hiểu (cấp độ GCSE) về các linh kiện điện tử như: Bóng bán dẫn, Tụ điện, v.v.
w0051977

... sau đó tôi sẽ bắt đầu với "Thiết kế chuyển đổi" trong Bài đọc và tiến về phía trước trong các bài học từ đó.
DrFriedParts

Danh sách các chủ đề của bạn quản lý để đưa vào một số chủ đề không liên quan đến câu hỏi, trong khi bỏ qua những chủ đề có liên quan nhất.
Chris Stratton

@Chris - Không, không.
DrFriedParts

3

Tôi đã phải học tương tự ở trường đại học, và chúng tôi đã sử dụng cuốn sách Thiết kế và tổ chức máy tính rất chi tiết (nhưng có lẽ nó quá chi tiết cho nhu cầu của bạn).

Patterson và Hennesy đã sử dụng một số bộ xử lý MIPS "đơn giản" và hiển thị toàn bộ chức năng của CPU với một số mã mẫu trong Trình biên dịch.

Nói chung, tôi nghĩ sẽ là một ý tưởng tuyệt vời khi sử dụng một số bộ xử lý "đơn giản" (Arduino hoặc hơn) và cố gắng hiểu chức năng đó, bởi vì sự khác biệt từ đó đến phức tạp hơn là các mã lệnh được triển khai lớn hơn như thế nào.

PS Có lẽ bộ vi xử lý cơ bản từ Google Code sẽ hữu ích. Nó là một bộ vi xử lý mô phỏng trong Java.


2

Cuốn sách miễn phí Cách thức máy tính hoạt động - Bộ xử lý và bộ nhớ chính của Roger Young sẽ trả lời câu hỏi của bạn, nó sử dụng rơle thay vì bóng bán dẫn để hiểu rõ hơn.


2
Mặc dù cuốn sách đó có vẻ hữu ích, vui lòng chỉnh sửa câu trả lời để bao gồm đầy đủ tiêu đề và thông tin tác giả. Theo cách đó, nếu liên kết thay đổi, nó vẫn có thể theo dõi nó trong tương lai.
PeterJ

Điều này trông giống như những gì tôi đang tìm kiếm tại thời điểm đó. +1. Tôi sẽ xem xét và sau đó quay trở lại.
w0051977

-1

Tôi tìm thấy câu trả lời của tôi ở đây . Đây là một tổng quan cấp cao về quá trình thêm số.


4
Nó hữu ích hơn cho người đọc trong tương lai nếu bạn tóm tắt tài liệu trong câu trả lời. Chỉ cần cung cấp một liên kết đến một tài nguyên bên ngoài sẽ không thêm nhiều vào EE.SE.
Photon

Xin lưu ý những gì @ThePhoton đang nói ở đây. Mặc dù video youtube đó có thể giúp bạn, bạn có thể tóm tắt những gì bạn đã học để nếu liên kết video đó bị hỏng thì đây vẫn là một câu trả lời?
Kortuk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.