Xác định, Thiết lập phạm vi & Quản lý các quy tắc thiết kế PCB

Altium Training

Altium Essentials: PCB Design Rules Creation

This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.

What approach do I use for defining design constraints?

Altium Designer gợi ý hai cách tiếp cận riêng biệt để xác định các ràng buộc thiết kế: hộp thoại PCB Rule and Constraints Editor (được mô tả trên trang này) và Constraint Manager.

Hộp thoại Constraint Manager chỉ khả dụng trong dự án thiết kế PCB nếu tùy chọn Constraint Management đã được bật trong Create Project dialog khi dự án này được tạo. Lưu ý rằng:

  • Nếu Constraint Manager được bật cho dự án PCB, thì hộp thoại PCB Rule and Constraints Editor not khả dụng trong trình biên tập PCB.

  • Nếu Constraint Manager not được bật cho dự án PCB, thì chỉ có thể sử dụng các cách trước đây để xác định ràng buộc thiết kế (sử dụng design directives và hộp thoại PCB Rule and Constraints Editor ).

Để kiểm tra nhanh cách tiếp cận quản lý ràng buộc thiết kế nào đang được dùng trong dự án PCB hiện tại, hãy mở tài liệu PCB của dự án, nhấp vào menu chính Design và kiểm tra lệnh nào khả dụng:

  • Constraint ManagerConstraint Manager được sử dụng cho dự án này.

  • Rules – hộp thoại PCB Rule and Constraints Editor được sử dụng cho dự án này.

PCB Editor sử dụng khái niệm Design Rules để xác định các yêu cầu của thiết kế. Các yêu cầu thiết kế được áp dụng bằng cách tiếp cận tinh gọn - target these objects and apply those requirements - . Tập hợp các quy tắc thiết kế tạo thành một “bộ chỉ dẫn” để PCB editor tuân theo. Chúng bao quát mọi khía cạnh của thiết kế – từ độ rộng đi dây, khoảng hở, kiểu kết nối plane, kiểu via khi đi dây, v.v., và nhiều quy tắc có thể được giám sát theo thời gian thực bởi Design Rule Checker (DRC) trực tuyến; bạn cũng có thể chạy kiểm tra hàng loạt bất kỳ lúc nào để tạo báo cáo DRC. Các quy tắc được định nghĩa độc lập với các đối tượng.

Các quy tắc thiết kế nhắm tới những đối tượng cụ thể và được áp dụng theo thứ bậc; ví dụ, có một quy tắc clearance cho toàn bộ bo mạch, sau đó có thể là một quy tắc clearance cho một lớp net, rồi có thể là một quy tắc khác cho một pad trong lớp đó. Dùng độ ưu tiên của quy tắc và phạm vi áp dụng, PCB editor có thể xác định quy tắc nào áp dụng cho từng đối tượng trong thiết kế.

Một quy tắc nhắm tới các đối tượng bằng query language dựa trên từ khóa, có thể từ các định danh rộng như NetClass hoặc All, cho đến một truy vấn được xác định chặt chẽ, nhắm chính xác vào một yêu cầu thiết kế khó và rất đặc thù theo tình huống.

Với một tập quy tắc thiết kế được xác định tốt, bạn có thể hoàn thành thành công các thiết kế bo mạch với những yêu cầu thiết kế đa dạng và thường rất khắt khe. Ngoài ra, vì PCB Editor được vận hành theo quy tắc, việc dành thời gian thiết lập các quy tắc ngay từ đầu quá trình thiết kế sẽ giúp bạn tập trung hiệu quả vào công việc thiết kế, với sự yên tâm rằng hệ thống quy tắc đang hoạt động tích cực để đảm bảo thành công.

Để biết thông tin chi tiết về việc kiểm tra các quy tắc thiết kế đã định nghĩa, xem Design Rule Checking (DRC).

Các nguyên tắc cơ bản của hệ thống PCB Rules

Hệ thống quy tắc được tích hợp trong PCB editor của phần mềm có một số đặc điểm nền tảng giúp nó khác biệt với phần lớn các hệ thống quy tắc thiết kế khác được dùng trong các môi trường chỉnh sửa PCB khác:

  • Rules are separate from the objects – một quy tắc không được thêm như một thuộc tính của đối tượng, mà được thêm vào danh sách quy tắc tổng thể rồi được gán phạm vi để áp dụng cho đối tượng đó. Điều này cho phép các quy tắc được áp dụng cho nhiều đối tượng và được sửa đổi hoặc áp dụng cho các đối tượng khác, vốn sẽ rất bất tiện nếu phải thay đổi thuộc tính quy tắc ở cấp từng đối tượng riêng lẻ.

  • Rules are targeted (scoped) by writing a query – thay vì dùng một tập phạm vi quy tắc cố định, được định nghĩa sẵn, hệ thống sử dụng một cơ chế truy vấn linh hoạt để xác định các đối tượng mà quy tắc sẽ áp dụng. Điều này mang lại khả năng kiểm soát chính xác đối tượng đích của từng quy tắc thiết kế.

  • Rules for any design situation – có thể định nghĩa nhiều quy tắc cùng loại và nhắm tới các tập đối tượng khác nhau, cho phép kiểm soát hoàn toàn việc xác định các ràng buộc của bo mạch. Ví dụ, có thể định nghĩa các quy tắc độ rộng khác nhau để đi dây các net với độ rộng khác nhau trên các lớp khác nhau.

  • Each rule has a priority – bất kỳ đối tượng thiết kế nào cũng có thể là đích của nhiều quy tắc cùng loại, đáp ứng cả các tình huống tổng quát lẫn cụ thể hơn. Để giải quyết xung đột quy tắc, hệ thống dùng độ ưu tiên của quy tắc. Hệ thống chỉ cần duyệt các quy tắc từ ưu tiên cao xuống thấp và chọn quy tắc đầu tiên có biểu thức phạm vi khớp với đối tượng đang được kiểm tra.

  • There are two types of rules – các quy tắc đơn ngôi (các quy tắc xác định hành vi yêu cầu của một đối tượng) và các quy tắc nhị nguyên (các quy tắc xác định tương tác giữa hai đối tượng).

Các quy tắc thiết kế trong Altium Designer được định nghĩa và quản lý từ trong hộp thoại PCB Rules and Constraints Editor như được mô tả trên trang này. Ngoài ra, như một cách tiếp cận thay thế để quản lý các quy tắc ràng buộc thiết kế, có thể sử dụng Constraints Editor dạng tài liệu ([Constraints] document tab).

 
 
 
 
 

Định nghĩa và quản lý các quy tắc thiết kế

Hộp thoại PCB Rules and Constraints Editor được truy cập bằng cách chọn lệnh Design » Rules từ các menu chính.

Lệnh Rules không có trong menu Design sao? Hãy kiểm tra xem hộp thoại PCB Rules and Constraints Editor có khả dụng hay không – tìm hiểu thêm.

