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 đề xuất 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, chỉ có các cách tiếp cận 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 ) mới có thể được dùng.

Để nhanh chóng kiểm tra 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 dùng cho dự án này.

  • Rules – hộp thoại PCB Rule and Constraints Editor được 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 một cách tiếp cận thanh nhã - target these objects and apply those requirements - . Các quy tắc thiết kế cùng nhau tạo thành một “bộ chỉ dẫn” để trình biên tập PCB 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 cách cách ly, kiểu kết nối plane, kiểu via đi dây, v.v., và nhiều quy tắc trong số đó có thể được giám sát theo thời gian thực bởi Design Rule Checker (DRC) trực tuyến; ngoài ra, 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 đến các đối tượng cụ thể và được áp dụng theo cách phân cấp; ví dụ, có một quy tắc clearance cho toàn bộ bo mạch, rồi 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 nữa cho một pad trong lớp đó. Bằng cách sử dụng độ ưu tiên của quy tắc và phạm vi áp dụng, trình biên tập PCB 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 đến các đối tượng bằng query language dựa trên từ khóa, có thể trải từ những định danh rộng như NetClass hoặc All, cho đến một truy vấn được xác định rất chặt chẽ để nhắm chính xác vào một yêu cầu thiết kế phức tạp, đặc thù cho từng tình huống.

Với một tập quy tắc thiết kế được xác định rõ ràng, bạn có thể hoàn thành thành công các thiết kế bo mạch có những yêu cầu thiết kế khác nhau và thường rất khắt khe. Ngoài ra, vì PCB Editor hoạt động theo hướng 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, hãy xem Design Rule Checking (DRC).

Những nguyên lý cơ bản của hệ thống PCB Rules

Hệ thống quy tắc được tích hợp trong trình biên tập PCB 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 hầu hết các hệ thống quy tắc thiết kế khác được dùng trong các môi trường biên tập 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à thay vào đó được thêm vào danh sách quy tắc tổng thể rồi mới được gán phạm vi để áp dụng cho đối tượng đó. Điều này cho phép áp dụng quy tắc cho nhiều đối tượng, cũng như sửa đổi hoặc áp dụng chú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ì sử dụng một tập phạm vi quy tắc cố định, được định trước, hệ thống 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 mục tiêu 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 đến 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 các độ 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à mục tiêu 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ác tình huống cụ thể hơn. Để giải quyết xung đột giữa các quy tắc, hệ thống dùng độ ưu tiên của quy tắc. Hệ thống chỉ đơn giản duyệt qua các quy tắc từ ưu tiên cao nhất xuống thấp nhất 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 (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ị phân (quy tắc xác định sự 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. 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ể dùng Constraints Editor dạng tài liệu ([Constraints] tab tài liệu).

 
 
 
 
 

Xác định và quản lý Design Rules

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? Hãy kiểm tra xem bạn có hộp thoại PCB Rules and Constraints Editor 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 ở 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 của chúng.

  2. Phía bên phải của hộp thoại trình bày thông tin tương ứng với mục hiện đang được chọn trong cây – có thể là bả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ể đang được chọn, thì 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ổng hợp 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ổng hợp của tất cả các quy tắc cụ thể đã được định nghĩa cho mọi loại quy tắc 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ổng hợp của tất cả các quy tắc cụ thể đã được định nghĩa cho loại đó.

    Trong danh sách tổng hợp, 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). Một quy tắc bị tắt sẽ hiển thị mờ trong danh sách tổng hợp.

    • 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à đối tượng nào mà nó áp dụng).

    • 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ổng hợp) để 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 theo yêu cầu.

    • Comment - trường này hiển thị mọi chú thích được thêm cho quy tắc, ví dụ 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. Nơi Unique ID thực sự phát huy tác dụng là 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ột ID duy nhất sẽ được gán cho từng tham số quy tắc. 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 đã định nghĩa. Điều này cho phép bạn thấy liệu có đối tượng nào phản hồi vớ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 theo các đối tượng mà nó áp dụng lên hoặc giữa các đối tượng.

    • Constraints - vùng này của hộp thoại trình bày 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 trên vùng ràng buộc để truy cập 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 cho việc 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 cho việc 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 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 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. 

