Kiểm tra tính hợp lệ của thiết kế logic
Sơ lược
- Tìm hiểu cách cấu hình báo cáo lỗi và chạy xác thực thiết kế đa bo mạch.
- Nắm được cách xác định vị trí, sắp xếp và xem xét các vi phạm trong bảng Messages, cũng như lý do cần chạy lại quá trình xác thực sau khi sửa lỗi.
- Nhận diện các vấn đề kết nối như tên net khác nhau, chân chưa kết nối và xung đột chưa được giải quyết, kèm theo hướng dẫn xem xét hoặc xử lý chúng.
Sau khi các mô-đun được kết nối với nhau trên sơ đồ nguyên lý đa bo mạch, có thể xác minh kết nối giữa các bo mạch. Quá trình này sẽ phát hiện lỗi gán net cho chân và lỗi đấu nối giữa các chân. Có thể khắc phục những lỗi này và chuyển các thay đổi xuống các dự án PCB bị ảnh hưởng hoặc đưa ngược trở lại sơ đồ nguyên lý hệ thống nguồn.
Altium Designer có thể kiểm tra thiết kế đa bo mạch của bạn để phát hiện các lỗi logic, điện và trình bày dựa trên nội dung thiết kế và các thiết lập kiểm tra dự án. Có thể thực hiện nhiều phép kiểm tra trên thiết kế đa bo mạch được xác thực. Các phép kiểm tra này phát hiện những vi phạm liên quan đến kết nối giữa các mô-đun trên trang sơ đồ, cũng như các vấn đề liên quan đến các bộ phận ghép nối, và được cấu hình trong tùy chọn dự án.
Cấu hình tùy chọn xác minh và chạy xác thực
Chọn lệnh Project » Project Options từ các menu chính để mở hộp thoại Project Options và chọn tab Báo cáo lỗi. Có thể thay đổi Report Mode của từng vi phạm thành một trong bốn giá trị bằng cách nhấp vào đó và chọn giá trị mong muốn trong danh sách thả xuống.

Cấu hình các phép kiểm tra vi phạm cần thiết trên tab Error Reporting của hộp thoại Project Options.
Để xác thực thiết kế đa bo mạch, chọn lệnh Design » Run ERC từ các menu chính hoặc menu chuột phải trong không gian thiết kế.

Xác thực thiết kế đa bo mạch bằng lệnh Run ERC.
Diễn giải thông báo và xác định vị trí vi phạm
Nếu phát hiện lỗi và cảnh báo trong thiết kế khi xác thực, một thông báo sẽ được hiển thị trong bảng Messages.