Hộp thoại PCB Rules and Constraints Editor có hai phần:

  1. Cây thư mục bên trái liệt kê các danh mục quy tắc khác nhau. Mở rộng một danh mục để hiển thị các loại quy tắc riêng lẻ hiện có. Mở rộng một loại quy tắc để hiển thị tất cả các quy tắc thuộc loại đó hiện đang được định nghĩa.

    Tham khảo trang PCB Design Rule Types và các trang con của nó để biết thêm thông tin về các loại quy tắc hiện có và các ràng buộc tương ứng.

  2. Bên phải hộp thoại hiển thị thông tin liên quan đến mục hiện đang được chọn trong cây thư mục – có thể là phần tóm tắt các quy tắc đã định nghĩa của loại quy tắc hoặc danh mục đã chọn, tất cả các quy tắc đã định nghĩa cho toàn bộ hệ thống, hoặc, nếu một quy tắc cụ thể được chọn, là các ràng buộc của quy tắc đó.

    • Nhấp vào thư mục gốc để truy cập danh sách tóm tắt trong vùng chỉnh sửa chính của hộp thoại, liệt kê tất cả các quy tắc cụ thể đã được định nghĩa cho mọi loại quy tắc thiết kế trong tất cả các danh mục.

    • Nhấp vào thư mục danh mục để truy cập danh sách tóm tắt của tất cả các quy tắc cụ thể đã được định nghĩa cho mọi loại quy tắc thiết kế liên quan của danh mục đó.

    • Nhấp vào thư mục loại quy tắc để truy cập danh sách tóm tắt của tất cả các quy tắc cụ thể đã được định nghĩa cho loại đó.

    Trong danh sách tóm tắt, mỗi quy tắc được liệt kê theo các mục sau:

    • Name - tên của quy tắc.

    • Priority - độ ưu tiên hiện tại của quy tắc.

    • Enabled - quy tắc hiện đang được bật hay tắt (nhấp để chuyển đổi trạng thái này). Quy tắc bị tắt sẽ được làm mờ trong danh sách tóm tắt.

    • Type - loại quy tắc.

    • Category - danh mục quy tắc mà nó thuộc về.

    • Scope - phạm vi của quy tắc (tức là nó áp dụng cho đối tượng nào).

    • Attributes - các thuộc tính ràng buộc đã được định nghĩa cho quy tắc.

    Nhấp vào mục của một quy tắc cụ thể trong khung cây thư mục (hoặc nhấp đúp vào mục của nó trong danh sách tóm tắt) để truy cập các điều khiển quản lý định nghĩa của quy tắc đó:

    • Name - tên hiện tại của quy tắc. Có thể thay đổi khi cần.

    • Comment - trường này hiển thị mọi ghi chú đã được thêm cho quy tắc, ví dụ như một mô tả có ý nghĩa về mục đích sử dụng của quy tắc.

    • Unique ID - định danh duy nhất của quy tắc. Mỗi quy tắc tự nó cũng là một đối tượng thiết kế, và do đó là một phần dữ liệu hữu hình. Việc sử dụng ID đảm bảo tính duy nhất. Unique ID đặc biệt phát huy tác dụng với một quy tắc được tạo trong miền schematic. Khi thêm các tham số quy tắc thiết kế vào các đối tượng trên schematic, mỗi tham số quy tắc sẽ được gán một ID duy nhất. Các ID tương tự cũng được gán cho các quy tắc thiết kế tương ứng được tạo trong PCB. Với Unique ID này, các ràng buộc của một quy tắc có thể được chỉnh sửa ở phía schematic hoặc phía PCB, và các thay đổi sẽ được đẩy qua khi đồng bộ hóa.

    • Test Queries - nhấp để mở hộp thoại Test Queries Result dialog, nơi hiển thị số lượng đối tượng bị ảnh hưởng bởi quy tắc có tính đến các chuyên biệt hóa quy tắc mà bạn đã xác định. Điều này cho phép bạn biết liệu có đối tượng nào phản hồi truy vấn hay không, đồng thời kiểm tra xem tập đối tượng bị ảnh hưởng bởi các bộ lọc và quy tắc có đúng như mong muốn hay không. 

    • Rule Scoping Controls - vùng này cung cấp các điều khiển để xác định phạm vi của quy tắc xét theo các đối tượng mà nó áp dụng cho hoặc giữa các đối tượng.

    • Constraints - vùng này của hộp thoại hiển thị các ràng buộc áp dụng cho loại quy tắc đang được chỉnh sửa. Hãy dùng các điều khiển khác nhau để cấu hình các ràng buộc này theo yêu cầu. Nhấn F1 phía trên vùng ràng buộc để mở trang dành cho loại quy tắc đó trong khu vực tài liệu PCB Design Rule Types.

Hộp thoại PCB Rules and Constraints Editor – trung tâm điều khiển để quản lý các quy tắc thiết kế.
Hộp thoại PCB Rules and Constraints Editor – trung tâm điều khiển để quản lý các quy tắc thiết kế.

  • Công cụ tìm kiếm của hộp thoại cho phép sử dụng nó ở chế độ tìm kiếm đơn giản bằng cách nhập (các) từ khóa Name, Type, Category, hoặc Attribute có liên quan vào trường Search chính.

  • Nhấp vào nút Switch to Document View ở cuối hộp thoại để mở Constraints Editor, đây là một tài liệu Rules tương tác. 

Xem lại các quy tắc thiết kế

Bo mạch mới mặc định do phần mềm tạo ra sẽ bao gồm một số quy tắc không cần thiết cho mọi thiết kế, và nhiều quy tắc thiết kế khác sẽ cần được điều chỉnh để phù hợp với yêu cầu của thiết kế của bạn. Vì lý do này, việc rà soát các quy tắc thiết kế là rất quan trọng. Việc này có thể được thực hiện trong PCB Rules and Constraints Editor. Chọn Design Rules ở đầu cây danh mục bên trái, sau đó quét xuống cột Attributes để xem tất cả các quy tắc và nhanh chóng xác định những quy tắc cần điều chỉnh giá trị.

Khi bạn tạo một bo mạch mới, nó sẽ bao gồm các quy tắc thiết kế mặc định có thể không cần thiết cho thiết kế của bạn. Các quy tắc dư thừa có thể được vô hiệu hóa bằng cách nhấp vào mục Design Rules hoặc một mục danh mục cụ thể trong PCB Rules and Constraints Editor và vô hiệu hóa các quy tắc đó (bỏ chọn các ô trong cột Enabled).

Bo mạch mặc định cũng sử dụng đơn vị hệ inch. Nếu bo mạch của bạn dùng hệ mét, sẽ có nhiều giá trị quy tắc, chẳng hạn như độ mở rộng Soldermask, thay đổi từ các giá trị làm tròn như 4mil thành 0.102mm, hoặc giá trị mặc định Minimum Solder Mask Sliver sẽ đổi từ 10mil thành 0.254mm. Mặc dù chữ số nhỏ nhất đó, ví dụ 0.002mm, là không đáng kể khi tạo đầu ra, bạn vẫn có thể chỉnh sửa các thiết lập này trong các quy tắc thiết kế nếu điều đó làm bạn thấy phiền.

Khi rà soát các quy tắc thiết kế, lưu ý rằng thứ tự các cột có thể được thay đổi nếu cần.
Khi rà soát các quy tắc thiết kế, lưu ý rằng thứ tự các cột có thể được thay đổi nếu cần.

Quy tắc thiết kế mặc định

Khi một tài liệu PCB mới được tạo, nó sẽ bao gồm một số quy tắc mặc định, những quy tắc này phải tồn tại để hệ thống Design Rule Check hoạt động chính xác. Nếu một quy tắc mặc định bị xóa, nó sẽ tự động được tạo lại khi PCB Rules and Constraints Editor được đóng. Nếu có các quy tắc thiết kế mà bạn không muốn sử dụng, cách đúng để quản lý các quy tắc này là vô hiệu hóa chúng. 

Để vô hiệu hóa một quy tắc, hãy chuyển đổi tùy chọn Enable tương ứng cho quy tắc đó trong một trong các danh sách tóm tắt ở phía bên phải của hộp thoại PCB Rules and Constraints Editor. Một quy tắc bị vô hiệu hóa sẽ hiển thị ở trạng thái 'làm mờ'. Tìm hiểu thêm về việc vô hiệu hóa các quy tắc thiết kế.

Sử dụng tùy chọn Enable để vô hiệu hóa một quy tắc mà bạn không cần. Một quy tắc bị vô hiệu hóa sẽ hiển thị ở trạng thái 'làm mờ'.Sử dụng tùy chọn Enable để vô hiệu hóa một quy tắc mà bạn không cần. Một quy tắc bị vô hiệu hóa sẽ hiển thị ở trạng thái 'làm mờ'.

Các giá trị quy tắc mặc định được định nghĩa nội bộ theo mil và có thể có các giá trị không phù hợp với thiết kế của bạn. Để sử dụng các quy tắc và giá trị mặc định của riêng mình, bạn có thể:

  • tạo và sử dụng một project template, hoặc

  • tạo một tệp bo mạch trống phù hợp với các quy tắc được cấu hình theo yêu cầu của bạn, rồi sao chép bo mạch đó cho dự án mới, hoặc

  • xuất bộ quy tắc mẫu của bạn ra một tệp PCB Rule (*.RUL), sau đó nhập các quy tắc đó vào thiết kế bo mạch hiện tại. Tìm hiểu thêm về việc xuất và nhập các quy tắc thiết kế.

Nhấp nút Create Default Rules để tạo lại bộ quy tắc thiết kế mặc định cho PCB. Nếu bạn xóa các quy tắc, bạn có thể khôi phục danh sách quy tắc mặc định bằng cách nhấp nút này. Nếu một quy tắc mặc định đã được sửa đổi, thao tác này sẽ không đặt lại hoặc thay thế nó.

Tạo một quy tắc mới

Để thêm một quy tắc thiết kế mới từ trong hộp thoại PCB Rules and Constraints Editor, hãy điều hướng đến và chọn loại quy tắc cần thiết trong cây bên trái, sau đó nhấp nút New Rule bên dưới danh sách tóm tắt quy tắc, hoặc nhấp chuột phải vào loại quy tắc cần thiết rồi chọn New Rule từ menu ngữ cảnh.

Quy tắc mới sẽ được thêm vào cây thư mục và cũng sẽ xuất hiện trong danh sách tóm tắt của loại quy tắc đó. Tên quy tắc sẽ hiển thị đậm để phân biệt rằng đó là quy tắc mới và chưa được 'áp dụng'.

Ví dụ về việc tạo một quy tắc thiết kế PCB mới.
Ví dụ về việc tạo một quy tắc thiết kế PCB mới.

