Cấu trúc của máy tính dẫn đường Apollo (theo chiều kim đồng hồ từ góc trên bên trái): Trái tim của hệ thống là các dãy mạch tích hợp – những vi mạch đầu tiên từng được sử dụng trong một chiếc máy tính. Chúng được lắp ráp thành các module logic đặt sát cạnh nhau. Các diode đảm nhiệm việc chuyển mạch thông tin. Toàn bộ các mạch điện trong máy được nối với nhau bằng khoảng 4.000 sợi dây.
Ở tầng phần mềm, mỗi lệnh của AGC có thể chứa một địa chỉ 12 bit. Nếu chỉ dùng 12 bit, không gian địa chỉ trực tiếp chỉ là 4K word (2^12 = 4096), trong khi toàn bộ bộ nhớ của AGC gồm 36K word core rope ROM và 2K word core RAM, tổng cộng là 38k. Để giải quyết sự khác biệt này, hệ thống sử dụng thêm các thanh ghi bank và một lớp logic giải mã địa chỉ (address decoding) tương đối phức tạp, nằm chủ yếu trên “A‑tray” cùng với logic CPU. Điều này, kết hợp với 12 bit địa chỉ, cho phép CPU có thể “nhìn sang” nhiều khối nhớ 4K khác nhau, tổng cộng phủ được 36K ROM + 2K RAM.
Nhiệm vụ của mạch giải mã địa chỉ là ba bước. Thứ nhất, nó quyết định truy cập hiện tại đang hướng đến RAM có thể thay đổi hay ROM lưu trữ cố định trong core rope. Thứ hai, nếu là core rope, nó phải xác định đó là bank nào, module nào trong sáu module, và mặt phẳng (plane) nào trong module đó. Thứ ba, nó phải tạo ra các tín hiệu cần thiết để chọn được một lõi cụ thể và một strand cụ thể trong lõi đó. Nói cách khác, nó nhận vào “địa chỉ logic” mà lập trình viên thấy, rồi “dịch” thành tọa độ vật lý: module số mấy, plane nào, lõi thứ bao nhiêu, word thứ mấy trên lõi đó.
Về mặt phần cứng, toàn bộ logic này được xây dựng từ một loại IC khá nguyên sơ: mỗi chip chứa hai cổng NOR sử dụng công nghệ RTL (resistor‑transistor logic). Nói kĩ một chút thì cổng NOR là một cổng logic nhận nhiều ngõ vào, chỉ cho ra 1 khi tất cả ngõ vào đều là 0; hễ có ít nhất một ngõ vào là 1 thì ngõ ra là 0. Đây là một cổng “đa năng” vì nếu ghép nhiều cổng NOR với nhau, anh em có thể xây được mọi hàm logic khác (AND, OR, NOT, v.v.).
Và trong AGC, từ những cổng NOR cơ bản, gần như toàn bộ logic số được dùng để lắp ghép thành các mạch giải mã, mạch chọn bank, mạch tạo tín hiệu điều khiển cho dây inhibit, set, reset, clear và các đường chọn strand. Giả định mỗi core rope có 4K hoặc 8K word, mạch giải mã địa chỉ có thể được xử lý rất gọn, một số bit cao trong địa chỉ dùng để chọn module (module 0, 1, 2…), tiếp theo, các bít thấp còn lại dùng để chọn word bên trong. Khi đó, chỉ cần vài dòng dây là đủ.
Tuy nhiên, mỗi core rope module chứa 6K word như giải thích ở bài trước, không phải một lũy thừa của 2 như 4K, 8K, nên việc biến các bit địa chỉ thành “module select” và “strand select” không thể chỉ là cắt gọn đẹp theo biên giới nhị phân; thay vào đó, logic NOR phải được thiết kế để nhận diện từng dải địa chỉ cụ thể, ví dụ địa chỉ từ A đến B thì kích module 0, từ C đến D thì kích module 1, v.v., kết hợp với bit bank để biết đang ở khối 4K nào trong tổng 38K word. Sau khi biết module nào đang được chọn, các bit địa chỉ còn lại mới được dùng để sinh ra “strand select”, tức là chọn 1 trong 12 word trong mỗi lõi và các pattern inhibit tương ứng với từng lõi cụ thể trong module.
Một chi tiết thú vị là AGC chỉ dùng hai loại IC chính: IC sense amplifier cho mạch tương tự, và IC dual NOR cho toàn bộ logic số, bao gồm mạch giải mã địa chỉ lẫn CPU. Vào đầu thập niên 1960, việc xây nguyên cả CPU và subsystem bộ nhớ bằng IC là rất tiên phong; AGC trở thành một trong những khách hàng tiêu thụ IC lớn nhất thế giới giai đoạn 1962–1965, đủ sức tác động đến cả ngành công nghiệp bán dẫn.
Ở bài trước, anh em đã thấy mỗi lõi trong core rope của AGC có 192 dây sense gắn logic với nó, chia thành 12 nhóm 16 dây, mỗi nhóm gọi là một strand và tương ứng với một word 16 bit (15 bit dữ liệu + 1 bit parity). Khi một lõi lật trạng thái, tất cả dây sense đi xuyên qua lõi đó đều nhận xung, nhưng AGC không muốn đọc cả 12 word cùng lúc; nó chỉ cần đúng một word theo địa chỉ. Phần việc “chọn bó dây nào được nói” được thực hiện bởi một module riêng: bảng mạch strand select.