Khắc phục sự cố mô phỏng

Khi một mạch không thể mô phỏng được, bạn cần xác định xem vấn đề nằm ở mạch hay ở quá trình mô phỏng. Hãy làm theo thông tin trong phần tham khảo này và thực hiện lần lượt các điểm được đề xuất, thử từng điểm một.

Đôi khi trong quá trình mô phỏng, sẽ xuất hiện thông báo báo lỗi hoặc cảnh báo. Các thông báo này được liệt kê trong Messages bảng điều khiển.

  • Warning Messages – thông báo cảnh báo không gây lỗi nghiêm trọng cho quá trình mô phỏng. Chúng thường cung cấp thông tin về những thay đổi mà SPICE phải thực hiện đối với mạch để hoàn tất mô phỏng. Những thay đổi này bao gồm tham số không hợp lệ hoặc bị thiếu, v.v.
  • Error Messages – thông báo lỗi cung cấp thông tin về những vấn đề mà bộ mô phỏng không thể xử lý và gây lỗi nghiêm trọng cho quá trình mô phỏng. Thông báo lỗi cho biết không thể tạo ra kết quả mô phỏng, vì vậy chúng phải được sửa trước khi bạn có thể phân tích mạch.

Khắc phục sự cố khi phân tích mô phỏng thất bại

Một trong những thách thức của mọi bộ mô phỏng là sự hội tụ. Chính xác thì thuật ngữ convergence có nghĩa là gì? Giống như hầu hết các bộ mô phỏng, công cụ SPICE của Altium Designer sử dụng một quá trình lặp để giải đi giải lại các phương trình biểu diễn mạch của bạn nhằm tìm ra điện áp và dòng điện tĩnh của mạch. Nếu không tìm được các điện áp và dòng điện này (không hội tụ) thì nó sẽ không thể thực hiện phân tích mạch.

SPICE sử dụng các phương trình tuyến tính đồng thời, được biểu diễn dưới dạng ma trận, để xác định điểm làm việc (điện áp và dòng điện DC) của mạch tại mỗi bước mô phỏng. Mạch được rút gọn thành một mảng điện dẫn được đưa vào ma trận để tạo thành các phương trình (G * V = I). Khi mạch có các phần tử phi tuyến, SPICE sử dụng nhiều vòng lặp của các phương trình tuyến tính để tính đến tính phi tuyến đó. SPICE đưa ra giá trị ước đoán ban đầu cho điện áp nút, sau đó tính dòng nhánh dựa trên các điện dẫn trong mạch. Tiếp theo, SPICE dùng dòng nhánh để tính lại điện áp nút, và chu trình này được lặp lại. Chu trình tiếp diễn cho đến khi tất cả điện áp nút và dòng nhánh nằm trong các dung sai được chỉ định (hội tụ).

Tuy nhiên, nếu điện áp hoặc dòng điện không hội tụ trong số lần lặp được chỉ định, SPICE sẽ tạo ra các thông báo lỗi (chẳng hạn như singular matrix, Gmin stepping failed, source stepping failed hoặc iteration limit reached) và hủy mô phỏng. SPICE sử dụng kết quả của mỗi bước mô phỏng làm giá trị ước đoán ban đầu cho bước tiếp theo. Nếu bạn đang thực hiện phân tích Transient (tức là thời gian đang được tăng dần) và SPICE không thể hội tụ đến một nghiệm với bước thời gian đã chỉ định, bước thời gian sẽ tự động được giảm và chu trình sẽ được lặp lại. Nếu bước thời gian bị giảm quá nhiều, SPICE sẽ hiển thị thông báo Timestep too small và hủy mô phỏng.

Khắc phục sự cố hội tụ mô phỏng tổng quát

Khi một phép phân tích mô phỏng bị lỗi, nguyên nhân phổ biến nhất là mạch không hội tụ đến một điểm làm việc hợp lý. Hãy dùng các kỹ thuật sau để giải quyết vấn đề hội tụ.