Khi một quy tắc mới được thêm vào, ban đầu nó sẽ được đặt một tên mặc định dựa trên loại quy tắc cụ thể. Ví dụ, nếu bạn thêm một quy tắc Clearance mới, tên mặc định sẽ là Clearance. Nếu tên mặc định này không được thay đổi, việc thêm một quy tắc mới khác cùng loại sẽ tạo ra cùng tên quy tắc đó với hậu tố số được tăng dần (tức là Clearance_1Clearance_2, v.v.).

Khi một quy tắc mới được tạo cho một loại quy tắc cụ thể, nó sẽ tự động được gán ưu tiên 1 (mức ưu tiên cao nhất). Nếu đã tồn tại các quy tắc khác cùng loại, mức ưu tiên của chúng sẽ được dịch xuống (giảm đi) một bậc tương ứng. Khi đó chúng sẽ được xem là đã sửa đổi – mặc dù có thể chúng chưa thực sự được chỉnh sửa ở mức phạm vi/ràng buộc. Vì vậy, tất cả các quy tắc hiện có cùng loại đó sẽ được hiển thị ở trạng thái đã sửa đổi (in đậm kèm dấu hoa thị).

Để truy cập các thuộc tính phạm vi và ràng buộc của quy tắc, hãy nhấp vào mục nhập của quy tắc trong khung cây thư mục hoặc nhấp đúp vào mục của nó trong danh sách tóm tắt. Cửa sổ chỉnh sửa chính của hộp thoại sẽ thay đổi để cho phép truy cập vào các điều khiển dùng để xác định các thuộc tính phạm vi và ràng buộc cho quy tắc đó.

Truy cập các điều khiển chi tiết cho quy tắc, bao gồm phạm vi và ràng buộc.
Truy cập các điều khiển chi tiết cho quy tắc, bao gồm phạm vi và ràng buộc.

Để định nghĩa đầy đủ quy tắc mới:

  • Đặt cho quy tắc một tên có ý nghĩa để dễ nhận biết.
  • Xác định phạm vi của quy tắc bằng cách chọn các tùy chọn phạm vi từ (các) danh sách thả xuống, hoặc bằng cách nhập một truy vấn (hoặc nhiều truy vấn đối với quy tắc nhị phân).
  • Thiết lập các ràng buộc của quy tắc.
  • Thiết lập mức ưu tiên của quy tắc.

Sử dụng Rule Wizard để tạo quy tắc mới

Một quy tắc mới cũng có thể được tạo bằng Design Rule Wizard. Có thể truy cập trực tiếp bằng lệnh Design » Rule Wizard hoặc bằng cách nhấp nút Rule Wizard ở cuối hộp thoại PCB Rules and Constraints Editor.

Nút Rule Wizard sẽ không khả dụng nếu có các thay đổi đối với các quy tắc hiện có mà chưa được 'áp dụng'.

Sử dụng các trang của Wizard để tạo một quy tắc thiết kế mới. Các bước như sau:

  1. Chọn loại quy tắc cần thiết và đặt cho nó một tên có ý nghĩa (và nhận xét nếu cần).
  2. Xác định phạm vi của quy tắc. Bạn sẽ có cơ hội tinh chỉnh thêm phạm vi thông qua một phiên bản của Query Builder được tích hợp trong Wizard.
  3. Thiết lập mức ưu tiên của quy tắc.
Nếu tùy chọn Launch main design rules dialog được bật ở trang cuối của Wizard, hộp thoại PCB Rules and Constraints Editor sẽ mở ra khi nhấp nút Finish. Hộp thoại này có thể được dùng để chỉnh sửa các ràng buộc cho quy tắc mới tạo của bạn.

Sử dụng Design Rule Wizard để đơn giản hóa quá trình tạo quy tắc.
Sử dụng Design Rule Wizard để đơn giản hóa quá trình tạo quy tắc.

Nhân bản một quy tắc hiện có

Để nhanh chóng tạo một bản sao giống hệt của một quy tắc hiện có, hãy sử dụng tính năng nhân bản. Có thể truy cập tính năng này theo hai cách:

  • Sử dụng cây bên trái để điều hướng đến quy tắc hiện có cần thiết, nhấp chuột phải rồi chọn Duplicate Rule từ menu ngữ cảnh.

  • Điều hướng đến loại quy tắc cụ thể trong cây bên trái, chọn quy tắc cần nhân bản trong danh sách tóm tắt bên phải, sau đó nhấp nút Duplicate Rule bên dưới danh sách.

Đơn giản hóa việc tạo các quy tắc tương tự bằng tính năng nhân bản quy tắc.
Đơn giản hóa việc tạo các quy tắc tương tự bằng tính năng nhân bản quy tắc.

Quy tắc nhân bản sẽ được đặt cùng tên với quy tắc gốc, kèm thêm một hậu tố (ví dụ: _1) để phân biệt. Định nghĩa của nó (phạm vi, ràng buộc, v.v.) sẽ giống hệt quy tắc gốc. Về mức ưu tiên, nó sẽ được gán mức ưu tiên ngay dưới mức của quy tắc gốc. Ví dụ, nếu quy tắc gốc có mức ưu tiên 1, bản sao sẽ được gán mức ưu tiên 2.

Tạo quy tắc từ PCB Filter Panel

Vì một quy tắc thiết kế được đặt phạm vi để áp dụng cho một tập đối tượng thiết kế đích, nên thường sẽ dễ hơn (và nhanh hơn) nếu trước tiên xác định các đối tượng đó rồi tạo một quy tắc thiết kế nhắm đến chúng. PCB Filter panel cung cấp khả năng tạo một quy tắc thiết kế mà phạm vi của nó sử dụng biểu thức truy vấn hiện đang được xác định trong panel. Vì vậy, thay vì phải cố hình dung biểu thức truy vấn của bạn might sẽ nhắm đến đối tượng nào, hãy dùng panel PCB Filter để kiểm tra và tinh chỉnh biểu thức truy vấn cho đến khi chỉ còn các đối tượng cần thiết được lọc ra. Sau đó, bằng cách tạo một quy tắc sử dụng biểu thức truy vấn đó, bạn sẽ chắc chắn rằng mình đang nhắm đúng tập đối tượng.

Để thêm một quy tắc thiết kế mới:

  1. Nhấp vào nút Create Rule. Hộp thoại Choose Design Rule Type sẽ xuất hiện. Hộp thoại này liệt kê từng danh mục quy tắc và loại quy tắc có sẵn trong tài liệu PCB.
  2. Chọn loại quy tắc cần tạo rồi nhấp OK (hoặc nhấp đúp trực tiếp vào mục đó).
  3. Hộp thoại PCB Rules and Constraints Editor sẽ xuất hiện. Một quy tắc thuộc loại đã chọn được tạo ra và cửa sổ chỉnh sửa chính cho quy tắc đó được hiển thị, sẵn sàng để xác định các ràng buộc cụ thể cho quy tắc. Tùy chọn phạm vi của quy tắc được đặt thành Custom Query, và biểu thức truy vấn từ panel PCB Filter được nhập tương ứng vào vùng truy vấn.
  4. Thay đổi tên và các ràng buộc của quy tắc nếu cần. Đồng thời thay đổi mức ưu tiên của nó nếu cần (mặc định nó sẽ được gán mức ưu tiên cao nhất).

Tạo một quy tắc thiết kế mới trực tiếp từ panel PCB Filter – biểu thức truy vấn bộ lọc được dùng làm phạm vi cho quy tắc.
Tạo một quy tắc thiết kế mới trực tiếp từ panel PCB Filter – biểu thức truy vấn bộ lọc được dùng làm phạm vi cho quy tắc.

Tái sử dụng các biểu thức truy vấn trước đây

Theo thời gian, một số biểu thức truy vấn hữu ích sẽ được tạo ra trong quá trình bố trí nhiều bo mạch khác nhau. Thông thường, bạn sẽ muốn áp dụng và tái áp dụng cùng một truy vấn, không chỉ trong cùng một thiết kế mà còn trên nhiều thiết kế khác nhau. Để hỗ trợ điều này, PCB Filter panel hỗ trợ khái niệm về HistoricalFavorite truy vấn.

Khi một truy vấn được nhập và áp dụng từ panel, truy vấn đó sẽ được thêm vào 'danh sách lịch sử' truy vấn. Ngoài ra, truy vấn đó có thể được thêm vào 'danh sách yêu thích' truy vấn bằng cách nhấp vào nút Add To Favorites. Sử dụng các nút HistoryFavorites trong panel để truy cập các tab tương ứng cùng tên trong hộp thoại Expression Manager dialog để xem các danh sách này.

Truy cập lịch sử các biểu thức truy vấn đã áp dụng và xây dựng danh sách các biểu thức yêu thích để tái sử dụng nhiều lần.
Truy cập lịch sử các biểu thức truy vấn đã áp dụng và xây dựng danh sách các biểu thức yêu thích để tái sử dụng nhiều lần.

Để sử dụng một biểu thức trong một trong hai danh sách, hãy nhấp đúp vào mục tương ứng hoặc chọn mục đó rồi nhấp vào nút Apply Expression. Hộp thoại Expression Manager sẽ đóng lại và biểu thức sẽ được nạp vào vùng Filter của panel PCB Filter.