Rà soát các Design Rules

Bo mạch mới mặc định do phần mềm tạo ra sẽ bao gồm các quy tắc không cần thiết trong 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 bên trái, sau đó quét xuống cột Attributes cho tất cả các quy tắc để 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 cho thiết kế của bạn. Các quy tắc dư thừa có thể được tắt 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à tắt các quy tắc đó (bỏ chọn các hộp kiểm trong cột Enabled).

Bo mạch mặc định cũng sử dụng đơn vị hệ imperial. 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ẽ thay đổi từ 10mil thành 0.254mm. Mặc dù chữ số ít quan trọng nhất đó, ví dụ 0.002mm, là không đáng kể khi tạo dữ liệu đầ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 khó chịu.

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.

Các Design Rules mặc định

Khi một tài liệu PCB mới được tạo, nó 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 đúng. 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à tắt chúng. 

Để tắt 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ổng hợp ở phía bên phải của hộp thoại PCB Rules and Constraints Editor. Một quy tắc bị tắt sẽ hiển thị “mờ”. Tìm hiểu thêm về việc tắt các quy tắc thiết kế.

Dùng tùy chọn Enable để tắt một quy tắc mà bạn không cần. Một quy tắc bị tắt sẽ hiển thị “mờ”.Dùng tùy chọn Enable để tắt một quy tắc mà bạn không cần. Một quy tắc bị tắt sẽ hiển thị “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. Để dùng các quy tắc và giá trị mặc định riêng của mình, bạn có thể:

  • tạo và sử dụng một mẫu dự án, 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 đúng 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 sang 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ề xuất và nhập các quy tắc thiết kế.