Bảng Messages hiển thị các cảnh báo và lỗi được phát hiện trong dự án thiết kế đa bo mạch.
Bảng Messages là nơi tập trung hiển thị các vi phạm. Những điều cần lưu ý bao gồm:
-
Bảng Messages có hai vùng – vùng dạng lưới phía trên tóm tắt các vi phạm; vùng phía dưới cung cấp thông tin chi tiết về vi phạm hiện được chọn.
-
Nhấp đúp vào một thông báo để truy tìm chéo đến vi phạm đó. Nhấp đúp vào một mục chi tiết để hiển thị đối tượng cụ thể đó.
-
Bạn có thể nhấp vào bất kỳ tiêu đề cột nào trong bảng Messages (ví dụ: Class, Document, Message) để hỗ trợ sắp xếp các lỗi và cảnh báo.
-
Nhấp chuột phải trong bảng Messages, sau đó sử dụng các tùy chọn trong menu con Group By để nhóm các lỗi và cảnh báo theo tiêu chí cụ thể.
-
Nhấp chuột phải trong bảng Messages, sau đó sử dụng lệnh Clear thích hợp để xóa các thông báo hoặc sử dụng lệnh Export To Report để xuất các thông báo thành báo cáo.
Các loại vi phạm trong thiết kế đa bo mạch
Các phần dưới đây cung cấp thông tin chi tiết về từng phép kiểm tra vi phạm có sẵn cho thiết kế đa bo mạch.
Các vi phạm liên quan đến kết nối
Tên net khác nhau
Vi phạm này xảy ra khi tên net gắn với một kết nối trên sơ đồ nguyên lý đa bo mạch không giống với tên net gắn với chân tương ứng của đầu nối trong dự án thiết kế con.
Thông báo
Một thông báo được hiển thị trong bảng Messages theo định dạng sau:
Net Name "<ConnectionNetName>" for connection "<ConnectionDesignator>" does not match with Net "<ConnectorPinNetName>" of "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
trong đó:
-
ConnectionNetName– tên net (trên sơ đồ nguyên lý đa bo mạch) gắn với kết nối xuất phát từ chân được chỉ định. -
ConnectionDesignator– ký hiệu định danh của kết nối. -
ConnectorPinNetName– tên net gắn với chân được chỉ định của đầu nối trong dự án thiết kế con. -
ConnectorDesignator-PinNumber– ký hiệu định danh của linh kiện đầu nối trong thiết kế con được biểu diễn bằng cổng vào của mô-đun và chân của đầu nối đó. -
ModuleDesignator– ký hiệu định danh của mô-đun trên sơ đồ nguyên lý đa bo mạch dùng để tham chiếu đến dự án thiết kế con. -
ChildProjectName– tên, bao gồm cả phần mở rộng, của dự án con được mô-đun tham chiếu đến.
Khuyến nghị khắc phục
Vi phạm này thường phát sinh khi tên net trên chân đầu nối trong một dự án con khác với tên net trên chân đầu nối ghép cặp trong một dự án con khác, tức là hai bo mạch được nối với nhau thông qua kết nối giữa các mô-đun cha tương ứng trên tài liệu sơ đồ nguyên lý đa bo mạch.
Sử dụng hộp thoại Connection Manager để xem các tên net hiện đang được sử dụng. Mục Net Name hiển thị tên được sử dụng cho kết nối trên tài liệu sơ đồ nguyên lý đa bo mạch. Khi chọn kết nối, bạn cũng có thể thấy thông tin này một cách trực quan trong vùng Conflict Resolution của hộp thoại. Khi các chân đầu nối được gắn với các net khác nhau trong hai dự án con, Net Name của kết nối mặc định là <FromPinNetName>/<ToPinNetName>. Các tên net này được phản ánh trong các trường Module Net tương ứng với chân đi và chân đến. Có thể khắc phục theo hai cách:
-
Sử dụng các nút
trong vùng Conflict Resolution cho cả hai mô-đun để nhanh chóng đặt net của từng mô-đun trùng với tên net của kết nối. Sau đó áp dụng các thay đổi và chuyển những thay đổi đó trở lại các dự án con bằng lệnh Design » Update Child Projects. Các net gắn với các chân đầu nối tương ứng trong những dự án đó sẽ được cập nhật phù hợp thông qua ECO.
-
Đổi tên net gắn với chân đầu nối liên quan trong một dự án con cho trùng với tên net được sử dụng cho chân đầu nối trong dự án còn lại. Sau đó biên dịch dự án con và đưa thay đổi trở lại sơ đồ nguyên lý đa bo mạch bằng lệnh Design » Import From Child Projects. Tên net của kết nối sẽ được cập nhật tương ứng thông qua ECO.
Tham khảo trang Làm việc với các kết nối để tìm hiểu thêm về cách làm việc với hộp thoại Connection Manager.
Không có net
Vi phạm này xảy ra khi một chân đầu nối được biểu diễn trong cổng vào của mô-đun trên sơ đồ nguyên lý đa bo mạch không được nối với bất kỳ net nào trong dự án thiết kế con mà mô-đun đó tham chiếu đến.
Thông báo
Một thông báo được hiển thị trong bảng Messages theo định dạng sau:
"Pin <ConnectorDesignator-PinNumber>" is not connected in child project "Module <ModuleDesignator>(<ChildProjectName>)"
trong đó:
-
ConnectorDesignator-PinNumber– ký hiệu định danh của linh kiện đầu nối trong thiết kế con được đại diện bởi cổng của mô-đun và chân gây vi phạm của đầu nối đó. -
ModuleDesignator– ký hiệu định danh của mô-đun trên sơ đồ nguyên lý đa bo mạch được dùng để tham chiếu đến dự án thiết kế con. -
ChildProjectName– tên, bao gồm phần mở rộng, của dự án con được mô-đun tham chiếu đến và chứa đầu nối có chân được chỉ định không được kết nối với net nào.
Khuyến nghị khắc phục
Vi phạm này có thể phát sinh trong một số trường hợp. Hãy cân nhắc những điều sau khi khắc phục vi phạm thuộc loại này:
-
Nếu chân của đầu nối được tham chiếu không được sử dụng trong thiết kế, hãy nối chân đó với đường nguồn phù hợp (ví dụ:
GND). -
Đảm bảo mọi dây nối đến chân đầu nối đều tiếp xúc điện, tức là dây hoặc bus phải nối vào điểm tiếp xúc điện của chân.
-
Nếu chân đầu nối được thiết kế để nối với một đoạn dây ngắn có nhãn net, hãy đảm bảo nhãn net tồn tại và đã được gắn đúng vào dây.
Xung đột chưa được giải quyết
Vi phạm này xảy ra khi có xung đột về kết nối giữa hai bo mạch được kết nối với nhau trong hệ thống.
Thông báo
Một thông báo được hiển thị trong bảng Messages theo định dạng sau:
Unresolved conflict exists: Net "<OldModuleNetName>" has been renamed to "<NewModuleNetName>" for "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
trong đó:
-
OldModuleNetName– tên của net liên kết với chân được chỉ định của đầu nối trong dự án thiết kế con, hiện được lưu trong bản đồ dữ liệu kết nối hiện có của trình biên tập sơ đồ nguyên lý đa bo mạch. -
NewModuleNetName– tên của net hiện liên kết với chân được chỉ định của đầu nối trong dự án thiết kế con, sau khi nhập các thay đổi đã thực hiện đối với dự án con đó. -
ConnectorDesignator-PinNumber– ký hiệu định danh của linh kiện đầu nối trong thiết kế con được đại diện bởi cổng của mô-đun, và chân của đầu nối đó. -
ModuleDesignator– là ký hiệu định danh của mô-đun trên sơ đồ nguyên lý đa bo mạch được dùng để tham chiếu đến dự án thiết kế con. -
ChildProjectName– là tên, bao gồm phần mở rộng, của dự án con được mô-đun tham chiếu đến.
Khuyến nghị khắc phục
Vi phạm này thường phát sinh khi có thay đổi liên quan đến đầu nối trong một dự án con, và khi thay đổi đó được nhập trở lại tài liệu sơ đồ nguyên lý đa bo mạch, nó sẽ phá vỡ kết nối hiện có đã được xác định giữa hai bo mạch được kết nối với nhau. Ví dụ: các net được gán cho hai chân của đầu nối có thể đã bị hoán đổi trong một dự án con, dẫn đến sự không khớp khi lần theo các chân đó đến đầu nối của một bo mạch đích khác.
Sử dụng hộp thoại Connection Manager để xem các xung đột chưa được giải quyết. Danh sách trong hộp thoại Connection Manager sẽ làm nổi bật mọi kết nối được coi là có xung đột, hay trên thực tế là mọi bản cập nhật kết nối được nhập vào nhưng không khớp với bản đồ dữ liệu kết nối hiện có của trình biên tập sơ đồ nguyên lý đa bo mạch.
Tham khảo trang Làm việc với các kết nối để tìm hiểu thêm về cách làm việc với hộp thoại Connection Manager và các tùy chọn giải quyết xung đột có sẵn.
Các vi phạm liên quan đến linh kiện ghép nối
Cổng trống
Vi phạm này xảy ra khi một cổng mô-đun hiện không tham chiếu đến linh kiện đầu nối nào trong dự án thiết kế con được mô-đun cha của nó tham chiếu đến.
Thông báo
Một thông báo được hiển thị trong bảng Messages theo định dạng sau:
Entry "<EntryDesignator>" is empty in "Module <ModuleDesignator>(<ChildProjectName>)"
trong đó:
-
EntryDesignator– ký hiệu định danh của cổng mô-đun gây vi phạm. -
ModuleDesignator– ký hiệu định danh của mô-đun trên sơ đồ nguyên lý đa bo mạch được dùng để tham chiếu đến dự án thiết kế con. -
ChildProjectName– tên, bao gồm phần mở rộng, của dự án con được mô-đun tham chiếu đến.
Khuyến nghị khắc phục
Vi phạm này có thể phát sinh khi:
-
Một linh kiện đầu nối trong dự án con được tham chiếu và hiện liên kết với một cổng mô-đun có sẵn đã bị xóa tham số đặc biệt
System:Connector, và thay đổi đó đã vô tình được nhập vào tài liệu sơ đồ nguyên lý đa bo mạch. Trong trường hợp này, hãy thêm lại tham số cho linh kiện rồi nhập thay đổi trở lại tài liệu sơ đồ nguyên lý đa bo mạch. -
Một cổng mới đã được đặt thủ công trong mô-đun cha. Trong trường hợp này, hãy nhập các thay đổi từ dự án con để đồng bộ hóa các cổng cần thiết với các đầu nối tương ứng rồi xóa cổng dư thừa.
Không có linh kiện ghép nối
Vi phạm này xảy ra khi một cổng mô-đun hiện không được kết nối với mô-đun khác trong thiết kế.
Thông báo
Một thông báo được hiển thị trong bảng Messages theo định dạng sau:
Part "<ConnectorDesignator>" (Entry <EntryDesignator>) doesn't have Mated Part in "Module <ModuleDesignator>(<ChildProjectName>)"
trong đó:
-
ConnectorDesignator– ký hiệu định danh của linh kiện đầu nối trong dự án con được tham chiếu. -
EntryDesignator– ký hiệu định danh của cổng mô-đun gây vi phạm (cổng này phản ánh và được đồng bộ với đầu nối tương ứng trong dự án con được tham chiếu). -
ModuleDesignator– ký hiệu định danh của mô-đun trên sơ đồ nguyên lý đa bo mạch được dùng để tham chiếu đến dự án thiết kế con. -
ChildProjectName– tên, bao gồm phần mở rộng, của dự án con được mô-đun tham chiếu đến.
Khuyến nghị khắc phục
Đảm bảo cổng mô-đun gây vi phạm được kết nối với cổng cần thiết trong mô-đun đích – tạo kết nối giữa đầu nối trên một bo mạch con với đầu nối trên bo mạch con khác. Chọn loại kết nối và đi dây tương ứng giữa các cổng của hai mô-đun.
Tham khảo trang Làm việc với các kết nối để tìm hiểu thêm.