Tổng quan về Giao diện máy tính hiện đại

MỤC LỤC

GIAO DIỆN TỐC ĐỘ CAO

Ngày nay, chuẩn PCI tạo ra bộ mặt mới trong lĩnh vực nối ghép máy tính với thiết bị ngoại vi và quan trọng là nó là chuâẩn giao diện mới đáp ứng những nhu cầu của những hệ thống đa nền tảng và đa cấu trúc. Thành phần PCI và các Card giao tiếp được xử lý hoàn toàn độc lập với nhau, cho phép một quá trình trao đổi dữ liệu cố định và có thể sử dụng với.

PCI-X 66

Xử lý độc lập cho phép bú cục bộ PCI tối ưu hóa với các chức năng vào/ra, các hệ thống nhớ, các thiết bị ngoại vi có hiệu suất cao như hình ảnh động, LAN, SCSI, FDDI, ổ cứng…nâng cao hình ảnh và hiển thị đa phương tiện (đồ họa 3 chiều). Bus PCI độc lập với bộ vi xử lý, nó là bus tầng dưới, không trực tiếp nối vào bus hệ thống, giữa bộ vi xử lý và bus PCI là thiết bị điều khiển PCI- một vi mạch có nhiệm vụ đồng bộ các tín hiệu hệ thống và tín hiệu bus, làm cho chúng hiểu nhau;.

Hình 1.3 cho thấy bộ vi xử lý, cache, bộ nhớ được nối tới bus PCI qua một cầu PCI, nó cho phép bộ vi xử lý truy cập trực tiếp tới các thiết bị truyền theo chuẩn PCI khác như bộ nhớ, không gian địa chỉ vào/ra.
Hình 1.3 cho thấy bộ vi xử lý, cache, bộ nhớ được nối tới bus PCI qua một cầu PCI, nó cho phép bộ vi xử lý truy cập trực tiếp tới các thiết bị truyền theo chuẩn PCI khác như bộ nhớ, không gian địa chỉ vào/ra.

NGHIÊN CỨU GIAO DIỆN PCI 32 BÍT/33MHZ

MÔ TẢ CHÂN TÍN HIỆU TRÊN SLOT PCI

- DEVSEL#: Là chân ba trạng thái liên tục, lựa chọn thiết bị khi điều khiển hoạt động, nó chỉ ra đối tượng điều khiển mà địa chỉ của nó được giải mã như đối tượng đích của sự truy cập hiện hành. Tiếp theo ta sẽ nghiên cứu các yếu tố cơ bản nhất để có thể trao đổi dữ liệu trên bus PCI, bắt đầu từ lệnh điều khiển bus, giao thức trao đổi, tổ chức không gian địa chỉ, các thao tác cơ bản trên bus, sự kết thúc quá trình trao đổi dữ liệu và đồ hình trạng thái bus PCI.

CÁC LỆNH BUS

Với phương thức này thì trên các đường tín hiệu ADxx bắt đầu là thông tin địa chỉ tiếp theo là một hoặc nhiều các nhịp dữ liệu (32/64 bít) trong khối đó. Trong những chu kỳ Clock tiếp theo nhịp dữ liệu đầu tiên và các nhịp dữ liệu trong khối dữ liệu sẽ được trao đổi khi cả hai tín hiệu IRDY# và TRDY# đều ở mức tích cực (mức thấp).

ĐỊNH ĐỊA CHỈ TRÊN BUS PCI

Trạng thái đợi có thể được chèn vào trong quá trình trao đổi dữ liệu nếu một trong hai tín hiệu IRDY# hoặc TRDY# không ở mức tích cực. Trong khi đang trao đổi một nhịp dữ liệu thì sự thay đổi của các tín hiệu điều khiển không có tác dụng cho đến khi hoàn thành nhịp dữ liệu này.

