SlideShare a Scribd company logo
1 of 153
CHƯƠNG 3
MỨC LOGIC SỐ
GIỚI THIỆU
3.1. CÁC CỔNG VÀ ĐẠI SỐ LOGIC
3.2. CÁC MẠCH LOGIC SỐ CƠ BẢN
   Mạch tích hợp
   Các mạch tổ hợp
        Tổng quát
      Mạch cộng
      Bộ dồn kênh
      Bộ phân kênh
      Mạch giải mã/mạch mã hoá

3.3 BỘ NHỚ
3.4 CHIP VÀ HỆ THỐNG BUS
           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   2 / 50
CÁC CỔNG CƠ BẢN




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   3 / 50
Hàm Logic
   Hàm Logic có thể được biểu diễn dưới một
    số cách như sau:
       Bảng chân lý
       Biểu thức Logic
       Biểu đồ




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   4 / 50
Hàm Logic

   Hàm biểu diễn 3 giá trị đầu vào   Dạng biểu diễn của hàm
                                      F=AB+BC+AC


    A       B      C      F
    0       0      0      0
    0       0      1      0
    0       1      0      0
    0       1      1      1
    1       0      0      0
    1       0      1      1
    1       1      0      1
    1       1      1      1


                BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                5 / 50
Hàm Logic tương đương – VD

       Ba mạch a,b,c đều đưa ra kết quả : F = A B




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       6 / 50
Hàm Logic tương đương

   Kiểm tra sự tương đương giữa các mạch?
     Sử dụng bảng chân lý
        Với mọi tổ hợp đầu vào, nếu có cùng kết

         quả đầu ra  hai hàm tương đương
        Chỉ có thể áp dụng khi các hàm logic có

         số biến ít
     Sử dụng đại số Bool




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         7 / 50
Các mạch logic số cơ bản

 Mạch tích hợp
 Mạch tổ hợp
 Mạch số học




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   8 / 50
Các mạch tích hợp – IC

   Là mạch mà một đơn vị có nhiều cổng
   Thường phân loại chip theo số lượng cổng:

                          Ký hiệu           Số cổng/chip

    SSI (Small Scale Integrated)         1-10

    MSI (Medium Scale Integrated)        10-100

    LSI (Large Scale Integrated)         100-100.000

    VLSI (Very Large Scale Integrated)   > 100.000

                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA           9 / 50
Các mạch tổ hợp

   Là mạch có nhiều đầu vào và nhiều đầu ra, các giá
    trị ra được xác định bằng các giá trị đầu vào tại thời
    điểm hiện thời
   Mạch giải mã, mạch mã hóa, mạch ưu tiên, mạch
    dồn kênh, mạch phân kênh, mạch cộng .v..v




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         10 /
Bộ dồn kênh
                                        (Multiplexers)
   Multiplexer
                                4-data input MUX
    2   đầu vào dữ liệu
         n

     n lối vào điều khiển
     Một đầu ra
   Dựa vào tín hiệu điều
    khiển để xác định đầu
    vào nào sẽ là tín hiệu
    đưa ra




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      11 /
Bộ dồn kênh
(Multiplexers)
 I0


 I1


 I2


 I3


  S1         So
                  Bộ dồn kênh cho 4 đường dữ liệu vào
          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          12 /
Bộ phân kênh
(Demultiplexers)
• Có một đầu vào
• Đầu ra là một trong số 2n đầu ra tuỳ theo tín hiệu điều khiển


                                                                  O0
  C1 C0
                                                                  O1
   0 0      O0=I
   0 1      O1=I           I
                                                                  O2
   1 0      O2=I
   1 1      O3=I                                                  O3


                               C1    C0
              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                 13 /
Bộ phân kênh
(Demultiplexers)
74138 có thể được sử dụng như bộ phân kênh và bộ giải
                          mã




      a. Bộ dồn kênh           b. Bộ phân kênh




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          14 /
Mạch giải mã (Decoder)
 Mạch được ứng dụng vào giải mã chọn địa chỉ
 Đầu vào: n bit
 Đầu ra: 2n (lựa chọn 1 trong số các đầu ra)
 Ví dụ: n=3, 2n = 8


      I0 I1 I2    In-2   In-1   n đầu vào




     O 0 O1 O2              O2n-1   2n đầu ra

          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       15 /
Mạch giải mã (Decoder)
    Xét I0=1,I1=1,I2=1. Theo sơ đồ ta có O7=111.
    Những chân xuất từ O0,...,O6 là 000 do có cổng NOT nên biến 1 0,
     01
                                        I2           I1          I0

    I2   I1   I0
    0    0    0    O0
    0    0    1    O1
    0    1    0    O2
    0    1    1    O3
    1    0    0    O4
    1    0    1    O5
    1    1    0    O6
    1    1    1    O7
                        O7 O6 O5 O4       O3   O2   O1            O0
                    BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA              16 /
Mạch giải mã (Decoder)

74138 có thể được sử dụng như bộ phân kênh và bộ giải
                          mã




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          17 /
Mạch giải mã (Decoder)
   Mạch Decoder 2 - 4




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   18 /
Mạch giải mã (Decoder)
Logic function




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   19 /
Mạch giải mã (Decoder)
       74139: Dual decoder chip




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   20 /
Mạch mã hóa (Encoder)
 Ngược  với mạch giải mã
 Đầu vào: 2n
 Đầu ra: n
 Ví dụ: n=3, k=2n = 8




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   21 /
Mạch mã hóa 8 đường ra 3 đường




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   22 /
Mạch mã hóa (Encoder)
   8 cổng vào chuyển thành 3 cổng ra dạng số nhị phân 3
    bit. Chỉ có 1 cổng vào ở mức tích cực tương ứng với chỉ
    một tổ hợp mã số 3 cổng ra
   Từ bảng bên, ta có
    Y0 = I1 + I3 + I5 + I7
    Y1 = I2 + I3 + I6 + I7
    Y2 = I4 + I5 + I6 +I7




                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       23 /
Mạch mã hóa (Encoder)




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   24 /
Mạch mã hóa (Encoder)(4-2)




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   25 /
Mạch mã hóa (Encoder)
 Priority   encoders




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   26 /
Bộ so sánh
 • So sánh 2 từ nhị phân bằng cách so sánh các cặp
 bit tương ứng. VD: A = A3A2A1A0, B = B3B2B1B0
     • Đầu ra A=B sẽ có giá trị 1 nếu 2 từ đưa vào là
     bằng nhau, ngược lại sẽ có giá trị 0.




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         27 /
Các mạch số học
 Bộ dịch
 Bộ cộng
 Bộ số học và logic ALU
 Bộ tạo tín hiệu thời gian (clock)




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   28 /
Bộ dịch - shifter
   VD: Bộ dịch bit 8 bit:
    8   đầu vào: D0 .. D7; 8 đầu ra: S0 .. S7
    C  xác định hướng dịch chuyển của các bit, nếu C=1: dịch
      phải một vị trí, nếu C=0: dịch trái một vị trí




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             29 /
Bộ cộng (Adders)
   Bộ cộng nửa (Half-adder)
     Cộng  hai bit
     Trả lại tổng và số nhớ carry out
     Không có lối vào cho số nhớ carry – in nên không
      dùng để cộng các bit bậc cao hơn 0
   Bộ cộng đủ (Full-adder)
     Cộng  hai bit vào và bit nhớ carry – in
     Trả lại tổng và số nhớ carry out
     Cho phép xây dựng bộ cộng có kích thước lớn N
      bit
             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      30 /
Bộ cộng (Adders)




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   31 /
Bộ cộng (Adders)

       A 16-bit ripple-carry adder




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   32 /
Bộ cộng (Adders)




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   33 /
Bộ số học và logic - ALU
   VD:
        F0F1=00: A AND B
        F0F1=01: A OR B
        F0F1=10: NOT B (đảo B)
        F0F1=11: A + B


                                                   11




                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        34 /
Bộ số học và logic - ALU




                                             11




ALU 8-bit được xây dựng từ 8 bộ ALU kiểu bit-slices

          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         35 /
Mạch tạo xung Clock
   Các mạch của máy tính được điều khiển bởi một mạch tạo
    các chuỗi xung tuần hoàn gọi là xung Clock
   Xung Clock xác định các chu kỳ của máy tính
       Ví dụ:
            Một chu kỳ được ấn định để thực hiện một vi lệnh
            Các ngõ vào của ALU phải có giá trị ổn định khi kết quả ngõ ra được lưu
             trữ.               1   2    3  4   5   6   7   8   9 10       12

                                                                          11
                            Q0
        delay
         delay              Q1
             delay
                            Q2

                            Q3
                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                               36 /
3.3 Bộ nhớ




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   37 /
Thanh ghi chốt RS
   Lối vào
    S (set): Thiết lập Q=1
    R (Reset): Xoá Q=0

 Lối ra: Q và Q
   R=S=0: Trong khi Thanh ghi RS đang ở một trong 2
    trạng thái cân bằng ổn định, Q sẽ không thay đổi
   S=1, R=0 trong khi Q=0Q=1
   R=1, S=0  Q=0 không phụ thuộc trạng thái trước
    đó
   R=S=1 : Cấm

              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    38 /
Thanh ghi chốt RS hoạt động theo nhịp xung
đồng hồ
   Sử dụng thêm tín hiệu clock
   Mục đích: làm thanh ghi RS chỉ có thể chuyển trạng
    thái vào những khoảng thời gian xác định
   Bình thường clock = 0: không thể chuyển trạng thái
   Clock = 1: thanh ghi phản ứng theo S và R




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        39 /
Thanh ghi chốt D hoạt động theo nhịp xung
đồng hồ
 Mục đích: loại trừ tổ hợp R = S = 1 bị cấm
 D=1, clock = 1: Q =1
 D=0, clock = 1: Q = 0

 Qn+1 = Dn




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       40 /
3.3.2 Flip-flop và thanh ghi
 3.3.2.1 Flip-flop D
    Flip-flop D là một biến thể của thanh ghi chốt D, có khả
     năng trong khoảng thời gian ứng với xung đồng hồ rất ngắn
     trên lối vào clock, ghi nhận được giá trị ở lối vào D
    Thời gian kéo dài xung không quan trọng, chỉ cần sự
     chuyển trạng thái xảy ra đủ nhanh.




             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               41 /
... 3.3.2.1 Flip-flop D




Ký hiệu chuẩn của một số thanh ghi chốt và flip-flop.
      Hình a) là thanh ghi chốt D, chuyển trạng thái khi tín hiệu CK=1,
       bình thường CK=0. (chuyển mạch theo mức.)
      Hình b) là thanh ghi chốt D, chuyển trạng thái khi tín hiệu CK=0,
       bình thường CK=1. (chuyển mạch theo mức.)
      Hình c) và d) là các Flip-flop, ở lối vào clock của chúng được vẽ ký
       hiệu đầu mũi tên ‘>‘.
      Hình (e): Nhiều thanh ghi chốt và flip-flop ngoài đầu ra Q còn có
       đầu ra và có thêm các đầu vào Set hoặc Preset (để thiết lập Q=1)
       và Reset hay Clear (để thiết lập Q=0)
                BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                            42 /
... 3.3.2.1 Flip-flop D




     Hình a: chip có chứa 2 flip-flop D độc lập với nhau,
      có các chân clear và preset.
     Hình b: một loại chip khác chứa 8 flip-flop D

            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          43 /
Một số loại Flip-Flop điển hình
  
        Tìm hiểu và mô tả chi tiết hoạt động (bao gồm
         cả bảng trạng thái) của một số loại Flip-Flop
         sau

  




  




                BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   44 /
3.3.2.2 Thanh ghi - Register
    Là một nhóm các phần tử nhớ cơ bản cùng hoạt
     động như một đơn vị.
    Thanh ghi thực hiện các nhiệm vụ: nhớ, tính toán
     số học - dịch trái, dịch phải hoặc các thao tác khác
     phức tạp hơn nữa.
    Các thanh ghi làm nhiệm vụ nhớ thường được xây
     dựng từ các flip-flop, chúng cần có khả năng hoạt
     động ở tốc độ cao hơn các thanh ghi được sử
     dụng trong bộ nhớ chính.


            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          45 /
3.3.2.2 Thanh ghi - Register




      Thanh ghi đệm 4-bit, sử dụng 4 flip-flop D.



          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA           46 /
3.3.3 Bộ nhớ ROM

   ROM (Read Only Memory) là bộ nhớ giữ thông tin cố
    định, không thay đổi nội dung ngay cả khi ngắt nguồn
    điện nuôi:
     ROM   mặt nạ (Maskable ROM)
     ROM   có thể nạp chương trình (PROM - Programmable
      ROM)
     ROM   có thể xoá (Erasable ROM)




             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA           47 /
3.3.3.1 ROM mặt nạ
   Thường được tổ chức
    dưới dạng ma trận.
       Có đi-ốt tại vị trí (i,j): 1
       Không có: 0
       Mỗi hàng i: 1 word
       Dây địa chỉ Ai được sử
        dụng để chọn lấy một từ
       Đưa nội dung ra ngoài:
        D3D2D1D0.
   Hình 3-25b: một "ô
    nhớ“
   Hình 3-25c: bảng chân
    lý
              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   48 /
3.3.3.2 PROM - ROM có thể nạp chương
trình
    Giống ROM mặt nạ:
      Các phần tử nhớ được bố trí ở giao
       điểm của các dây hàng và cột
      Một cầu chì sẽ đóng vai trò của
       công tắc có hai trạng thái là đóng,
       mở.
    Khác ROM mặt nạ:
      Chip PROM khi xuất xưởng chưa
       được ghi nội dung, tất cả các cầu
       chì đều chưa đứt.
      NSD có thể tự ghi nội dung bằng
       một thiết bị chuyên dụng – ROM
       Writer.
            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   49 /
3.3.3.3 EPROM - ROM có thể xoá và ghi lại

      Phần tử nhớ là 1 transistor MOS, có 3 cực: S
       (nguồn), D (góp), Gốc).
      Giá thành cao hơn PROM.




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA           50 /
Tổ chức bộ nhớ
   Phần tử nhớ là các mạch
    D-latch
   Tổ hợp các bits thành các
    words




                                  Điều khiển              Điều khiển

                                       Dữ liệu                Dữ liệu
                        Chọn   Ô nhớ             Chọn Ô nhớ
                                       vào                    ra




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                  51 /
BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   52 /
Tổ chức bộ nhớ
   Tổ chức chip nhớ
           A0                           D0

           A1                           D1
                   .
                   .   CHIP         .
                   .                .
                       NHỚ          .
                   .
          An - 1                    .
          CS                            Dm - 1




                       WE   OE
            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      53 /
Tổ chức bộ nhớ
   Tổ chức chip nhớ
     Các  đường địa chỉ: A0 ÷ An - 1 → có 2n ngăn nhớ.
     Các đường dữ liệu: D0 ÷ Dm - 1 → độ dài ngăn nhớ là m
      bit.
     Dung lượng chip nhớ: 2n x m bit   A0                  D0
                                        A                   D
     Các đường điều khiển:
                                         1
                                             .            .
                                                             1

                                             .        CHIP      .
          Tín hiệu chọn chip: CS (Chip Select) .               .
          Tín hiệu điều khiển đọc: RD / OE nA -1 .   NHỚ       .
                                             CS                        D -1
                                                                        m
          Tín hiệu điều khiển ghi: WR / WE


                                                      WE   OE

                BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                 54 /