Tính năng này giúp đơn giản hóa (và tăng tốc) việc tạo các rule với phạm vi áp dụng cần thiết – truy xuất một biểu thức truy vấn trong lịch sử hoặc yêu thích, kiểm tra xem nó vẫn nhắm đúng tập đối tượng cần thiết hay không (áp dụng bộ lọc) rồi tạo một rule sử dụng biểu thức đó trong phạm vi áp dụng của nó, như được trình bày chi tiết trong phần trước.

Xác định phạm vi cho Design Rule

Trình biên tập PCB của Altium Designer là một môi trường vận hành dựa trên rule. Các yêu cầu thiết kế được thực thi thông qua một tập hợp rule thiết kế được xác định rõ ràng, cùng nhau định nghĩa các ràng buộc cho bo mạch. Các rule thiết kế nhắm tới những đối tượng cụ thể trong một thiết kế. Để hệ thống rule PCB biết một rule nhất định áp dụng cho những đối tượng nào, nó cần biết phạm vi của rule đó, tức là mức độ áp dụng của nó. Scoping, hay việc nhắm mục tiêu cho rule, được thực hiện trong hộp thoại PCB Rules and Constraints Editor.

Các rule thiết kế mặc định, hoặc một rule mới được thêm vào, sẽ có phạm vi mặc định là All, nghĩa là nó sẽ được áp dụng cho all objects trên bo mạch. Sử dụng danh sách thả xuống, bạn có thể nhanh chóng cấu hình một phạm vi rule đơn giản.

Thiết lập phạm vi của một rule thiết kế để xác định việc áp dụng của nó đối với các đối tượng thiết kế.
Thiết lập phạm vi của một rule thiết kế để xác định việc áp dụng của nó đối với các đối tượng thiết kế.

Thay vì bị giới hạn trong danh sách tùy chọn mục tiêu định sẵn, mỗi rule thiết kế có thể được giới hạn chặt chẽ hơn bằng cách viết cái gọi là Query.

Để nhập một truy vấn, hãy đặt danh sách thả xuống Where The Object Matches đầu tiên thành Custom Query. Khi đó, nó sẽ hiển thị truy vấn hiện đang được rules engine sử dụng cho rule này dựa trên các thiết lập hiện tại của danh sách thả xuống.

Một truy vấn về cơ bản là một chỉ thị cho phần mềm, định nghĩa tập hợp các đối tượng thiết kế sẽ được nhắm tới. Truy vấn được viết bằng các từ khóa truy vấn. Tương tự như cách có thể viết một truy vấn trong panel Filter để tìm một tập đối tượng cụ thể, một truy vấn cũng có thể được viết để xác định các đối tượng mà mỗi rule nhắm tới. Ví dụ:

InNet('VBAT') And OnLayer('Bottom Layer')

Nếu truy vấn này được dùng làm phạm vi cho một Width rule, thì bất cứ khi nào bạn đi dây net VBAT và chuyển sang lớp dưới, độ rộng đường mạch sẽ tự động đổi sang độ rộng được chỉ định trong các ràng buộc của rule đó. Ngoài ra, khi chạy kiểm tra rule thiết kế, bất kỳ phần đi dây nào của net VBAT trên lớp dưới đều phải có độ rộng được chỉ định, nếu không sẽ bị đánh dấu là vi phạm.

Việc xác định phạm vi cho các rule dựa trên hệ thống truy vấn. Sử dụng tùy chọn Custom Query để xem truy vấn hiện tại và thay đổi nó bằng các từ khóa truy vấn nếu cần.
Việc xác định phạm vi cho các rule dựa trên hệ thống truy vấn. Sử dụng tùy chọn Custom Query để xem truy vấn hiện tại và thay đổi nó bằng các từ khóa truy vấn nếu cần.

Tùy thuộc vào việc rule là đơn ngôi hay nhị ngôi, bạn sẽ cần xác định lần lượt một hoặc hai phạm vi tương ứng. Đối với một rule thiết kế đơn ngôi, các điều khiển sẽ được cung cấp để xác định một phạm vi rule duy nhất. Hãy sử dụng các tùy chọn có sẵn trong vùng Where The Object Matches để hỗ trợ xây dựng biểu thức truy vấn, biểu thức này sẽ được hiển thị ở vùng bên phải của nó. Đối với một rule thiết kế nhị ngôi, các điều khiển cho Where The First Object Matches và Where The Second Object Matches  sẽ được cung cấp để xác định cả hai phạm vi rule. Hãy sử dụng các danh sách thả xuống có sẵn của từng mục để hỗ trợ xây dựng biểu thức truy vấn. Các điều khiển là giống nhau, dù bạn xác định một hay hai phạm vi rule.

Khi có thay đổi đối với designator của linh kiện PCB hoặc tên polygon, các tham chiếu trong các rule thiết kế sử dụng truy vấn tùy chỉnh sẽ được cập nhật tự động. Các truy vấn tham chiếu đến designator linh kiện PCB trong các rule thiết kế sẽ được thay đổi khi designator được đánh số lại, cập nhật bởi ECO, hoặc chỉnh sửa thủ công trên bo mạch.

Việc cập nhật truy vấn rule khi designator linh kiện thay đổi khả dụng khi tùy chọn PCB.Rules.UpdateQueryOnComponentDesignatorChange được bật trong hộp thoại Advanced Settings dialog.

Việc cập nhật truy vấn rule khi tên polygon thay đổi khả dụng khi tùy chọn PCB.Rules.UpdateQueryOnPolygonNameChange được bật trong hộp thoại Advanced Settings dialog.

Nếu có lỗi cú pháp trong truy vấn, rule sẽ bị xem là không hợp lệ và sẽ được tô đỏ trong hộp thoại PCB Rules and Constraints Editor, cả trong cây rule bên trái và trong bất kỳ chế độ xem tóm tắt nào (danh mục rule hoặc kiểu rule) nơi rule đó xuất hiện. Ngoài ra, văn bản cho kiểu rule và danh mục rule cũng được hiển thị màu đỏ trong cây rule bên trái. Vì vậy, nếu bạn đã thu gọn một khu vực của cây rule có chứa một rule không hợp lệ, bạn vẫn sẽ được cảnh báo về nó ở cấp cao hơn trong hệ thống phân cấp. Một thông báo cảnh báo cũng sẽ xuất hiện nếu bạn cố gắng đóng hộp thoại. Một phạm vi rule có lỗi cú pháp có thể làm chậm đáng kể quá trình phân tích DRC Online và Batch. Hãy đảm bảo xử lý mọi phạm vi rule không đúng cú pháp.

Tùy chọn phạm vi áp dụng

Các tùy chọn phạm vi đơn giản được cung cấp để cho phép bạn nhanh chóng tạo truy vấn phạm vi. Chọn một trong các tùy chọn từ trường danh sách thả xuống đầu tiên và, nếu cần, sử dụng (các) danh sách thả xuống tiếp theo để chọn mục tiêu phù hợp, chẳng hạn như Net, Layer, Footprint, Package, v.v. Các tùy chọn phạm vi được hiển thị sẽ được tập trung theo kiểu rule.

Nhanh chóng tạo một truy vấn bằng các tùy chọn phạm vi đơn giản.
Nhanh chóng tạo một truy vấn bằng các tùy chọn phạm vi đơn giản.

Các ví dụ về tùy chọn phạm vi đơn giản gồm:

  • All - tạo một truy vấn phạm vi nhắm tới tất cả các đối tượng thiết kế.

  • Net - tạo một truy vấn phạm vi nhắm tới tất cả các đối tượng trong một net cụ thể. Một danh sách thả xuống bổ sung sẽ xuất hiện để bạn có thể chọn net mong muốn từ danh sách các lựa chọn khả dụng, bao gồm No Net.

  • Net Class - tạo một truy vấn phạm vi nhắm tới tất cả các đối tượng trong một net class cụ thể. Một danh sách thả xuống bổ sung sẽ xuất hiện để bạn có thể chọn net class mong muốn từ danh sách các lựa chọn khả dụng, bao gồm All Nets.

  • Layer - tạo một truy vấn phạm vi nhắm tới tất cả các đối tượng trên một lớp cụ thể. Một danh sách thả xuống bổ sung sẽ xuất hiện để bạn có thể chọn lớp mong muốn từ danh sách các lựa chọn khả dụng.

  • Net and Layer - tạo một truy vấn phạm vi nhắm tới tất cả các đối tượng trong một net cụ thể và trên một lớp cụ thể. Hai danh sách thả xuống bổ sung sẽ xuất hiện để bạn có thể chọn net và lớp mong muốn.

Khi bạn xác định phạm vi cho rule bằng các tùy chọn phạm vi đơn giản, một truy vấn vẫn sẽ được tạo ra. Truy vấn này được hiển thị nếu bạn chọn Custom Query trong trường danh sách thả xuống đầu tiên.

