Hỗ trợ thiết kế ngược PCB
Sau khi nhập dữ liệu CAM vào một tài liệu CAM, bạn sẽ thấy tùy chọn Export to PCB bị làm mờ, bất kể chế độ hiện tại của CAM Editor là gì (CAM hay NC). Lệnh này cho phép bạn thiết kế ngược bố cục PCB trực tiếp từ các tệp CAM. Việc này không tuân theo quy trình xuất/nhập thông thường mà thay vào đó nạp dữ liệu trực tiếp vào PCB Editor.
Các phần sau đây trình bày chi tiết các bước cần thực hiện để thiết kế ngược một thiết kế PCB từ dữ liệu CAM, từ lúc nhập ban đầu vào tài liệu CAM, qua giai đoạn chuẩn bị cần thiết trước khi xuất, và cuối cùng là xuất dữ liệu thiết kế sang PCB Editor.
Nhập dữ liệu
Hộp thoại Preferences
Điểm bắt đầu cho toàn bộ quy trình là nạp các tệp ODB++, hoặc Gerber và NC Drill vào một tài liệu CAM mới. Nếu bạn có netlist IPC, bạn cũng nên nhập tệp này cùng lúc khi nhập dữ liệu Gerber và NC Drill. Khi nhập ODB++, chỉ nhập tệp IPC nếu netlist không nằm trong thư mục ODB++. Netlist IPC sẽ cho phép bạn cập nhật các net đã trích xuất bằng tên gốc của chúng và phân biệt giữa via xuyên lỗ và pad tự do không thuộc linh kiện.
Các lệnh trong menu con File » Import đều tìm các tệp có phần mở rộng nhất định trong một thư mục cho trước. Ví dụ, khi nhập các tệp khoan, thư mục được chỉ định sẽ lọc ra tất cả các tệp ngoại trừ những tệp có phần mở rộng .DR*, .ROU, .RTE, *.NC*, và *.TX* . Nếu bạn nhận được các tệp khoan có phần mở rộng khác với các phần mở rộng này, bạn có thể mở rộng danh sách đó trên trang CAM Editor - Miscellaneous page của hộp thoại Preferences. Từ đây, bạn cũng có thể thay đổi bất kỳ danh sách phần mở rộng mặc định nào liên quan đến các tệp Gerber, Aperture, HPGL và Netlist.
Hộp thoại Preferences
Trang CAM Editor - Import/Export page của hộp thoại Preferences cho phép bạn thay đổi các thiết lập nhập và xuất mặc định cho tệp Gerber. Ví dụ, nếu bạn thường xuyên nhận dữ liệu CAM được tạo bằng P-CAD, bạn có thể cân nhắc thay đổi định dạng độ chính xác tọa độ từ 2:3 (mặc định của Altium Designer) sang 4:4 (mặc định của P-CAD). Nếu không, bạn vẫn sẽ có cơ hội thay đổi các thiết lập này khỏi trạng thái mặc định mỗi khi nhập một job.
Gán loại lớp
Hộp thoại Layer Table Detection Template
Các tệp Gerber và Drill riêng lẻ đều được gán cho các lớp riêng lẻ. Ngoài ra, CAM Editor sẽ xem tên của chúng khi nhập và cố gắng gán cho mỗi tệp một loại lớp. Nó thực hiện việc này dựa trên thông tin trong hộp thoại Layer Types Detection Template, được truy cập bằng cách chọn Tables » Layer Type Detection từ menu chính. Đây là một hộp thoại có thể tùy chỉnh hoàn toàn, chứa các đoạn của tên tệp (phần mở rộng, từ khóa, hoặc cả hai) dùng để nhận diện từng tệp theo loại lớp, chẳng hạn như lớp tín hiệu, negative plane, border, drill và lớp tạm thời (cơ khí).
Ví dụ, PCB Editor của Altium Designer phân biệt các lớp Gerber bằng phần mở rộng của chúng, chẳng hạn .gtl cho lớp trên cùng và .gbl cho lớp dưới cùng. Các công cụ thiết kế khác có thể xuất tệp .top cho lớp trên cùng và tệp .sol cho lớp dưới cùng (solder). Một số công cụ này, chẳng hạn như P-CAD, cho phép người dùng tự chỉ định tên xuất Gerber.
Sau khi nhập bất kỳ nhóm tệp CAM nào, bạn có thể mở hộp thoại Layers Table và xem lại các gán loại đã được thực hiện tự động. Bạn có thể mở danh sách thả xuống cho loại và sửa đổi bất kỳ gán nào. Ví dụ, bạn sẽ nhận thấy rằng tất cả các tệp khoan đều tự động được đặt thành loại Drill Top. Tại thời điểm này, bạn có thể muốn phân biệt giữa các bộ khoan top, bottom và internal. Tuy nhiên, điều này không bắt buộc.
Hộp thoại Layer Table
Nếu bạn thường xuyên nhận các tệp Gerber hoặc drill không được tự động gán đúng loại lớp, bạn nên xem lại tên tệp để tìm bất kỳ đặc điểm nhận dạng nào mà CAM Editor có thể dùng để nhận diện chúng, rồi thêm các đặc điểm đó vào hộp thoại Layer Types Detection Template. ODB++ không cần dùng đến hộp thoại Layer Types Detection Template vì mọi thông tin cần để nhận diện từng lớp đều được lưu trong tệp matrix. Tuy nhiên, vẫn nên kiểm tra lại các gán loại lớp sau khi quá trình nạp hoàn tất.
Stackup bo mạch và các bộ khoan
Hộp thoại Create/Update Layers Order
Các lớp đã được gán là loại tín hiệu (top, bottom hoặc internal) hoặc plane giờ đây sẽ xuất hiện trong hộp thoại Create/Update Layers Order, được truy cập bằng cách chọn Tables » Layers Order từ menu chính. Trong hầu hết các trường hợp, CAM Editor sẽ có thể xác định stackup từ dữ liệu CAM được cung cấp, nhưng trong một số trường hợp, tất cả những gì được cung cấp chỉ là thứ tự logic (thứ tự các lớp được nhập vào). Tốt nhất là bạn nên đảm bảo thông tin trong cột Layer Physical Order là chính xác, với số một là lớp trên cùng. Hãy cẩn thận không gán cùng một số thứ tự cho các lớp khác nhau. Khi bạn đã chỉ định một stackup hợp lệ, cột thứ tự vật lý sẽ được ưu tiên hơn danh sách logic khi mở lại hộp thoại này và bạn sẽ thấy các lớp được liệt kê theo stackup đề xuất của chúng.
Thứ tự vật lý này cũng sẽ được phản ánh trong hộp thoại Create/Update Layers Sets, được truy cập bằng cách chọn Tables » Layers Sets từ menu chính, nơi bạn ghép các tệp khoan với các tập lớp. Hãy xét một bo mạch 6 lớp (bốn lớp tín hiệu, hai lớp plane) có cả via mù và via chôn. Thiết kế có thể chứa bốn tệp khoan riêng biệt:
- một tệp cho cặp Top-Bottom (xuyên lỗ)
- một tệp cho cặp Top-InternalPlane1
- một tệp cho cặp MidLayer1-MidLayer2
- một tệp cho cặp Bottom-InternalPlane2.
Trích xuất netlist
Bước này, được truy cập bằng cách chọn Tools » Netlist » Extract từ menu chính, phụ thuộc vào độ chính xác của các bước trước đó. Bạn sẽ không thể thực hiện nếu chưa có gán loại lớp cho mọi lớp trong bo mạch của mình (bạn nên đặt các lớp cơ khí thành Temporary). Sau khi chạy lệnh, thông tin netlist sẽ được trích xuất và danh sách các net sẽ xuất hiện trên tab Nets của panel CAMtastic . Mỗi net được liệt kê theo tổng chiều dài của nó. Nhấp vào bất kỳ mục net nào trong panel sẽ khiến net đó được chọn và được phóng to trong không gian thiết kế.
CAM Editor sẽ dò theo kết nối từ lớp này sang lớp khác, tham chiếu các tệp NC drill để tạo kết nối giữa các lớp. Vì lý do này, stackup lớp mà bạn đã xác định trong hộp thoại Create/Update Layers Order và các cặp khoan bạn đã chọn trong hộp thoại Create/Update Layers Sets là những tiền đề rất quan trọng để trích xuất một netlist chính xác từ dữ liệu CAM.
Nếu bạn đã đưa vào một tệp netlist IPC-D-356 cùng với các tệp Gerber và NC Drill đã nhập, bạn có thể khôi phục các tên net gốc (và có ý nghĩa) bằng cách chọn Tools » Netlist » Rename Nets từ menu chính. Sau khi chạy lệnh, các net sẽ được so sánh và những net được trích xuất từ tài liệu hiện tại sẽ được đổi tên bằng các tên net từ tệp netlist IPC. Các tên đã cập nhật sẽ xuất hiện trên tab Nets của panel CAMtastic .
Mặc dù thông tin netlist IPC-D-356 không bắt buộc cho việc xuất, nhưng nó rất hữu ích. Sự hiện diện của nó sẽ giúp CAMtastic Editor tách pad khỏi via, từ đó tạo via chính xác thay vì pad đối với bất kỳ via mù hoặc via chôn nào trong thiết kế. Nhưng quan trọng hơn nhiều, netlist IPC cho bạn một tham chiếu để có thể so sánh với netlist đã trích xuất khi chọn Tools » Netlist » Compare từ menu chính. Sau khi chạy lệnh, quá trình so sánh sẽ được thực hiện và một báo cáo, Netlist-Compare.rpt, sẽ được tạo và mở làm tài liệu đang hoạt động trong cửa sổ thiết kế chính. Báo cáo liệt kê từng net được tìm thấy trong netlist đã nhập nhưng bị thiếu trong netlist đã trích xuất.
Nếu netlist IPC đã được nhập đúng cách, bạn sẽ thấy hai lớp được thêm vào danh sách lớp trong panel CAMtastic : <fabrication_testpoint_report_for_DesignName>.ipc_t và <fabrication_testpoint_report_for_DesignName>.ipc_b, phản ánh thông tin netlist cho các lớp tín hiệu trên và dưới. (Một lớp thứ ba, <fabrication_testpoint_report_for_DesignName>.ipc_in, sẽ xuất hiện nếu PCB của bạn có các lớp tín hiệu bên trong. Trừ khi bạn có via mù và/hoặc via chôn liên quan đến các lớp này, lớp thứ ba này sẽ trống và có thể được giữ lại hoặc xóa khỏi danh sách lớp).
Đối với netlist IPC được tạo từ PCB Editor, bạn sẽ nhận thấy chức năng so sánh của CAM Editor thường sẽ tìm thấy một loạt "missing nets" không có tên. Điều này là do định dạng IPC của PCB Editor bao gồm các net một chân. Mặt khác, CAM Editor bỏ qua các pad không có kết nối đồng nào xét theo góc độ netlist. Trên thực tế, DRC của nó có một tùy chọn để loại bỏ các pad không chức năng.
Biên dạng và plane
Khi CAM Editor xuất một tệp PCB sang PCB Editor, đường bao bo mạch sẽ được tự động tạo ra. Để thực hiện việc này một cách chính xác, cần có một polyline khép kín trên một lớp kiểu Border. Nếu không tìm thấy polyline khép kín nào trên lớp này, hoặc nếu nhiều lớp đã được chỉ định là border trong hộp thoại Layers Table, bạn có thể sẽ không nhận được hình dạng bo mạch như mong muốn.
Mọi phần chia tách trên các internal plane của bạn cũng phải được xác định bằng các polyline khép kín. Để xác định một polyline có khép kín hay không, hãy truy vấn nó (phím tắt Q). Bạn có thể kiểm tra xem toàn bộ polyline có được tô sáng hay không và liệu nó có được báo là một closed polyline trên tab Info của panel CAM hay không. Nếu không, bạn có thể chuyển đổi đối tượng hiện có thành một closed polyline bằng lệnh Join trong menu con Edit » Objects.
Các vùng split plane có thể cần thêm một chút thao tác vì mỗi phần chia cần có vùng bao "bubble" riêng. Mặc dù các island plane có thể được nối như mô tả ở trên, nhưng các split plane dùng chung đường bao với các split khác hoặc với polyline border sẽ phải được vẽ lại. Để tự vẽ một closed polyline, hãy nhấp chuột phải sau khi chọn đỉnh cuối cùng của nó, rồi chọn Close.
Nested planes (các island nằm bên trong split plane) hiện chưa được hỗ trợ.
Xuất Polygons
Trang CAM Editor - Import/Export của hộp thoại Preferences cung cấp các tùy chọn bổ sung để xử lý cách các polygon trong tài liệu CAM được xuất sang tài liệu PCB. Nếu polygon có dạng hình chữ nhật, chúng có thể được tạo thành fill trên tài liệu PCB. Với các polygon không phải hình chữ nhật, bạn có thể tạo polygon pour kiểu Hatched hoặc Solid trong PCB Editor. Có sẵn quyền truy cập vào các hộp thoại tùy chọn cho hai kiểu polygon pour này, cho phép kiểm soát tốt hơn cách các polygon được xuất sẽ được xử lý ở phía PCB.
Khi bật tùy chọn Create Hatched Polygons, CAM Editor sẽ dùng một kích thước lưới duy nhất và một độ rộng track duy nhất để lấp đầy tất cả polygon trong tệp của bạn. Nếu dữ liệu CAM của bạn có các polygon rất nhỏ, bạn nên bảo đảm rằng các tùy chọn xuất được tinh chỉnh xuống đến mức đó.
Hộp thoại Polygon Options, được mở bằng cách nhấp vào nút Hatched Polygon Options tương ứng, cho phép bạn điều chỉnh kích thước lưới, độ rộng track và chiều dài primitive tối thiểu cho các polygon. Nếu bạn muốn các polygon được lấp đầy hoàn toàn với độ chính xác cao, thì các giá trị này nên được giữ trong khoảng chặt quanh các yêu cầu nhỏ nhất trên bo mạch của bạn. Nếu không, bạn có thể gặp rủi ro xuất hiện khoảng trống trong polygon, các mẫu hatch thay vì lấp đầy hoàn toàn, hoặc thậm chí toàn bộ polygon bị bỏ qua khi xuất.
Hộp thoại Polygon Options
Mặt khác, các giá trị này sẽ áp dụng cho tất cả polygon được xuất, vì vậy các giá trị quá nhỏ sẽ làm tăng kích thước tệp và các vấn đề quản lý liên quan (chẳng hạn như tốc độ vẽ lại) đối với tệp đã xuất. Vì vậy, tốt nhất là dùng các giá trị lớn nhất có thể mà vẫn bảo đảm độ chính xác yêu cầu cho tất cả polygon trên bo mạch của bạn.
Khi bật tùy chọn Create Solid Polygons, mỗi polygon sẽ được lấp đầy bằng một hoặc nhiều vùng đồng đặc. Số lượng vùng đồng được dùng phụ thuộc vào số lượng vùng riêng lẻ được tạo bên trong polygon bởi các đối tượng net hiện có, chẳng hạn như track và pad.
Hộp thoại Solid Polygon Options
Hộp thoại Solid Polygon Options, được mở bằng cách nhấp vào nút Solid Polygon Options tương ứng, cho phép bạn xác định cách xử lý các đảo đồng và các net đồng hẹp, cũng như hành vi pour khi đổ lên các đối tượng net thuộc cùng net với copper pour:
-
Pour Over All Same Net Objects - chọn tùy chọn này nếu bạn muốn polygon pour tự động kết nối với mọi đối tượng thuộc cùng net với pour
-
Pour Over Same Net Polygons Only - chọn tùy chọn này (mặc định) nếu bạn muốn polygon pour tự động chỉ kết nối với các đối tượng polygon pour nằm trong biên của nó và được gán cùng net
-
Don't Pour Over Same Net Objects - chọn tùy chọn này nếu bạn hoàn toàn không muốn polygon pour kết nối với bất kỳ đối tượng net nào khác. Nếu một trong hai tùy chọn đầu tiên được chọn và polygon pour được gán cho No Net, nó sẽ pour xung quanh mọi đối tượng bất kể gán net của chúng.
Xuất sang PCB
Sau khi netlist đã được trích xuất từ dữ liệu CAM, lệnh File » Export » Export to PCB sẽ được kích hoạt. Thực thi lệnh này sau khi đã hoàn tất mọi bước cần thiết sẽ tạo ra một tài liệu PCB chứa thiết kế bo mạch trông rất giống bản gốc.
Sau khi khởi chạy lệnh, một tài liệu PCB mới sẽ được tạo (<CAMDocumentName>.PcbDoc) và mở làm tài liệu đang hoạt động trong không gian thiết kế. Trình tự thực tế của các sự kiện trong quá trình chuyển thông tin giữa tài liệu CAM và tài liệu PCB như sau:
-
Tài liệu PCB được tạo với đường bao bo mạch dựa trên kích thước hiện tại của bo mạch trong tài liệu CAM.
-
Các đối tượng net được tạo trong tài liệu PCB, dùng thông tin net được trích xuất từ tài liệu CAM.
-
Layer stack-up được tạo dựa trên thứ tự các lớp vật lý được xác định trong tài liệu CAM (hộp thoại Create/Update Layers Order, truy cập qua Tables » Layers Order).
-
Các net được gán cho mọi internal plane.
-
Các net được gán cho mọi split plane hiện có. Chúng có thể được
-
Các quy tắc thiết kế Clearance, Width và Power Plane Connect Style được tạo. Các kết nối relief được tạo cho từng plane net.
-
Các padstack được xây dựng từ dữ liệu CAM (dùng các pad trên các lớp signal/plane theo thứ tự vật lý, tiếp theo là drill, mask, paste, v.v.). Các padstack được nạp vào PCB và kiểu cần thiết được xác định (padstack đơn giản hoặc đầy đủ).
-
Các track PCB được tạo.
-
Một phép kiểm tra DRC được thực hiện cho toàn bộ bo mạch.
).