Các bước khắc phục sự cố hội tụ

  • Khi gặp vấn đề hội tụ, trước tiên hãy tắt tất cả các kiểu phân tích ngoại trừ phân tích Operating Point.
  • Kiểm tra Messages bảng điều khiển để tìm các lỗi/cảnh báo liên quan đến mô phỏng.
  • Đảm bảo mạch được nối dây chính xác. Không được phép có các nút treo và linh kiện rời rạc không nối.
  • Đảm bảo mạch có một nút mass, và mọi nút trong mạch đều có đường DC về mass này. Các linh kiện có thể cách ly một nút bao gồm biến áp và tụ điện. Nguồn áp được xem là ngắn mạch DC, nguồn dòng được xem là hở mạch DC.
  • Đảm bảo rằng số 0 không bị nhầm với chữ O khi nhập các tham số mô phỏng.
  • Đảm bảo các hệ số nhân SPICE chính xác đã được chỉ định (MEG thay vì M cho 1e6) đối với mọi giá trị linh kiện hoặc tham số mô phỏng. Các hệ số nhân không phân biệt chữ hoa chữ thường. Ngoài ra, không được có khoảng trắng giữa giá trị và hệ số nhân. Ví dụ, phải là 1.0uF, không phải 1.0 uF.
  • Đảm bảo tất cả các linh kiện và nguồn đều được đặt đúng giá trị.
  • Đảm bảo hệ số khuếch đại của mọi nguồn phụ thuộc được đặt chính xác.
  • Tạm thời loại bỏ các tụ điện mắc nối tiếp hoặc các nguồn dòng rồi chạy lại mô phỏng.
  • Tạm thời loại bỏ các cuộn cảm mắc song song hoặc các nguồn áp rồi chạy lại mô phỏng.
  • Trên tab Advanced của hộp thoại Advanced Analysis Settings (truy cập bằng cách nhấp vào Settings trong vùng Analysis Setup & Run của bảng điều khiển Simulation Dashboard), tăng giá trị của tham số ITL1 lên 300. Điều này sẽ cho phép phân tích Operating Point thực hiện nhiều vòng lặp hơn trước khi dừng lại.
  • Trên tab Advanced của hộp thoại Advanced Analysis Settings, đặt giá trị của RSHUNT1. Giá trị điện trở này được thêm vào giữa mỗi nút của mạch và mass, giúp khắc phục các vấn đề như lỗi "singular matrix". Theo nguyên tắc chung, giá trị RSHUNT phải được đặt ở mức điện trở rất cao, chẳng hạn như 1e12.
  • Thêm các phần tử .NS (Nodeset) để xác định điện áp nút. Nếu giá trị ước đoán ban đầu của một điện áp nút sai lệch quá nhiều, phần tử Nodeset có thể được dùng để định trước một điện áp khởi đầu dùng cho lượt chạy sơ bộ của phân tích điểm làm việc. Hãy cấu hình tham số Initial Voltage trong từng phần tử Nodeset mà bạn đặt. Nodeset có thể được đặt từ thư viện Simulation Generic Components.
  • Nếu phần tử Nodeset không hỗ trợ hội tụ, hãy thử xác định các điều kiện ban đầu bằng cách đặt các phần tử .IC. Trong trường hợp này, điện áp nút được giữ ở các giá trị đã chỉ định trong quá trình phân tích Operating Point, sau đó được giải phóng trong quá trình phân tích Transient. Các phần tử Initial Condition có thể được đặt từ cùng thư viện như phần tử Nodeset, và tham số Initial Voltage phải được cấu hình theo cách tương tự.
  • Bật tùy chọn Use Initial Conditions trong phần cài đặt Transient ở vùng Analysis Setup & Run của bảng điều khiển Simulation Dashboard . Tùy chọn này hoạt động kết hợp với các phần tử .IC (hoặc tham số IC của các linh kiện). Khi thiết lập tùy chọn này, phân tích Operating Point sẽ không được thực hiện và các điện áp đã chỉ định sẽ được dùng làm điều kiện ban đầu cho phân tích Transient.
  • Chỉ định các tham số điện trở nối tiếp của mô hình và tăng tùy chọn GMIN (tab Advanced của hộp thoại Advanced Analysis Settings) lên theo hệ số 10.
  • Chỉ định điều kiện ban đầu (Starting Condition) của các linh kiện bán dẫn, đặc biệt là diode, là OFF. Điều này có thể giúp giải quyết các vấn đề hội tụ số bằng cách bỏ qua diode (hoặc linh kiện bán dẫn) trong vòng lặp đầu tiên, từ đó cải thiện hội tụ.

