Bài giảng Kiến trúc máy tính: Chương III (tt)

60 16 0
Bài giảng Kiến trúc máy tính: Chương III (tt)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Kiến trúc máy tính - Chương III: Binary numbers and some other useful bases, trình bày các nội dung chính: hệ nhị phân, hệ cơ số 2, thiết kế bộ nhân, phép cộng và phép nhân, số có dấu, biểu diễn số có dấu, trường dấu, số không nguyên, dạng chuẩn hóa, mức logic nối tiếp, tốc độ tín hiệu đồng hồ,...

Binary numbers (And some other useful bases) Tại sử dụng hệ nhị phân? • Máy tính sử dụng số nhị phân vì: – Dễ thực mạch: 1=1V, 0=0V (in the past 3.3V or 5V) – Dễ thiết kế mạch phức tạp với cổng (transistors) • Có thể sử dụng nhiều mức điện áp?… – 1=1V, 2=2V, 3=3V, etc – Nhiễu phá huỷ mạch – Digital logic is noise tolerant: • No noise: + → • With noise: 0.9 + 0.4 → 1, not 1.3 – Analog circuits carry noise through: • 1.4V + 3.4V → 4.8V (closer to than 4!) • What’s interesting about computer: Arithmetic is how much we can with a limited number of bits Hệ số (binary) Các hệ số LSBs MSBs • LSB = Least Significant Bit - > Bit có trọng số thấp • MSB = Most Significant Bit -> bit có trọng số cao • Example: 0101 1101 1110 1001 MSB – largest value LSB– lowest value digit digit Phép cộng, nhớ, phép nhân Phép cộng phép nhân Thiết kế nhân • Bộ nhân NxN có tích số 2N bit – Câu hỏi: Phép nhân thực MIPS sử dụng ghi 32 bit? – Trả lời: Hai ghị đặc biệt Hi Lo lưu kết phép nhân 32 bit ghi • Phép nhân chiếm nhiều tài nguyên: Có thể cân đối tài nguyên thời gian Serial multiplication Serial multiplication Làm để xây dựng mảng nhớ Sử dụng địa nhị phân (binary address) để truy nhập nhớ mong muốn đầu bytes! Đọc mảng nhớ Các khối quan trọng • MUXes lựa chọn đầu nhiều đầu vào: Đầu vào bus (multiple bits) • DEMUXes chức ngược lại: chọn đầu nhiều đầu tương ứng với đầu vào • DECODERS nhận giá trị nhị phân đầu vào chuyển đổi thành đầu ra(1 ‐hot): giá trị nhị phân 010 biến đổi thành ‐hot đầu #2 • ENCODERS nhận 1‐hot đầu vào chuyển đổi thành giá trị nhị phân: ‐hot đầu vào #3 thành giá trị nhị phân 011 • ADDERS nhận đầu vào A B đầu tổng (sum) – Half‐adder: A+B = {Sum, CarryOUT} – Full‐adder: A+B+CarryIN = {Sum, CarryOUT} Các phần tử trạng thái: nhớ Trạng thái gì? • Trạng thái ghi lại thơng tin – Có thể thay đổi • Trạng thái nhớ lưu trữ – Đầu thay đổi liệu cập nhật • Mức kết nối logic – đầu thay đổi đầu vào thay đổi Ví dụ: Xây dựng đếm • Làm để tạo đếm? – Đếm 0, 1, 2, 3, 4, … – Tăng giá trị sau xung đồng hồ clock signal (trạng thái thay đổi rõ rệt) • Cơng việc cụ thể: – Tính tốn giá trị (e.g., 0→1, 1→2, etc.) – Lưu trữ giá trị – Cập nhật giá trị • Các bước thực hiện: – Combinational: • next_value = current_value + – Sequential (state): • No clock: current_value = current_value • On clock: current_value = next_value • Đây cách đếm đếm có tín hiệu đồng hồ Tổ hợp logic đếm • Đếm nào? – →1, → 2, → • Answer: An adder! • Cơng việc cụ thể: – Next_value = current_value + • Tạo cộng nào? – SUM = A XOR B – CARRY = A AND B • Nếu lớn bit, ví dụ cộng bit? Input: bits of A (A, A1, A2) Input: bits of B (B, B1, B2) Output: bits (SUM, SUM1, SUM2, COUT) Kết nối cộng nhiều bit (ripple carry add) • Móc nối giá trị nhớ sang cộng kế tiếp: – Carry out bit → Carry in • Cần cộng đầy đủ!: – {CIN + A + B} → {SUM, COUT} Kiểm tra cộng • Phép cộng : –2+3=5 – A = = 010 – B = = 011 – Output = 101 – Có nhớ bit thứ Sử dụng cộng để tạo đếm • Giá trị kế tiếp: next_value = current_value + – Có tất giá trị bit • Nối dây đầu vào đầu ra? – Kết nối giá trị nhớ – B = 001 (+1) – A = current_value – SUM = next value Dùng mạch chốt để tránh vòng lặp hồi tiếp • Next_value = current_value + • Cần phải cách ly giá trị current_value với next_value • Các mạch chốt dịch chuyển đầu tới đầu vào tín hiệu đồng hồ : state element • Cập nhật current_value thành new_value có tín hiệu đồng hồ Tín hiệu đồng hồ hoạt động nào? Time → Khi clock 0→1 đầu vào mạch chốt lưu trữ đầu cập nhật lại tương ứng với đầu vào Tốc độ tín hiệu đồng hồ • Khi sườn xung tăng (0→1) • Giá trị next_value lưu lại giá trị • Giá trị current_value đưa vào cộng để tạo giá trị next_value Tổng quan: mức logic nối tiếp • Các bước thực hiện? – Phần tử trạng thái lưu giữ giá trị current state – Sử dụng tổ hợp logic để tính tốn giá trị next state từ current state – Tạo vịng lặp hồi tiếp: • Với clock signal • The current state → next state • Đầu vào tác động qua lại lẫn • Clock speed xác định việc mức logic cập nhật nhanh Summary: state elements • State elements (memories) store state • Only update at specified times (e.g., clock 0→1) • Use combinational logic (gates) to calculate the next value • Use state elements (memories) to store the current value • Update current value = next value on the clock ...Tại sử dụng hệ nhị phân? • Máy tính sử dụng số nhị phân vì: – Dễ thực mạch: 1=1V, 0=0V (in the past 3.3V or 5V) – Dễ thiết... đổi mã nhị phân thành 1‐hot – Số nhị phân10 == 0100 1‐hot • Bộ mã hoá (Encoders) – Chuyển đổi cấu trúc 1‐ hot thành nhị phân – 1‐hot 00000010 = binary 001 Bộ nhớ • Bộ nhớ mảng chiều phần tử bit

Ngày đăng: 20/05/2021, 02:34

Mục lục

  • Slide 1

  • Tại sao sử dụng hệ nhị phân?

  • Hệ cơ số 2 (binary)

  • Các hệ cơ số

  • LSBs và MSBs

  • Phép cộng, nhớ, phép nhân

  • Phép cộng và phép nhân

  • Thiết kế bộ nhân

  • Serial multiplication 1

  • Serial multiplication 2

  • Serial multiplication 3

  • Serial multiplication 4

  • Serial multiplication 5

  • Serial multiplication 6

  • Serial multiplication 7

  • Serial multiplication 8

  • Serial multiplication 9

  • Bộ nhân song song

  • Ví dụ về bộ cộng

  • Slide 20

Tài liệu cùng người dùng

Tài liệu liên quan