Nhấp vào 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 lại danh sách quy tắc mặc định bằng cách nhấp vào 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ế quy tắc đó.

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 vào 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 lên 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ổng hợp cho 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ụ tạo một quy tắc thiết kế PCB mới.
Ví dụ 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 gán 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 cách đặt 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 đó nhưng có thêm hậu tố số 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 (ưu tiên cao nhất). Nếu đã tồn tại các quy tắc khác cùng loại, độ ư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 được xem là đã bị sửa đổi – dù có thể chúng chưa thực sự được 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 (chữ đậ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 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ổng hợp. Cửa sổ chỉnh sửa chính của hộp thoại sẽ thay đổi để cho phép truy cập các điều khiển 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 độ ưu tiên của quy tắc.

Dùng Rule Wizard để tạo một quy tắc mới

Một quy tắc mới cũng có thể được tạo bằng Design Rule Wizard. Truy cập trực tiếp bằng lệnh Design » Rule Wizard hoặc bằng cách nhấp vào 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 sửa đổi đối với các quy tắc hiện có mà chưa được “áp dụng”.

Dùng các trang của Wizard để tạo một quy tắc thiết kế mới. Các bước gồm:

  1. Chọn loại quy tắc cần thiết và đặt cho nó một tên có ý nghĩa (và thêm chú thích 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 độ ưu tiên của quy tắc.
Nếu tùy chọn Launch main design rules dialog được bật trên trang cuối của Wizard, hộp thoại PCB Rules and Constraints Editor sẽ mở ra khi nhấp vào 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.

Dùng Design Rule Wizard để hợp lý hóa quá trình tạo quy tắc.
Dùng Design Rule Wizard để hợp lý 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 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:

  • 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ổng hợp bên phải, rồi nhấp vào nút Duplicate Rule bên dưới danh sách.

Hợp lý 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.
Hợp lý 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ó cùng tên với bản 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 bản gốc. Về độ ưu tiên, nó sẽ được gán mức ưu tiên ngay dưới quy tắc gốc. Ví dụ, nếu quy tắc gốc có độ ưu tiên 1, bản sao sẽ được gán độ ưu tiên 2.

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

Vì một quy tắc thiết kế được gán phạm vi để áp dụng cho một tập đối tượng thiết kế mục tiêu, nên việc đầu 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 có thể dễ hơn (và nhanh hơn). 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 vất vả hình dung biểu thức truy vấn của bạn might nhắm đến điều gì, 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. Sau đó, bằng cách tạo một quy tắc sử dụng biểu thức truy vấn đó, bạn được đảm bảo 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 hiện có 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 và cửa sổ chỉnh sửa chính của 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 khi cần. Đồng thời thay đổi độ ưu tiê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 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 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 xây dựng 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à áp dụng lại cùng một truy vấn, không chỉ trong cùng một thiết kế mà còn trên các 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 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 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.

Để 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 đó hoặc chọn mục đó rồi nhấp 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 PCB Filter panel.

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ó còn nhắm đến đú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 mô tả trong phần trước.

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

PCB editor của Altium Designer là một môi trường vận hành theo rule. Các yêu cầu thiết kế được thực thi thông qua một tập rule thiết kế được xác định rõ ràng, cùng nhau xác định các ràng buộc cho bo mạch. Các rule thiết kế nhắm đến những đối tượng cụ thể trong một thiết kế. Để hệ thống rule PCB biết được 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 rule mặc định là All, nghĩa là nó sẽ được áp dụng cho all objects trên bo mạch. Dùng danh sách thả xuống, một phạm vi rule đơn giản có thể được cấu hình nhanh chóng.

Thiết lập phạm vi của một rule thiết kế để xác định việc áp dụng nó lên 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 nó lên các đối tượng thiết kế.

Thay vì bị giới hạn trong một danh sách định sẵn các tùy chọn mục tiêu có thể có, mỗi rule thiết kế có thể được xác định phạm vi 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. 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 danh sách thả xuống hiện tại.

Một truy vấn về cơ bản là một chỉ thị cho phần mềm, xác định tập đối tượng thiết kế sẽ được nhắm đến. 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 truy vấn trong Filter panel để tìm một tập đối tượng cụ thể, truy vấn cũng có thể được viết để xác định các đối tượng mà mỗi rule nhắm đến. 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ì mỗi khi 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ỳ đoạn đi dây nào của net VBAT trên lớp dưới cũng 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 theo rule là unary hay binary, bạn sẽ cần xác định lần lượt một hoặc hai phạm vi. Đối với một rule thiết kế unary, sẽ có các điều khiển để xác định một phạm vi rule duy nhất. 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ế binary, sẽ có các điều khiển cho Where The First Object Matches  và Where The Second Object Matches  để xác định cả hai phạm vi rule. Sử dụng các danh sách thả xuống có sẵn của từng phần để hỗ trợ xây dựng biểu thức truy vấn. Các điều khiển là giống nhau, dù xác định một hay hai phạm vi rule.

Khi các ký hiệu định danh linh kiện PCB hoặc tên polygon được thay đổi, 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 ký hiệu định danh linh kiện PCB trong các rule thiết kế sẽ được thay đổi khi các ký hiệu định danh đượ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 các ký hiệu định danh linh kiện thay đổi khả dụng khi tùy chọn PCB.Rules.UpdateQueryOnComponentDesignatorChange được bật trong 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 Advanced Settings dialog.

Nếu có lỗi cú pháp trong truy vấn, rule sẽ được 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 loại rule) nơi rule đó xuất hiện. Ngoài ra, văn bản cho loại rule và danh mục rule cũng được hiển thị bằng màu đỏ trong cây rule bên trái. Vì vậy, nếu bạn đã thu gọn một vùng 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 đó ở mức cao hơn trong hệ 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ố đó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 chắc chắn xử lý mọi phạm vi rule không đúng cú pháp.

Tùy chọn xác định phạm vi

Các tùy chọn xác định phạm vi đơn giản được cung cấp để cho phép bạn nhanh chóng tạo các 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 xác định phạm vi được hiển thị sẽ được tập trung theo loại rule.

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

Các ví dụ về tùy chọn xác định phạm vi đơn giản là:

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

  • Net - tạo một truy vấn phạm vi nhắm đến 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 sẵn có, bao gồm No Net.

  • Net Class - tạo một truy vấn phạm vi nhắm đến tất cả các đối tượng trong một lớp net 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 net mong muốn từ danh sách các lựa chọn sẵn có, bao gồm All Nets.

  • Layer - tạo một truy vấn phạm vi nhắm đến 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 sẵn có.

  • Net and Layer - tạo một truy vấn phạm vi nhắm đến 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 rule bằng các tùy chọn xác định phạm vi đơn giản, một truy vấn vẫn được tạo ra. Truy vấn sẽ đượ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 cụ thể của mình 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ợ tạo 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 hiện có.

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 trong 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 ưa 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, hoặc thậm chí dán truy vấn vào phạm vi thứ hai của một rule binary. Đ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à phương pháp đơn giản hơn để xây dựng truy vấn, sử dụng các loại điều kiện và giá trị nhạy ngữ cảnh, chỉ cho phép bạn xây dựng bằng các “khối” phù hợp. Để xây dựng truy vấn nâng cao với đặc tả đầy đủ về từ khóa và cú pháp toán tử, hãy sử dụng Query Helper.

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

Khi tùy chọn Custom Query được chọn, hãy nhấp nút để mở Building Query from Board dialog, cho phép bạn tạo một truy vấn để nhắm đến các đối tượng cụ thể trong tài liệu thiết kế thông qua việc 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 đến tập đối tượng cần dùng. Mỗi điều kiện bao gồm 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 phù hợp với việc xây dựng phạm vi cho loại rule hiện tại và các giá trị cho loại điều kiện đã chọn, tương ứng.

Khi một điều kiện được xác định, bản xem trước của truy vấn hiệ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 nối bằng AND và/hoặc OR, đồng thời cũng có thể thêm mức ưu tiên (thông qua việc dùng ngoặc/thụt lề) để tinh chỉnh tập đối tượng mục tiêu. Khi biểu thức truy vấn đã được xác định như yêu cầu, nhấp 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.

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

Khi tùy chọn Custom Query được chọn, nhấp nút để truy cập Query Helper dialog. Query Engine nền sẽ phân tích thiết kế PCB và liệt kê tất cả các đối tượng sẵn có, cùng với các từ khóa tổng quát để 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ề truy vấn phức tạp được xác định bằng Query Helper.
Ví dụ về truy vấn phức tạp được xác định bằng Query Helper.

Các khu vực này là:

  1. Query Region – 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 rule sẽ được đưa vào vùng này theo mặc định khi truy cập hộp thoại. Bạn có thể gõ trực tiếp trong vùng này; một “danh sách gợi ý” nhạy ngữ cảnh gồm các từ khóa hoặc đối tượng có thể dùng 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 để dùng khi xây dựng biểu thức. Nhấp 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. Việc 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. Xác định từ khóa hoặc đối tượng sẽ được 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 (phía dưới bên trái của 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 xác định theo yêu cầu, nhấp 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 dùng hộp thoại Query Helper để xây dựng truy vấn, việc nhấp vào một từ khóa trong một trong các danh sách sẵn có 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, nên xem qua thứ tự ưu tiên đang áp dụng cho các toán tử được dùng trong biểu thức Query logic. Suy cho cùng, nếu không có kiến thức này, một biểu thức có thể không nhắm đến đúng các đối tượng cần thiết.

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

  1. 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 trường hợp mơ hồ được giải quyết theo hướng từ trái sang phải. 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 ngoặc bất cứ khi nào có bất kỳ khả năng nào, dù nhỏ đến đâu, rằng truy vấn có thể không được diễn giải chính xác. Việc dùng ngoặc một cách rộng rãi sẽ loại bỏ nghi ngờ và làm cho các truy vấn kết quả dễ đọc hơn đối với người khác.

Ưu tiên rule

Để đơn giản hóa quá trình xác định và quản lý rule, ý tưởng là xác định 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 các tình huống cụ thể. Để điều này khả thi, bạn cần có khả năng đặt mức ưu tiên cho các rule nhằm chỉ ra rule nào sẽ được dùng khi một đối tượng bị nhắm đến bởi nhiều rule cùng loạ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 xác định một rule duy nhất áp dụng cho mọi net trên bo mạch. Rule này sau đó có thể bị ghi đè cho một net cụ thể (hoặc một lớp net nếu xét trường hợp đó) bằng cách thêm một rule khác cùng loại nhưng có mứ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ẽ xác định một rule mask nhắm đến mọi pad và via trên bo mạch, sau đó có thể bị ghi đè cho các pad trong một loại footprint cụ thể. Rule dành riêng cho footprint này thậm chí có thể tiếp tục bị 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 đều được thiết lập phù hợp. Khi một rule mới được tạo, mặc định nó 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 rule trong hộp thoại Edit Rule Priorities.
Thay đổi mức ưu tiên rule trong hộp thoại Edit Rule Priorities.

Ban đầu, hộp thoại sẽ liệt kê tất cả các cá thể 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 xác định cho loại đó. Các rule đã xác định đượ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 để lần lượt di chuyển nó lên hoặc xuống trong thứ tự ưu tiên.

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 thành 1 (tức là mức ưu tiên cao nhất). Khi một rule được nhân bản, 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ế được bao phủ bởi nhiều hơn một rule có cùng phạm vi. Trong trường hợp này, sẽ có xung đột. Mọi xung đột đều được giải quyết bằng thiết lập mức ưu tiên. Hệ thống sẽ duyệt qua 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 đố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 đó.

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

Tất nhiên, rule có thể được sửa đổi bất kỳ lúc nào. Thực tế, để đạt được bộ rule làm việc cuối cùng thường cần 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 xác định phạm vi để bảo đảm các đối tượng thiết kế mục tiêu được “nhận diện” bởi các rule tương ứng theo đúng 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 cho 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 cả trong khung cây thư mục và các danh sách tóm tắt áp dụng. Các 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 tạo (được hiển thị bằng 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 sự sửa đổi, cùng với việc tên rule được hiển thị đậm.
Ví dụ về một rule hiện có đã được sửa đổi. Dấu hoa thị được dùng để đánh dấu sự sửa đổi, cùng với việc tên rule được hiển thị đậ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 có các rule khác cùng loại đang tồn tại, mức ưu tiên của chúng sẽ được dịch chuyển (giảm) xuống một bậc tương ứng. Khi đó, chúng được xem là đã bị sửa đổi mặc dù có thể chúng không được sửa đổi 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 (đậm kèm dấu hoa thị).

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

Nếu hệ thống phát hiện một rule 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ô đỏ 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 loại rule) nơi rule đó xuất hiện. Ngoài ra, văn bản cho 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 vùng 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 đó ở mức cao hơn trong hệ 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ố đó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, 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 làm việc theo luật của trình biên tập PCB trong phần mềm, việc xây dựng một tập hợp các luật khá ấn tượng và toàn diện để ràng buộc bo mạch thành công là điều rất thường 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ố luật; có thể chúng không áp dụng cho bo mạch đang xét hoặc cần được tạm thời vô hiệu hóa để giảm tải cho Design Rule Checker (và nhờ đó tăng tốc hiệu năng của nó!). Việc vô hiệu hóa là một cách tốt để giữ lại các luật này phòng khi sau này cần dùng lại.

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

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

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

Xóa Luật

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

  • Sử dụng cây ở bên trái để điều hướng đến luật 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 luật cụ thể trong cây ở bên trái, sau đó chọn luật cần xóa trong danh sách tóm tắt ở bên phải. Sau đó nhấp vào nút Delete Rule(s) bên dưới danh sách.

Tên luật sẽ xuất hiện đậm kèm gạch ngang để phân biệt đây là thao tác xóa chưa được “áp dụng”.

Xóa một luật đơn lẻ.
Xóa một luật đơn lẻ.

  • Nếu một luật thiết kế cụ thể không còn cần thiết nhưng có thể sẽ 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 việc này bằng cách chuyển đổi tùy chọn Enable tương ứng của luật trong một trong các danh sách tóm tắt liên quan ở phía bên phải hộp thoại PCB Rules and Constraints Editor.

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

  • Một số luật 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 luật này bị xóa (khiến không còn luật nào thuộc loại đó tồn tại), nó sẽ tự động được tạo lại. Tìm hiểu thêm về các luật thiết kế mặc định.

Nhiều loại luật có các luật 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 luật cụ thể của một trong những loại luật đó bị xóa, luật mặc định sẽ tự động được thêm lại vào lần tiếp theo hộp thoại PCB Rules and Constraints Editor được truy cập. Ngoài ra, có thể tạo lại các luật mặc định bằng cách nhấp nút Create Default Rules ở cuối hộp thoại.

Xuất và Nhập Luật

Các luật 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à tải các định nghĩa luật ư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 ở 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, tại đó bạn có thể chọn luật 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 luậ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 ở 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, tại đó bạn có thể chọn luật thiết kế cần nhập. Trong hộp thoại Import File mở ra, duyệt đến tệp .rul cần nhập. 

Khi nhập một hoặc nhiều bộ luật (trong tệp *.rul ) có cùng tên với các bộ đã tồn tại, hộp thoại Rule Set Already Exists sẽ mở ra sau khi nhấp vào  trong hộp thoại Select Design Rules (). Có các thao tác sau để xử lý các luật được nhập trong một bộ:

  • Add to existing rules – chọn nhập tất cả các luật đã chọn; nếu có xung đột (một luật cùng tên đã tồn tại trong thiết kế), một luật từ tệp sẽ được nhập với hậu tố _<n> trong tên của nó.

  • Add and replace matching rules – chọn nhập tất cả các luật đã chọn; nếu có xung đột, luật thiết kế hiện có sẽ được thay thế bằng luật từ tệp.

  • Replace all – chọn xóa tất cả các luật hiện có trong bộ luật và nhập tất cả các luật đã chọn.

Nếu có nhiều hơn một bộ luật đã tồn tại trong PCB, bạn có thể chọn một trong các tùy chọn trên cho từng bộ luật bằng hộp thoại Some Rule Sets Already Exist được mở ra ().

Báo cáo Luật Thiết kế

Có thể tạo báo cáo về các luật thiết kế hiện đang được định nghĩa 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 luật, một danh mục luật cụ thể hoặc một loại luật 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 thích hợp đã được tải sẵn. Sử dụng hộp thoại này để kiểm tra báo cáo bằng nhiều điều khiển trang/thu phóng khác nhau trước khi cuối cùng xuất ra tệp hoặc in.

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 định nghĩa 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ý được hỗ trợ.

Thêm quy tắc vào... Từ... Cho một Phạm vi quy tắc PCB là...
Dây bảng 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 dây bằng lệnh Place » Directives » Parameter Set. Net
Bus bảng 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. Lớp Net
Harness bảng 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. Lớp Net
Blanket bảng 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 lớp có tên cần thiết để tạo một lớp net cho tất cả các net được blanket bao phủ, sau đó lớp này sẽ được dùng cho phạm vi quy tắc. Lớp Net

Trong mỗi trường hợp, phương pháp thêm tham số dựa trên quy tắc là như 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ột ID duy nhất sẽ được gán cho mỗi tham số quy tắc. 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 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ộ hóa.

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 để định nghĩa 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 định nghĩa khá nhiều quy tắc thiết kế với các 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 đã định nghĩa thực sự nhắm đến đúng các đối tượng dự kiến. Sự cẩn thận ở giai đoạn định nghĩa quy tắc có thể giúp tránh lãng phí thời gian và công sức 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 bằng cách 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 bằng cách lấy một quy tắc (ở các vị trí khác nhau hoặc trong phần mềm) và quan sát những đối tượng nào nằm trong 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 nào đã được đặt trong thiết kế hiện tại, bạn có thể nhanh chóng truy cập thông tin về những quy tắc thiết kế đơn nguyên nào áp dụng cho đối tượng đó. Đặt 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ế đã được định nghĩa có thể áp dụng cho đối tượng đã 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 nguyên.
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 nguyên.

Mỗi quy tắc được liệt kê trong hộp thoại sẽ có hoặc là dấu chọn () hoặc là dấu chéo () bên cạnh. Dấu chọn biểu thị quy tắc có mức ưu tiên cao nhất trong tất cả các quy tắc cùng loại có thể áp dụng; đây là quy tắc hiện đang được áp dụng. Các quy tắc cùng loại có mức ưu tiên thấp hơn được liệt kê với dấu chéo bên cạnh, cho biết rằng chúng có thể áp dụng nhưng do không phải là quy tắc có mứ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 chéo bên cạnh và sẽ xuất hiện với định dạng gạch ngang.

Theo cách 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 đã được đặt trong thiết kế. Đặt 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 hướng dẫn để chọn hai đối tượng trong thiết kế. Hộp thoại Applicable Binary Rules sau đó 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, thì phiên bản Binary  của hộp thoại Applicable Rules sẽ không mở.

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 qua bảng 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 PCB Rules And Violations. Bảng này 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 bạn có thể duyệt cụ thể theo loại quy tắc – miễn là ít nhất một quy tắc của bất kỳ loại nào đã đượ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, việc lọc sẽ được áp dụng bằng cách dùng 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. Bằng cách sử 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 đến.

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

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 thanh trượt Masked Objects được truy cập từ phần Mask and Dim Settings trên tab View Options của bảng 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 thanh trượt Dimmed Objects cũng có sẵn trong phần này của bảng.

Việc 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ì một quy tắc có thể được chỉnh sửa trực tiếp từ bảng và do đó, truy vấn có thể được 'tinh chỉnh' cho đến khi các đối tượng mong muốn được thu vào (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 của quy tắc trong bảng 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 thuộc vào 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 tiếp tục tinh chỉnh phạm vi quy tắc và/hoặc các ràng buộc một cách linh hoạt.
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 tiếp tục tinh chỉnh phạm vi quy tắc và/hoặc các ràng buộc một cách linh hoạt.

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

Hộp thoại PCB Rules and Constraints Editor bao gồm một tiện ích kiểm tra 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 điều 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 có thể á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 nguyên) – số lượng đối tượng có thể á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 ưu tiên cao hơn, các đối tượng nằm trong phạm vi của quy tắc đó sẽ không được tính đến cho giá trị này).

  • Rules with highest priorities (chỉ với quy tắc đơn nguyên) – nếu có các quy tắc có mứ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 một 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ị tác độ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ị tác động.

 
 
 
 
 

Nhanh chóng xem các đối tượng được biểu thức phạm vi của một quy tắc thu nhận bằng cách sử dụng tính năng Test Queries.
Nhanh chóng xem các đối tượng được biểu thức phạm vi của một quy tắc thu nhận bằng cách sử dụ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 bạn có thể sử dụng phụ thuộc vào giải pháp Altium mà bạn đang có – Altium Develop, Altium Agile Teams, Altium Agile Enterprise, hoặc Altium Designer (đang trong thời hạn hiệu lực).

Nếu bạn không thấy một tính năng được nêu trong tài liệu có trong phần mềm thực tế 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