Tùy chọn Custom Query cho phép bạn tự viết truy vấn của riêng mình, có thể phức tạp hơn nhưng cũng cụ thể hơn. Bạn có thể nhập trực tiếp truy vấn riêng cho phạm vi rule vào vùng truy vấn ở bên phải. Ngoài ra, có hai tính năng hỗ trợ việc tạo các biểu thức truy vấn logic. Đó là Query BuilderQuery Helper. Chúng có thể hữu ích khi bạn không chắc về cú pháp của một truy vấn hoặc các từ khóa đang có sẵn.

Sử dụng tùy chọn Custom Query để tạo một biểu thức truy vấn phức tạp hơn.
Sử dụng tùy chọn Custom Query để tạo một biểu thức truy vấn phức tạp hơn.

  • Nếu bạn thành thạo Query Language, bạn có thể nhập trực tiếp biểu thức truy vấn vào vùng truy vấn. Bạn cũng có thể dán một biểu thức truy vấn từ trình soạn thảo yêu thích của mình trực tiếp vào vùng này hoặc sao chép một biểu thức truy vấn ra trình soạn thảo bên ngoài, hay thậm chí dán truy vấn vào phạm vi thứ hai của một rule nhị ngôi. Điều này đặc biệt hữu ích nếu hai phạm vi đều phức tạp và chỉ khác nhau đôi chút.

  • Query Builder là một phương pháp đơn giản hơn để xây dựng truy vấn, sử dụng các kiểu điều kiện và giá trị theo ngữ cảnh, chỉ cho phép bạn xây dựng bằng các 'khối thành phần' phù hợp. Đối với việc xây dựng truy vấn nâng cao với đặc tả từ khóa đầy đủ và cú pháp toán tử, hãy dùng Query Helper.

Xác định phạm vi cho một Rule bằng Query Builder

Khi tùy chọn Custom Query được chọn, hãy nhấp vào nút để mở hộp thoại Building Query from Board dialog, cho phép bạn tạo một truy vấn để nhắm tới các đối tượng cụ thể trong tài liệu thiết kế thông qua cách xây dựng đơn giản một chuỗi các câu lệnh điều kiện.

Phần bên trái của hộp thoại được dùng để chỉ định (các) điều kiện cần thiết nhằm nhắm tới tập đối tượng mong muốn. Mỗi điều kiện được tạo thành từ một Condition Type  và một Condition Value. Các trường danh sách thả xuống cho các mục này sẽ được điền bằng những mục liên quan đến việc xây dựng phạm vi cho loại luật hiện tại và các giá trị tương ứng với loại điều kiện đã chọn.

Khi một điều kiện được định nghĩa, phần xem trước của truy vấn đang được xây dựng sẽ được hiển thị ở phần bên phải của hộp thoại. Các điều kiện có thể được kết hợp bằng AND và/hoặc OR, đồng thời cũng có thể áp dụng thứ tự ưu tiên (thông qua việc sử dụng dấu ngoặc/thụt lề) để tinh chỉnh tập đối tượng đích. Khi biểu thức truy vấn đã được định nghĩa theo yêu cầu, nhấp vào OK sẽ nạp biểu thức vào vùng truy vấn của hộp thoại PCB Rules and Constraints Editor.

Lưu ý rằng các dấu ngoặc mở và đóng bổ sung sẽ được thêm lần lượt vào đầu và cuối biểu thức truy vấn khi được hiển thị trong hộp thoại PCB Rules and Constraints Editor.

Sử dụng Query Builder để xây dựng một biểu thức truy vấn logic thông qua một loạt câu lệnh điều kiện.
Sử dụng Query Builder để xây dựng một biểu thức truy vấn logic thông qua một loạt câu lệnh điều kiện.

Thiết lập phạm vi cho một Rule bằng Query Helper

Khi tùy chọn Custom Query được chọn, hãy nhấp nút để truy cập hộp thoại Query Helper. Query Engine bên dưới sẽ phân tích thiết kế PCB và liệt kê tất cả các đối tượng khả dụng, cùng với các từ khóa chung để sử dụng trong truy vấn.

Làm việc với Query Helper khá trực quan, đặc biệt hơn nữa khi bạn chia nó thành ba khu vực riêng biệt như minh họa trong hình bên dưới:

Ví dụ về một truy vấn phức tạp được định nghĩa bằng Query Helper.
Ví dụ về một truy vấn phức tạp được định nghĩa bằng Query Helper.

Các khu vực này gồm:

  1. Query Region – sử dụng vùng này của hộp thoại để soạn một biểu thức truy vấn. Biểu thức hiện đang có hiệu lực cho phạm vi của rule sẽ mặc định được cung cấp trong vùng này khi mở hộp thoại. Bạn có thể nhập trực tiếp trong vùng này; một “danh sách gợi ý” theo ngữ cảnh gồm các từ khóa hoặc đối tượng khả dĩ sẽ xuất hiện để hỗ trợ.
  2. Operators – vùng này của hộp thoại cung cấp một loạt toán tử toán học và logic để sử dụng khi xây dựng biểu thức. Nhấp vào một nút để thêm toán tử đó vào vị trí con trỏ hiện tại trong biểu thức truy vấn ở vùng Query phía trên.
  3. Categories, Keywords and Objects – vùng này của hộp thoại cung cấp quyền truy cập tới các PCB Functions, PCB Object Lists và System Functions hiện có, có thể được dùng để tạo biểu thức truy vấn. Khi nhấp vào một danh mục con trong mỗi một trong ba khu vực này sẽ hiển thị danh sách các từ khóa hoặc đối tượng tương ứng ở vùng bên phải. Hãy tìm từ khóa hoặc đối tượng cần dùng trong chuỗi truy vấn rồi nhấp đúp vào mục đó; mục này sẽ được chèn vào vị trí con trỏ hiện tại trong biểu thức truy vấn ở vùng Query phía trên.

Sử dụng nút (ở góc dưới bên trái hộp thoại) để xác minh rằng một biểu thức là đúng cú pháp. Khi biểu thức truy vấn đã được định nghĩa theo yêu cầu, nhấp vào OK sẽ nạp biểu thức vào vùng truy vấn của hộp thoại PCB Rules and Constraints Editor.

Khi sử dụng hộp thoại Query Helper để xây dựng một truy vấn, việc nhấp vào một từ khóa trong một trong các danh sách khả dụng và nhấn F1 sẽ mở tài liệu cho từ khóa cụ thể đó trong Query Language Reference.

Thứ tự ưu tiên của toán tử trong biểu thức truy vấn

Trước khi rời khỏi phần này, bạn nên xem qua thứ tự ưu tiên được áp dụng cho các toán tử dùng trong biểu thức Query logic. Xét cho cùng, nếu không có kiến thức này, một biểu thức có thể sẽ không nhắm đúng các đối tượng cần thiết.

Dấu ngoặc có mức ưu tiên cao nhất trong thứ tự ưu tiên đã được xác định cho các toán tử khác nhau, và thứ tự này quyết định cách phần mềm diễn giải các truy vấn (bất cứ khi nào người dùng không cung cấp dấu ngoặc). Trình tự của thứ tự này từ cao xuống thấp như sau:

  1. Dấu ngoặc
  2. Not
  3. ^, *, /, Div, Mod, And
  4. +, -, Or, Xor
  5. =, <>, <, >, <=, >=
  6. &&, ||

Thứ tự ưu tiên này tương tự như thứ tự được dùng trong các ngôn ngữ kiểu Pascal. Các điểm mơ hồ được giải quyết theo hướng từ trái sang phải. Dấu ngoặc được đánh giá từ trong ra ngoài và các mức bằng nhau được đánh giá từ trái sang phải.

Rất nên sử dụng dấu ngoặc bất cứ khi nào có bất kỳ khả năng nào, dù nhỏ nhất, rằng truy vấn có thể không được diễn giải chính xác. Việc dùng dấu ngoặc rộng rãi sẽ loại bỏ nghi ngờ và giúp các truy vấn tạo ra dễ đọc hơn đối với người khác.

Ưu tiên của Rule

Để đơn giản hóa quá trình định nghĩa và quản lý các rule, ý tưởng là định nghĩa các rule tổng quát bao phủ các yêu cầu rộng, sau đó ghi đè chúng bằng các rule cụ thể trong những tình huống cụ thể. Để làm được điều này, bạn cần có khả năng ưu tiên các rule nhằm chỉ ra nên dùng rule nào khi một đối tượng bị nhiều rule cùng loại nhắm tới.

Ví dụ, để chỉ định độ rộng đi dây được dùng phổ biến nhất trên bo mạch, hãy định nghĩa một rule duy nhất áp dụng cho mọi net trên bo mạch. Rule này sau đó có thể được ghi đè cho một net cụ thể (hoặc một lớp net, nếu muốn) bằng cách thêm một rule khác cùng loại nhưng có ưu tiên cao hơn.