Tổ chức của DRAM
   Dùng n đường địa chỉ dồn kênh → cho phép truyền
    2n bit địa chỉ
   Tín hiệu chọn địa chỉ hàng RAS (Row Address
    Select)
   Tín hiệu chọn địa chỉ cột CAS (Column Address
    Select)
   Dung lượng của DRAM: 2n x m bit




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA     55 /
Thiết kế module nhớ bán dẫn
   Đặt vấn đề
     Dung  lượng chip nhớ là 2n x m bit
     Cần thiết kế để tăng dung lượng:
       Tăng độ dài ngăn nhớ (tăng m)
       Tăng số lượng ngăn nhớ (tăng n)

       Kết hợp cả hai loại (tăng m và n)




             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   56 /
Thiết kế module nhớ bán dẫn
 Tăng   độ dài ngăn nhớ (tăng m)
 Ví   dụ 1:
    Cho  chip nhớ SRAM: 8K x 4 bit
    Hãy thiết kế modul nhớ 8K x 8 bit

   
    Dung lượng chip nhớ: ?

    Chip nhớ có: ? đường địa chỉ và ? đường dữ

     liệu
    Modul nhớ cần có:? đường địa chỉ và ? đường

     dữ liệu
          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    57 /
Thiết kế module nhớ bán dẫn
   Tăng độ dài ngăn nhớ (tăng m)
     Ví   dụ 1:
        Cho chip nhớ SRAM: 8K x 4 bit
        Hãy thiết kế modul nhớ 8K x 8 bit

     Giải:
        Dung lượng chip nhớ: 213 x 4 bit
        Chip nhớ có:
               13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)
          Modul nhớ cần có:
               13 đường địa chỉ (A0 ÷ A12), 8 đường dữ liệu (D0 ÷ D7)


                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                         58 /
Thiết kế module nhớ bán dẫn
 A0 ÷ A12
             A0 ÷ A12              A0 ÷ A12
                  8K x 4 bit            8K x 4 bit       D4÷D7
                        D0 ÷ D 3              D0 ÷ D 3   D0÷D3


             CS                    CS
               WE        OE          WE        OE
 CS
 WE
 OE
            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA              59 /
Thiết kế module nhớ bán dẫn
   Tăng độ dài ngăn nhớ (tăng m)
     Bài   toán tăng độ dài tổng quát:
       Cho chip nhớ 2n x m bit
       Cần thiết kế modul nhớ 2n x (k.m) bit

      ⇒ Cần ghép nối k chip nhớ




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   60 /
Thiết kế module nhớ bán dẫn
 Tăng số lượng ngăn nhớ (tăng n)
 Ví dụ 2:
     Cho chip nhớ SRAM: 4K x 4 bit
     Hãy thiết kế modul nhớ 8K x 4 bit

:
     Dung  lượng chip nhớ: ?
     Chip nhớ có:
         ? đường địa chỉ và ? đường dữ liệu
     Modul   nhớ cần có:
         ? đường địa chỉ, ? đường dữ liệu

              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   61 /
Thiết kế module nhớ bán dẫn
   Tăng số lượng ngăn nhớ (tăng n)
   Ví dụ 2:
     Cho chip nhớ SRAM: 4K x 4 bit
     Hãy thiết kế modul nhớ 8K x 4 bit
   Giải:
     Dung    lượng chip nhớ: 212 x 4 bit
     Chip nhớ có:
        12 đường địa chỉ (A0 ÷ A11), 4 đường dữ liệu (D0 ÷ D3)

     Modul nhớ cần có:
        13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)

        212+1=213  ý tưởng xây dựng mạch như thế nào?, sử
         dụng thêm mạch gì?
             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA              62 /
Thiết kế module nhớ bán dẫn
                                        A0÷A11
 A0 ÷ A11
                                                 D0÷D3
                                        CS

            A12                          WE OE
                          A Y0
                                                         D0 ÷ D 3
                                        A0÷A11
            CS            G Y1
                                                 D0÷D3
                                        CS
 G   A      Y1    Y0
                                         WE OE
 0   0      0     1
 0   1      1     0
                          WE
 1   X      1     1       OE

                   BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         63 /
Thiết kế module nhớ bán dẫn
   Tăng số lượng ngăn nhớ (tăng n) tổng quát
     Cho chip nhớ 2n x m bit
     Cần ghép nối modul nhớ: 2k+n x m bit

    ⇒ Cần ghép nối 2k chip
     và phải dùng bộ giải mã k: 2k (k → 2k)




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   64 /
Thiết kế module nhớ bán dẫn
   Kết hợp cả hai loại (tăng m và n)
     Ví  dụ 3:
         Cho chip nhớ SRAM: 8K x 4 bit

         Hãy thiết kế modul nhớ 16K x 8 bit

    
         Dung  lượng chip nhớ: ?
         Chip nhớ có: ? đường địa chỉ, ? đường dữ liệu

         Modul nhớ cần có: ? đường địa chỉ , ? đường

          dữ liệu

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        65 /
Thiết kế module nhớ bán dẫn
   Kết hợp cả hai loại (tăng m và n)
     Ví   dụ 3:
        Cho chip nhớ SRAM: 8K x 4 bit
        Hãy thiết kế modul nhớ 16K x 8 bit

     Giải:
        Dung lượng chip nhớ: 213 x 4 bit
        Chip nhớ có:
               13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)
          Modul nhớ cần có:
               14 đường địa chỉ (A0 ÷ A13), 8 đường dữ liệu (D0 ÷ D7)


                 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                         66 /
Thiết kế module nhớ bán dẫn
  A0÷A12
                        A0÷A12       A0÷A12
                                                      D4÷D7
                             D0÷D3        D0÷D3
                                                   D0÷D3
                        CS           CS
       A13              WE OE        WE OE
             A Y0


    CS       G Y1       A0÷A12       A0÷A12
                                                   D4÷D7
                             D0÷D3         D0÷D3
                                                   D0÷D3
                        CS           CS

                        WE OE        WE OE

  WE
  OE

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                  67 /
Thiết kế module nhớ bán dẫn
 Bài toán tăng số lượng và độ dài tổng quát:
 Cho chip nhớ 2n x m bit
 Cần ghép nối modul nhớ: 2p+n x (q.m) bit
 ⇒ Cần ghép nối q.2p chip thành 2p bộ, mỗi bộ
  q chip và phải dùng bộ giải mã p: 2p (p → 2p)




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    68 /
Không gian nhớ


                             Segment (16 bit)
                         Offset (16) n
                                                                        216 = 64K


  xxxx xxxx xxxx xxxx 0000                                                          220 =
                                                                                    1MB
  Tghi 16 bit                dịch trái 4                                           không
                                                                                    gian
  xxxx xxxx xxxx xxxx xxxx                                                          nhớ

                20 bit
                                                                        x
 Địa chỉ vật lý = segment x 24 + offset                                     x +1
                                                              16 byte

   • segment = 16 bit  số lượng segment: 216 = 64k đoạn
   • offset = 16 bit  kích thước tối đa của đoạn: 64KB
    Không gian logic: 216 x 216 = 64 kđoạn x 64kB ~ 4G >> 1M vật lý
                   BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                                  69 /
Giải mã địa chỉ
Lý do cần giải mã địa chỉ khi ghép nối các vi mạch nhớ với VXL:
   Gán địa chỉ cụ thể (trong toàn bộ không gian địa chỉ
    của bộ nhớ) cho từng mạch nhớ.
   Nếu không có bộ giải mã địa chỉ thì chỉ nối được một
    phần vi mạch nhớ tới bộ VXL
   VD: Khi ghép nối vi mạch nhớ EPROM 2716 2Kx8 tới
    bộ VXL 8088.
     Số chân địa chỉ của 8088: ?
     Số chân địa chỉ của 2716: ?

    Dung lượng tối đa mà 8088 có thể sử dụng khi dùng:
          Bộ giải mã
          Không dùng bộ giải mã
               BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             70 /
Giải mã địa chỉ
Lý do cần giải mã địa chỉ khi ghép nối các vi mạch nhớ với VXL:
   Gán địa chỉ cụ thể (trong toàn bộ không gian địa chỉ
    của bộ nhớ) cho từng mạch nhớ.
   Nếu không có bộ giải mã địa chỉ thì chỉ nối được một
    phần vi mạch nhớ tới bộ VXL
   VD: Khi ghép nối vi mạch nhớ EPROM 2716 2Kx8 tới
    bộ VXL 8088.
     Số  chân địa chỉ của 8088: 20 chân
     Số chân địa chỉ của 2716: 11 chân

    bộ VXL 8088 sẽ gửi địa chỉ trên 20 bit trên bus địa chỉ. Nếu
      chỉ nối 11 chân địa chỉ của 8088 với 2716 thì 8088 chỉ nhìn
      thấy 2KB bộ nhớ thay vì 1MB như nó có thể
              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                71 /
Giải mã địa chỉ - Bộ giải mã cổng NAND

 Sử dụng 1 cổng NAND để giải mã
 VD: giải mã địa chỉ cho vi mạch nhớ
  EPROM 2716 2Kx8 ghép nối với 8088
  Phân tích, vẽ sơ đồ mạch?
   Số đường địa chỉ, đường dữ liệu của chip nhớ?
   Số đường địa chỉ của 8088?
   Phương pháp nối?
   Vẽ sơ đồ mạch.

         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       72 /
Giải mã địa chỉ - Bộ giải mã cổng NAND
 VD: giải mã địa chỉ cho vi mạch nhớ EPROM 2716
  2Kx8 ghép nối với 8088
Phân tích:
 EPROM 2716 2Kx8  11 đường địa chỉ: A10 – A0, 8
  đường dữ liệu D7 – D0
 8088 có 20 đường địa chỉ: A19-A0
 Các chân từ A10-A0 của 8088 được nối với đầu vào
  địa chỉ từ A10 – A0 của 2716
 Các chân A19 – A11 được nối với đầu vào của bộ
  giải mã cổng NAND

          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA     73 /
Giải mã địa chỉ - Bộ giải mã cổng NAND



                              D7




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   74 /
Giải mã địa chỉ - Bộ giải mã cổng NAND
 Đầu ra NAND = 0 khi các chân A19 – A11 = 1 và
  IO/M =0.
 20 bit địa chỉ của các ô nhớ trong EPROM có dạng:

              1111 1111 1XXX XXXX XXXX
 Khoảng địa chỉ dành cho EPROM là từ:

         1111 1111 1000 0000 0000 = FF800H
Đến:
         1111 1111 1111 1111 1111 = FFFFF H



          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       75 /
Giải mã địa chỉ - Bộ giải mã 74LS138
   Mạch giải mã 74LS138




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   76 /
Giải mã địa chỉ - Bộ giải mã 74LS138
   Bảng chân lý của 74LS138




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   77 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Nhận xét:
   Tại bất kỳ thời điểm nào cũng chỉ có một
   đầu ra bằng 0
   Để bộ giải mã hoạt động thì G2A = 0,
   G2B=0, G1=1
   A, B, C sẽ chọn đầu ra nào =0. Đầu ra
   bộ giải mã được nối với CE hay CS của
   vi mạch nhớ

         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   78 /
Giải mã địa chỉ - Bộ giải mã 74LS138
   Ví dụ: Giải mã địa chỉ cho bộ nhớ 64Kx8 (gồm 8
    EPROM 2764 – 8Kx8) trong hệ VXL 8088




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          79 /
Giải mã địa chỉ - Bộ giải mã 74LS138




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   80 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Nhận    xét:
     Các đầu ra của 74LS138 được nối với CE
   Tại bất kỳ thời điểm nào cũng chỉ có một đầu ra
    bằng 0  chỉ có một vi mạch nhớ được chọn và
    gửi dữ liệu của nó trên bus dữ liệu khi RD = 0
   Khi A19 – A16 đều =1, IO/M=0  G2A=0, G2B=0,
    G1=1  kích hoạt bộ giải mã
   Khi bộ giải mã hoạt động A15 – A13 xác định đầu
    ra nào = 0, và tương ứng một vi mạch nhớ sẽ
    được chọn
           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA     81 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Dạng địa chỉ một ô nhớ được giải mã:
       1111 XXXX XXXX XXXX XXXX
 Khoảng địa chỉ ô nhớ từ:

    1111 0000 0000 0000 0000 = F0000H
 Đến:

    1111 1111 1111 1111 1111= FFFFFH




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   82 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Khoảng địa chỉ của vi mạch nhớ nối tới đầu ra
  của bộ giải mã
 VD: xác định khoảng địa chỉ của vi mạch nhớ
  nối tới đầu ra 0, vi mạch này được chọn khi
  CBA = 000




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   83 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Dạng địa chỉ vi mạch nhớ:
       1111 000X XXXX XXXX XXXX
 Khoảng địa chỉ

   1111 0000 0000 0000 0000 = F0000H
Đến: 1111 0001 1111 1111 1111 = F1FFFH




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   84 /
Giải mã địa chỉ - Bộ giải mã 74LS138
 Về   nhà: Đọc về bộ giải mã kép 2- 4 (74LS139)




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   85 /
Bộ nhớ đệm
(Bộ nhớ Cache)

     Thiết bị có truy cập dữ liệu hay thực thi các
      chương trình trực tiếp từ ổ đĩa cứng không?
     Tại sao bộ nhớ chính không được thiết kế để có
      thể đạt được tốc độ như thanh ghi ?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      86 /