TỔ CHỨC KHÔNG GIAN CẤU HÌNH BUS PCI

    - Bít 7: Là bít chỉ đọc (tuỳ chọn) nó chỉ cho biết có hay không thiết bị đích có thể chấp nhận sự giao dịch kiểu back-to-back khi sự giao dịch đó không có cùng các tác nhân. - Bít 12: Bít này phải được thiết lập bởi thiết bị chủ, mỗi khi kết thúc quá trình trao đổi dữ liệu của thiết bị chủ theo kiểu bỏ qua vai trò thiết bị đích.

    Hình 2.3: Tổ chức thanh ghi lệnh
    Hình 2.3: Tổ chức thanh ghi lệnh

    CÁC THAO TÁC CƠ BẢN TRÊN BUS PCI

      Nhịp dữ liệu đầu tiên trên một quá trình giao dịch đọc quy định một chu kỳ quay vòng (làm cho hiêụ lực bởi thiết bị đích qua TRDY#) trong trường hợp này nhịp địa chỉ hợp lệ trên xung clock thứ hai và sau đó đối tượng điều khiển các tín hiẹu AD sớm nhất thì thiết bị đích có thể cung cấp dữ liêụ hợp lệ trên xung clock thứ tư. Dữ liệu bị giữ chậm bởi đối tượng điểu khiển tại chu kỳ clock thứ 5 vì tín hiệu IRDY # không ở mức tích cực, nhịp dữ liệu cuối cùng được báo hiệu tại chu kỳ clock thứ 6 và nó được hoàn thành tại chu kỳ clock thứ 8.

      Hình 2.7: Chu kỳ Clock trên bus PCI
      Hình 2.7: Chu kỳ Clock trên bus PCI

      SỰ KẾT THÚC QUÁ TRÌNH TRAO ĐỔI DỮ LIỆU

        Tại xung clock thứ 2, đối tượng bị điều khiển xác định rằng đối tượng điều khiển có yêu cầu một quá trình giao dịch mà với quá trình giao dịch đó thì đối tượng bị điều khiển không có khả năng để hoàn thành hoặc xác định rằng có một lỗi không thể sửa được đã xảy ra. Nếu bất cứ dữ liệu nào đã được truyền trong suốt nhịp dữ liệu trước đó của quá trình giao dịch hiện thời, vì tín hiệu STOP# đã ở mức tích cực tại xung clock thứ 2 và đối tượng điều khiển có thể xác nhận tín hiệu IRDY# tại xung clock thứ 3, nó không xác nhận FRAME# tại xung clock thứ 3.

        Hình 2.8: Đối tượng điều khiển bắt đầu kết thúc trao đổi.
        Hình 2.8: Đối tượng điều khiển bắt đầu kết thúc trao đổi.

        ĐỒ HÌNH TRẠNG THÁI BUS PCI

        Trong cùng thời gian thiết bị đích xác nhận tín hiệu TRDY# và báo rằng nó có thể nhận dữ liệu, lúc này nó khoá dữ liệu và chuyển về trạng thái 3 khi tín hiệu IRDY# được xác nhận và tín hiệu FRAME# không ở mức tích cực. Nhưng nó chuyển trực tiếp về trạng thái 2 hoặc trạng thái 5 mà không phải đi qua trạng thái chờ khi nó gặp thiết bị ở trạng thái này và lệnh đọc ghi I/O được đưa ra một lần nữa (trở nhanh về tác vụ ngược).

        Thiết bị ngoại vi

        Sau khi thiết kế và chế tạo xong phần cứng thì mã lệnh của trình điều khiển môdun được tạo ra dưới sự hỗ trợ của các bộ công cụ chuyên dụng, ví dụ như WinDriver (được giới thiệu chi tiết ở chương 3). Bằng các ngôn ngữ lập trình quen thuộc (C/C++, Delphi, Visual Basic..) để phát triển mã lệnh của trình điều khiển môdun do WinDriver hỗ trợ thành những hàm chức năng của môdun cần thiết kế.

        GIAO DIỆN USB VÀ THIẾT KẾ THIẾT BỊ SỬ DỤNG GIAO DIỆN USB

        GIAO DIỆN USB

          Gói dấu hiệu được tạo ra bởi thiết bị chủ để mô tả gói tiếp theo và thao tác đối với dữ liệu là gì (đọc hay ghi), gói tiếp theo thường là gói dữ liệu mang theo dung lượng và cuối cùng là gói dùng để bắt tay, thông báo dữ liệu đã được nhận thành công hay có lỗi khi giao dịch. - Truyền khối: Giống như truyền đẳng thời nhưng nó có sự bắt tay sau khi nhận dữ liệu, để khẳng định dữ liệu đã được thu, phát một cách chính xác.

          Host ControllerPCI Bus

          Hệ thống cơ sở USB 2.0 được thiết kế để hỗ trợ thiết bị tốc độ cao, thiết bị tốc độ đầy đủ (full-speed) đến thiết bị tốc độ thấp. Phần tiếp theo ta sẽ thực hiện bài toán thiết kế mạch lập trình cho chíp FT232BM trong việc truyền dữ liệu dạng nối tiếp không đồng bộ.

          NHỮNG ƯU ĐIỂM NỔI BẬT

          Với những ứng dụng để sắp xếp thì góc trễ (của ổ đĩa) sẽ ưu tiên cho dữ liệu toàn vẹn như là audio và dữ liệu video dải thông hẹp, với IC thế hệ mới cung cấp một lựa chọn của truyền dữ liệu đồng bộ cách biệt USB qua bit lựa chọn trong EEPROM. Với mạch yêu cầu thời gian reset dài (Khi mà thiết bị được reset từ bên ngoài sử dụng IC tạo tín hiệu reset, hoặc reset được điều khiển bởi cổng IO của MCU…) thì một mạch transistor cũng không cần thiết nữa giống như một điện trở 1.5k ở chân USB DP có thể nối với chân RESETO# thay cho 3.3V.

          SƠ ĐỒ KHỐI

          Hỗ trợ nhiều thiết bị mà không có EEPROM: khi không có EEPROM (hay EEPROM trắng hoặc lỗi) được gắn vào IC thì FT245BM không cần phải thông báo số Seri (như một phần trong nhận dạng) nữa. Tuy nhiên các nhà sản xuất vẫn khuyến cáo rằng nên sử dụng EEPROM, khi không có số Seri thì thiết bị chỉ được nhận dạng bởi cổng Hub trong cây USB được kết nối tới, nó có thể thay đổi nếu người sử dụng sau cắm lại thiết bị vào cổng khác.

          Hình 3.3 Sơ đồ khối FT232BM
          Hình 3.3 Sơ đồ khối FT232BM

          USB DPLL

          • VÍ DỤ VỀ KẾT CẤU CỦA IC

            Có thể dùng một transistor (2N3906) để tạo nguồn cho Bus USB. Nó được nối dạng emitơ lặp lại do đó khi có nguồn trên bus USB thì transistor sẽ bão hoà và điện trở 1.5k được nối trực tiếp với RSTOUT#. Khi nguồn USB tắt thì Transistor cũng tắt theo do đó chặn không cho dòng điện chạy vào dây USB DP. Hình dưới mô tả một cách mạch cấp nguồn tương tự kết cấu 1. Lúc này điện trở 1.5k ở chân USB DP đươc nối với RSTOUT# như ở mạch cấp nguồn cho Bus. Tuy nhiên, cấp nguồn cho bus USB được sử dụng để điều khiển chân RESET# của FT232BM. Khi Chủ USB hay nguồn Hub tắt, RESET# sẽ ở mức thấp và thiết bị sẽ được giữ ở trạng thái Reset. Reset ở mức thấp làm cho RSTOUT cũng ở mức thấp, do vậy không có dòng điện chạy trên dây USB DP qua điện trở 1.5k trở nên. Chú ý: Khi FT232BM ở chế độ RESET thì các chân ghép nối UART đều là dạng 3 trạng thái. Các chân này có điện trở trong 200k nối tới Vcc-IO, do vậy nó sẽ ở mức cao trừ khi được điều khiển bởi một số thiết bị bên ngoài. Trong 2 kết cấu trên, việc sử dụng phụ thuộc vào thiết kế của thiết bị ngoại vi. Với kết cấu đầu tiên thì FT232BM là “Live” – khi cổng USB tắt thì sẽ không có hoạt động trên USB bus và thiết bị sẽ ở trạng thái nghỉ trong một vài ms. ở kết cấu này thì chân RESET# có thể vẫn hoạt động nếu cần thiết. Ở kết cấu thứ hai, FT232BM giữ ở trạng thái RESET khi mà USB tắt. Khi Reset, bộ tạo dao động 6Mhz của FT245BM vẫn hoạt động và thiết bị sẽ không ở trạng thái nguồn thấp. Hình trên cho biết cách kết cấu FT232BM để tương thích với thiết bị mức lôgic 3.3V. Trong ví dụ này, một bộ phát 3.3V riêng biệt được sử dụng để tạo mức lôgíc 3.3V từ nguồn nuôi USB. VccIO được nối với đầu ra của bộ điều chỉnh 3.3V, khi hoạt động có thể làm cho các chân IO của giao diện FIFO điều chỉnh ra ở mức 3.3V. Với mạch cấp nguồn cho Bus USB, cần phải cân nhắc khi chọn bộ điều chỉnh. a) Bộ điều chỉnh phải có khả năng duy trì điện áp đầu ra với điện áp đầu vào là 4.4V. Để bật nguồn ngoại vi lôgíc mà vượt quá 100mA hay phát ra dòng đáng kể khi bật, thì nên thiết kế IC bật nguồn chuyên dụng với chế độ “Soft-Start” gắn liền thay cho sử dụng MOSFET (Chẳng hạn IC: MIC2025-2BM hoặc tương đương). Hãy chú ý đến những điểm sau khi kết nối với nguồn điều khiển:. a) Thiết bị lôgíc được điều khiển phải có mạch Reset cho nó mà nó sẽ tự động reset nó khi mà nguồn được ứng dụng lại không có ngắt. b) Đặt lựa chọn nối đất cho EEPROM của FT232BM. c) Với mạch điều khiển nguồn 3.3V VccIO không được phép nối qua mạch ngoại vi (chân PWREN# lấy nguồn Vcc từ VccIO).

            Hình 3.4 Sơ đồ chân nối cắm đầu ra thiết bị
            Hình 3.4 Sơ đồ chân nối cắm đầu ra thiết bị