Một ví dụ khác có thể là các yêu cầu về solder mask. Ở đây bạn sẽ định nghĩa một rule mask áp dụng cho mọi pad và via trên bo mạch, sau đó có thể ghi đè rule này cho các pad trong một footprint-kind cụ thể. Rule dành riêng cho footprint này lại có thể tiếp tục được ghi đè cho một pad cụ thể trong footprint đó nếu cần.

Một khía cạnh quan trọng của việc quản lý rule là bảo đảm tất cả các mức ưu tiên được thiết lập phù hợp. Khi một rule mới được tạo, mặc định nó sẽ có mức ưu tiên cao nhất. Sử dụng nút Priorities ở cuối hộp thoại PCB Rules and Constraints Editor để cấu hình các mức ưu tiên trong hộp thoại Edit Rule Priorities.

Thay đổi mức ưu tiên của rule trong hộp thoại Edit Rule Priorities.
Thay đổi mức ưu tiên của rule trong hộp thoại Edit Rule Priorities.

Ban đầu, hộp thoại sẽ liệt kê tất cả các phiên bản rule cho loại rule hiện đang được chọn trong hộp thoại PCB Rules and Constraints Editor. Sử dụng trường Rule Type để thay đổi loại rule và liệt kê các rule cụ thể đã được định nghĩa cho loại đó. Các rule đã định nghĩa được liệt kê theo thứ tự ưu tiên hiện tại – từ 1 (ưu tiên cao nhất) trở xuống. Chọn một mục rule và dùng các nút Increase PriorityDecrease Priority để di chuyển nó lên hoặc xuống trong thứ tự ưu tiên tương ứng.

Khi thêm một rule mới vào một loại rule đã có sẵn một hoặc nhiều rule, mức ưu tiên sẽ được đặt là 1 (tức là mức ưu tiên cao nhất). Khi một rule được sao chép, bản sao sẽ được gán mức ưu tiên thấp hơn rule nguồn.

Có thể thiết lập nhiều rule cùng loại. Có thể xảy ra trường hợp một đối tượng thiết kế chịu sự chi phối của nhiều hơn một rule có cùng phạm vi. Khi đó sẽ phát sinh xung đột. Mọi xung đột đều được giải quyết theo thiết lập ưu tiên. Hệ thống sẽ duyệt các rule từ mức ưu tiên cao nhất xuống thấp nhất và chọn rule đầu tiên có biểu thức phạm vi khớp với (các) đối tượng đang được kiểm tra. Có một ngoại lệ cho điều này, nhiều rule thiết kế Matched Length có thể được áp dụng cho các đối tượng, và tất cả các rule đó đều được áp dụng cho các đối tượng ấy.

Sửa đổi các Rule hiện có

Tất nhiên, các rule có thể được sửa đổi bất cứ lúc nào. Thực tế, để đi đến bộ rule hoạt động cuối cùng thường phải trải qua một vài tinh chỉnh quan trọng ở đây và đó. Thông thường điều này liên quan đến việc thiết lập phạm vi để bảo đảm các đối tượng thiết kế đích được các rule tương ứng “bắt đúng” theo yêu cầu. Chọn một rule hiện có trong hộp thoại PCB Rules and Constraints Editor và thực hiện các thay đổi cần thiết đối với phạm vi và các thuộc tính ràng buộc của nó.

Các thay đổi được thực hiện đối với các định nghĩa rule hiện có sẽ được làm nổi bật trong cả khung cây thư mục và các danh sách tóm tắt tương ứng. Những mục như vậy được phân biệt bằng việc tên rule trở thành chữ đậm và một dấu hoa thị hiển thị ở bên phải tên. Dấu hoa thị được dùng để phản ánh rằng rule đó là một rule hiện có đã được sửa đổi, thay vì một rule mới được tạo (được hiển thị chữ đậm nhưng không có dấu hoa thị).

Ví dụ về một rule hiện có đã được sửa đổi. Dấu hoa thị được dùng để đánh dấu việc sửa đổi, cùng với việc tên rule được in đậm.
Ví dụ về một rule hiện có đã được sửa đổi. Dấu hoa thị được dùng để đánh dấu việc sửa đổi, cùng với việc tên rule được in đậm.

Khi một rule mới được tạo cho một loại rule cụ thể, nó tự động được gán mức ưu tiên 1. Nếu đã tồn tại các rule khác thuộc loại đó, mức ưu tiên của chúng sẽ được dịch chuyển (giảm) đi một cho phù hợp. Khi đó chúng sẽ được xem là đã bị sửa đổi mặc dù có thể chúng không được chỉnh sửa cụ thể ở mức phạm vi/ràng buộc. Vì vậy, tất cả các rule hiện có thuộc loại đó sẽ được hiển thị ở trạng thái đã sửa đổi (chữ đậm kèm dấu hoa thị).

Đánh dấu Rule không hợp lệ

Nếu một rule bị hệ thống phát hiện là không hợp lệ – ví dụ, có vấn đề với biểu thức truy vấn phạm vi hoặc một giá trị ràng buộc không được phép – thì rule đó sẽ bị đánh dấu là không hợp lệ. Một rule như vậy sẽ được tô sáng màu đỏ trong hộp thoại PCB Rules and Constraints Editor ở cả cây rule bên trái và bất kỳ chế độ xem tóm tắt nào (danh mục rule hoặc loại rule) nơi rule đó xuất hiện. Ngoài ra, văn bản của loại rule và danh mục rule cũng được hiển thị màu đỏ trong cây rule bên trái. Vì vậy, nếu bạn đã thu gọn một khu vực của cây rule có chứa một rule không hợp lệ, bạn vẫn sẽ được cảnh báo về điều đó ở cấp cao hơn trong hệ thống phân cấp. Một thông báo cảnh báo cũng sẽ xuất hiện nếu bạn cố gắng đóng hộp thoại.

Một phạm vi rule có lỗi cú pháp có thể làm chậm đáng kể việc phân tích DRC Online và Batch, vì vậy hãy chắc chắn xử lý mọi phạm vi rule không đúng cú pháp.

Ví dụ về việc hệ thống đánh dấu một rule thiết kế không hợp lệ, trong trường hợp này là một biểu thức truy vấn phạm vi bị lỗi.
Ví dụ về việc hệ thống đánh dấu một rule thiết kế không hợp lệ, trong trường hợp này là một biểu thức truy vấn phạm vi bị lỗi.

Vô hiệu hóa Rule

Trong môi trường dựa trên quy tắc của trình biên tập PCB của phần mềm, việc xây dựng một tập hợp quy tắc khá ấn tượng và toàn diện để ràng buộc bo mạch của bạn một cách hiệu quả là điều không hiếm gặp. Vì bất kỳ lý do nào trong quá trình làm việc, bạn có thể muốn vô hiệu hóa một số quy tắc; có thể chúng không áp dụng cho bo mạch đang xét hoặc cần tạm thời bị tắt để giảm tải cho Design Rule Checker (và nhờ đó tăng tốc hiệu năng của nó!). Vô hiệu hóa là một cách tốt để giữ lại các quy tắc đó phòng khi sau này cần dùng lại.

Để vô hiệu hóa một quy tắc, hãy chuyển đổi tùy chọn Enable tương ứng cho quy tắc đó trong một trong các danh sách tóm tắt liên quan ở phía bên phải của hộp thoại PCB Rules and Constraints Editor. Một quy tắc bị vô hiệu hóa cũng sẽ hiển thị ở trạng thái 'mờ đi'.

Ví dụ về các quy tắc bị vô hiệu hóa, xuất hiện bằng phông chữ màu xám trong danh sách tóm tắt.
Ví dụ về các quy tắc bị vô hiệu hóa, xuất hiện bằng phông chữ màu xám trong danh sách tóm tắt.

Các quy tắc cũng có thể được vô hiệu hóa/kích hoạt trực tiếp từ PCB Rules And Violations panel. Hãy chuyển đổi tùy chọn On liên quan đến quy tắc. Điều này sẽ được phản ánh trong tùy chọn Enable của quy tắc trong hộp thoại PCB Rules and Constraints Editor.

Xóa Quy Tắc

Để xóa một quy tắc thiết kế đơn lẻ từ trong hộp thoại PCB Rules and Constraints Editor:

  • Sử dụng cây thư mục ở bên trái để điều hướng đến quy tắc hiện có cần thiết, nhấp chuột phải rồi chọn Delete Rule từ menu ngữ cảnh.
  • Điều hướng đến loại quy tắc cụ thể trong cây thư mục bên trái, sau đó chọn quy tắc cần xóa trong danh sách tóm tắt ở bên phải. Sau đó nhấp nút Delete Rule(s) bên dưới danh sách.

Tên quy tắc sẽ hiển thị đậm với gạch ngang để phân biệt đó là mục xóa vẫn chưa được 'áp dụng'.