Ý tưởng chung:
   Khi cần truy cập một từ, từ đó sẽ được chuyển từ bộ nhớ
    lớn tốc độ thấp (bộ nhớ chính - main memory) về bộ nhớ
    nhỏ tốc độ cao (bộ nhớ cache), để lần sau nếu được sử
    dụng thì có thể truy cập nhanh hơn.




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             87 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Là một lượng nhỏ các đơn vị nhớ tốc độ cao
   Nằm giữa bộ nhớ chính và CPU
   Mục đích là làm tăng tốc độ xử lý
   Có thể nằm trong chip CPU hoặc ngay trên bản mạch
    CPU
   Cache hoạt động theo sự điều khiển của vi chương
    trình




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       88 /
Bộ nhớ đệm
(Bộ nhớ Cache)
 Bộ nhớ cache thường là một phân đoạn dùng
  với bus riêng được nối với CPU
 Dùng để lưu giữ dữ liệu và mã lệnh mà CPU
  hay truy cập đến




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      89 /
Bộ nhớ đệm
(Bộ nhớ Cache)
 Phân mức Cache
 Cache L1 (level 1)
 Cache L2 (level 2)
 Một số máy tính hiện đại còn có cache L3 (vd:
  CPU Pentium 4 Extreme Edition )




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   90 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ở thế hệ máy cũ, L2 còn nằm trên mainboard




   Ngày nay, L1, L2 đều được tích hợp trên CPU
           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   91 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Trên CPU đa lõi:
     Với các CPU dual-core Pentium D và AMD được
      xây dựng trên kiến trúc K8, mỗi lõi của CPU lại
      có Cache nhớ L2 riêng của chính nó. Chính vì
      vậy mỗi một lõi làm việc như nó đang làm việc
      cho một CPU độc lập.
     Các CPU dual-core của Intel được xây dựng
      trên kiến trúc Core và Pentium M thì hai Cache
      nhớ L2 lại có thể được chia sẻ giữa hai lõi


            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      92 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Hoạt động của bộ nhớ Cache
     CPU  yêu cầu nội dung của một vùng nhớ nào đó
     Kiểm tra cache xem có nội dung đó chưa?
     Nếu có, đọc ngay từ cache (Hit Cache)
     Nếu không có, đọc khối nhớ từ bộ nhớ chính và
      cache (miss cache)
     Sau đó chuyển từ cache vào CPU




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   93 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Tổ chức Cache
      Nguyên lý cục bộ về không gian: khi một phần tử
       nào đó được truy xuất thì các phần tử tiếp theo
       cũng có thể được truy xuất
        Ví dụ: Các chỉ thị trong chương trình thường được truy
         cập tuần tự
        Truy cập một phần tử của mảng

     Nguyên    lý cục bộ về thời gian: nếu một phần tử
      nào đó được truy xuất thì nó có thể được truy xuất
      lại trong một khoảng thời gian ngay sau đó
          Ví dụ: vòng lặp của chương trình

               BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             94 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Phân chia bộ nhớ thành các khối.
     Bộ  nhớ chính lưu trữ theo các word theo một địa
      chỉ tuần tự
     Cache lại không sắp xếp như vậy
     Vì thế lược đồ địa chỉ của bộ nhớ chính được sử
      dụng để xác định các khối của từ nhớ và các
      phương thức định vị của khối nhớ đó




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       95 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Cấu trúc bộ nhớ cache




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   96 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Cache:
     Chia thành các Line: Tag và Block
     Tag: lưu địa chỉ của ô nhớ được chuyển vào cache từ main
      memmory (RAM).
     Block lưu dữ liệu của block chuyển từ MainMem vào.

   Main Memory:
     Chiathành các block có kích thước bằng block trên Cache.
     Trong mỗi block lại được chia thành k word.

   Vậy:
     Trên MainMem có 2n word => số block = 2n/k
     Kích thước của cache = C * k word

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             97 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Phân chia bộ nhớ thành các khối.




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   98 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Nhận xét: Trong hình trên:
     Cần sử dụng bao nhiêu bit để biểu diễn địa chỉ bộ
      nhớ?
     Một block có bao nhiêu word?
     Cần sử dụng bao nhiêu bit để xác định vị trí word?
     Cần bao nhiêu bit để biểu diễn block_id?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        99 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Nhận xét: Trong hình trên:
     Cần sử dụng 20 bit để biểu diễn địa chỉ bộ nhớ
     Một block có 4 word
     Cần sử dụng 2 bit để xác định vị trí word
     Còn 20-2=18 bit để biểu diễn block_id




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        100 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Một địa chỉ bộ nhớ sẽ được chia thành 2
    phần:
     Một   để biểu diễn số khối: sử dụng các bit cao để
      biểu diễn
     Một để xác định vị trí của word trong khối: sử dụng
      bit thấp để biểu diễn




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         101 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: Chia địa chỉ A5696 theo khối kích thước
    4 word. Xác định vị trí word và block id?




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    102 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: Chia địa chỉ A5696 theo khối kích thước
    4 word




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    103 /
Bộ nhớ đệm
(Bộ nhớ Cache)


   Ví dụ: Có bao nhiêu khối kích thước 8 word trong
    1Gig bộ nhớ?




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA     104 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: Có bao nhiêu khối kích thước 8 word trong
    1Gig bộ nhớ?
    8  word: 3bit để xác định vị trí của khối.
     Kích thước bộ nhớ là 1Gig (230): cần phải có 30 đường địa
      chỉ.
     Đã sử dụng 3 đường để biểu diễn vị trí word, còn lại 27
      đường để biểu diễn số khối  số khối: 227 = 134217728




             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             105 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Chức năng ánh xạ (Mapping Function)
     Ánh xạ trực tiếp
     Ánh xạ liên kết
     Ánh xạ liên kết thành bộ




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   106 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Lý do cần phải ánh xạ:
     Bộ  nhớ đệm nhanh lưu trữ những dữ liệu có ích tuy nhiên
      nó sẽ trở thành vô ích nếu CPU không tìm thấy nó.
     Khi truy cập vào dữ liệu hoặc các tập lệnh, CPU lần đầu
      tiên tạo ra một địa chỉ bộ nhớ chính.
     Nếu dữ liệu đã được sao chép vào bộ nhớ cache, các địa
      chỉ của dữ liệu trong bộ nhớ cache không giống như là địa
      chỉ chính của bộ nhớ.
     Làm thế nào CPU tìm ra dữ liệu khi nó đã được sao chép
      vào bộ nhớ đệm?
    CPU sử dụng một chương trình ánh xạ "chuyển đổi" các
      địa chỉ của bộ nhớ chính vào một vị trí bộ nhớ cache.

            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               107 /
Bộ nhớ đệm
(Bộ nhớ Cache)

   Giả sử, bộ nhớ chính được chia thành n khối, và
    cache chứa được m khối (với m<n).
         Số lần lấp đầy vào cache = Integer (n/m)
   Ví dụ: bộ nhớ chính có kích thước là 128Mg, được
    chia thành các khối kích thước là 4. bộ nhớ Cache
    có kích thước là 256K, các khối trong Cache cũng
    được chia thành các khối có kích thước là 4. Vậy sau
    bao nhiêu lần truy xuất thì bộ nhớ chính sẽ lấp đầy
    Cache?



            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        108 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: bộ nhớ chính có kích thước là 128Mg, được
    chia thành các khối kích thước là 4. bộ nhớ Cache
    có kích thước là 256K, các khối trong Cache cũng
    dược chia thành các khối có kích thước là 4. Vậy sau
    bao nhiêu lần truy xuất thì bộ nhớ chính sẽ lấp đầy
    Cache?
   Giải:
     Nếu  bộ nhớ chính có kích thước là 128Meg (227), kích
      thước của khối là 4 (22), vì thế bộ nhớ chính có thể lưu
      n= 227-2=225 khối.
     Nếu hệ thống Cache lưu trữ được 256K (218) từ nhớ,
       Ta có m=218-2=216 khối.
      Số lần lấp đầy Cache: n/m=225/216=29=512 lần

            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA             109 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ánh xạ trực tiếp:
       Mỗi Block của BNC chỉ được ánh xạ vào một Line duy nhất:
                                 i = j mod m
     i: số hiệu Line trong cache
     j: số hiệu Block trong BNC
     m: số lượng Line trong cache
   Cụ thể:          B0 → L0                 Bm → L0
                     B1 → L1                Bm+1 → L1. . .
                                      ...
                     Bm-1 → Lm-1             B2m-1 → Lm-1 . . .
   Như vậy
         L0 : B0,     Bm, B2m, ..., Bnm
         L1 : B1,     Bm+1, B2m+1, ..., Bnm+1
                                 .. . . . . .
         Lm-1: Bm-1, B2m-1, B3m-1, ..., B(n+1)m-1
                    BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                110 /
Ánh xạ trực tiếp




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   111 /
Ánh xạ trực tiếp

   Khi đó, địa chỉ do CPU phát ra gồm 3 trường:

             Tag            Line           Word
              t bit              r bit        w bit
     Word: xác định số hiệu ngăn nhớ trong Block (vị trí word
      trong block)
    ⇒ Block (Line) có 2w ngăn nhớ
     Line: xác định số hiệu Line để lưu khối trong cache
    ⇒ Cache có 2r Line, cache chứa 2r + w ngăn nhớ
     Tag: xác định vị trí Block trong bộ nhớ
    ⇒ BNC chứa 2t + r + w ngăn nhớ

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               112 /
Ví dụ

   Cho máy tính có dung lượng:
     BNC = 128 MB, cache = 256 KB, line = 32 byte,
     Độ dài ngăn nhớ = 1 byte.
   Tìm dạng địa chỉ do BXL phát ra?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       113 /
Ví dụ
   Cho máy tính có dung lượng:
     BNC = 128 MB, cache = 256 KB, line = 32 byte,
     Độ dài ngăn nhớ = 1 byte.
   Tìm dạng địa chỉ do BXL phát ra?
   Giải: Ta có:
     BNC  = 128 MB = 27 * 220 byte = 227 byte
     Cache = 256 KB = 28 * 210 byte = 218 byte
     Line = 32 byte = 25 byte ⇒ w = 5
     Số lượng Line trong cache: 218/ 25 = 213 ⇒ r = 13
     Số bit của phần Tag: t= 27 - 13 - 5 = 9

                   9             13           5

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA              114 /
Ví dụ
   Cho máy tính có dung lượng:
     BNC = 256 MB, cache = 64 KB, line = 16 byte,
     Độ dài ngăn nhớ = 4 byte.
   Tìm dạng địa chỉ do BXL phát ra?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          115 /
Ví dụ
   Cho máy tính có dung lượng:
     BNC = 256 MB, cache = 64 KB, line = 16 byte,
     Độ dài ngăn nhớ = 4 byte.
 Tìm dạng địa chỉ do BXL phát ra?
 Giải: Ta có:
     BNC  = 256 MB = 228 byte = 228/22 = 226 ng/nhớ
     Cache = 64 KB = 216 byte = 216 /22 = 214 ng/nhớ
     Line = 16 byte =24/ 22 = 22 ng/nhớ ⇒ w = 2
     Số lượng Line trong cache: 214 / 22 = 212⇒ r = 12
     Số bit của phần Tag: t= 26 - 12 - 2 = 12

            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA           116 /
Ví dụ
   Hãy xác định giá trị của Line(block), Tag và
    Word trong địa chỉ có kích thước 32 bit là
    3FE9704Ah, biết rằng:
     Bộ nhớ sử dụng cơ chế ánh xạ trực tiếp.
     1 word=2 byte:
     Kích thước cache 16K line
     Kích thước của 1 bock = 1 line = 16 word




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       117 /
Ví dụ
   3FE9704Ah         = 0011 1111 1110 1001 0111 0000 0100
    1010 b
   Kích thước cache 16K line = 214 line => L=14 bit
   Kích thước 1 block = 16 word = 24 => k = 4 bit
   => Số bít cho trường Tag = 32 – 4 – 14 = 14

                       Tag                 Line                Word

        Size           14 bit              14 bit              4 bit

        Hệ nhị phân    0011 1111 1110 10   01 0111 0000 0100   1010



        Hệ 10          4090                5892                10

               BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                         118 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: 10 line đầu tiên của cache có 256 line, được
    liệt kê ra như bảng dưới đây. Hãy xác định địa chỉ
    của dữ liệu D8. biết rằng trong cache này lưu thành
    các khối 4word.




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       119 /
Bộ nhớ đệm
(Bộ nhớ Cache)
 Tag: 110011
 Line: 4  0100
 Word: 10

        Tag:       110011   Line    0100   Word 10
               t bit               r bit      w bit


   1100 1101 0010  CD2


           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA            120 /
Đánh giá
   Ưu điểm:
     Dễ thực hiện, vì một Block được ánh xạ cố định
      vào một Line ⇒ không cần thuật toán chọn Line.
     Thiết kế mạch đơn giản.
   Nhược điểm:
     Xácsuất cache hit thấp và hiệu xuất của cache
     không cao vì mỗi một block chỉ có thể đưa vào
     một vị trí xác định trong khi các vị trí khác có thể
     đang trống.


            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA            121 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ánh xạ liên kết: Mỗi Block trong BNC được ánh xạ
    vào một Line bất kỳ trong Cache
   Khi đó, địa chỉ do BXL phát ra có dạng:
                     Tag              Word

                                       w bit
                   s bit
     Word: xác định ngăn nhớ trong Block
    ⇒ Block có 2w ngăn nhớ
     Tag: xác định Block đang ở trong Line
    ⇒ Số lượng Block: 2s
    ⇒ Dung lượng BNC: 2s + w ngăn nhớ

              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA    122 /
   Ưu điểm:
     Tỉ
       lệ cache hit cao hơn ánh xạ trực tiếp vì một
     Block được phép vào một Line bất kỳ.
   Nhược điểm:
     Thiết
         kế mạch tương đối phức tạp, thể hiện ở
     mạch so sánh.




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         123 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: bảng sau đây biểu diễn 5 line trong một Cache
    sử dụng cơ chế ánh xạ liên kết, biết rằng kích thước
    của mỗi khối là 8. Hãy xác định địa chỉ của dữ liệu
    C9




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        124 /
Bộ nhớ đệm
(Bộ nhớ Cache)

   Giải: tại địa chỉ C9 có
  Tag : 0100011010101
  Word: 001
   Kết hợp hai phần này ta xác định được địa chỉ
    trong bộ nhớ chính khi ánh xạ vào trong cache
    là:
  0100 0110 1010 1001=46A9



         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      125 /
Bộ nhớ đệm
(Bộ nhớ Cache)

     Ví dụ: dữ liệu trong bộ nhớ có địa chỉ là
      1E65 sẽ tương ứng với địa chỉ nào trong
      bảng sau




           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        126 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ: dữ liệu trong bộ nhớ có địa chỉ là 1E65 sẽ tương
    ứng với địa chỉ nào trong bảng trên
   Giải: Chuyển địa chỉ 1E65 sang giá trị nhị phân ta có

                     0001 1110 0110 0101
  Theo cơ chế ánh xạ trên ta có thể phân chia địa chỉ này
    như sau:

          0001111001100          101
               Tag ID            Word ID

  Tương ứng với 9E

            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA              127 /
Bộ nhớ đệm
(Bộ nhớ Cache)
 Cache liên kết thành bộ
   Là  sự kết hợp giữa cache ánh xạ trực tiếp và cache ánh xạ
    liên kết bằng cách nhóm các line cùng nhau vào trong một
    set
   Cache được chia thành nhiều Set, mỗi Set gồm nhiều Line
    liên tiếp
   Một Block của BNC chỉ được ánh xạ vào một Set duy nhất
    trong cache, nhưng được ánh xạ vào Line bất kỳ trong set
    đó:
             i = j mod v
      i: số hiệu Set trong cache
      j: số hiệu Block trong BNC

      v: số lượng Set trong cache

           BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               128 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Vídụ: một hệ thống sử dụng một cache với 2 9=512
   line, một khối trong bộ nhớ có kích thước 2 3=8
   word chứa trong một không gian nhớ là 2 30= 1gig.
   Xét sự kết hợp giữa hai kiểu ánh xạ trên để tạo
   thành cơ chế ánh xạ liên kết thành bộ




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       129 /
   Khi đó, địa chỉ do BXL phát ra gồm:
              Tag       Set       Word
              t bit      d bit     w bit

     Word:  xác định số hiệu ngăn nhớ trong Block
    ⇒ Block (Line) có 2w ngăn nhớ
     Set: xác định số hiệu Set trong cache

    ⇒ Cache có 2d Set
     Tag: xác định Block nào đang ở trong Line

    ⇒ BNC chứa 2t + d + w ngăn nhớ

              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        130 /
