1. Tuyển Mod quản lý diễn đàn. Các thành viên xem chi tiết tại đây

Thiết kế card PCI ?

Chủ đề trong 'Điện - Điện tử - Viễn thông' bởi ahuy82, 11/10/2003.

  1. 1 người đang xem box này (Thành viên: 0, Khách: 1)
  1. ahuy82

    ahuy82 Thành viên mới

    Tham gia ngày:
    11/10/2003
    Bài viết:
    27
    Đã được thích:
    0
    Thiết kế card PCI ?

    Ai có tài liệu hoặc thông tin về đề tài này xin chỉ dùm . Thanks .
  2. Quen_mang_kinh

    Quen_mang_kinh Thành viên quen thuộc

    Tham gia ngày:
    23/05/2002
    Bài viết:
    542
    Đã được thích:
    1
    Bạn định thiết kế card PCI làm gì vậy!
    Những người thiết kế card PCI thường mua một IC như PCI9502 của PLX kèm theo Driver và SDK đi kèm theo nó. Công việc còn lại chỉ là thiết kế mạch I0 giao tiếp với Chip này và viết chương trình xử lý phía trên PC.
    Tài liệu thì có khá nhiều nhưng hầu hết là search bằng google bạn thử đi. Có kinh nghiệm gì mới nhớ chia sẻ nhé.
  3. ck79

    ck79 Thành viên mới

    Tham gia ngày:
    01/09/2003
    Bài viết:
    158
    Đã được thích:
    0
    Nhưng nếu dùng chip này thì hình như lại phải đặt mua ở bên nước ngoài thì phải. Mà tôi thấy nhiều card có dùng cái này đâu. Liệu có loại nào khác ko? Nếu bạn nào có thì post lên cho anh em xem với.
  4. ahuy82

    ahuy82 Thành viên mới

    Tham gia ngày:
    11/10/2003
    Bài viết:
    27
    Đã được thích:
    0
    Mình đang làm đồ án thiết kế card PCI để thu thập dữ liệu và điều khiển , nhưng chưa biết bắt đầu từ đâu cả . Có thể đặt mua PCI9502 ở VN ko ? Còn cách nào khác ko ?
    Tài liệu về PCI hardware khó tìm quá ! Toàn là giới thiệu ko . Đa số là vô ích , Bạn nào có thì xin share với anh em đi . Thanks!
  5. txnghia

    txnghia Thành viên mới

    Tham gia ngày:
    13/10/2003
    Bài viết:
    216
    Đã được thích:
    0
    Thiết kế PCI (Peripheral Component Interface)
    PCI là bus truyển tải thông tin rất hiệu quả giữa bộ xử lý, bộ nhớ và các thiết bị trong mang bus. Hiện giờ hầu hết các máy tính cá nhân (PC) đều dùng mạng này bên cạnh ISA (Industry Standard Architecture) để nối bộ xử lý, bộ nhớ, và các thẻ mạch điện như (ethernet, audio, video cards.v.v...) và ta cũng có thể thiết kế một mạch giao diện với mạng này, gởi thông tin ta muốn ra thế giới bên ngoài và các thông tin từ bên ngoài được tổng hợp và nhận vào mạng.
    Mạng PCI khác và nhanh hơn ISA. Mạng PCI tiêu chuẩn có tốc độ truyền trên mạng là 33MHz với 32 bít dữ kiện, trong khi ISA truyền với tốc độ 8MHz với 16 bít hoặc 8 bít dữ kiện. Mạng PCI dùng chung đường truyền cho bus địa chỉ và bus dữ kiện (mutiplex), trong khi ISA dùng bus địa chỉ và dữ kiện riêng biệt (non-multiplex).
    Các tín hiệu giao diện dùng trong mạng PCI là chừng 50 tín hiệu: 32 cho địa chỉ và dữ kiện (Address Data), 4 cho các lệnh (Command Bus), còn lại là các tín hiệu điều khiển và interrupt.
    Bộ giao diện PCI được chia làm 2 loại: chủ (master PCI) và tớ (target PCI). PCI chủ có thể khởi xướng một hoạt động truyền tải nhưng PCI tớ thì không. Trong mạng có thể có nhiều bộ chủ và nhiều bộ tớ.
    Về hoạt động mạng thì một bộ chủ PCI gởi ra 32 bít địa chỉ cùng với lệnh. Khi một PCI tớ hoặc PCI chủ nào đó trong mạng nhận được địa chỉ gởi đến nó, nó sẽ sắp xếp để chuẩn bị nhận hoặc truyền dữ kiện. Khi chuẩn bị xong sẽ gởi lại tín hiệu đã sẵn sàng và bộ chủ bắt đầu truyền ra các dữ kiện hoặc nhận lại các dữ kiện. Một điểm đặc biệt của mạng PCI là nó truyền đi một địa chỉ và sau đó là một tràn các dữ kiện liên tiếp được gởi đi hoặc nhận lại. Bộ tớ PCI tự động tăng con chỉ trong phần đệm để chứa hoặc lấy ra các dữ kiện theo thứ tự. Chính đặc điểm này mà PCI truyền hiệu quả hơn ISA. ISA truyền ra một địa chỉ cho mỗi byte, và địa chỉ và dữ kiện truyền xen kẻ nhau.
    Thiết kế PCI khó hơn là ISA. Với nhiều ứng dụng thường thì chỉ cần PCI tớ (target PCI) vì thiết kế PCI chủ phức tạp hơn và tốn nhiều linh kiện hơn.
    Vậy muốn giao diện với mạng PCI trước hết là phải có bộ tớ. Bộ tớ có nhiệm vụ mã hóa địa chỉ, nhận hoặc truyền dữ kiện, xử lý các tín hiệu điều khiển mạng, và sau cùng là tạo phần giao diện quen thuộc với người thiết kế, để sử dụng các dữ kiện trong mạng. Tức là các mạnh điện ứng dụng của bạn như điều khiển động cơ, camera, nút nhấn, điều khiển đèn... được nối ở phần giao diện này.
    Nếu các ứng dụng của bạn cần truyền tải dữ kiện thật nhanh thì trong bộ tớ PCI cần có phần đệm (thường là loại bộ nhớ FIFO - First In First Out), làm cho bộ PCI của bạn thêm phức tạp. Có nhiều loại chip PCI hiện hành của rất nhiều hãng như Intel, Motorolla, National... thường các loại này có chứa luôn bộ nhớ. Nó nối với mạng PCI và cho bạn các tín hiệu giao diện quen thuộc, dễ xử dụng. Bạn chỉ cần thiết kế mạch theo yêu cầu ứng dụng và nối vào vào mạng PCI qua chip này. Các chip loại này thường có rất nhiều chân, đòi hỏi kỹ thuật làm thẻ mạch cao, và tốn kém.
    Bạn cũng có thể tự thiết kế lấy phần giao diện PCI với các chip trong họ 74 nhưng cần rất nhiều con, thẻ diện tích lớn.
    Với mình thì mình dùng FPGA (Field Programmable Gate Array) lập trình phần cứng cho PCI và các mạch ứng dụng. FPGA là loại chip trong đó gồm hàng ngàn, hàng triệu cổng logic. Với chương trình viết trên máy computer các cổng này nối thành các mạch mình muốn, và mất chừng vài trăm miliseconds để biến nó thành một chip khác.
    Bạn có thể vào đây để đọc thêm về PCI
    http://documents.epanorama.net/links/pc/bus.html#pci
    Chúc thành công!
    Kỳ sau mình sẽ có bài dịch chi tiết về giao diện PCI.
  6. txnghia

    txnghia Thành viên mới

    Tham gia ngày:
    13/10/2003
    Bài viết:
    216
    Đã được thích:
    0
    1.0 Tổng Quát PCI (Peripheral Component Interface)
    Mạng bus PCI là một mạng hiệu năng cao dùng để nối các chip, các thẻ, và hệ thống vi xử lý/bộ nhớ. Nó được khởi đầu bởi hãng Intel trong những năm đầu thập niên 90 như là một phương cách tiêu chuẩn nối các chip trên mạch. Sau đó nó được công nhận là một tiêu chuẩn công nghiệp do nhóm PCI Special Interest Group (PCI SIG).
    PCI được công nhận lần đầu để dùng trong máy tính cá nhân năm 1994 với sự giới thiệu của Intel về bộ chip "Saturn" và motherboard "Alfredo" với bộ xử lý 486. Với sự giới thiệu về bộ chip và motherboard cho bộ xử lý Pentium, PCI đã sớm thay thế phần lớn cấu trúc các mạng như EISA, VL, và Micro Channel. Mạng bus ISA vẫn tiếp tục tồn tại song song với PCI để hộ trợ cho "di sản" của các thẻ mạch ra đời trước PCI. Nhưng các thẻ mạch này được thiết kế lại, mạng PCI nhằm thay thế hoàn toàn mạng ISA.
    Vào ngày 11/9/1998, nhóm PCI SIG tuyên bố rằng Compaq, Hewlett-Packard, và IBM đã đệ trình một tiêu chuẩn mới để duyệt xét được gọi là "PCI-X". Tiêu chuẩn đề nghị cho phép tăng nhanh tốc độ mạng PCI lên đến 133 MHz. Nó cũng bao gồm các đề nghị thay đổi nghi thức giao diện của PCI, ảnh hưởng đến tốc độ truyền tải và yêu cầu về thời gian. Nhóm PCI SIG đã chấp nhận hình thành một nhóm làm việc để xem xét lại sự đề xuất.  
    2.0 Tài Liệu PCI 2.1 Ðặc Tính Kỹ Thuật PCI Các bản sao đặc tính kỹ thuận của PCI có thể được cung cấp với một khoảng lệ phí của nhóm PCI SIG. Sau đây là các đặc tính kỹ thuật của PCI được phát hành: .
    Revision 1.0 - Bản gốc. Phát hành ngày 22/6/92. Chỉ là đặc tính về linh kiện. Không xác định tiêu chuẩn cho hệ thống cắm nối thẻ mạch.
    Revision 2.0 - Phát hành 30/4/93. Ðặc tính về hệ thống cắm nối.
    Revision 2.1 - Phát hành 1/6/95. Xác định tùy chọn 66 MHz và thêm nhiều chi tiết cho rõ ràng.
    Revision 2.2 - Phát hành 18/12/98. Sáp nhập nhiều các tiêu chuẩn nâng cao.
    Nhóm PCI SIG cũng duy trì các tài liệu sau:
    Ðặc điểm cấu trúc cầu nối PCI-PCI. (PCI to PCI Bridge Architecture Specification) .
    Hướng dẫn thiết kế PCI lưu động. (PCI Mobile Design Guide) . Ðặc điểm về quản lý hệ thống điện cho mạng PCI (PCI Bus Power Management Interface Specification) .
    Ðặc điểm của Hot-Plug PCI. (PCI Hot-Plug Specification) .
    Ðặc điểm của BIOS (PCI BIOS Specification).
    Ðặc điểm của PCI mini.  
    2.2 Sách PCI
    Ðề nghị 2 cuốn sách về PCI: . PCI Hardward & Software Architecture and Design by Edward Solari & Geoge Willse (Annabooks) (ISBS 0-929392-59-0).
    PCI System Architecture by Tom Shanley (MindShare) (ISBN 0-201-40993-3).
    3.0 Nghi Thức Mạng PCI PCI là một cấu trúc mạng hoạt động đồng bộ, mọi sự truyền tải dữ kiện được thực hiện một cách đồng bộ với xung nhịp của hệ thống. Tiêu chuẩn ban đầu của PCI cói xung nhịp tối đa là 33 MHz, cho phép một lần truyền được thực hiện mất 30 nano giây. Sau này, với bản tái thảo 2.1 (Revision 2.1), tiêu chuẩn được mở rộng đến 66 MHz, nhưng phần lớn các máy tính cá nhân ngày nay vẫn tiếp tục sử dụng PCI 33MHz. PCI sử dụng chung chân tín hiệu cho 32 bít địa chỉ và 32 bít dữ kiện (gọi là AD[31: 0]). Với 33 MHz, một ổ cắm 32 bít có tốc độ truyền là 132 MBytes/giây, và với ổ cắm 64 bít thì là 264 MByte/giây.
    Sự nhập chung địa chỉ và dữ kiện làm giảm đi số chân cho các ổ cắm PCI, do đó giảm giá thành và kích thước cho các linh kiện PCI. 32 bít PCI tiêu chuẩn gắn lên mạch chỉ dùng khoảng 50 chân tín hiệu trên ổ cắm PCI vì 32 chân được dùng chung cho 32 bít địa chỉ và dữ kiện.
    Chu kỳ mạng PCI được khởi đầu bằng cách gởi ra một địa chỉ trên đường tín hiệu AD[31:0] ở cạnh của một xung nhịp, nó được gọi là giai đoạn định địa chỉ. Giai đoạn định địa chỉ được báo hiệu bởi tín hiệu FRAME# (khung). Tại cạnh của xung kế tiếp là giai đoạn bắt đầu gởi dữ kiện, có thể là một hay nhiều dữ kiện liên tiếp. Dữ kiện cũng được gởi trên AD[31: 0].
    Với PCI bus, dữ kiện được truyền giữa một bộ khởi xướng (initiator hay master-chủ) và bộ đích (target hay slave-tớ). Bộ khởi xướng gởi ra tín hiệu lệnh C/BE[3: 0]#. Trong giai đoạn định địa chỉ thì C/BE[3:0]# báo cho bộ đích biết lệnh (như lệnh đọc bộ nhớ, viết vào bộ nhớ, đọc ngõ ra/vào, gởi ra ngõ ra/vào, v.v..) Trong giai đoạn chuyền dữ kiện, /BE[3: 0] làm nhiệm vụ chỉ ra loại byte dữ kiện nào có giá trị. Cả hai bộ khởi xướng (chủ) và bộ tớ có thể chen vào trạng thái chờ trong truyền dữ kiện truyền bằng cách tắc đi tín hiệu IRDY# và TRDY. Dữ kiện hợp lệ được truyền tại mỗi cạnh của xung trong lúc tín hiệu IRDY# và TRDY được bậc.
    Quá trình hoạt động PCI gồm 1 giai đoạn định địa chỉ và một hay nhiều giai đoạn truyền dữ kiện. Các hoạt động ra/vào truy cập các thanh ghi bên trong PCI đích (tớ) chỉ có một giai đoạn truyền tải dữ kiện. Các thanh ghi bên trong bộ giao diện PCI chứa các thông tin như tên hãng sản xuất, năm sản xuất, ... để giúp cho chức năng plug and play. Khi cắm một thẻ PCI vào mạng, bộ xử lý các thông tin trong các thanh ghi và tự động tìm chương trình (driver) để điều khiển giao diện. Trong lúc truy cập các thông tin này thì PCI truyền từng dữ kiện một, tức là mỗi một địa chỉ gởi ra chỉ có một dữ kiện (32 bít) được truyền tải. Nhưng khi truyền các khối dữ kiện trong bộ nhớ thì bộ chủ chỉ cần gởi ra một địa chỉ đầu và sau đó các dữ kiện được truyền liên tiếp nhau cho tới khi bộ chủ hay bộ đích đưa ra tín hiệu chấm dứt. Các dữ kiện được viết và đọc các vị trí thứ tự tiếp nhau trong bộ nhớ. Cả hai chủ và tớ có thể làm dừng trình tự truyền bất kỳ lúc nào. Bộ chủ ra dấu báo hoàn thành một chu trình truyền tải bằng cách tắc đi tín hiệu FRAME# ở cuối giai đoạn truyền dữ kiện. Bộ tớ có thể làm dừng bước truyền bằng cách bậc tín hiệu STOP#. Khi bộ chủ dò thấy tín hiệu STOP được bậc lên, nó phải dừng truyền và phân định lại mạng trước khi tiếp tục. Nếu STOP# được bậc mà không có bất kỳ giai đoạn hoàn thành, bộ tớ sẽ đưa ra hiệu lần nữa. Nếu tín hiệu STOP được bậc mà có một hay nhiều giai đoạn dữ kiện xảy ra một cách tốt đẹp thì bộ tớ sẽ ngắt.
    Trong một mạng PCI có thể có nhiều bộ chủ và bộ đích. vì có thể có nhiều bộ chủ nên nên để quyết định bộ chủ nào có quyền sở hữu mạng thì bộ đó bậc tín hiệu REQ# (request). Bộ phân định cho quyền sở hữu mạng bằng cách bậc tín hiệu GNT# (Grand). REQ# và GNT# là thành phần duy nhất của mỗi ổ PCI cho phép thực hiện các thuật toán mạng linh động. Sự phân định trong PCI được "dấu", không tốn một xung nào.
    PCI hộ trợ sự cài đặc chính xác. Mỗi thiết bị PCI gồm một tập hợp các thanh ghi cài đặc, nó cho phép nhận dạng ra từng loại thiết bị (SCSI, hình ảnh, Ethenet, v.v...) và hãng sản xuất. Những thanh ghi khác cho phép cài đặt địa chỉ ngõ ra/vào, địa chỉ bộ nhớ, mức ngắt (interrupt level), v.v... Mặc dù không được ứng dụng rộng rãi, PCI cũng hộ trợ cho 64 bít địa chỉ. Không giống như 64 bít dữ kiện phải yêu cầu bộ cắm nối dài hơn, 64 bít địa chỉ có thể được hộ trợ qua bộ cắm nối 32 bít. 2 chu kỳ địa chỉ được được dùng, 32 bít địa chỉ thấp được truyền trước trên AD[31: 0], và sau đó 32 bít cao được truyền trên AD[31: 0] trong giai đoạn định địa chỉ. Phần còn lại tiếp tục như mạng truyền bình thường. PCI hộ trở cho cả hai mức điện thế tín hiệu 5 Vôn và 3.3 Vôn. Bộ cắm PCI xác định vị trí chân cho mức 5 và 3.3 Vôn. Tuy nhiên, các hệ thống trước đây chỉ có mức 5 Vôn, và không cấp điện 3.3 Vôn. Qua thời gian, thêm nhiều thiết bị cần điện thế tín hiệu giao diện là 3.3 Vôn, nhưng vì các thẻ mạch cắm vào khác cũng cần phải làm việc trong các hệ thống cũ với mức điện thế mạng mức 5 Vôn. Một phương cách được thực hiện trong bộ cắm PCI nhằm đề phòng trường hợp cắm các thẻ mạch vào trong hệ thống không có điện nguồn thích hợp. Mặc dù dùng các hệ thống PC thông dụng nhất, cấu trúc mạng PCI là bộ xử lý độc lập. Các xác định tín hiệu PCI có đặc điểm chung cho phép mạng được sử dụng trong hệ thống căn bản trên các họ bộ xử lý khác. PCI bao gồm các tiêu chuẩn chính xác nhằm bảo đảm chất lượng tín hiệu yêu cầu cho hoạt động ở 33 MHz và 66 MHz. Các linh kiện và các thẻ mạch phải có mạch bộ điều khiển thống nhất được thiết kế để dùng trong môi trường mạng PCI. Các thiết bị TTL được sử dụng trong các mạng trước như ISA và EISA thỏa yêu cầu của PCI. Sự giới hạn này cùng với tốc độ cao của mạng khiến cho hầu hết các thiết bị PCI được thực hiện với các ASICs. Tốc độ cao hơn của PCI giới hạn số ổ cắm trên một mạng máy tính không quá 3 hoặc 4, so với 6 hoặc 7 ở cấu trúc mạng cũ. Ðể có thêm các ổ cắm nối vào mạng PCI, nhóm PCI SIG xác định cơ cấu cầu nối PCI - PCI. Cầu nối PCI - PCI là ASISs, nó cô lập 2 mạng PCI và cho phép các dữ kiện đi từ mạng này sang mạng kia. Mỗi thiết bị cầu nối gồm một mạng PCI sơ cấp và một PCI thứ cấp. Nhiều thiết bị cầu nối có thể mắc lại thành hệ thống với nhiều mạng PCI.  
    4.0 Mô Tả Tín Hiệu PCI Required Pin/Optional Pins
    Chân cần ------------------------- Chân tùy chọn
               ----------------
                       |                |
    <===AD[31:0]=====>|                |<===AD[63:32]====>
    <===C/BE[3:0]#===>|     PCI         |<===C/BE[7:4]#===>
    <---PAR---------------->|   Compliant   |<---PAR64-------->
                      |    Device       |<---REQ64#------->
    <---FRAME#---------->|                |<---ACK64#------->
    <---TRDY#------------>|                 |
    <---IRDY#------------->|               |<---LOCK#-------->
    <---STOP#------------>|                 |
    <---DEVSEL#-------->|                |----INTA#-------->
    ----IDSEL-------------->|                |----INTB#-------->
                       |                |----INTC#-------->
    <---PERR#----------->|                |----INTD#-------->
    <---SERR#----------->|                 |
                       |                |<---SBO#--------->
    <---REQ#---------------|                 |<---SDONE-------->
    ----GNT#-------------->|                 |
                       |                 |<---TDI-----------
    ----CLK---------------->|                 |----TDO---------->
    ----RST#-------------->|                 |<---TCK-----------
                       |                 |<---TMS-----------
                       |                 |<---TRST#---------
    -------------------------
     
    Được txnghia sửa chữa / chuyển vào 00:21 ngày 15/10/2003
    Được txnghia sửa chữa / chuyển vào 00:23 ngày 15/10/2003
  7. txnghia

    txnghia Thành viên mới

    Tham gia ngày:
    13/10/2003
    Bài viết:
    216
    Đã được thích:
    0
    4.1 Hệ Thống Chân CLK
    Xung (clock) cung cấp thời chuẩn cho toàn bộ sự truyền tải trong mạng PCI. Tất cả các tín hiệu, ngoại trừ reset và interrupts (ngắt), được lấy mẫu tại cạnh lên của xung tín hiệu. Tất cả tiêu chuẩn thời gian mạng được xác định liên quan đến cạnh lên. Cho hầu hết các hệ thống, tín hiệu xung hoạt động ở tần số 33 MHz. Bản bổ xung Revion 2.1 của PCI xác định đặc tính cho cách thức 66 MHz, nhưng cách thức này chưa được xử dụng rộng rãi. Ðể hoạt động ở tần số 66 MHz, cả 2 mạng PCI hệ thống và PCI của thẻ mạch cắm vào phải thỏa điều kiện thiết kế tốc độ cao. Các thẻ báo cho hệ thống nếu nó có khả năng chạy ở 66 MHz qua tín hiệu M66EN. Hệ thống sẽ cung cấp xung 66 MHz đến thẻ, và xung ngầm định 33 MHz nếu thẻ không chạy được tần số cao hơn. Tương tự, nếu một hệ thống có khả năng cung cấp xung 33 MHz thì các thẻ 66 MHz phải có khả năng chạy với tần số thấp hơn. Giá trị thấp nhất cho tín hiệu xung là 0 Hz, cho phép xung được tạm ngưng tiết kiệm điện. RST#
    Reset được hạ xuống thấp để làm reset thiết bị PCI. Tín hiệu reset làm cho các thanh ghi, bộ khiển trạng thái, tín hiệu ra của thiết bị PCI trở về trạng thái ban đầu. RST# được bậc và tắt không phải cần đồng bộ với tín hiệu xung. Nó nằm ở trạng thái bậc ít nhất là 100 micro giây sau khi tín hiệu xung được ổn định. 4.2 Chân Ðịa Chỉ Và Chân Dữ Kiện AD[31:0]
    Ðịa chỉ và dữ kiện được nhập chung trên các chân này. AD[31:0] truyền 32 bít địa chỉ trong "giai đoạn định địa chỉ", và truyền 32 bít dữ kiện trong "giai đoạn truyền dữ kiện." Một "giai đoạn định địa chỉ" chỉ xảy ra tại xung trong quảng từ điểm đi xuống từ cao xuống thấp của tín hiệu FRAME. "Giai đoạn truyền dữ kiện" xảy ra khi cả hai tín hiệu IRDY# và TRDY# được bậc xuống mức thấp. Trong quá trình ghi, bộ chủ gởi dữ kiện ra AD[31:0], trong mỗi chu kỳ nó hạ tín hiệu IRDY# xuống thấp. Bộ tớ khi có thể nhận dữ kiện thì hạ tín hiệu TRDY# xuống thấp. Khi cả hai IRDY# và TRDY# xuống thấp thì bộ tớ nắm giữ dữ kiện ghi và quá trình hoàn tất. Khi đọc thì quá trình ngược lại. Khi dữ kiện hợp lệ, bộ tớ hạ TRDY# xuống thấp và gởi dữ kiện ra AD[31:0], và bộ chủ khi có thể nhận dữ kiện thì hạ IRDY# xuống thấp. Khi cả hai tín hiệu TRDY# và IRDY xuống thấp, bộ chủ nắm lấy dữ kiện và hoàn tất quá trình đọc. Bít 31 mang giá trị lớn nhất, bit 0 mang giá trị nhỏ nhất.  
    C/BE[3:0]#
    Lệnh (Command) và tín hiệu báo loại byte (Byte Enable) được nhập chung trên các chân này. Trong giai đoạn định địa chỉ, các tín hiệu này mang lệnh của mạng xác định loại truyền tải nào được thực hiện. Xem bảng tóm lược sau để biết các mã lệnh. Trong lúc truyền dữ kiện, các tín hiệu này mang thông tin về byte dữ kiện. C/BE[3]# là byte AD[31:24] và C/BE[0] là byte AD[7:0]. Tín hiệu C/BE[3:0]# chỉ được điều khiển bởi bộ chủ và được điều khiển trong suốt quá trình "giai đoạn định địa chỉ" và "giai đoạn truyền dữ kiện."   C/BE[3:0]#
    Command Types
     
    0000
    Interrupt Acknowledge
     
    0001
    Special Cycle
     
    0010
    I/O Read
     
    0011
    I/O Write
     
    0100
    Reserved
     
    0101
    Reserved
     
    0110
    Memory Read
     
    0111
    Memory Write
     
    1000
    Reserved
     
    1001
    Reserved
     
    1010
    Configuration Read
     
    1011
    Configuration Write
     
    1100
    Memory Read Multiple
     
    1101
    Dual Address Cycle
     
    1110
    Memory Read Line
     
    1111
    Memory Write and Invalidate
     
     
    PAR
    Parity là kiểm tổng trên tín hiệu AD[31:0] và C/BE[3:0]#. parity chẳn cho biết tổng các số ''1'' trên AD[31:0], C/BE[3:0]#, và tín hiệu PAR là số chẳn. Tín hiệu PAR có cùng thời biểu như tín hiệu AD[31:0], nhưng chậm hơn một chu kỳ để có thêm thời gian tính giá trị parity.   4.3 Chân Ðiều Khiển Giao Diện FRAME#
    Chu kỳ Frame được điều khiển xuống thấp bời bộ chủ để báo bắt đầu một truyền tải mới trong mạng. Giai đoạn định địa chỉ xảy ra trong quảng xung đầu tiên sau khi có sự chuyển tiếp từ mức cao xuống thấp của tín hiệu FRAME#, sau đó tín hiệu FRAME# được đưa trở lại lên mức cao chỉ sau một chu kỳ. Nếu nhiều giai đoạn truyền dữ kiện được thực hiện thì bộ chủ sẽ giữ tín hiệu FRAME# ở mức thấp cho đến khi truyền đến dữ kiện kế cuối. Bộ chủ thông báo ý định sắp chấm dứt giai đoạn truyền dữ kiện bằng cách đưa tín hiệu FRAME# lên cao trong quảng truyền dữ kiện cuối. Khi bộ tớ bắt đầu dừng thì bộ chủ hạ tín hiệu FRAME# xuống lại mức thấp cho đến khi việc truyền tải hoàn tất.   IRDY#
    Initiator Ready (bộ chủ sẵn sàng) được hạ xuống thấp bởi bộ chủ để báo nó sẵn sàng để hoàn tất giai đoạn truyền dữ kiện. Trong lúc ghi nó báo bộ chủ đã gởi ra dữ kiện hợp lệ trên AD[31:0]. Lúc đọc nó báo bộ chủ đã sẵn sàng nhận dữ kiện trên AD[31:0]. Ngay khi được bật, bộ chủ giữ tín hiệu IRDY# ở mức thấp cho đến khi tín hiệu TRDY# được hạ xuống mức thấp để hoàn tất một bước truyền, hoặc bộ tớ dùng tín hiệu STOP# để chấm dứt mà không thực hiện truyển dữ kiện. IRDY# cho phép bộ chủ chen vào trạng thái chờ làm chậm lại việc truyền dữ kiện.   TRDY#
    Target Ready (bộ tớ sẵn sàng) được hạ xuống thấp bởi bộ tớ để báo nó đã sẵn sàng hoàn tất giai đoạn truyền dữ kiện. Trong lúc ghi nó báo bộ tớ đã sẵn sàng nhận dữ kiện trên AD[31:0]. Trong lúc đọc nó báo bộ tớ đã gởi ra dữ kiện hợp lệ trên AD[31:0]. Ngay khi được bật, bộ tớ giữ tín hiệu TRDY# ở mức thấp cho đến khi IRDY# được hạ xuống thấp, hoàn tất một bước truyền dữ kiện. TRDY# cho phép bộ tớ chen vào trạng thái chờ làm chậm lại việc truyền dữ kiện.   STOP#
    Tín hiệu STOP# được hạ xuống thấp bởi bộ tớ để yêu cầu bộ chủ dừng truyền. Trong trường hợp mà bộ tớ yêu cầu trong quảng thời gian dài để đáp lại một sự truyền tải, nó có thể dùng tín hiệu STOP# để đình lại sự truyền tải, mạng có thể được dùng để thực hiện các việc truyền tải khác tạm thời. Khi bộ tớ dừng truyền mà không thực hiện bất kỳ một giai đoạn truyền dữ kiện nào, nó được gọi là retry. Nếu một hay nhiều giai đoạn truyền dữ kiện được hoàn tất trước khi bộ tớ chấm dứt bước truyền tải, nó được gọi là disconnect. Retry và disconnect báo cho bộ chủ rằng nó phải trở lại sau để gắng thực hiện bước truyền tải trở lại. Trong trường hợp bị lỗi như có sự cố phần cứng, bộ tớ có thể dùng STOP# và DEVSEL# để báo một sự dừng không bình thường, nó được gọi là target abort. Bộ chủ có thể dùng target abort để báo cho hệ thống phần mềm là một lỗi sự cố được dò ra. LOCK#
    Lock có thể được bật bởi bộ chủ để yêu cầu sự truy cập dành riêng với bộ tớ. Nó ngăn ngừa các bộ chủ khác sữa đổi khóa địa chỉ cho đến khi the agent initiating the lock can complete its transaction. Chỉ một vùng đặc biệc (ít nhất 16 byte) của địa chỉ bộ tớ bị khóa cho các truy cập riêng. Trong lúc LOCK# được bật, các bước truyền tải không dành riêng vẫn có thể tiến hành với các địa chỉ không bị khóa. Nhưng các truy cập không dành riêng đến các địa chỉ bộ tớ sẽ bị từ chối khi giai đoạn retry. LOCK# được dùng cho các thiết bị cầu nối để ngăn chặn sự bế tắc. IDSEL Initialization Device Select được dùng giống như chip select - (chọn chip) trong giai đoạn PCI ghi và đọc các thông số cài đặt. IDSEL được điều khiển bởi hệ thống PCI và là duy nhất cho một ổ cắm cơ bản. Nó cho phép cơ cấu cài đặc PCI nhắm đến mỗi thiết bị PCI trong hệ thống. Một thiết bị PCI được chọn bởi một chu kỳ cài đặt chỉ khi IDSEL ở mức cao, tín hiệu AD[1:0] là "00" (báo cho biết chu kỳ cài đặt loại 0), và lệnh trên C/BE[3:0]# là "configuration read" hoặc "configuration write" trong giai đoạn định địa chỉ. AD[10:8] có thể được sử dụng để một trong tám "function(chức năng)" bên trong thiết bị PCI. AD[7:2] chọn từng các thanh ghi cài đặt bên trong thiết bị và chức năng. DEVSEL# Device Select được bật khi ở mức thấp bởi bộ tớ PCI khi nó dò ra địa chỉ của nó trên mạng PCI. DEVSEL# có thể được điều khiển 1, 2, hoặc 3 xung theo sau giai đoạn định địa chỉ. DEVSEL# phải được bậc cùng lúc hay trước cạnh của xung, trong đó tín hiệu TRDY# được bật. Ngay khi DEVSEL# đượ bật, nó không thể được tắt đi cho đến cuối giai đoạn truyền dữ kiện hoàn tất, hoặc bộ tớ phát tín hiệu target abort. Nếu bộ chủ không nhận được tín hiệu DEVSEL được bật, nó chấm dứt sự truyền tải, đó được gọi là master abort.  
    4.4 Chân Phân Ðịnh (Chỉ cho bộ chủ) - Arbitration Pins (Initiator Only) REQ#
    Request được dùng bởi một thiết bị PCI để yêu cầu (request) dùng mạng. Mỗi thiết bị PCI có một tín hiệu REQ# duy nhất. Bộ phân định trong hệ thống PCI nhận các tín hiệu REQ# từ mỗi thiết bị. Ðiều quan trọng là tín hiệu này là tri-stated trong lú RST# được bật để ngừa hệ thống bị dừng. Tín hiệu này chỉ được tạo bởi thiết bị PCI có khả năng làm bộ chủ. GNT#
    Grant báo rằng một thiết bị PCI yêu cầu dùng mạng được chấp thuận. Mỗi thiết bị PCI có riêng duy nhất tín hiệu GNT# từ hệ thống phân định PCI. Nếu tín hiệu GNT# được bật trong chu kỳ một xung, sau đó thiết bị có thể bắt đầu truyền tải trong các chu xung sau bằng cách bật tín hiệu FRAME#. Tín hiệu này chỉ được tạo bởi thiết bị PCI có khả năng làm bộ chủ.  4.5 Chân Báo Lỗi (Error Reporting Pins) PERR#
    Parity Error được dùng để báo lỗi parity dữ kiện trong tất cả các việc truyền tải ngoại trừ "Special Cycle (chu kỳ đặc biệt)". PERR# được hạ thấp trong quảng 2 xung sau giai đoạn truyền dữ kiện có lỗi parity. Nó được hạ thấp ít nhất là một chu kỳ xung. PERR# được dùng chung cho tất cả các thiết bị PCI và được lái với chân ra tri-state. Một điện trở nối lên nguồn bảo đảm tín hiệu duy trì trong trạng thái tắc khi không có thiết bị nào điều khiển nó. Sau khi được bật xuống thấp, PERR# phải được đưa lên cao một xung trước khi tri-state hoàn lại tín hiệu cho trạng thái tắc của nó. Ðiều này bảo đảm rằng tín hiệu không nằm ở mức thấp trong quảng các chu kỳ sau vì chuyển lên mức cao chậm khi dùng điện trở nối lên nguồn. SERR#
    System Error là để báo lỗi parity của địa chỉ, lỗi parity của dữ kiện trong "Special Cycle", hoặc bất kỳ lỗi nào của hệ thống. SERR# được dùng chung cho tất cả các thiết bị PCI và được điều khiển bởi tín hiệu có cực thu hở (Nó được hạ xuống thấp hoặc tri-states bởi thiết bị PCI, nhưng không bao giờ nâng lên mức cao). Nó được bật đồng bộ với xung, nhưng khi tắc sẽ không đồng bộ qua một điện trở nối lên nguồn. 4.6 Chân Ngắt. (interrupt Pins) INTA#, INTB#, INTC#, INTD#
    Interrupt được hạ thấp bởi các thiết bị PCI yêu cầu được chú ý từ các chương trình phần mềm điều khiển thiết bị. Nó được xác định như "level sensitive (mức nhạy)" và được điều khiển xuống mức thấp với các cực thu hở. Một khi được bật, tín hiệu INTx# sẽ tiếp tục được giữ ở trạng thái bật bởi thiết bị PCI cho tới khi phần chương trình phần mềm xóa đi. Một thiết bị PCI mà chỉ chứa một chức năng sẽ chỉ dùng INTA#. Thiết bị nhiều chức năng (như tổng hợp LAN/modem) có thể dùng nhiều INTx#. Thiết bị một chức năng dùng INTA#. Thiết bị 2 chức năng dùng INTA# và INTB#, v.v... Tất cả bộ điều khiển thiết bị PCI phải có khả năng dùng chung một mức ngắt bằng cách mắc chung với các thiết bị khác dùng véc-tơ ngắt. 4.7 Chân Hộ Trợ Bộ chứa (Cache Support Pins) (Optional) Các chân này được cấu trúc để cho phép bộ nhớ được có thể dấu đi được thực hiện trên mạng PCI. Nó truyền thông tin tình trạng giữa cấu nối/bộ nhớ (bridge/cache) và bộ tớ của yêu cầu bộ nhớ.  4.8 Các Chân Phụ (Ad***ional Pins) PRSNT[1:2]#
    Các tín hiệu Present được dùng cho 2 mục đích: 1) để chỉ báo rằng có một thẻ mạch hiện diện, và 2) để chỉ báo nguồn điện cần cho thẻ mạch. Các tín hiệu này nối cố định xuống ground hay để hở trên thẻ mạch. Bản tóm tắc sau cho biết mã của các tín hiệu này.
    PRSNT1#
    PRSNT2#
    Add-in Board Configuration
    Open
    Open
    No board present
    Ground
    Open
    Board present, 25W maximum
    Open
    Ground
    Board present, 15W maximum
    Ground
    Ground
    Board present, 7.5W maximum
    CLKRUN#
    Clock Running là một tín hiệu tùy chọn được dùng để dễ dàng dừng tín hiệu xung với mục đích tiết kiệm điện. CLKRUN# được dùng trong các ứng dụng thiết bị di động, khi mà việc tiết kiệm điện là rất quan trọng. Nó không được xác định trong bộ cắm thường. CLKRUN# được điều khiển như tín hiệu cực thu hở. Hệ thống PCI đưa CLKRUN# xuống mức thấp trong điều kiện làm việc bình thường. Tín hiệu CLKRUN# được buông ra ở trạng thái floating và nhờ một điện trở nối lên nguồn mức cao như là lệnh dừng xung cho từng thiết bị PCI. Sau đó thiết bị có thể đưa CLKRUN# xuống thấp để báo cho hệ thống là nó tiếp tục tín hiệu xung, hoặc vẫn cho phép CLKRUN# giữ ở mức cao để bảo đảm rằng xung có thể dừng. Nếu xung CLK đã dừng và thiết bị PCI muốn trở lại hoạt động bình thường, nó đưa CLKRUN# xuống thấp như là lệnh báo rằng hệ thống hãy bắt đầu cấp tín hiệu xung CLK trở lại. M66N
    Tín hiệu 66MHz được để hở trên thẻ mạch hộ trở xung CLK 66MHz, và được nối ground ngay trên thẻ mạch khi thẻ mạch này chỉ hoạt động ở 33MHz. Hệ thống 66 MHz nhờ điện trở nối tín hiệu này lên nguồn để dò xem thẻ mạch có khả năng hoạt động ở 66 MHz. Nếu tín hiệu này ở mức cao thì tần số xung nhịp cao nhất cấp cho thẻ là 66 MHz. Nếu ở mức thấp thì tần số xung cao nhất chỉ là 33 MHz. Hệ thống 33 MHz nối tín hiệu này xuống ground. Hoạt động ở 66 MHz chỉ xảy ra khi cả hai hệ thống và thẻ hộ trở nó. 4.9 Các Chân Mạng 64-bít mở rộng (64-bit Bus Extension Pins - Optional) AD[63:32]
    Ðịa chỉ và dữ kiện được nhập chung chân và cung cấp thêm 32 bít khi hoạt động trong môi trường mạnh 64 bít. Trong giai đoạn truyền dữ kiện các bít này truyền thêm 32-bít dữ kiện khi REQ64# và ACK64# được bật. Trong giai đoạn gởi địa chỉ thì địa chỉ được gởi đi làm 2 lần. C/BE[7:4]#
    Bus Command và Byte Enables được nhập chung cùng chân và cung cấp thêm 4 bít khi hoạt động trong môi trường mạng 64 bít. Trong giai đoạn truyền dữ kiện các bít này truyền byte enable cho 32 bít lớn của mạng dữ kiện (AD[63:32]) khi cả hai REQ64# và ACK64# được bật. Trong giai đoạn gởi địa chỉ, khi trong giai đoạn 2 chu kỳ địa chỉ và REQ64 được bật thì các bít này truyền lệnh của mạng. REQ64#
    Request 64: Lệnh truyền 64 được bật xuống thấp bởi bộ chủ để báo nó muốn truyền 64 bít. Tín hiệu này được điều khiển cùng thời vói FRAME#. ACK64#
    Acknowledge 64: được bật xuống thấp bởi bộ tớ như là để báo rằng nó đã giãi mã được địa chỉ và có khả năng hoạt động truyền tải 64 bít. PAR64
    Parity Upper DWORD là parity chẳn bảo vệ AD[63:32] và C/BE[7:4]#
    4.10 JTAG/Boudary Scan Pins (Optional)
    Thiết bị PCI có thể hộ trở JTAG/Boudary Scan để xác định trong tiêu chuẩn IEEE 1149.1, Test Access Port và Boundary Scan Architecture. JTAG cho phép các linh kiện gắn trên thẻ mạnh được thử nghiệm một các chu đáo bởi dùng các dạng quét thử nghiệm.  Các tín hiệu sau được xác định bởi tiêu chuẩn JTAG. Nếu JTAG không được thiết trí trên thẻ mạch thì tín hiệu TDI và TDO phải được nối tới các đường quét dành riêng. TCK
    Test Clock
    TDI
    Test Data Input
    TDO
    Test Data Output
    TMS
    Test Mode Select
    TRST#
    Test Reset
  8. txnghia

    txnghia Thành viên mới

    Tham gia ngày:
    13/10/2003
    Bài viết:
    216
    Đã được thích:
    0
    5.0 Biểu Ðồ Thời Gian Mạng PCI
    5.1 Ðọc Biểu đồ dưới đây mô tả bước đọc trên mạng PCI
    Sau đây là phần mô tả chu kỳ đọc:
    Chu kỳ 1 - Mạng đứng lặng.
    Chu kỳ 2 - Bộ Chủ bật địa chỉ hợp lệ và gởi lệnh C/BE. Ðây là giai đoạn gởi địa chỉ.
    Chu kỳ 3 - Bộ chủ bật tín hiệu địa chỉ sang trạng thái tri-states để chuẩn bị cho bộ tới gởi dữ kiện cần đọc. Bộ chủ bây giờ điều khiển các lệnh thông tin về byte dữ kiện trên tín hiệu C/BE#. Bộ chủ bật IRDY# xuống thấp báo nó đã sẵn sàng bắt giữ dữ kiện muốn đọc. Bộ tớ bật DEVSEL# xuống thấp (trong chu kỳ này hay chu kỳ tới) như thông báo nó đã giãi mã được địa chỉ. Bộ chủ đưa TRDY# lên mức cao báo nó chưa sẵn sàng cung cấp dữ kiện muốn đọc.
    Chu kỳ 4 - Bộ tớ cung cấp dữ kiện hợp lệ và bật TRDY# xuống thấp báo cho bộ chủ biết dữ kiện hợp lệ. IRDY# và TRDY# ở mức thấp trong lúc chu kỳ này thì một dữ kiện được truyền. Bộ chủ bắt giữ lấy dữ kiện trên mạng. Ðây là giai đoạn truyền dữ kiện đầu tiên.
    Chu kỳ 5 - Bộ tớ tắt TDRY# lên cao báo nó cần thêm thời gian để chuẩn bị cho dữ kiện truyền kế.
    Chu kỳ 6- Giai đoạn truyền dữ kiện thứ 2 xảy ra khi cả hai IRDY# và TRDY# ở mức thấp. Bộ chủ bắt giữ lấy dữ kiện cung cấp bởi bộ tớ.
    Chu kỳ 7 - Bộ tớ cung cấp dữ kiện hợp lệ cho giai đoạn truyền dữ kiện thứ ba, nhưng bộ chủ báo nó chưa chuẩn bị bằng các tắt IRDY# lên cao.
    Chu kỳ 8 - Bộ chủ bật trở lại IRDY# xuống thấp để hoàn tất giai đoạn truyền dữ kiện thứ ba. Bộ chủ giữ lấy dữ kiện cung cấp bởi bộ tớ. Bộ chủ đưa FRAME# lên cao báo đây là giai đoạn truyền dữ kiện cuối cùng. (Bộ chủ chấm dứt).
    Chy kỳ 9 - FRAME#, AD, và C/BE# được đưa về trạng thái tri-states, IRDY#, TRDY#, DEVSEL# được tắt lên mức cao một chu kỳ trước khi trở thành trạng thái tri-states.  
    5.2 Ghi
    Biểu đồ dưới đây mô tả bước ghi trên mạng PCI
    Sau đây là phần mô tả chu kỳ ghi:
    Chu kỳ 1 - Mạng đứng lặng.
    Chu kỳ 2 - Bộ Chủ bật địa chỉ hợp lệ và gởi lệnh C/BE. Ðây là giai đoạn gởi địa chỉ.
    Chu kỳ 3 - Bộ chủ gởi ra dữ kiện hợp lệ và tín hiệu về byte dữ kiện. Bộ chủ bật IRDY# xuống thấp báo nó đã gởi ra dữ kiện hợp lệ. Bộ tớ bật DEVSEL# xuống thấp như thông báo nó đã giãi mã được địa chỉ (bộ tớ có thể không bật TRDY# trước DEVSEL#). Bộ tớ bật TRDY# xuống thấp báo nó đã sẵn sàng bắt giữ dữ kiện. Giai đoạn truyền dữ kiện đầu tiên khi cả hai IRDY# và TRDY# ở mức thấp. Bộ tớ bắt giữ dữ kiện ghi.
    Chu kỳ 4 - Bộ chủ cung cấp dữ kiện hợp lệ mới và dữ kiện byte. Giai đoạn truyền dữ kiện thứ hai xảy ra khi IRDY# và TRDY# ở mức thấp. Bộ tớ bắt giữ dữ kiện ghi.
    Chu kỳ 5 - Bộ tớ tắt IDRY# lên cao báo nó chưa sẵn sàng cung cấp dữ kiện kế. Bộ tớ tắt TRDY# báo nó chưa chuẩn bị bắt giữ giữ kiện kế. Chu kỳ 6- Bộ chủ cung cấp dữ kiện hợp lệ kế trên mạng và bật IRDY# xuống thấp. Bộ chủ đưa FRAME# lên mức cao báo đây là gia đoạn truyền dữ kiện sau cùng. (Bộ chủ chấm dứt). Bộ tớ vẫn chưa chuẩn bị và giữ TRDY# ở mức cao.
    Chu kỳ 7 - Bộ tớ vẫn chưa chuẩn bị và giữ TRDY# ở mức cao.
    Chu kỳ 8 - Bộ tó đã chuẩn bị xong và bật TRDY# xuống thấp. Giai đoạn truyền dữ kiện thứ ba xảy ra khi IRDY# và TRDY# ở mức thấp. Bộ tớ bắt giữ dữ kiện ghi.
    Chy kỳ 9 - FRAME#, AD, và C/BE# được đưa về trạng thái tri-states, IRDY#, TRDY#, DEVSEL# được tắt lên mức cao một chu kỳ trước khi trở thành trạng thái tri-states.  
    6.0 Các chân của bộ cắm PCI Bảng sau mô tả chân cho bộ cắm PCI. Ðặc điểm xác định 2 loại bộ cắm có thể được thiết kế cho mạch điện hệ thống: một cho thiết kế với mức tín hiệu 5 vôn, và một cho thiết kế với mức tín hiệu 3.3 vôn. Thêm vào, hệ thống PCI có thể thiết kế theo bộ cắm 32 bít hoặc 64 bít.
    Hầu hết các mạng PCI chỉ được thiết kế với bộ cắm 32 bít, gồm chân 1 đến chân 62. Các hệ thống cao cấp hộ trở 64-bít thiết kế với PCI đầy đủ gồm chân 1 đến chân 94. Ba loại mạch điện có thể được thiết kế: "5 vôn" có chốt khóa ở chân 50 và 51 để nó được cắm vào hệ thống bộ cắm 5 vôn. "3.3 vôn" có chốt khóa ở chân 12 và 13 cho phép cắm vào hệ thống 3.3 vôn. "Ða năng" có cả 2 chốt khóa trên và có thể cắm vào hệ 5 vôn hay 3.3 vôn. Pin
    5V System Environment
     
    Pin
    3.3V System Environment
     
    Comments
    Side B
    Side A
     
    Side B
    Side A
     
    1
    -12V
    TRST#
     
    1
    -12V
    TRST#
     
    32-bit start
    2
    TCK
    +12V
     
    2
    TCK
    +12V
     
     
    3
    Ground
    TMS
     
    3
    Ground
    TMS
     
     
    4
    TDO
    TDI
     
    4
    TDO
    TDI
     
     
    5
    +5V
    +5V
     
    5
    +5V
    +5V
     
     
    6
    +5V
    INTA#
     
    6
    +5V
    INTA#
     
     
    7
    INTB#
    INTC#
     
    7
    INTB#
    INTC#
     
     
    8
    INTD#
    +5V
     
    8
    INTD#
    +5V
     
     
    9
    PRSNT1#
    Reserved
     
    9
    PRSNT1#
    Reserved
     
     
    10
    Reserved
    +5V (I/O)
     
    10
    Reserved
    +3.3V (I/O)
     
     
    11
    PRSNT2#
    Reserved
     
    11
    PRSNT2#
    Reserved
     
     
    12
    Ground
    Ground
     
    12
    Connector Key
     
    3.3V key
    13
    Ground
    Ground
     
    13
    Connector Key
     
    3.3V key
    14
    Reserved
    Reserved
     
    14
    Reserved
    Reserved
     
     
    15
    Ground
    RST#
     
    15
    Ground
    RST#
     
     
    16
    CLK
    +5V (I/O)
     
    16
    CLK
    +3.3V (I/O)
     
     
    17
    Ground
    GNT#
     
    17
    Ground
    GNT#
     
     
    18
    REQ#
    Ground
     
    18
    REQ#
    Ground
     
     
    19
    +5V (I/O)
    Reserved
     
    19
    +3.3V (I/O)
    Reserved
     
     
    20
    AD[31]
    AD[30]
     
    20
    AD[31]
    AD[30]
     
     
    21
    AD[29]
    +3.3V
     
    21
    AD[29]
    +3.3V
     
     
    22
    Ground
    AD[28]
     
    22
    Ground
    AD[28]
     
     
    23
    AD[27]
    AD[26]
     
    23
    AD[27]
    AD[26]
     
     
    24
    AD[25]
    Ground
     
    24
    AD[25]
    Ground
     
     
    25
    +3.3V
    AD[24]
     
    25
    +3.3V
    AD[24]
     
     
    26
    C/BE[3]#
    IDSEL
     
    26
    C/BE[3]#
    IDSEL
     
     
    27
    AD[23]
    +3.3V
     
    27
    AD[23]
    +3.3V
     
     
    28
    Ground
    AD[22]
     
    28
    Ground
    AD[22]
     
     
    29
    AD[21]
    AD[20]
     
    29
    AD[21]
    AD[20]
     
     
    30
    AD[19]
    Ground
     
    30
    AD[19]
    Ground
     
     
    31
    +3.3V
    AD[18]
     
    31
    +3.3V
    AD[18]
     
     
    32
    AD[17]
    AD[16]
     
    32
    AD[17]
    AD[16]
     
     
    33
    C/BE[2]#
    +3.3V
     
    33
    C/BE[2]#
    +3.3V
     
     
    34
    Ground
    FRAME#
     
    34
    Ground
    FRAME#
     
     
    35
    IRDY#
    Ground
     
    35
    IRDY#
    Ground
     
     
    36
    +3.3V
    TRDY#
     
    36
    +3.3V
    TRDY#
     
     
    37
    DEVSEL#
    Ground
     
    37
    DEVSEL#
    Ground
     
     
    38
    Ground
    STOP#
     
    38
    Ground
    STOP#
     
     
    39
    LOCK#
    3.3V
     
    39
    LOCK#
    3.3V
     
     
    40
    PERR#
    SDONE
     
    40
    PERR#
    SDONE
     
     
    41
    +3.3V
    SBO#
     
    41
    +3.3V
    SBO#
     
     
    42
    SERR#
    Ground
     
    42
    SERR#
    Ground
     
     
    43
    +3.3V
    PAR
     
    43
    +3.3V
    PAR
     
     
    44
    C/BE[1]#
    AD[15]
     
    44
    C/BE[1]#
    AD[15]
     
     
    45
    AD[14]
    +3.3V
     
    45
    AD[14]
    +3.3V
     
     
    46
    Ground
    AD[13]
     
    46
    Ground
    AD[13]
     
     
    47
    AD[12]
    AD[11]
     
    47
    AD[12]
    AD[11]
     
     
    48
    AD[10]
    Ground
     
    48
    AD[10]
    Ground
     
     
    49
    Ground
    AD[09]
     
    49
    M66EN
    AD[09]
     
     
    50
    Connector Key
     
    50
    Ground
    Ground
     
    5V key
    51
    Connector Key
     
    51
    Ground
    Ground
     
    5V key
    52
    AD[08]
    C/BE[0]#
     
    52
    AD[08]
    C/BE[0]#
     
     
    53
    AD[07]
    +3.3V
     
    53
    AD[07]
    +3.3V
     
     
    54
    +3.3V
    AD[06]
     
    54
    +3.3V
    AD[06]
     
     
    55
    AD[05]
    AD[04]
     
    55
    AD[05]
    AD[04]
     
     
    56
    AD[03]
    Ground
     
    56
    AD[03]
    Ground
     
     
    57
    Ground
    AD[02]
     
    57
    Ground
    AD[02]
     
     
    58
    AD[01]
    AD[00]
     
    58
    AD[01]
    AD[00]
     
     
    59
    +5V (I/O)
    +5V (I/O)
     
    59
    +3.3V (I/O)
    +3.3V (I/O)
     
     
    60
    ACK64#
    REQ64#
     
    60
    ACK64#
    REQ64#
     
     
    61
    +5V
    +5V
     
    61
    +5V
    +5V
     
     
    62
    +5V
    +5V
     
    62
    +5V
    +5V
     
    32-bit end
     
    Connector Key
     
     
    Connector Key
     
    64-bit spacer
     
    Connector Key
     
     
    Connector Key
     
    64-bit spacer
    63
    Reserved
    Ground
     
    63
    Reserved
    Ground
     
    64-bit start
    64
    Ground
    C/BE[7]#
     
    64
    Ground
    C/BE[7]#
     
     
    65
    C/BE[6]#
    C/BE[5]#
     
    65
    C/BE[6]#
    C/BE[5]#
     
     
    66
    C/BE[4]#
    +5V (I/O)
     
    66
    C/BE[4]#
    +3.3V (I/O)
     
     
    67
    Ground
    PAR64
     
    67
    Ground
    PAR64
     
     
    68
    AD[63]
    AD[62]
     
    68
    AD[63]
    AD[62]
     
     
    69
    AD[61]
    Ground
     
    69
    AD[61]
    Ground
     
     
    70
    +5V (I/O)
    AD[60]
     
    70
    +3.3V (I/O)
    AD[60]
     
     
    71
    AD[59]
    AD[58]
     
    71
    AD[59]
    AD[58]
     
     
    72
    AD[57]
    Ground
     
    72
    AD[57]
    Ground
     
     
    73
    Ground
    AD[56]
     
    73
    Ground
    AD[56]
     
     
    74
    AD[55]
    AD[54]
     
    74
    AD[55]
    AD[54]
     
     
    75
    AD[53]
    +5V (I/O)
     
    75
    AD[53]
    +3.3V (I/O)
     
     
    76
    Ground
    AD[52]
     
    76
    Ground
    AD[52]
     
     
    77
    AD[51]
    AD[50]
     
    77
    AD[51]
    AD[50]
     
     
    78
    AD[49]
    Ground
     
    78
    AD[49]
    Ground
     
     
    79
    +5V (I/O)
    AD[48]
     
    79
    +3.3V (I/O)
    AD[48]
     
     
    80
    AD[47]
    AD[46]
     
    80
    AD[47]
    AD[46]
     
     
    81
    AD[45]
    Ground
     
    81
    AD[45]
    Ground
     
     
    82
    Ground
    AD[44]
     
    82
    Ground
    AD[44]
     
     
    83
    AD[43]
    AD[42]
     
    83
    AD[43]
    AD[42]
     
     
    84
    AD[41]
    +5V (I/O)
     
    84
    AD[41]
    +3.3V (I/O)
     
     
    85
    Ground
    AD[40]
     
    85
    Ground
    AD[40]
     
     
    86
    AD[39]
    AD[38]
     
    86
    AD[39]
    AD[38]
     
     
    87
    AD[37]
    Ground
     
    87
    AD[37]
    Ground
     
     
    88
    +5V (I/O)
    AD[36]
     
    88
    +3.3V (I/O)
    AD[36]
     
     
    89
    AD[35]
    AD[34]
     
    89
    AD[35]
    AD[34]
     
     
    90
    AD[33]
    Ground
     
    90
    AD[33]
    Ground
     
     
    91
    Ground
    AD[32]
     
    91
    Ground
    AD[32]
     
     
    92
    Reserved
    Reserved
     
    92
    Reserved
    Reserved
     
     
    93
    Reserved
    Ground
     
    93
    Reserved
    Ground
     
     
    94
    Ground
    Reserved
     
    94
    Ground
    Reserved
     
    64-bit end

  9. TuLa

    TuLa Thành viên quen thuộc

    Tham gia ngày:
    24/10/2002
    Bài viết:
    413
    Đã được thích:
    0
    Bài của bác Nghĩa rất hay, bác có thể cho thêm phần thiết kế mạch giao tiếp và lập trình giao tiếp cụ thể không nhỉ (nếu không thì chỉ cần những nguyên tắc chính, điểm mấu chốt thôi) ! Lý thuyết về giao tiếp qua cổng song song của PC thì rất rối rắm, thế nhưng thực tế thì đơn giản đến bất ngờ; do vậy tớ nghĩ là PCI cũng thế nhưng chưa có phương tiện và thời giờ để thử nghiệm; các bạn đang làm về nó thực nghiệm rồi chỉ bảo cho anh em với nhá. Cách làm như của bác QMK cũng hay nhưng tớ thấy quá lệ thuộc vào những gì họ mang cho và khó mà hiểu biết hay chủ động thực sự về công nghệ và giao thức giao tiếp, nếu thiết kế một hệ độc lập (mạch ngoài) chưa hỗ trợ sẵn giao thức giao tiếp PCI để giao tiếp với PCI của PC thì chắc là cứng => Vấn đề là làm sao mà tạo ra các thủ tục driver đó: không chỉ trên Win mà có thể viết ngay trên DOS hay Linux... (hì... hóc quá).
    Các bạn cũng có thể đến trang Home Page của tớ để download quyển sách điện tử Hardware Book (dạng Winhelp) về để tham khảo. Ở đó trong phần PCI có mô tả khã chuẩn xác và chi tiết về "Công nghệ kết nối PCI" (trình bầy về ngữ nghĩa các tín hiệu...) và "Dầu kết nối PCI" (mô tả chi tiết về biểu đồ chân của bus và mô tả ngữ nghĩa, trị số điện áp cũng như giản đồ thời gian các thao tác giao tiếp căn bản... (như bác Nghĩa đã trình bầy).
    http://tula.alturl.com
    http://tula.dk3.com
  10. Quen_mang_kinh

    Quen_mang_kinh Thành viên quen thuộc

    Tham gia ngày:
    23/05/2002
    Bài viết:
    542
    Đã được thích:
    1
    Về lý thuyết PCI tuy có khó hơn ISA một chút nhưng đọc mãi cũng phải hiểu.
    Vấn đề kỹ thuật không phải quá khó nhưng vấn đề công nghệ lại là cả một vấn đề.
    Thứ nhất để làm việc ở 33MHz các IC bán trên thị trường hầu như là không thể hoạt động. Các bạn đọc thử tài liệu xem các loại 74LS hay HC hoạt động đến tần số nào. Cũng phải mua linh kiện ở nước ngoài thôi.
    Một IC PCI làm tất cả các công việc liên quan đến IO cho ta như giải mã địa chỉ... tất nhiên là dễ nối với ngoại vi rồi.
    Thứ nhì công nghệ mạch in. Bạn hãy thiết kế thật cẩn thận nếu không muốn cháy mainboard của bạn.
    Thứ 3 phần lập trình, ai đã nghiên cứu qua DDK của MS cũng thấy để viết driver cho PCI cần công sức như thế nào.
    Tất cả kiến thức này nếu bạn là một sinh viên trong một học kỳ liệu có làm nổi không nếu bạn bắt đầu từ đầu.
    Tuy nhiên nếu bạn chỉ cần viết một chương trình nhỏ trên máy tính để nhấp nháy một con led trên card PCI thì có một cách kiểu "không chính qui" có thể làm được. Nhưng để truyền dữ liệu chẳng hạn thì sự khác biệt lớn lắm đấy. Rất tiếc là tui đang chọn USB nên không thể bàn sâu hơn về PCI được.

Chia sẻ trang này