Xóa một quy tắc đơn lẻ.
Xóa một quy tắc đơn lẻ.

  • Nếu một quy tắc thiết kế cụ thể không còn cần thiết nhưng có thể sẽ được dùng lại trong tương lai, thay vì xóa nó, bạn chỉ cần vô hiệu hóa nó. Thực hiện điều này bằng cách chuyển đổi tùy chọn Enable tương ứng của quy tắc trong một trong các danh sách tóm tắt liên quan ở phía bên phải của hộp thoại PCB Rules and Constraints Editor.

  • Có thể xóa nhiều quy tắc trong một thao tác duy nhất từ chế độ xem danh sách tóm tắt. Để thực hiện, hãy chọn các quy tắc cần xóa (các phím tắt chuẩn Shift+clickCtrl+click đều được hỗ trợ), sau đó nhấp nút Delete Rule(s) bên dưới danh sách.

  • Một số quy tắc nhất định phải tồn tại để hệ thống Design Rule Check hoạt động; nếu một trong các quy tắc này bị xóa (khiến không còn quy tắc nào thuộc loại đó tồn tại), nó sẽ được tự động tạo lại. Tìm hiểu thêm về các quy tắc thiết kế mặc định.

Nhiều loại quy tắc có các quy tắc mặc định được tạo khi một tài liệu PCB mới được tạo. Tương tự, nếu tất cả các quy tắc cụ thể của một trong những loại quy tắc đó bị xóa, quy tắc mặc định sẽ được tự động thêm lại vào lần tiếp theo truy cập hộp thoại PCB Rules and Constraints Editor. Ngoài ra, các quy tắc mặc định cũng có thể được tạo lại bằng cách nhấp nút Create Default Rules ở cuối hộp thoại.

Xuất Và Nhập Quy Tắc

Các quy tắc thiết kế có thể được xuất từ và nhập vào hộp thoại PCB Rules and Constraints Editor. Điều này cho phép bạn lưu và nạp các định nghĩa quy tắc ưa thích giữa các thiết kế khác nhau.

  • To export – nhấp chuột phải vào bất kỳ đâu trong cây thư mục ở bên trái hộp thoại và chọn Export Rules. Hộp thoại Choose Design Rule Type dialog sẽ mở ra, trong đó bạn có thể chọn (các) quy tắc thiết kế cần xuất. Trong hộp thoại Export Rules to File mở ra, bạn có thể đặt tên cho tệp .rul và chọn vị trí lưu. Các quy tắc đã xuất được lưu trong tệp PCB Rule (*.rul).
  • To import – nhấp chuột phải vào bất kỳ đâu trong cây thư mục ở bên trái hộp thoại và chọn Import Rules. Hộp thoại Choose Design Rule Type dialog sẽ mở ra, trong đó bạn có thể chọn (các) quy tắc thiết kế cần nhập. Trong hộp thoại Import File mở ra, hãy duyệt đến tệp .rul cần nhập. 

Khi nhập, nếu các quy tắc của loại đã chọn đã tồn tại, sẽ có tùy chọn xóa các quy tắc hiện có trước khi nhập. Nhấp vào Yes sẽ khiến tất cả các quy tắc hiện có của loại đó bị xóa và sau đó được thay thế bằng các quy tắc trong tệp .rul. Nhấp vào No sẽ giữ lại các quy tắc hiện có. Tuy nhiên, nếu các quy tắc hiện có và các quy tắc được nhập có cùng tên, các quy tắc được nhập sẽ ghi đè lên các quy tắc hiện có.

Báo Cáo Quy Tắc Thiết Kế

Một báo cáo về các quy tắc thiết kế hiện đang được định nghĩa có thể được tạo từ trong hộp thoại PCB Rules and Constraints Editor. Báo cáo có thể bao quát tất cả các danh mục quy tắc, một danh mục quy tắc cụ thể hoặc một loại quy tắc cụ thể, tùy theo mục đang được chọn trong cây thư mục. Có thể tạo báo cáo bằng cách:

  • Truy cập danh sách tóm tắt cần thiết, nhấp chuột phải rồi chọn lệnh Report từ menu ngữ cảnh, hoặc nhấp nút Report bên dưới danh sách.
  • Nhấp chuột phải lên mục tương ứng trong cây thư mục rồi chọn lệnh Report từ menu ngữ cảnh.

Hộp thoại Report Preview sẽ mở ra với báo cáo phù hợp đã được nạp sẵn. Sử dụng hộp thoại này để kiểm tra báo cáo bằng các điều khiển trang/thu phóng khác nhau trước khi cuối cùng xuất nó ra tệp hoặc in nó.

Tạo báo cáo PCB Rules.
Tạo báo cáo PCB Rules.

Định nghĩa Quy tắc trên Sơ đồ nguyên lý

Các ràng buộc thiết kế (quy tắc) có thể được xác định trước khi bố trí PCB bằng cách thêm các chỉ thị Parameter Set vào (các) tài liệu nguồn sơ đồ nguyên lý với (các) quy tắc đã được cấu hình. Phạm vi của quy tắc thiết kế PCB tương ứng, được tạo khi thiết kế được chuyển sang tài liệu PCB, được xác định bởi bản chất của đối tượng mà tham số được gán vào. Bảng sau tóm tắt các tùy chọn phạm vi quy tắc PCB từ tham số sơ đồ nguyên lý hiện được hỗ trợ.

Thêm một quy tắc vào... Từ... Cho Phạm vi Quy tắc PCB là...
Đường dây trong bảng điều khiển Properties (khi duyệt các thuộc tính của đối tượng parameter set đã chọn), sau khi đặt một đối tượng Parameter Set lên đường dây bằng lệnh Place » Directives » Parameter Set. Net
Bus trong bảng điều khiển Properties (khi duyệt các thuộc tính của đối tượng parameter set đã chọn), sau khi đặt một đối tượng Parameter Set lên bus bằng lệnh Place » Directives » Parameter Set. Net Class
Harness trong bảng điều khiển Properties (khi duyệt các thuộc tính của đối tượng parameter set đã chọn), sau khi đặt một đối tượng Parameter Set lên harness bằng lệnh Place » Directives » Parameter Set. Net Class
Blanket trong bảng điều khiển Properties (khi duyệt các thuộc tính của đối tượng parameter set đã chọn), sau khi đặt một đối tượng Parameter Set lên cạnh của blanket bằng lệnh Place » Directives » Parameter Set. Bao gồm một class với tên yêu cầu để tạo net class cho tất cả các net được blanket bao phủ, sau đó sẽ được dùng cho phạm vi quy tắc. Net Class

Trong mỗi trường hợp, phương thức thêm tham số dựa trên quy tắc là giống nhau:

  1. Thêm một tham số dưới dạng quy tắc.

  2. Chọn loại quy tắc sẽ dùng.

  3. Cấu hình các ràng buộc cho loại quy tắc đã chọn.

Khi thêm các tham số quy tắc thiết kế vào các đối tượng trên sơ đồ nguyên lý, mỗi tham số quy tắc sẽ được gán một ID duy nhất. Các ID này cũng được gán cho các quy tắc thiết kế tương ứng được tạo trên PCB. Với Unique ID này, các ràng buộc của một quy tắc có thể được chỉnh sửa ở phía sơ đồ nguyên lý hoặc phía PCB, và các thay đổi sẽ được đẩy qua khi đồng bộ.

Tìm hiểu thêm về Parameter Sets.

Xem một ví dụ về việc sử dụng chỉ thị Differential Pair cùng với Blanket để xác định các quy tắc thiết kế trên sơ đồ nguyên lý.

Kiểm tra áp dụng quy tắc

Tùy thuộc vào thiết kế bo mạch, có thể cần xác định khá nhiều quy tắc thiết kế với phạm vi từ rất đơn giản đến rất phức tạp. Bạn nên kiểm tra để bảo đảm rằng các quy tắc đã xác định thực sự nhắm đến đúng các đối tượng dự kiến. Cẩn thận ở giai đoạn định nghĩa quy tắc có thể giúp tiết kiệm thời gian và công sức bị lãng phí khi truy vết các vi phạm do phạm vi quy tắc không chính xác gây ra.

Về cơ bản có hai phương pháp để xác minh phạm vi quy tắc – hoặc là chọn các đối tượng thiết kế và kiểm tra những quy tắc hiện đang áp dụng cho chúng, hoặc là lấy một quy tắc (ở các vị trí khác nhau trong phần mềm) và quan sát những đối tượng nào thuộc phạm vi của nó.

Từ góc nhìn của một đối tượng

Đối với bất kỳ đối tượng đã đặt nào trong thiết kế hiện tại, bạn có thể nhanh chóng truy cập thông tin về các quy tắc thiết kế đơn ngôi áp dụng cho đối tượng đó. Đưa con trỏ lên đối tượng, nhấp chuột phải rồi chọn Applicable Unary Rules. Tất cả các quy tắc thiết kế đã định nghĩa có thể áp dụng cho đối tượng được chọn sẽ được phân tích và liệt kê trong hộp thoại Applicable Unary Rules.