Bộ nhớ đệm
(Bộ nhớ Cache)




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   131 /
   Cho máy tính có dung lượng:
     BNC  = 512 MB, cache = 128 KB, line = 32 byte,
     Set = 8 Line, độ dài ngăn nhớ = 1 byte.
   Tìm dạng địa chỉ do BXL phát ra?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       132 /
   Cho máy tính có dung lượng:
     BNC  = 512 MB, cache = 128 KB, line = 32 byte,
     Set = 8 Line, độ dài ngăn nhớ = 1 byte.

   Tìm dạng địa chỉ do BXL phát ra?
   Giải: Ta có:
     BNC   = 512 MB = 229 byte; Cache = 128 KB = 217 byte
    Line = 25 byte ⇒ w = 5
    Set = 8 line = 23 line
     Dung lượng Set: 23 * 25 = 28 byte

    ⇒ số lượng Set trong Cache: 217/28 = 29 ⇒ d = 9
     Số bit của phần Tag: t= 29 - 9 - 5 = 15

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                 133 /
   Cho máy tính có dung lượng:
     BNC  = 256 MB, cache = 128 KB, line = 64 byte,
     Set = 4 Line, độ dài ngăn nhớ = 4 byte.
   Tìm dạng địa chỉ do BXL phát ra?




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA       134 /
   Cho máy tính có dung lượng:
     BNC  = 256 MB, cache = 128 KB, line = 64 byte,
     Set = 4 Line, độ dài ngăn nhớ = 4 byte.
 Tìm dạng địa chỉ do BXL phát ra?
 Giải: Ta có:
     BNC  = 228 byte = 228/22 = 226 ng/nhớ
     Cache = 217 byte = 217/22 = 215 ng/nhớ
     Line = 26/22 = 24 ng/nhớ ⇒ w = 4
     D/l Set: 22 * 24= 26 ⇒ s/l Set: 215/26 = 29 ⇒ d = 9
     Số bit của phần Tag: t= 26 - 9 - 4 = 13

             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                135 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Ví dụ. Hãy xác định số set trong Block có địa chỉ là
    29ABCDE8
        Hãy cho biết số Tag, địa chỉ thấp nhất và cao
    nhất của Block . Biết rằng đây là Cache 4 đường,
    mỗi Block chứa 16 word.
        Số lượng line trong Cache là 4K line
        Kích thước của bộ nhớ chính là 1Gig




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        136 /
Bộ nhớ đệm
(Bộ nhớ Cache)
   Do bộ nhớ có kích thước là 1Gig: cần 30 đường địa
    chỉ, vậy 4 bit được sử dụng để xác định cho 16 word
    trong block
   Do đây là cache 4 đường và số lượng các Line trong
    cache là 4K=212. Vậy số set để lưu sẽ là: 212/22=210
    cần 10 bit để xác định số Set
    30 bit địa chỉ trên được chia thành:




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        137 /
Bộ nhớ đệm
(Bộ nhớ Cache)
    Địa chỉ: 29ABCDE8 =
               0010 1001 1010 1011 1100 1101 1110 1000
       16 bit đầu tiên để biểu diễn cho Tag
       10 bit tiếp theo để số set sẽ lưu block
       4 bit cuối cùng biểu diễn vị trí của word trong block
       Địa chỉ thấp nhất tương ứng với word có địa chỉ là :
        0000. Hay chính là địa chỉ 29ADCBE0
       Địa chỉ cao nhất tương ứng với word có địa chỉ là : 1111

        Hay chính là địa chỉ 29ADCBEF




            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA                 138 /
   Ưu điểm:
     Tỉlệ cache hit cao vì một Block được phép vào
      một Line bất kỳ trong Set, và dễ so sánh.
     Đây là kỹ thuật ánh xạ tốt nhất trong 3 kỹ thuật.
   Nhược điểm:
     Thiết   kế mạch phức tạp.




              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA         139 /
Các thuật toán thay thế
   Hai kỹ thuật ánh xạ liên kết: có 4 thuật toán
     Random:   thay ngẫu nhiên một Block cũ nào đó
    ⇒ Dễ thực hiện, nhanh nhất, tỉ lệ cache hit thấp.
     FIFO (First In - First Out): thay Block ở đầu tiên
      trong số các Block đang có trong cache
    ⇒ tỉ lệ cache hit không cao
     LFU (Least Frequently Used): thay Block được
      dùng với tần suất ít nhất ⇒ tỉ lệ cache hit tương
      đối cao
     LRU (Least Recently Used): thay Block được
      dùng gần đây ít nhất ⇒ tỉ lệ cache hit cao
            BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA        140 /
Hoạt động của cache
   Đọc:
     Nếu cache hit: đọc ngăn nhớ từ cache
     Nếu cache miss: thay Block ⇒ cache hit
   Ghi:
     Nếu   cache hit: có 2 phương pháp:
         Write through: ghi dữ liệu vào cả cache và cả BNC
        ⇒ không cần thiết, tốc độ chậm, mạch đơn giản.

        Write back: chỉ ghi vào cache, khi nào Block (trong
         cache) được ghi bị thay đi → ghi vào BNC
        ⇒ tốc độ nhanh, mạch phức tạp.

     Nếu   cache miss: thay Block ⇒ cache hit
             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               141 /
Hoạt động của cache


     BXL           Cache           BNC


               a) Write Through




     BXL           Cache           BNC


                b) Write Back
       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   142 /
Ví dụ cache trên các bộ xử lý Intel
   80386: không có cache trên chip
   80486:
             • 8KB, kích thước Line: 16 byte
             • Ánh xạ liên kết tập hợp 4 đường
   Pentium: có hai cache L1 trên chip
     Cache   lệnh: 8KB, cache dữ liệu: 8KB:
   Petium 4: cache L1 (2 loại) và L2 trên chip:
     Cache L1: + Mỗi cache: 8KB, kích thước Line: 64 byte
                + Ánh xạ liên kết tập hợp 4 đường
     Cache L2: + 256KB, kích thước Line: 128 byte
                 + Ánh xạ liên kết tập hợp 8 đường

              BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA            143 /
BÀI TẬP
 BÀI 1: có bao nhiêu khối kích thước
  16word/block được lưu trong một không gian
  nhớ là 256Gig
 BÀI 2: hãy xác định số line, số tag và vị trí của
  word trong mỗi địa chỉ dưới đây




          BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA      144 /
3.4.2 Các bus của máy tính (Phân loại theo
loại tín hiệu truyền trên bus)




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   145 /
Bus địa chỉ
 Chức năng: vận chuyển địa chỉ để xác định
  ngăn nhớ hay cổng vào-ra.
 Độ rộng bus địa chỉ: xác định dung lượng bộ
  nhớ cực đại của hệ thống.




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   146 /
Bus dữ liệu
 Chức năng: vận chuyển lệnh từ bộ nhớ đến
  CPU vận chuyển dữ liệu giữa CPU, các
  môđun nhớ và môđun vào-ra.
 Độ rộng bus dữ liệu: xác định số bit dữ liệu có
  thể được trao đổi đồng thời.




         BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA     147 /
Bus điều khiển
 Chức năng: vận chuyển các tín hiệu điều
  khiển
 Các loại tín hiệu điều khiển
+ Các tín hiệu phát ra từ CPU để điều khiển
  môđun nhớ và môđun vào-ra
+ Các tín hiệu từ môđun nhớ hay môđun vào-ra
  gửi đến yêu cầu CPU.



        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   148 /
3.4.6 Việc xử lý ngắt
    Một ứng dụng quan trọng nữa của bus là để xử lý
     ngắt:
      Khi CPU ra lệnh cho một thiết bị I/O làm một việc gì đó,
       nó thường chờ đợi tín hiệu ngắt do thiết bị I/O phát ra
       khi hoàn thành công việc được CPU yêu cầu.
      Khi nhận được tín hiệu ngắt, CPU sẽ phản ứng ngay, đó
       có thể là việc nhận dữ liệu do thiết bị I/O đã truyền về,
       cũng có thể là việc gửi tiếp dữ liệu ra thiết bị I/O hoặc
       CPU sẽ sử dụng bus cho một thao tác khác...



             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA               149 /
Xử lý ngắt (Interrupts)
 Khái niệm: Ngắt là cơ chế cho phép CPU tạm
  dừng chương trình đang thực hiện để chuyển
  sang thực hiện một chương trình khác, gọi là
  chương trình con phục vụ ngắt.
 Các loại ngắt
+   Ngắt do lỗi khi thực hiện chương trình, ví dụ: tràn số,
    chia cho 0 …
+   Ngắt do lỗi phần cứng, ví dụ: lỗi bộ nhớ RAM
+   Ngắt do môđun vào-ra phát tín hiệu ngắt đến CPU
    yêu cầu trao đổi dữ liệu.
             BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA          150 /
Chu trình lệnh thực hiện lệnh ngắt




        BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   151 /
Hoạt động ngắt (tiếp)




       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   152 /
Hết Chương 3




BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA   153 /

More Related Content

What's hot