Khắc phục sự cố phân tích DC Sweep

Khi gặp vấn đề với phân tích DC Sweep, trước tiên hãy thử các bước được liệt kê ở trên trong phần khắc phục sự cố hội tụ. Nếu vẫn gặp vấn đề, hãy thử các cách sau:

  • Thay đổi giá trị của tham số Step trong phần Analysis Setup & Run của Simulation Dashboard. Nếu tồn tại các điểm gián đoạn trong mô hình linh kiện (ví dụ giữa vùng tuyến tính và vùng bão hòa của mô hình), việc tăng kích thước bước có thể cho phép mô phỏng vượt qua điểm gián đoạn. Ngược lại, nếu làm các bước nhỏ hơn, mô phỏng sẽ có thể xử lý được các điểm gián đoạn chuyển tiếp điện áp nhanh.
  • Không sử dụng phân tích DC Sweep. Một số vấn đề (chẳng hạn như hiện tượng trễ hysteresis) không thể được giải quyết bằng phân tích DC. Trong những trường hợp như vậy, sẽ hiệu quả hơn nếu dùng phân tích Transient và tăng dần giá trị của các nguồn cấp phù hợp.

Khắc phục sự cố phân tích Transient

Khi gặp vấn đề với phân tích Transient, trước tiên hãy thử các bước được liệt kê ở trên trong phần khắc phục sự cố hội tụ. Nếu vẫn gặp vấn đề, hãy thử các cách sau.

Trên tab Advanced của hộp thoại Advanced Analysis Settings (truy cập bằng cách nhấp vào Settings trong vùng Analysis Setup & Run của bảng điều khiển Simulation Dashboard):

  • Đặt tham số RELTOL thành 0.01. Bằng cách tăng dung sai từ giá trị mặc định là 0.001 (độ chính xác 0,1%), sẽ cần ít vòng lặp hơn để hội tụ đến một nghiệm và mô phỏng sẽ hoàn thành nhanh hơn nhiều.
  • Tăng giá trị của tham số ITL4 lên 100. Điều này sẽ cho phép phân tích Transient thực hiện nhiều vòng lặp hơn cho mỗi bước thời gian trước khi dừng lại. Việc tăng giá trị này có thể giúp loại bỏ lỗi timestep too small , đồng thời cải thiện cả khả năng hội tụ và tốc độ mô phỏng.
  • Giảm độ chính xác bằng cách tăng các giá trị của ABSTOLVNTOL, nếu mức dòng/áp cho phép. Mạch cụ thể của bạn có thể không cần độ phân giải xuống đến 1uV hoặc 1pA. Tuy nhiên, bạn vẫn nên để thấp hơn ít nhất một bậc độ lớn so với mức điện áp hoặc dòng điện thấp nhất dự kiến của mạch.
  • Thay đổi Integration Method thành một trong các phương pháp Gear. Tích phân Gear yêu cầu thời gian mô phỏng dài hơn, nhưng nhìn chung ổn định hơn phương pháp hình thang. Tích phân Gear có thể đặc biệt hữu ích với các mạch dao động hoặc có các đường hồi tiếp.

Các cách khác có thể thử:

  • Mô hình hóa mạch một cách thực tế. Thêm các thành phần ký sinh thực tế, đặc biệt là điện dung ký sinh/điện dung tiếp giáp. Sử dụng mạch RC snubber quanh diode. Thay thế mô hình linh kiện bằng các mạch con, đặc biệt đối với thiết bị RF và công suất.
  • Tăng thời gian sườn lên/sườn xuống của mọi nguồn xung tuần hoàn trong mạch. Ngay cả các bộ tạo xung tốt nhất cũng không thể chuyển mạch tức thời.
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