Các quy tắc thiết kế áp dụng cho một đối tượng thiết kế ví dụ đơn lẻ – quy tắc đơn ngôi.
Các quy tắc thiết kế áp dụng cho một đối tượng thiết kế ví dụ đơn lẻ – quy tắc đơn ngôi.

Mỗi quy tắc được liệt kê trong hộp thoại sẽ có dấu chọn () hoặc dấu x () bên cạnh. Dấu chọn cho biết quy tắc có độ ưu tiên cao nhất trong số tất cả các quy tắc áp dụng cùng loại; đây là quy tắc hiện đang được áp dụng. Các quy tắc cùng loại nhưng có độ ưu tiên thấp hơn sẽ được liệt kê với dấu x bên cạnh, cho biết rằng chúng có thể áp dụng nhưng vì không phải là quy tắc có độ ưu tiên cao nhất nên hiện không được áp dụng.

Bất kỳ quy tắc nào lẽ ra áp dụng cho đối tượng nhưng hiện đang bị vô hiệu hóa cũng sẽ có dấu x bên cạnh và hiển thị với định dạng gạch ngang.

Tương tự, bạn cũng có thể truy cập thông tin về các quy tắc thiết kế nhị phân áp dụng giữa hai đối tượng đã đặt trong một thiết kế. Đưa con trỏ lên bất kỳ đối tượng nào, nhấp chuột phải rồi chọn Applicable Binary Rules. Làm theo lời nhắc để chọn hai đối tượng trong thiết kế. Khi đó, hộp thoại Applicable Binary Rules sẽ mở ra và hiển thị tất cả các quy tắc thiết kế nhị phân áp dụng giữa các đối tượng đó.

Nếu hai đối tượng được chọn không có bất kỳ quy tắc nhị phân nào áp dụng cho chúng, phiên bản Binary của hộp thoại Applicable Rules sẽ không mở ra.

Các quy tắc thiết kế áp dụng giữa hai đối tượng thiết kế ví dụ – quy tắc nhị phân.
Các quy tắc thiết kế áp dụng giữa hai đối tượng thiết kế ví dụ – quy tắc nhị phân.

Từ góc nhìn của một quy tắc

Kiểm tra thông qua bảng điều khiển PCB Rules And Violations

Bạn cũng có thể nhanh chóng xem một quy tắc cụ thể áp dụng cho những đối tượng nào từ bảng điều khiển PCB Rules And Violations. Bảng điều khiển liệt kê tất cả các quy tắc hiện được định nghĩa cho thiết kế. Có thể xem tất cả các quy tắc hoặc duyệt riêng theo từng loại quy tắc – miễn là ít nhất một quy tắc của loại đó đã được định nghĩa cho thiết kế đang hoạt động. Khi bạn nhấp vào một quy tắc cụ thể trong vùng Rules của bảng điều khiển, việc lọc sẽ được áp dụng với quy tắc đó làm phạm vi của bộ lọc. Chỉ những đối tượng thiết kế nằm trong phạm vi của quy tắc mới được lọc ra. Bằng cách dùng tính năng tô sáng Mask (hoặc Dim), bạn có thể nhanh chóng thấy các đối tượng kết quả mà quy tắc nhắm tới.

Một ví dụ về việc sử dụng bảng PCB Rules And Violations để kiểm tra những đối tượng mà một quy tắc được chọn áp dụng.
Một ví dụ về việc sử dụng bảng PCB Rules And Violations để kiểm tra những đối tượng mà một quy tắc được chọn áp dụng.

Nếu phương pháp tô sáng trong hộp thoại được đặt thành Mask, hãy điều chỉnh mức che áp dụng cho các đối tượng không nằm trong phạm vi của bộ lọc đang hoạt động bằng cách sử dụng thanh trượt Masked Objects truy cập từ phần Mask and Dim Settings trên tab View Options của bảng điều khiển View Configuration. Nếu phương pháp tô sáng trong hộp thoại được đặt thành Dim, hãy điều chỉnh mức làm mờ áp dụng cho các đối tượng không nằm trong phạm vi của bộ lọc đang hoạt động bằng cách sử dụng thanh trượt Dimmed Objects cũng có sẵn trong phần này của bảng điều khiển.

Việc sử dụng bảng PCB Rules And Violations để kiểm tra những đối tượng mà một quy tắc áp dụng đặc biệt hữu ích khi tạo truy vấn cho (các) phạm vi của quy tắc vì quy tắc có thể được chỉnh sửa trực tiếp từ bảng điều khiển và do đó, truy vấn có thể được 'tinh chỉnh' cho đến khi các đối tượng mong muốn được bao phủ bởi (các) phạm vi.

Để chỉnh sửa (các) phạm vi cho một quy tắc cũng như các ràng buộc của nó, hãy nhấp đúp vào mục nhập của quy tắc trong bảng điều khiển hoặc nhấp chuột phải và chọn Properties từ menu ngữ cảnh. Hộp thoại Edit PCB Rule liên quan sẽ xuất hiện từ đó có thể thực hiện các thay đổi.

Các điều khiển do hộp thoại cung cấp và văn bản biểu ngữ của nó sẽ thay đổi tùy theo loại quy tắc thiết kế đang được chỉnh sửa.

Các quy tắc có thể được chỉnh sửa trực tiếp từ bảng PCB Rules And Violations, cho phép bạn tinh chỉnh thêm phạm vi quy tắc và/hoặc các ràng buộc ngay tức thì.
Các quy tắc có thể được chỉnh sửa trực tiếp từ bảng PCB Rules And Violations, cho phép bạn tinh chỉnh thêm phạm vi quy tắc và/hoặc các ràng buộc ngay tức thì.

Kiểm tra thông qua hộp thoại PCB Rules and Constraints Editor

Hộp thoại PCB Rules and Constraints Editor bao gồm một chức năng kiểm thử truy vấn, cho phép bạn nhanh chóng xem một quy tắc cụ thể áp dụng cho những đối tượng nào. Nhấp vào nút  ở góc trên bên phải của hộp thoại cho quy tắc bạn muốn kiểm tra. Hộp thoại Test Queries Result sẽ xuất hiện. Hộp thoại phản ánh những nội dung sau:

  • Expression result – số lượng đối tượng nằm trong phạm vi của biểu thức.

  • Objects applicable to rule – số lượng đối tượng áp dụng dựa trên biểu thức và loại của quy tắc hiện tại.

  • Expression and rule priority (chỉ với quy tắc đơn ngôi) – số lượng đối tượng áp dụng dựa trên biểu thức, loại, và độ ưu tiên của quy tắc hiện tại (tức là khi có một quy tắc có độ ưu tiên cao hơn, các đối tượng thuộc phạm vi của quy tắc đó sẽ không được tính vào giá trị này).

  • Rules with highest priorities (chỉ với quy tắc đơn ngôi) – nếu có các quy tắc có độ ưu tiên cao hơn, danh sách của chúng sẽ được trình bày trong hộp thoại, cùng với số lượng đối tượng áp dụng cho chúng (tức là các giá trị Expression and rule priority của chúng).

Bằng cách nhấp vào liên kết ở bên phải, bạn có thể nhanh chóng lọc để xem các đối tượng áp dụng trong từng trường hợp trực tiếp trong không gian thiết kế. Sử dụng danh sách thả xuống Mask để chọn NormalMask, hoặc Dim  tùy theo cách bạn muốn các đối tượng bị ảnh hưởng được tô sáng trong tài liệu PCB. Nếu Zoom  được chọn, tài liệu PCB cũng sẽ phóng to đến các linh kiện bị ảnh hưởng.

 
 
 
 
 

Nhanh chóng xem các đối tượng được bao phủ bởi biểu thức phạm vi của một quy tắc bằng tính năng Test Queries.
Nhanh chóng xem các đối tượng được bao phủ bởi biểu thức phạm vi của một quy tắc bằng tính năng Test Queries.

AI-LocalizedBản địa hóa bằng AI
Nếu bạn phát hiện vấn đề, hãy chọn văn bản/hình ảnh và nhấnCtrl + Enterđể gửi phản hồi cho chúng tôi.
Tính khả dụng của tính năng

Các tính năng có sẵn cho bạn phụ thuộc vào giải pháp Altium mà bạn đang sử dụng – Altium Develop, một phiên bản của Altium Agile (Agile Teams hoặc Agile Enterprise), hoặc Altium Designer (đang còn hiệu lực).

Nếu bạn không thấy tính năng được đề cập trong phần mềm của mình, liên hệ Bộ phận Kinh doanh của Altium để tìm hiểu thêm.

Tài liệu cũ

Tài liệu Altium Designer không còn được phân phiên bản. Nếu bạn cần truy cập tài liệu cho các phiên bản cũ hơn của Altium Designer, hãy truy cập mục Tài liệu cũ trên trang Trình cài đặt khác.

Nội dung