[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử líHong Phuoc Nguyen
 
Chuong 4.1 tin hieu va pho
Chuong 4.1 tin hieu va phoChuong 4.1 tin hieu va pho
Chuong 4.1 tin hieu va phothanhyu
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu soKimkaty Hoang
 
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐỗ Đức Hùng
 
chuong 4. dai so boole
chuong 4.  dai so boolechuong 4.  dai so boole
chuong 4. dai so boolekikihoho
 
Cách tạo chân linh kiện trong Orcad Layout P1
Cách tạo chân linh kiện trong Orcad Layout P1Cách tạo chân linh kiện trong Orcad Layout P1
Cách tạo chân linh kiện trong Orcad Layout P1Vuong Do
 
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIRThe Nguyen Manh
 
Bài Giảng Vi Xử Lý PIT
Bài Giảng Vi Xử Lý PITBài Giảng Vi Xử Lý PIT
Bài Giảng Vi Xử Lý PITNgô Doãn Tình
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu sốHao Truong
 
Ch2 bieudien du lieu
Ch2 bieudien du lieuCh2 bieudien du lieu
Ch2 bieudien du lieuCao Toa
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tinakprovip
 
Ứng dụng logic mờ trong bài toán điều khiển
Ứng dụng logic mờ trong bài toán điều khiểnỨng dụng logic mờ trong bài toán điều khiển
Ứng dụng logic mờ trong bài toán điều khiểnTho Q Luong Luong
 
[BTL] Kiểm tra tính ổn định của hệ thống liên tục
[BTL] Kiểm tra tính ổn định của hệ thống liên tục[BTL] Kiểm tra tính ổn định của hệ thống liên tục
[BTL] Kiểm tra tính ổn định của hệ thống liên tụcPham Hoang
 
Truyen song anten thay ngo lam
Truyen song anten thay ngo lamTruyen song anten thay ngo lam
Truyen song anten thay ngo lamVo Phong Phu
 

What's hot (20)

[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí
 
Tichchap
TichchapTichchap
Tichchap
 
Chuong 4.1 tin hieu va pho
Chuong 4.1 tin hieu va phoChuong 4.1 tin hieu va pho
Chuong 4.1 tin hieu va pho
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu so
 
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
 
chuong 4. dai so boole
chuong 4.  dai so boolechuong 4.  dai so boole
chuong 4. dai so boole
 
Cách tạo chân linh kiện trong Orcad Layout P1
Cách tạo chân linh kiện trong Orcad Layout P1Cách tạo chân linh kiện trong Orcad Layout P1
Cách tạo chân linh kiện trong Orcad Layout P1
 
Co ban ve msp430
Co ban ve msp430Co ban ve msp430
Co ban ve msp430
 
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR
[Báo cáo] Bài tập lớn Xử lý tín hiệu số: Thiết kế bộ lọc FIR
 
Ktmt chuong 3
Ktmt chuong 3Ktmt chuong 3
Ktmt chuong 3
 
Bài Giảng Vi Xử Lý PIT
Bài Giảng Vi Xử Lý PITBài Giảng Vi Xử Lý PIT
Bài Giảng Vi Xử Lý PIT
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu số
 
Ch2 bieudien du lieu
Ch2 bieudien du lieuCh2 bieudien du lieu
Ch2 bieudien du lieu
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tin
 
Ứng dụng logic mờ trong bài toán điều khiển
Ứng dụng logic mờ trong bài toán điều khiểnỨng dụng logic mờ trong bài toán điều khiển
Ứng dụng logic mờ trong bài toán điều khiển
 
Tailieuhoc multisim
Tailieuhoc multisimTailieuhoc multisim
Tailieuhoc multisim
 
[BTL] Kiểm tra tính ổn định của hệ thống liên tục
[BTL] Kiểm tra tính ổn định của hệ thống liên tục[BTL] Kiểm tra tính ổn định của hệ thống liên tục
[BTL] Kiểm tra tính ổn định của hệ thống liên tục
 
Truyen song anten thay ngo lam
Truyen song anten thay ngo lamTruyen song anten thay ngo lam
Truyen song anten thay ngo lam
 
Đề tài: Mô phỏng kênh truyền vô tuyến số bằng matlab, 9đ
Đề tài: Mô phỏng kênh truyền vô tuyến số bằng matlab, 9đ Đề tài: Mô phỏng kênh truyền vô tuyến số bằng matlab, 9đ
Đề tài: Mô phỏng kênh truyền vô tuyến số bằng matlab, 9đ
 
Chap9
Chap9Chap9
Chap9
 

Viewers also liked

Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896
Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896
Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896Dan Vu
 
Ktmt kt c1_c2
Ktmt kt c1_c2Ktmt kt c1_c2
Ktmt kt c1_c2Ly hai
 
Kiến trúc máy tính và hợp ngữ bài 06
Kiến trúc máy tính và hợp ngữ bài 06Kiến trúc máy tính và hợp ngữ bài 06
Kiến trúc máy tính và hợp ngữ bài 06Nhóc Nhóc
 
Dientuso Sld
Dientuso SldDientuso Sld
Dientuso Sldhoadktd
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesNed Potter
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerLuminary Labs
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging ChallengesAaron Irizarry
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Viewers also liked (14)

Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896
Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896
Thcn giao trinh_thuc_hanh_ky_thuat_so_ks_chu_khac_huy_104_trang_9896
 
Ktmt kt c1_c2
Ktmt kt c1_c2Ktmt kt c1_c2
Ktmt kt c1_c2
 
Kiến trúc máy tính và hợp ngữ bài 06
Kiến trúc máy tính và hợp ngữ bài 06Kiến trúc máy tính và hợp ngữ bài 06
Kiến trúc máy tính và hợp ngữ bài 06
 
Vhdl
VhdlVhdl
Vhdl
 
Dientuso Sld
Dientuso SldDientuso Sld
Dientuso Sld
 
Các loại ic
Các loại icCác loại ic
Các loại ic
 
SRAM Design
SRAM DesignSRAM Design
SRAM Design
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar to BGKTMT Ch3 mức logic số

BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxVnHun9
 
Bai 1 (kts)
Bai 1 (kts)Bai 1 (kts)
Bai 1 (kts)viethoa1
 
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDĐồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDMr Giap
 
Tailieu.vncty.com do-an-vi-dieu-khien
Tailieu.vncty.com   do-an-vi-dieu-khienTailieu.vncty.com   do-an-vi-dieu-khien
Tailieu.vncty.com do-an-vi-dieu-khienTrần Đức Anh
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thư Viện Số
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thuTrần Đức Anh
 
Giáo trình kỹ thuật số Chương 3 -4.doc
Giáo trình kỹ thuật số Chương 3 -4.docGiáo trình kỹ thuật số Chương 3 -4.doc
Giáo trình kỹ thuật số Chương 3 -4.docMan_Ebook
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợpMinh Hoàng
 
Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Huynh MVT
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucmster_dang
 
Thiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdfThiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdfquandao25
 
Lap trinh-c-cho-vdk
Lap trinh-c-cho-vdkLap trinh-c-cho-vdk
Lap trinh-c-cho-vdkHiepsvd Bk
 
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRMr Giap
 
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Nguyen Luc
 
Tnkts p1
Tnkts p1Tnkts p1
Tnkts p1Huy Ryx
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxBùi Ngọc Bảo
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sôCao Phong
 

Similar to BGKTMT Ch3 mức logic số (20)

BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docx
 
Bai 1 (kts)
Bai 1 (kts)Bai 1 (kts)
Bai 1 (kts)
 
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDĐồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
 
Cổng logic
Cổng logicCổng logic
Cổng logic
 
Tailieu.vncty.com do-an-vi-dieu-khien
Tailieu.vncty.com   do-an-vi-dieu-khienTailieu.vncty.com   do-an-vi-dieu-khien
Tailieu.vncty.com do-an-vi-dieu-khien
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
 
Nhóm-HM.docx
Nhóm-HM.docxNhóm-HM.docx
Nhóm-HM.docx
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
 
Giáo trình kỹ thuật số Chương 3 -4.doc
Giáo trình kỹ thuật số Chương 3 -4.docGiáo trình kỹ thuật số Chương 3 -4.doc
Giáo trình kỹ thuật số Chương 3 -4.doc
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợp
 
Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautruc
 
Thiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdfThiết-kế-IC-74HC595.pdf
Thiết-kế-IC-74HC595.pdf
 
Lap trinh-c-cho-vdk
Lap trinh-c-cho-vdkLap trinh-c-cho-vdk
Lap trinh-c-cho-vdk
 
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
 
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
 
Msptieuluan
MsptieuluanMsptieuluan
Msptieuluan
 
Tnkts p1
Tnkts p1Tnkts p1
Tnkts p1
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sô
 

More from Cao Toa

Ngân hàng hệ thống thông minh
Ngân hàng hệ thống thông minhNgân hàng hệ thống thông minh
Ngân hàng hệ thống thông minhCao Toa
 
Ngan hang he thong nhung
Ngan hang he thong nhungNgan hang he thong nhung
Ngan hang he thong nhungCao Toa
 
Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Cao Toa
 
BGKTMT Ch5 mức máy qui ước
BGKTMT Ch5 mức máy qui ướcBGKTMT Ch5 mức máy qui ước
BGKTMT Ch5 mức máy qui ướcCao Toa
 
BGKTMT Ch4 mức vi lập trình
BGKTMT Ch4 mức vi lập trìnhBGKTMT Ch4 mức vi lập trình
BGKTMT Ch4 mức vi lập trìnhCao Toa
 
BGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhBGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhCao Toa
 
BGKTMT Ch1 giới thiệu chung
BGKTMT Ch1 giới thiệu chungBGKTMT Ch1 giới thiệu chung
BGKTMT Ch1 giới thiệu chungCao Toa
 
BGKTMT Ch6 mức máy hệ điều hành
BGKTMT Ch6 mức máy hệ điều hànhBGKTMT Ch6 mức máy hệ điều hành
BGKTMT Ch6 mức máy hệ điều hànhCao Toa
 
Ngân hàng câu hỏi kiến trúc máy tính
Ngân hàng câu hỏi kiến trúc máy tínhNgân hàng câu hỏi kiến trúc máy tính
Ngân hàng câu hỏi kiến trúc máy tínhCao Toa
 

More from Cao Toa (9)

Ngân hàng hệ thống thông minh
Ngân hàng hệ thống thông minhNgân hàng hệ thống thông minh
Ngân hàng hệ thống thông minh
 
Ngan hang he thong nhung
Ngan hang he thong nhungNgan hang he thong nhung
Ngan hang he thong nhung
 
Bai giang he thong nhung 2010
Bai giang he thong nhung 2010Bai giang he thong nhung 2010
Bai giang he thong nhung 2010
 
BGKTMT Ch5 mức máy qui ước
BGKTMT Ch5 mức máy qui ướcBGKTMT Ch5 mức máy qui ước
BGKTMT Ch5 mức máy qui ước
 
BGKTMT Ch4 mức vi lập trình
BGKTMT Ch4 mức vi lập trìnhBGKTMT Ch4 mức vi lập trình
BGKTMT Ch4 mức vi lập trình
 
BGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tínhBGKTMT Ch2 tổ chức hệ thống máy tính
BGKTMT Ch2 tổ chức hệ thống máy tính
 
BGKTMT Ch1 giới thiệu chung
BGKTMT Ch1 giới thiệu chungBGKTMT Ch1 giới thiệu chung
BGKTMT Ch1 giới thiệu chung
 
BGKTMT Ch6 mức máy hệ điều hành
BGKTMT Ch6 mức máy hệ điều hànhBGKTMT Ch6 mức máy hệ điều hành
BGKTMT Ch6 mức máy hệ điều hành
 
Ngân hàng câu hỏi kiến trúc máy tính
Ngân hàng câu hỏi kiến trúc máy tínhNgân hàng câu hỏi kiến trúc máy tính
Ngân hàng câu hỏi kiến trúc máy tính
 

BGKTMT Ch3 mức logic số

  • 2. GIỚI THIỆU 3.1. CÁC CỔNG VÀ ĐẠI SỐ LOGIC 3.2. CÁC MẠCH LOGIC SỐ CƠ BẢN  Mạch tích hợp  Các mạch tổ hợp  Tổng quát  Mạch cộng  Bộ dồn kênh  Bộ phân kênh  Mạch giải mã/mạch mã hoá 3.3 BỘ NHỚ 3.4 CHIP VÀ HỆ THỐNG BUS BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 2 / 50
  • 3. CÁC CỔNG CƠ BẢN BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 3 / 50
  • 4. Hàm Logic  Hàm Logic có thể được biểu diễn dưới một số cách như sau:  Bảng chân lý  Biểu thức Logic  Biểu đồ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 4 / 50
  • 5. Hàm Logic  Hàm biểu diễn 3 giá trị đầu vào Dạng biểu diễn của hàm F=AB+BC+AC A B C F 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 5 / 50
  • 6. Hàm Logic tương đương – VD  Ba mạch a,b,c đều đưa ra kết quả : F = A B BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 6 / 50
  • 7. Hàm Logic tương đương  Kiểm tra sự tương đương giữa các mạch?  Sử dụng bảng chân lý  Với mọi tổ hợp đầu vào, nếu có cùng kết quả đầu ra  hai hàm tương đương  Chỉ có thể áp dụng khi các hàm logic có số biến ít  Sử dụng đại số Bool BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 7 / 50
  • 8. Các mạch logic số cơ bản  Mạch tích hợp  Mạch tổ hợp  Mạch số học BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 8 / 50
  • 9. Các mạch tích hợp – IC  Là mạch mà một đơn vị có nhiều cổng  Thường phân loại chip theo số lượng cổng: Ký hiệu Số cổng/chip SSI (Small Scale Integrated) 1-10 MSI (Medium Scale Integrated) 10-100 LSI (Large Scale Integrated) 100-100.000 VLSI (Very Large Scale Integrated) > 100.000 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 9 / 50
  • 10. Các mạch tổ hợp  Là mạch có nhiều đầu vào và nhiều đầu ra, các giá trị ra được xác định bằng các giá trị đầu vào tại thời điểm hiện thời  Mạch giải mã, mạch mã hóa, mạch ưu tiên, mạch dồn kênh, mạch phân kênh, mạch cộng .v..v BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 10 /
  • 11. Bộ dồn kênh (Multiplexers)  Multiplexer 4-data input MUX 2 đầu vào dữ liệu n  n lối vào điều khiển  Một đầu ra  Dựa vào tín hiệu điều khiển để xác định đầu vào nào sẽ là tín hiệu đưa ra BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 11 /
  • 12. Bộ dồn kênh (Multiplexers) I0 I1 I2 I3 S1 So Bộ dồn kênh cho 4 đường dữ liệu vào BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 12 /
  • 13. Bộ phân kênh (Demultiplexers) • Có một đầu vào • Đầu ra là một trong số 2n đầu ra tuỳ theo tín hiệu điều khiển O0 C1 C0 O1 0 0 O0=I 0 1 O1=I I O2 1 0 O2=I 1 1 O3=I O3 C1 C0 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 13 /
  • 14. Bộ phân kênh (Demultiplexers) 74138 có thể được sử dụng như bộ phân kênh và bộ giải mã a. Bộ dồn kênh b. Bộ phân kênh BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 14 /
  • 15. Mạch giải mã (Decoder)  Mạch được ứng dụng vào giải mã chọn địa chỉ  Đầu vào: n bit  Đầu ra: 2n (lựa chọn 1 trong số các đầu ra)  Ví dụ: n=3, 2n = 8 I0 I1 I2 In-2 In-1 n đầu vào O 0 O1 O2 O2n-1 2n đầu ra BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 15 /
  • 16. Mạch giải mã (Decoder)  Xét I0=1,I1=1,I2=1. Theo sơ đồ ta có O7=111.  Những chân xuất từ O0,...,O6 là 000 do có cổng NOT nên biến 1 0, 01 I2 I1 I0 I2 I1 I0 0 0 0 O0 0 0 1 O1 0 1 0 O2 0 1 1 O3 1 0 0 O4 1 0 1 O5 1 1 0 O6 1 1 1 O7 O7 O6 O5 O4 O3 O2 O1 O0 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 16 /
  • 17. Mạch giải mã (Decoder) 74138 có thể được sử dụng như bộ phân kênh và bộ giải mã BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 17 /
  • 18. Mạch giải mã (Decoder)  Mạch Decoder 2 - 4 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 18 /
  • 19. Mạch giải mã (Decoder) Logic function BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 19 /
  • 20. Mạch giải mã (Decoder) 74139: Dual decoder chip BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 20 /
  • 21. Mạch mã hóa (Encoder)  Ngược với mạch giải mã  Đầu vào: 2n  Đầu ra: n  Ví dụ: n=3, k=2n = 8 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 21 /
  • 22. Mạch mã hóa 8 đường ra 3 đường BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 22 /
  • 23. Mạch mã hóa (Encoder)  8 cổng vào chuyển thành 3 cổng ra dạng số nhị phân 3 bit. Chỉ có 1 cổng vào ở mức tích cực tương ứng với chỉ một tổ hợp mã số 3 cổng ra  Từ bảng bên, ta có Y0 = I1 + I3 + I5 + I7 Y1 = I2 + I3 + I6 + I7 Y2 = I4 + I5 + I6 +I7 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 23 /
  • 24. Mạch mã hóa (Encoder) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 24 /
  • 25. Mạch mã hóa (Encoder)(4-2) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 25 /
  • 26. Mạch mã hóa (Encoder)  Priority encoders BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 26 /
  • 27. Bộ so sánh • So sánh 2 từ nhị phân bằng cách so sánh các cặp bit tương ứng. VD: A = A3A2A1A0, B = B3B2B1B0 • Đầu ra A=B sẽ có giá trị 1 nếu 2 từ đưa vào là bằng nhau, ngược lại sẽ có giá trị 0. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 27 /
  • 28. Các mạch số học  Bộ dịch  Bộ cộng  Bộ số học và logic ALU  Bộ tạo tín hiệu thời gian (clock) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 28 /
  • 29. Bộ dịch - shifter  VD: Bộ dịch bit 8 bit: 8 đầu vào: D0 .. D7; 8 đầu ra: S0 .. S7 C xác định hướng dịch chuyển của các bit, nếu C=1: dịch phải một vị trí, nếu C=0: dịch trái một vị trí BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 29 /
  • 30. Bộ cộng (Adders)  Bộ cộng nửa (Half-adder)  Cộng hai bit  Trả lại tổng và số nhớ carry out  Không có lối vào cho số nhớ carry – in nên không dùng để cộng các bit bậc cao hơn 0  Bộ cộng đủ (Full-adder)  Cộng hai bit vào và bit nhớ carry – in  Trả lại tổng và số nhớ carry out  Cho phép xây dựng bộ cộng có kích thước lớn N bit BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 30 /
  • 31. Bộ cộng (Adders) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 31 /
  • 32. Bộ cộng (Adders) A 16-bit ripple-carry adder BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 32 /
  • 33. Bộ cộng (Adders) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 33 /
  • 34. Bộ số học và logic - ALU  VD:  F0F1=00: A AND B  F0F1=01: A OR B  F0F1=10: NOT B (đảo B)  F0F1=11: A + B 11 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 34 /
  • 35. Bộ số học và logic - ALU 11 ALU 8-bit được xây dựng từ 8 bộ ALU kiểu bit-slices BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 35 /
  • 36. Mạch tạo xung Clock  Các mạch của máy tính được điều khiển bởi một mạch tạo các chuỗi xung tuần hoàn gọi là xung Clock  Xung Clock xác định các chu kỳ của máy tính  Ví dụ:  Một chu kỳ được ấn định để thực hiện một vi lệnh  Các ngõ vào của ALU phải có giá trị ổn định khi kết quả ngõ ra được lưu trữ. 1 2 3 4 5 6 7 8 9 10 12 11 Q0 delay delay Q1 delay Q2 Q3 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 36 /
  • 37. 3.3 Bộ nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 37 /
  • 38. Thanh ghi chốt RS  Lối vào S (set): Thiết lập Q=1  R (Reset): Xoá Q=0  Lối ra: Q và Q  R=S=0: Trong khi Thanh ghi RS đang ở một trong 2 trạng thái cân bằng ổn định, Q sẽ không thay đổi  S=1, R=0 trong khi Q=0Q=1  R=1, S=0  Q=0 không phụ thuộc trạng thái trước đó  R=S=1 : Cấm BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 38 /
  • 39. Thanh ghi chốt RS hoạt động theo nhịp xung đồng hồ  Sử dụng thêm tín hiệu clock  Mục đích: làm thanh ghi RS chỉ có thể chuyển trạng thái vào những khoảng thời gian xác định  Bình thường clock = 0: không thể chuyển trạng thái  Clock = 1: thanh ghi phản ứng theo S và R BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 39 /
  • 40. Thanh ghi chốt D hoạt động theo nhịp xung đồng hồ  Mục đích: loại trừ tổ hợp R = S = 1 bị cấm  D=1, clock = 1: Q =1  D=0, clock = 1: Q = 0  Qn+1 = Dn BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 40 /
  • 41. 3.3.2 Flip-flop và thanh ghi 3.3.2.1 Flip-flop D  Flip-flop D là một biến thể của thanh ghi chốt D, có khả năng trong khoảng thời gian ứng với xung đồng hồ rất ngắn trên lối vào clock, ghi nhận được giá trị ở lối vào D  Thời gian kéo dài xung không quan trọng, chỉ cần sự chuyển trạng thái xảy ra đủ nhanh. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 41 /
  • 42. ... 3.3.2.1 Flip-flop D Ký hiệu chuẩn của một số thanh ghi chốt và flip-flop.  Hình a) là thanh ghi chốt D, chuyển trạng thái khi tín hiệu CK=1, bình thường CK=0. (chuyển mạch theo mức.)  Hình b) là thanh ghi chốt D, chuyển trạng thái khi tín hiệu CK=0, bình thường CK=1. (chuyển mạch theo mức.)  Hình c) và d) là các Flip-flop, ở lối vào clock của chúng được vẽ ký hiệu đầu mũi tên ‘>‘.  Hình (e): Nhiều thanh ghi chốt và flip-flop ngoài đầu ra Q còn có đầu ra và có thêm các đầu vào Set hoặc Preset (để thiết lập Q=1) và Reset hay Clear (để thiết lập Q=0) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 42 /
  • 43. ... 3.3.2.1 Flip-flop D  Hình a: chip có chứa 2 flip-flop D độc lập với nhau, có các chân clear và preset.  Hình b: một loại chip khác chứa 8 flip-flop D BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 43 /
  • 44. Một số loại Flip-Flop điển hình     Tìm hiểu và mô tả chi tiết hoạt động (bao gồm cả bảng trạng thái) của một số loại Flip-Flop sau       BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 44 /
  • 45. 3.3.2.2 Thanh ghi - Register  Là một nhóm các phần tử nhớ cơ bản cùng hoạt động như một đơn vị.  Thanh ghi thực hiện các nhiệm vụ: nhớ, tính toán số học - dịch trái, dịch phải hoặc các thao tác khác phức tạp hơn nữa.  Các thanh ghi làm nhiệm vụ nhớ thường được xây dựng từ các flip-flop, chúng cần có khả năng hoạt động ở tốc độ cao hơn các thanh ghi được sử dụng trong bộ nhớ chính. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 45 /
  • 46. 3.3.2.2 Thanh ghi - Register Thanh ghi đệm 4-bit, sử dụng 4 flip-flop D. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 46 /
  • 47. 3.3.3 Bộ nhớ ROM  ROM (Read Only Memory) là bộ nhớ giữ thông tin cố định, không thay đổi nội dung ngay cả khi ngắt nguồn điện nuôi:  ROM mặt nạ (Maskable ROM)  ROM có thể nạp chương trình (PROM - Programmable ROM)  ROM có thể xoá (Erasable ROM) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 47 /
  • 48. 3.3.3.1 ROM mặt nạ  Thường được tổ chức dưới dạng ma trận.  Có đi-ốt tại vị trí (i,j): 1  Không có: 0  Mỗi hàng i: 1 word  Dây địa chỉ Ai được sử dụng để chọn lấy một từ  Đưa nội dung ra ngoài: D3D2D1D0.  Hình 3-25b: một "ô nhớ“  Hình 3-25c: bảng chân lý BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 48 /
  • 49. 3.3.3.2 PROM - ROM có thể nạp chương trình  Giống ROM mặt nạ:  Các phần tử nhớ được bố trí ở giao điểm của các dây hàng và cột  Một cầu chì sẽ đóng vai trò của công tắc có hai trạng thái là đóng, mở.  Khác ROM mặt nạ:  Chip PROM khi xuất xưởng chưa được ghi nội dung, tất cả các cầu chì đều chưa đứt.  NSD có thể tự ghi nội dung bằng một thiết bị chuyên dụng – ROM Writer. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 49 /
  • 50. 3.3.3.3 EPROM - ROM có thể xoá và ghi lại  Phần tử nhớ là 1 transistor MOS, có 3 cực: S (nguồn), D (góp), Gốc).  Giá thành cao hơn PROM. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 50 /
  • 51. Tổ chức bộ nhớ  Phần tử nhớ là các mạch D-latch  Tổ hợp các bits thành các words Điều khiển Điều khiển Dữ liệu Dữ liệu Chọn Ô nhớ Chọn Ô nhớ vào ra BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 51 /
  • 52. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 52 /
  • 53. Tổ chức bộ nhớ  Tổ chức chip nhớ A0 D0 A1 D1 . . CHIP . . . NHỚ . . An - 1 . CS Dm - 1 WE OE BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 53 /
  • 54. Tổ chức bộ nhớ  Tổ chức chip nhớ  Các đường địa chỉ: A0 ÷ An - 1 → có 2n ngăn nhớ.  Các đường dữ liệu: D0 ÷ Dm - 1 → độ dài ngăn nhớ là m bit.  Dung lượng chip nhớ: 2n x m bit A0 D0 A D  Các đường điều khiển: 1 . . 1 . CHIP .  Tín hiệu chọn chip: CS (Chip Select) . .  Tín hiệu điều khiển đọc: RD / OE nA -1 . NHỚ . CS D -1 m  Tín hiệu điều khiển ghi: WR / WE WE OE BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 54 /
  • 55. Tổ chức của DRAM  Dùng n đường địa chỉ dồn kênh → cho phép truyền 2n bit địa chỉ  Tín hiệu chọn địa chỉ hàng RAS (Row Address Select)  Tín hiệu chọn địa chỉ cột CAS (Column Address Select)  Dung lượng của DRAM: 2n x m bit BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 55 /
  • 56. Thiết kế module nhớ bán dẫn  Đặt vấn đề  Dung lượng chip nhớ là 2n x m bit  Cần thiết kế để tăng dung lượng:  Tăng độ dài ngăn nhớ (tăng m)  Tăng số lượng ngăn nhớ (tăng n)  Kết hợp cả hai loại (tăng m và n) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 56 /
  • 57. Thiết kế module nhớ bán dẫn  Tăng độ dài ngăn nhớ (tăng m) Ví dụ 1:  Cho chip nhớ SRAM: 8K x 4 bit  Hãy thiết kế modul nhớ 8K x 8 bit   Dung lượng chip nhớ: ?  Chip nhớ có: ? đường địa chỉ và ? đường dữ liệu  Modul nhớ cần có:? đường địa chỉ và ? đường dữ liệu BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 57 /
  • 58. Thiết kế module nhớ bán dẫn  Tăng độ dài ngăn nhớ (tăng m)  Ví dụ 1:  Cho chip nhớ SRAM: 8K x 4 bit  Hãy thiết kế modul nhớ 8K x 8 bit  Giải:  Dung lượng chip nhớ: 213 x 4 bit  Chip nhớ có:  13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)  Modul nhớ cần có:  13 đường địa chỉ (A0 ÷ A12), 8 đường dữ liệu (D0 ÷ D7) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 58 /
  • 59. Thiết kế module nhớ bán dẫn A0 ÷ A12 A0 ÷ A12 A0 ÷ A12 8K x 4 bit 8K x 4 bit D4÷D7 D0 ÷ D 3 D0 ÷ D 3 D0÷D3 CS CS WE OE WE OE CS WE OE BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 59 /
  • 60. Thiết kế module nhớ bán dẫn  Tăng độ dài ngăn nhớ (tăng m)  Bài toán tăng độ dài tổng quát:  Cho chip nhớ 2n x m bit  Cần thiết kế modul nhớ 2n x (k.m) bit ⇒ Cần ghép nối k chip nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 60 /
  • 61. Thiết kế module nhớ bán dẫn  Tăng số lượng ngăn nhớ (tăng n)  Ví dụ 2:  Cho chip nhớ SRAM: 4K x 4 bit  Hãy thiết kế modul nhớ 8K x 4 bit :  Dung lượng chip nhớ: ?  Chip nhớ có:  ? đường địa chỉ và ? đường dữ liệu  Modul nhớ cần có:  ? đường địa chỉ, ? đường dữ liệu BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 61 /
  • 62. Thiết kế module nhớ bán dẫn  Tăng số lượng ngăn nhớ (tăng n)  Ví dụ 2:  Cho chip nhớ SRAM: 4K x 4 bit  Hãy thiết kế modul nhớ 8K x 4 bit  Giải:  Dung lượng chip nhớ: 212 x 4 bit  Chip nhớ có:  12 đường địa chỉ (A0 ÷ A11), 4 đường dữ liệu (D0 ÷ D3)  Modul nhớ cần có:  13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)  212+1=213  ý tưởng xây dựng mạch như thế nào?, sử dụng thêm mạch gì? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 62 /
  • 63. Thiết kế module nhớ bán dẫn A0÷A11 A0 ÷ A11 D0÷D3 CS A12 WE OE A Y0 D0 ÷ D 3 A0÷A11 CS G Y1 D0÷D3 CS G A Y1 Y0 WE OE 0 0 0 1 0 1 1 0 WE 1 X 1 1 OE BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 63 /
  • 64. Thiết kế module nhớ bán dẫn  Tăng số lượng ngăn nhớ (tăng n) tổng quát  Cho chip nhớ 2n x m bit  Cần ghép nối modul nhớ: 2k+n x m bit ⇒ Cần ghép nối 2k chip và phải dùng bộ giải mã k: 2k (k → 2k) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 64 /
  • 65. Thiết kế module nhớ bán dẫn  Kết hợp cả hai loại (tăng m và n)  Ví dụ 3:  Cho chip nhớ SRAM: 8K x 4 bit  Hãy thiết kế modul nhớ 16K x 8 bit   Dung lượng chip nhớ: ?  Chip nhớ có: ? đường địa chỉ, ? đường dữ liệu  Modul nhớ cần có: ? đường địa chỉ , ? đường dữ liệu BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 65 /
  • 66. Thiết kế module nhớ bán dẫn  Kết hợp cả hai loại (tăng m và n)  Ví dụ 3:  Cho chip nhớ SRAM: 8K x 4 bit  Hãy thiết kế modul nhớ 16K x 8 bit  Giải:  Dung lượng chip nhớ: 213 x 4 bit  Chip nhớ có:  13 đường địa chỉ (A0 ÷ A12), 4 đường dữ liệu (D0 ÷ D3)  Modul nhớ cần có:  14 đường địa chỉ (A0 ÷ A13), 8 đường dữ liệu (D0 ÷ D7) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 66 /
  • 67. Thiết kế module nhớ bán dẫn A0÷A12 A0÷A12 A0÷A12 D4÷D7 D0÷D3 D0÷D3 D0÷D3 CS CS A13 WE OE WE OE A Y0 CS G Y1 A0÷A12 A0÷A12 D4÷D7 D0÷D3 D0÷D3 D0÷D3 CS CS WE OE WE OE WE OE BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 67 /
  • 68. Thiết kế module nhớ bán dẫn  Bài toán tăng số lượng và độ dài tổng quát:  Cho chip nhớ 2n x m bit  Cần ghép nối modul nhớ: 2p+n x (q.m) bit  ⇒ Cần ghép nối q.2p chip thành 2p bộ, mỗi bộ q chip và phải dùng bộ giải mã p: 2p (p → 2p) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 68 /
  • 69. Không gian nhớ Segment (16 bit) Offset (16) n 216 = 64K xxxx xxxx xxxx xxxx 0000 220 = 1MB Tghi 16 bit  dịch trái 4 không gian xxxx xxxx xxxx xxxx xxxx nhớ 20 bit x Địa chỉ vật lý = segment x 24 + offset x +1 16 byte • segment = 16 bit  số lượng segment: 216 = 64k đoạn • offset = 16 bit  kích thước tối đa của đoạn: 64KB  Không gian logic: 216 x 216 = 64 kđoạn x 64kB ~ 4G >> 1M vật lý BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 69 /
  • 70. Giải mã địa chỉ Lý do cần giải mã địa chỉ khi ghép nối các vi mạch nhớ với VXL:  Gán địa chỉ cụ thể (trong toàn bộ không gian địa chỉ của bộ nhớ) cho từng mạch nhớ.  Nếu không có bộ giải mã địa chỉ thì chỉ nối được một phần vi mạch nhớ tới bộ VXL  VD: Khi ghép nối vi mạch nhớ EPROM 2716 2Kx8 tới bộ VXL 8088.  Số chân địa chỉ của 8088: ?  Số chân địa chỉ của 2716: ? Dung lượng tối đa mà 8088 có thể sử dụng khi dùng:  Bộ giải mã  Không dùng bộ giải mã BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 70 /
  • 71. Giải mã địa chỉ Lý do cần giải mã địa chỉ khi ghép nối các vi mạch nhớ với VXL:  Gán địa chỉ cụ thể (trong toàn bộ không gian địa chỉ của bộ nhớ) cho từng mạch nhớ.  Nếu không có bộ giải mã địa chỉ thì chỉ nối được một phần vi mạch nhớ tới bộ VXL  VD: Khi ghép nối vi mạch nhớ EPROM 2716 2Kx8 tới bộ VXL 8088.  Số chân địa chỉ của 8088: 20 chân  Số chân địa chỉ của 2716: 11 chân bộ VXL 8088 sẽ gửi địa chỉ trên 20 bit trên bus địa chỉ. Nếu chỉ nối 11 chân địa chỉ của 8088 với 2716 thì 8088 chỉ nhìn thấy 2KB bộ nhớ thay vì 1MB như nó có thể BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 71 /
  • 72. Giải mã địa chỉ - Bộ giải mã cổng NAND  Sử dụng 1 cổng NAND để giải mã  VD: giải mã địa chỉ cho vi mạch nhớ EPROM 2716 2Kx8 ghép nối với 8088   Phân tích, vẽ sơ đồ mạch?  Số đường địa chỉ, đường dữ liệu của chip nhớ?  Số đường địa chỉ của 8088?  Phương pháp nối?  Vẽ sơ đồ mạch. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 72 /
  • 73. Giải mã địa chỉ - Bộ giải mã cổng NAND  VD: giải mã địa chỉ cho vi mạch nhớ EPROM 2716 2Kx8 ghép nối với 8088 Phân tích:  EPROM 2716 2Kx8  11 đường địa chỉ: A10 – A0, 8 đường dữ liệu D7 – D0  8088 có 20 đường địa chỉ: A19-A0  Các chân từ A10-A0 của 8088 được nối với đầu vào địa chỉ từ A10 – A0 của 2716  Các chân A19 – A11 được nối với đầu vào của bộ giải mã cổng NAND BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 73 /
  • 74. Giải mã địa chỉ - Bộ giải mã cổng NAND D7 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 74 /
  • 75. Giải mã địa chỉ - Bộ giải mã cổng NAND  Đầu ra NAND = 0 khi các chân A19 – A11 = 1 và IO/M =0.  20 bit địa chỉ của các ô nhớ trong EPROM có dạng: 1111 1111 1XXX XXXX XXXX  Khoảng địa chỉ dành cho EPROM là từ: 1111 1111 1000 0000 0000 = FF800H Đến: 1111 1111 1111 1111 1111 = FFFFF H BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 75 /
  • 76. Giải mã địa chỉ - Bộ giải mã 74LS138  Mạch giải mã 74LS138 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 76 /
  • 77. Giải mã địa chỉ - Bộ giải mã 74LS138  Bảng chân lý của 74LS138 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 77 /
  • 78. Giải mã địa chỉ - Bộ giải mã 74LS138  Nhận xét:  Tại bất kỳ thời điểm nào cũng chỉ có một đầu ra bằng 0  Để bộ giải mã hoạt động thì G2A = 0, G2B=0, G1=1  A, B, C sẽ chọn đầu ra nào =0. Đầu ra bộ giải mã được nối với CE hay CS của vi mạch nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 78 /
  • 79. Giải mã địa chỉ - Bộ giải mã 74LS138  Ví dụ: Giải mã địa chỉ cho bộ nhớ 64Kx8 (gồm 8 EPROM 2764 – 8Kx8) trong hệ VXL 8088 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 79 /
  • 80. Giải mã địa chỉ - Bộ giải mã 74LS138 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 80 /
  • 81. Giải mã địa chỉ - Bộ giải mã 74LS138  Nhận xét:  Các đầu ra của 74LS138 được nối với CE  Tại bất kỳ thời điểm nào cũng chỉ có một đầu ra bằng 0  chỉ có một vi mạch nhớ được chọn và gửi dữ liệu của nó trên bus dữ liệu khi RD = 0  Khi A19 – A16 đều =1, IO/M=0  G2A=0, G2B=0, G1=1  kích hoạt bộ giải mã  Khi bộ giải mã hoạt động A15 – A13 xác định đầu ra nào = 0, và tương ứng một vi mạch nhớ sẽ được chọn BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 81 /
  • 82. Giải mã địa chỉ - Bộ giải mã 74LS138  Dạng địa chỉ một ô nhớ được giải mã: 1111 XXXX XXXX XXXX XXXX  Khoảng địa chỉ ô nhớ từ: 1111 0000 0000 0000 0000 = F0000H  Đến: 1111 1111 1111 1111 1111= FFFFFH BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 82 /
  • 83. Giải mã địa chỉ - Bộ giải mã 74LS138  Khoảng địa chỉ của vi mạch nhớ nối tới đầu ra của bộ giải mã  VD: xác định khoảng địa chỉ của vi mạch nhớ nối tới đầu ra 0, vi mạch này được chọn khi CBA = 000 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 83 /
  • 84. Giải mã địa chỉ - Bộ giải mã 74LS138  Dạng địa chỉ vi mạch nhớ: 1111 000X XXXX XXXX XXXX  Khoảng địa chỉ 1111 0000 0000 0000 0000 = F0000H Đến: 1111 0001 1111 1111 1111 = F1FFFH BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 84 /
  • 85. Giải mã địa chỉ - Bộ giải mã 74LS138  Về nhà: Đọc về bộ giải mã kép 2- 4 (74LS139) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 85 /
  • 86. Bộ nhớ đệm (Bộ nhớ Cache)  Thiết bị có truy cập dữ liệu hay thực thi các chương trình trực tiếp từ ổ đĩa cứng không?  Tại sao bộ nhớ chính không được thiết kế để có thể đạt được tốc độ như thanh ghi ? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 86 /
  • 87. Ý tưởng chung:  Khi cần truy cập một từ, từ đó sẽ được chuyển từ bộ nhớ lớn tốc độ thấp (bộ nhớ chính - main memory) về bộ nhớ nhỏ tốc độ cao (bộ nhớ cache), để lần sau nếu được sử dụng thì có thể truy cập nhanh hơn. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 87 /
  • 88. Bộ nhớ đệm (Bộ nhớ Cache)  Là một lượng nhỏ các đơn vị nhớ tốc độ cao  Nằm giữa bộ nhớ chính và CPU  Mục đích là làm tăng tốc độ xử lý  Có thể nằm trong chip CPU hoặc ngay trên bản mạch CPU  Cache hoạt động theo sự điều khiển của vi chương trình BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 88 /
  • 89. Bộ nhớ đệm (Bộ nhớ Cache)  Bộ nhớ cache thường là một phân đoạn dùng với bus riêng được nối với CPU  Dùng để lưu giữ dữ liệu và mã lệnh mà CPU hay truy cập đến BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 89 /
  • 90. Bộ nhớ đệm (Bộ nhớ Cache)  Phân mức Cache  Cache L1 (level 1)  Cache L2 (level 2)  Một số máy tính hiện đại còn có cache L3 (vd: CPU Pentium 4 Extreme Edition ) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 90 /
  • 91. Bộ nhớ đệm (Bộ nhớ Cache)  Ở thế hệ máy cũ, L2 còn nằm trên mainboard  Ngày nay, L1, L2 đều được tích hợp trên CPU BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 91 /
  • 92. Bộ nhớ đệm (Bộ nhớ Cache)  Trên CPU đa lõi:  Với các CPU dual-core Pentium D và AMD được xây dựng trên kiến trúc K8, mỗi lõi của CPU lại có Cache nhớ L2 riêng của chính nó. Chính vì vậy mỗi một lõi làm việc như nó đang làm việc cho một CPU độc lập.  Các CPU dual-core của Intel được xây dựng trên kiến trúc Core và Pentium M thì hai Cache nhớ L2 lại có thể được chia sẻ giữa hai lõi BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 92 /
  • 93. Bộ nhớ đệm (Bộ nhớ Cache)  Hoạt động của bộ nhớ Cache  CPU yêu cầu nội dung của một vùng nhớ nào đó  Kiểm tra cache xem có nội dung đó chưa?  Nếu có, đọc ngay từ cache (Hit Cache)  Nếu không có, đọc khối nhớ từ bộ nhớ chính và cache (miss cache)  Sau đó chuyển từ cache vào CPU BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 93 /
  • 94. Bộ nhớ đệm (Bộ nhớ Cache)  Tổ chức Cache  Nguyên lý cục bộ về không gian: khi một phần tử nào đó được truy xuất thì các phần tử tiếp theo cũng có thể được truy xuất  Ví dụ: Các chỉ thị trong chương trình thường được truy cập tuần tự  Truy cập một phần tử của mảng  Nguyên lý cục bộ về thời gian: nếu một phần tử nào đó được truy xuất thì nó có thể được truy xuất lại trong một khoảng thời gian ngay sau đó  Ví dụ: vòng lặp của chương trình BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 94 /
  • 95. Bộ nhớ đệm (Bộ nhớ Cache)  Phân chia bộ nhớ thành các khối.  Bộ nhớ chính lưu trữ theo các word theo một địa chỉ tuần tự  Cache lại không sắp xếp như vậy  Vì thế lược đồ địa chỉ của bộ nhớ chính được sử dụng để xác định các khối của từ nhớ và các phương thức định vị của khối nhớ đó BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 95 /
  • 96. Bộ nhớ đệm (Bộ nhớ Cache)  Cấu trúc bộ nhớ cache BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 96 /
  • 97. Bộ nhớ đệm (Bộ nhớ Cache)  Cache:  Chia thành các Line: Tag và Block  Tag: lưu địa chỉ của ô nhớ được chuyển vào cache từ main memmory (RAM).  Block lưu dữ liệu của block chuyển từ MainMem vào.  Main Memory:  Chiathành các block có kích thước bằng block trên Cache.  Trong mỗi block lại được chia thành k word.  Vậy:  Trên MainMem có 2n word => số block = 2n/k  Kích thước của cache = C * k word BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 97 /
  • 98. Bộ nhớ đệm (Bộ nhớ Cache)  Phân chia bộ nhớ thành các khối. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 98 /
  • 99. Bộ nhớ đệm (Bộ nhớ Cache)  Nhận xét: Trong hình trên:  Cần sử dụng bao nhiêu bit để biểu diễn địa chỉ bộ nhớ?  Một block có bao nhiêu word?  Cần sử dụng bao nhiêu bit để xác định vị trí word?  Cần bao nhiêu bit để biểu diễn block_id? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 99 /
  • 100. Bộ nhớ đệm (Bộ nhớ Cache)  Nhận xét: Trong hình trên:  Cần sử dụng 20 bit để biểu diễn địa chỉ bộ nhớ  Một block có 4 word  Cần sử dụng 2 bit để xác định vị trí word  Còn 20-2=18 bit để biểu diễn block_id BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 100 /
  • 101. Bộ nhớ đệm (Bộ nhớ Cache)  Một địa chỉ bộ nhớ sẽ được chia thành 2 phần:  Một để biểu diễn số khối: sử dụng các bit cao để biểu diễn  Một để xác định vị trí của word trong khối: sử dụng bit thấp để biểu diễn BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 101 /
  • 102. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: Chia địa chỉ A5696 theo khối kích thước 4 word. Xác định vị trí word và block id? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 102 /
  • 103. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: Chia địa chỉ A5696 theo khối kích thước 4 word BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 103 /
  • 104. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: Có bao nhiêu khối kích thước 8 word trong 1Gig bộ nhớ? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 104 /
  • 105. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: Có bao nhiêu khối kích thước 8 word trong 1Gig bộ nhớ? 8 word: 3bit để xác định vị trí của khối.  Kích thước bộ nhớ là 1Gig (230): cần phải có 30 đường địa chỉ.  Đã sử dụng 3 đường để biểu diễn vị trí word, còn lại 27 đường để biểu diễn số khối  số khối: 227 = 134217728 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 105 /
  • 106. Bộ nhớ đệm (Bộ nhớ Cache)  Chức năng ánh xạ (Mapping Function)  Ánh xạ trực tiếp  Ánh xạ liên kết  Ánh xạ liên kết thành bộ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 106 /
  • 107. Bộ nhớ đệm (Bộ nhớ Cache)  Lý do cần phải ánh xạ:  Bộ nhớ đệm nhanh lưu trữ những dữ liệu có ích tuy nhiên nó sẽ trở thành vô ích nếu CPU không tìm thấy nó.  Khi truy cập vào dữ liệu hoặc các tập lệnh, CPU lần đầu tiên tạo ra một địa chỉ bộ nhớ chính.  Nếu dữ liệu đã được sao chép vào bộ nhớ cache, các địa chỉ của dữ liệu trong bộ nhớ cache không giống như là địa chỉ chính của bộ nhớ.  Làm thế nào CPU tìm ra dữ liệu khi nó đã được sao chép vào bộ nhớ đệm? CPU sử dụng một chương trình ánh xạ "chuyển đổi" các địa chỉ của bộ nhớ chính vào một vị trí bộ nhớ cache. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 107 /
  • 108. Bộ nhớ đệm (Bộ nhớ Cache)  Giả sử, bộ nhớ chính được chia thành n khối, và cache chứa được m khối (với m<n). Số lần lấp đầy vào cache = Integer (n/m)  Ví dụ: bộ nhớ chính có kích thước là 128Mg, được chia thành các khối kích thước là 4. bộ nhớ Cache có kích thước là 256K, các khối trong Cache cũng được chia thành các khối có kích thước là 4. Vậy sau bao nhiêu lần truy xuất thì bộ nhớ chính sẽ lấp đầy Cache? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 108 /
  • 109. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: bộ nhớ chính có kích thước là 128Mg, được chia thành các khối kích thước là 4. bộ nhớ Cache có kích thước là 256K, các khối trong Cache cũng dược chia thành các khối có kích thước là 4. Vậy sau bao nhiêu lần truy xuất thì bộ nhớ chính sẽ lấp đầy Cache?  Giải:  Nếu bộ nhớ chính có kích thước là 128Meg (227), kích thước của khối là 4 (22), vì thế bộ nhớ chính có thể lưu n= 227-2=225 khối.  Nếu hệ thống Cache lưu trữ được 256K (218) từ nhớ, Ta có m=218-2=216 khối. Số lần lấp đầy Cache: n/m=225/216=29=512 lần BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 109 /
  • 110. Bộ nhớ đệm (Bộ nhớ Cache)  Ánh xạ trực tiếp:  Mỗi Block của BNC chỉ được ánh xạ vào một Line duy nhất: i = j mod m  i: số hiệu Line trong cache  j: số hiệu Block trong BNC  m: số lượng Line trong cache  Cụ thể: B0 → L0 Bm → L0 B1 → L1 Bm+1 → L1. . . ... Bm-1 → Lm-1 B2m-1 → Lm-1 . . .  Như vậy L0 : B0, Bm, B2m, ..., Bnm L1 : B1, Bm+1, B2m+1, ..., Bnm+1 .. . . . . . Lm-1: Bm-1, B2m-1, B3m-1, ..., B(n+1)m-1 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 110 /
  • 111. Ánh xạ trực tiếp BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 111 /
  • 112. Ánh xạ trực tiếp  Khi đó, địa chỉ do CPU phát ra gồm 3 trường: Tag Line Word t bit r bit w bit  Word: xác định số hiệu ngăn nhớ trong Block (vị trí word trong block) ⇒ Block (Line) có 2w ngăn nhớ  Line: xác định số hiệu Line để lưu khối trong cache ⇒ Cache có 2r Line, cache chứa 2r + w ngăn nhớ  Tag: xác định vị trí Block trong bộ nhớ ⇒ BNC chứa 2t + r + w ngăn nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 112 /
  • 113. Ví dụ  Cho máy tính có dung lượng:  BNC = 128 MB, cache = 256 KB, line = 32 byte,  Độ dài ngăn nhớ = 1 byte.  Tìm dạng địa chỉ do BXL phát ra? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 113 /
  • 114. Ví dụ  Cho máy tính có dung lượng:  BNC = 128 MB, cache = 256 KB, line = 32 byte,  Độ dài ngăn nhớ = 1 byte.  Tìm dạng địa chỉ do BXL phát ra?  Giải: Ta có:  BNC = 128 MB = 27 * 220 byte = 227 byte  Cache = 256 KB = 28 * 210 byte = 218 byte  Line = 32 byte = 25 byte ⇒ w = 5  Số lượng Line trong cache: 218/ 25 = 213 ⇒ r = 13  Số bit của phần Tag: t= 27 - 13 - 5 = 9 9 13 5 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 114 /
  • 115. Ví dụ  Cho máy tính có dung lượng:  BNC = 256 MB, cache = 64 KB, line = 16 byte,  Độ dài ngăn nhớ = 4 byte.  Tìm dạng địa chỉ do BXL phát ra? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 115 /
  • 116. Ví dụ  Cho máy tính có dung lượng:  BNC = 256 MB, cache = 64 KB, line = 16 byte,  Độ dài ngăn nhớ = 4 byte.  Tìm dạng địa chỉ do BXL phát ra?  Giải: Ta có:  BNC = 256 MB = 228 byte = 228/22 = 226 ng/nhớ  Cache = 64 KB = 216 byte = 216 /22 = 214 ng/nhớ  Line = 16 byte =24/ 22 = 22 ng/nhớ ⇒ w = 2  Số lượng Line trong cache: 214 / 22 = 212⇒ r = 12  Số bit của phần Tag: t= 26 - 12 - 2 = 12 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 116 /
  • 117. Ví dụ  Hãy xác định giá trị của Line(block), Tag và Word trong địa chỉ có kích thước 32 bit là 3FE9704Ah, biết rằng:  Bộ nhớ sử dụng cơ chế ánh xạ trực tiếp.  1 word=2 byte:  Kích thước cache 16K line  Kích thước của 1 bock = 1 line = 16 word BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 117 /
  • 118. Ví dụ  3FE9704Ah = 0011 1111 1110 1001 0111 0000 0100 1010 b  Kích thước cache 16K line = 214 line => L=14 bit  Kích thước 1 block = 16 word = 24 => k = 4 bit  => Số bít cho trường Tag = 32 – 4 – 14 = 14 Tag Line Word Size 14 bit 14 bit 4 bit Hệ nhị phân 0011 1111 1110 10 01 0111 0000 0100 1010 Hệ 10 4090 5892 10 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 118 /
  • 119. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: 10 line đầu tiên của cache có 256 line, được liệt kê ra như bảng dưới đây. Hãy xác định địa chỉ của dữ liệu D8. biết rằng trong cache này lưu thành các khối 4word. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 119 /
  • 120. Bộ nhớ đệm (Bộ nhớ Cache)  Tag: 110011  Line: 4  0100  Word: 10 Tag: 110011 Line 0100 Word 10 t bit r bit w bit  1100 1101 0010  CD2 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 120 /
  • 121. Đánh giá  Ưu điểm:  Dễ thực hiện, vì một Block được ánh xạ cố định vào một Line ⇒ không cần thuật toán chọn Line.  Thiết kế mạch đơn giản.  Nhược điểm:  Xácsuất cache hit thấp và hiệu xuất của cache không cao vì mỗi một block chỉ có thể đưa vào một vị trí xác định trong khi các vị trí khác có thể đang trống. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 121 /
  • 122. Bộ nhớ đệm (Bộ nhớ Cache)  Ánh xạ liên kết: Mỗi Block trong BNC được ánh xạ vào một Line bất kỳ trong Cache  Khi đó, địa chỉ do BXL phát ra có dạng: Tag Word w bit s bit  Word: xác định ngăn nhớ trong Block ⇒ Block có 2w ngăn nhớ  Tag: xác định Block đang ở trong Line ⇒ Số lượng Block: 2s ⇒ Dung lượng BNC: 2s + w ngăn nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 122 /
  • 123. Ưu điểm:  Tỉ lệ cache hit cao hơn ánh xạ trực tiếp vì một Block được phép vào một Line bất kỳ.  Nhược điểm:  Thiết kế mạch tương đối phức tạp, thể hiện ở mạch so sánh. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 123 /
  • 124. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: bảng sau đây biểu diễn 5 line trong một Cache sử dụng cơ chế ánh xạ liên kết, biết rằng kích thước của mỗi khối là 8. Hãy xác định địa chỉ của dữ liệu C9 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 124 /
  • 125. Bộ nhớ đệm (Bộ nhớ Cache)  Giải: tại địa chỉ C9 có Tag : 0100011010101 Word: 001 Kết hợp hai phần này ta xác định được địa chỉ trong bộ nhớ chính khi ánh xạ vào trong cache là: 0100 0110 1010 1001=46A9 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 125 /
  • 126. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: dữ liệu trong bộ nhớ có địa chỉ là 1E65 sẽ tương ứng với địa chỉ nào trong bảng sau BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 126 /
  • 127. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ: dữ liệu trong bộ nhớ có địa chỉ là 1E65 sẽ tương ứng với địa chỉ nào trong bảng trên  Giải: Chuyển địa chỉ 1E65 sang giá trị nhị phân ta có 0001 1110 0110 0101 Theo cơ chế ánh xạ trên ta có thể phân chia địa chỉ này như sau: 0001111001100 101 Tag ID Word ID Tương ứng với 9E BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 127 /
  • 128. Bộ nhớ đệm (Bộ nhớ Cache)  Cache liên kết thành bộ  Là sự kết hợp giữa cache ánh xạ trực tiếp và cache ánh xạ liên kết bằng cách nhóm các line cùng nhau vào trong một set  Cache được chia thành nhiều Set, mỗi Set gồm nhiều Line liên tiếp  Một Block của BNC chỉ được ánh xạ vào một Set duy nhất trong cache, nhưng được ánh xạ vào Line bất kỳ trong set đó: i = j mod v  i: số hiệu Set trong cache  j: số hiệu Block trong BNC  v: số lượng Set trong cache BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 128 /
  • 129. Bộ nhớ đệm (Bộ nhớ Cache)  Vídụ: một hệ thống sử dụng một cache với 2 9=512 line, một khối trong bộ nhớ có kích thước 2 3=8 word chứa trong một không gian nhớ là 2 30= 1gig. Xét sự kết hợp giữa hai kiểu ánh xạ trên để tạo thành cơ chế ánh xạ liên kết thành bộ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 129 /
  • 130. Khi đó, địa chỉ do BXL phát ra gồm: Tag Set Word t bit d bit w bit  Word: xác định số hiệu ngăn nhớ trong Block ⇒ Block (Line) có 2w ngăn nhớ  Set: xác định số hiệu Set trong cache ⇒ Cache có 2d Set  Tag: xác định Block nào đang ở trong Line ⇒ BNC chứa 2t + d + w ngăn nhớ BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 130 /
  • 131. Bộ nhớ đệm (Bộ nhớ Cache) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 131 /
  • 132. Cho máy tính có dung lượng:  BNC = 512 MB, cache = 128 KB, line = 32 byte,  Set = 8 Line, độ dài ngăn nhớ = 1 byte.  Tìm dạng địa chỉ do BXL phát ra? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 132 /
  • 133. Cho máy tính có dung lượng:  BNC = 512 MB, cache = 128 KB, line = 32 byte,  Set = 8 Line, độ dài ngăn nhớ = 1 byte.  Tìm dạng địa chỉ do BXL phát ra?  Giải: Ta có:  BNC = 512 MB = 229 byte; Cache = 128 KB = 217 byte Line = 25 byte ⇒ w = 5 Set = 8 line = 23 line  Dung lượng Set: 23 * 25 = 28 byte ⇒ số lượng Set trong Cache: 217/28 = 29 ⇒ d = 9  Số bit của phần Tag: t= 29 - 9 - 5 = 15 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 133 /
  • 134. Cho máy tính có dung lượng:  BNC = 256 MB, cache = 128 KB, line = 64 byte,  Set = 4 Line, độ dài ngăn nhớ = 4 byte.  Tìm dạng địa chỉ do BXL phát ra? BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 134 /
  • 135. Cho máy tính có dung lượng:  BNC = 256 MB, cache = 128 KB, line = 64 byte,  Set = 4 Line, độ dài ngăn nhớ = 4 byte.  Tìm dạng địa chỉ do BXL phát ra?  Giải: Ta có:  BNC = 228 byte = 228/22 = 226 ng/nhớ  Cache = 217 byte = 217/22 = 215 ng/nhớ  Line = 26/22 = 24 ng/nhớ ⇒ w = 4  D/l Set: 22 * 24= 26 ⇒ s/l Set: 215/26 = 29 ⇒ d = 9  Số bit của phần Tag: t= 26 - 9 - 4 = 13 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 135 /
  • 136. Bộ nhớ đệm (Bộ nhớ Cache)  Ví dụ. Hãy xác định số set trong Block có địa chỉ là 29ABCDE8 Hãy cho biết số Tag, địa chỉ thấp nhất và cao nhất của Block . Biết rằng đây là Cache 4 đường, mỗi Block chứa 16 word. Số lượng line trong Cache là 4K line Kích thước của bộ nhớ chính là 1Gig BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 136 /
  • 137. Bộ nhớ đệm (Bộ nhớ Cache)  Do bộ nhớ có kích thước là 1Gig: cần 30 đường địa chỉ, vậy 4 bit được sử dụng để xác định cho 16 word trong block  Do đây là cache 4 đường và số lượng các Line trong cache là 4K=212. Vậy số set để lưu sẽ là: 212/22=210 cần 10 bit để xác định số Set  30 bit địa chỉ trên được chia thành: BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 137 /
  • 138. Bộ nhớ đệm (Bộ nhớ Cache)  Địa chỉ: 29ABCDE8 = 0010 1001 1010 1011 1100 1101 1110 1000  16 bit đầu tiên để biểu diễn cho Tag  10 bit tiếp theo để số set sẽ lưu block  4 bit cuối cùng biểu diễn vị trí của word trong block  Địa chỉ thấp nhất tương ứng với word có địa chỉ là : 0000. Hay chính là địa chỉ 29ADCBE0  Địa chỉ cao nhất tương ứng với word có địa chỉ là : 1111 Hay chính là địa chỉ 29ADCBEF BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 138 /
  • 139. Ưu điểm:  Tỉlệ cache hit cao vì một Block được phép vào một Line bất kỳ trong Set, và dễ so sánh.  Đây là kỹ thuật ánh xạ tốt nhất trong 3 kỹ thuật.  Nhược điểm:  Thiết kế mạch phức tạp. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 139 /
  • 140. Các thuật toán thay thế  Hai kỹ thuật ánh xạ liên kết: có 4 thuật toán  Random: thay ngẫu nhiên một Block cũ nào đó ⇒ Dễ thực hiện, nhanh nhất, tỉ lệ cache hit thấp.  FIFO (First In - First Out): thay Block ở đầu tiên trong số các Block đang có trong cache ⇒ tỉ lệ cache hit không cao  LFU (Least Frequently Used): thay Block được dùng với tần suất ít nhất ⇒ tỉ lệ cache hit tương đối cao  LRU (Least Recently Used): thay Block được dùng gần đây ít nhất ⇒ tỉ lệ cache hit cao BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 140 /
  • 141. Hoạt động của cache  Đọc:  Nếu cache hit: đọc ngăn nhớ từ cache  Nếu cache miss: thay Block ⇒ cache hit  Ghi:  Nếu cache hit: có 2 phương pháp:  Write through: ghi dữ liệu vào cả cache và cả BNC  ⇒ không cần thiết, tốc độ chậm, mạch đơn giản.  Write back: chỉ ghi vào cache, khi nào Block (trong cache) được ghi bị thay đi → ghi vào BNC  ⇒ tốc độ nhanh, mạch phức tạp.  Nếu cache miss: thay Block ⇒ cache hit BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 141 /
  • 142. Hoạt động của cache BXL Cache BNC a) Write Through BXL Cache BNC b) Write Back BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 142 /
  • 143. Ví dụ cache trên các bộ xử lý Intel  80386: không có cache trên chip  80486: • 8KB, kích thước Line: 16 byte • Ánh xạ liên kết tập hợp 4 đường  Pentium: có hai cache L1 trên chip  Cache lệnh: 8KB, cache dữ liệu: 8KB:  Petium 4: cache L1 (2 loại) và L2 trên chip:  Cache L1: + Mỗi cache: 8KB, kích thước Line: 64 byte + Ánh xạ liên kết tập hợp 4 đường  Cache L2: + 256KB, kích thước Line: 128 byte + Ánh xạ liên kết tập hợp 8 đường BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 143 /
  • 144. BÀI TẬP  BÀI 1: có bao nhiêu khối kích thước 16word/block được lưu trong một không gian nhớ là 256Gig  BÀI 2: hãy xác định số line, số tag và vị trí của word trong mỗi địa chỉ dưới đây BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 144 /
  • 145. 3.4.2 Các bus của máy tính (Phân loại theo loại tín hiệu truyền trên bus) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 145 /
  • 146. Bus địa chỉ  Chức năng: vận chuyển địa chỉ để xác định ngăn nhớ hay cổng vào-ra.  Độ rộng bus địa chỉ: xác định dung lượng bộ nhớ cực đại của hệ thống. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 146 /
  • 147. Bus dữ liệu  Chức năng: vận chuyển lệnh từ bộ nhớ đến CPU vận chuyển dữ liệu giữa CPU, các môđun nhớ và môđun vào-ra.  Độ rộng bus dữ liệu: xác định số bit dữ liệu có thể được trao đổi đồng thời. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 147 /
  • 148. Bus điều khiển  Chức năng: vận chuyển các tín hiệu điều khiển  Các loại tín hiệu điều khiển + Các tín hiệu phát ra từ CPU để điều khiển môđun nhớ và môđun vào-ra + Các tín hiệu từ môđun nhớ hay môđun vào-ra gửi đến yêu cầu CPU. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 148 /
  • 149. 3.4.6 Việc xử lý ngắt  Một ứng dụng quan trọng nữa của bus là để xử lý ngắt:  Khi CPU ra lệnh cho một thiết bị I/O làm một việc gì đó, nó thường chờ đợi tín hiệu ngắt do thiết bị I/O phát ra khi hoàn thành công việc được CPU yêu cầu.  Khi nhận được tín hiệu ngắt, CPU sẽ phản ứng ngay, đó có thể là việc nhận dữ liệu do thiết bị I/O đã truyền về, cũng có thể là việc gửi tiếp dữ liệu ra thiết bị I/O hoặc CPU sẽ sử dụng bus cho một thao tác khác... BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 149 /
  • 150. Xử lý ngắt (Interrupts)  Khái niệm: Ngắt là cơ chế cho phép CPU tạm dừng chương trình đang thực hiện để chuyển sang thực hiện một chương trình khác, gọi là chương trình con phục vụ ngắt.  Các loại ngắt + Ngắt do lỗi khi thực hiện chương trình, ví dụ: tràn số, chia cho 0 … + Ngắt do lỗi phần cứng, ví dụ: lỗi bộ nhớ RAM + Ngắt do môđun vào-ra phát tín hiệu ngắt đến CPU yêu cầu trao đổi dữ liệu. BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 150 /
  • 151. Chu trình lệnh thực hiện lệnh ngắt BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 151 /
  • 152. Hoạt động ngắt (tiếp) BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 152 /
  • 153. Hết Chương 3 BỘ MÔN KỸ THUẬT MÁY TÍNH – KHOA 153 /

Editor's Notes

  1. Address Bus : nhóm đường truyền nhận diện vị trí truy xuất trong thiết bị đích : thông tin được đọc từ đâu hoặc ghi vào đâu Data Bus : nhóm đường truyền để tải data thực sự giữa các thiết bị hệ thống do địa chỉ trên address bus đã xác định. Độ rộng của data bus (số đường dây dẫn) xác định data trong mỗi lần truyền là bao nhiêu. Control Bus : nhóm đường truyền cho các tín hiệu điều khiển như : tác vụ là đọc hay ghi, tác vụ thực thi trên bộ nhớ hay trên thiết bị ngoại vi, nhận dạng chu kỳ bus và khi nào thì hoàn tất tác vụ…