Возможности современных информационных технологий позволяют создавать многофункциональные программные комплексы (МФПК) нового поколения, обладающие гибкостью, расширяемостью, возможностью переноса на различные платформы. Такие программные комплексы должны отвечать определенным требованиям, разрабатываться в соответствующей архитектуре и технологиях. Большое внимание при создании МФПК должно уделяться их предварительному моделированию на этапе проектирования [1–7].
МФПК позволяют с высокой эффективностью на этапе проектирования электронных систем (ЭлС) прогнозировать их поведение, эксплуатационные характеристики и параметры. Решение данной проблемы особенно актуально при создании высоконадежных ЭлС, предназначенных для эксплуатации в экстремальных условиях окружающей среды, при тепловых, механических, химических, радиационных и космических воздействиях. Разработка МФПК теплового проектирования (ТП) ЭлС является критически важной для создания новой конкурентоспособной техники.
Существует большое количество зарубежных программных комплексов для тепловых расчетов технических систем, однако присущие им принципиальные недостатки не позволяют рекомендовать их к безусловному применению в практике теплового проектирования ЭлС, что наряду с решением важнейшей проблемы импортозамещения и им- портобезопасности ПО делает еще более актуальными разработку и создание отечественных МФПК для теплового проектирования ЭлС (МФПК ТП ЭлС) [8].
Цель и задачи программного комплекса
Проектируемый МФПК ТП ЭлС предназначен для проведения всестороннего многовариантного математического и компьютерного моделирования тепловых процессов и температурных распределений в ЭлС с конструкцией любой сложности. Исходя из требований [8, 9], предъявляемых к функциональным возможностям МФПК ТП ЭлС, можно сформулировать следующие решаемые им основные задачи:
- предоставление пользователю гибкого пользовательского интерфейса для задания исход- ных данных и эффективных инструментов анали- за результатов моделирования температурных распределений и параметров тепловых режимов ЭлС;
- сохранение и загрузка исходных и рассчитанных данных в едином формате их модельного представления;
- экспорт результатов моделирования как интервально-стохастических, так и детерминированных параметров тепловых режимов ЭлС с исполь- зованием общепринятых форматов представления данных;
- расчет интервально-стохастических и детерминированных температурных распределений и параметров тепловых режимов ЭлС на различных иерархических уровнях;
- расчет интервально-стохастических и детерминированных параметров тепловых режимов ЭлС [10–12] с учетом влияния тепловой обратной связи [13, 14];
- контроль корректности задания исходных данных.
При этом МФПК ТП ЭлС должен обеспечивать возможность моделирования всех конструктивных и физических особенностей элементов ЭлС и всей ЭлС в целом при их изготовлении, установке, монтаже и эксплуатации.
Программные средства
Основным языком программирования разрабатываемого МФПК ТП ЭлС выбран объектно-ориентированный язык программирования C# для платформы Microsoft .NET Framework [CLR via C#] в соответствии с перечисленными далее критериями [15].
· Кроссплатформеность. Современные программные комплексы моделирования должны поддерживать работу на ОС семейства Windows, Linux и Mac OS. Приложение, написанное на C#, должно иметь возможность компиляции под любую из перечисленных платформ, при этом для компиляции под ОС Linux и Mac OS предполагается использовать проект Mono компании Xamarin.
· Скорость и удобство разработки. Высокоуровневые средства программирования C# и ин- тегрированная среда разработки Microsoft Visual Studio обеспечивают написание эффективного высокопроизводительного кода. Огромное число сторонних программных модулей, оформленных в виде динамически подключаемых библиотек (DLL), позволяет использовать их при разработке в качестве готовых решений. Помимо этого, профилирование кода проводится непосредственно в среде разработки Microsoft Visual Studio, что положительно скажется на времени разработки проекта.
· Поддержка выборочной оптимизации. На определенных стадиях разработки проекта про- филирование позволяет выявить критические по времени выполнения участки кода, которые впоследствии можно переписать на C или C++ в виде отдельных DLL. С# легко интегрируется с этими языками, что позволяет, кодируя небольшие критические по времени участки кода на C или C++ и применяя более высокоуровневые абстракции к ним, написанные на C#, проводить быструю оптимизацию кода.
· Возможность интеграции. Вопрос интеграции может возникнуть, например, при создании отчетности, результаты которой должны быть вы- гружены в общепринятый формат посредством существующих программ. C# прекрасно интегрируется с такими существующими программами, как реляционные БД, с текстовыми и табличными редакторами и любыми другими существующими приложениями, которые могут понадобиться для интеграции в МФПК ТП ЭлС в будущем.
· Графический интерфейс пользователя. Графический интерфейс – неотъемлемая часть МФПК ТП ЭлС. Посредством Windows Form, являющегося интерфейсом программирования приложений, отвечающим за графический интерфейс пользователя, и частью Microsoft .NET Framework, предоставляется возможность разработки кроссплатформенного графического пользовательского интерфейса.
Отметим также, что среда разработки Mono поддерживает компиляцию под архитектуру MIPS на ОС Linux, что позволяет в будущем запускать МФПК ТП ЭлС на машинах с данной архитектурой.
Архитектура программного комплекса
Рассмотрим архитектуру МФПК ТП ЭлС. В соответствии с принятой концепцией разработки приложений [16] архитектура МФПК ТП ЭлС разделяется на три уровня: уровень представления, уровень доменной модели, включающий бизнес-логику приложения и уровень доступа к данным, и уровень данных. Такое разделение приложения по уровням повышает производительность, масштабируемость, гибкость, повторное использование кода и обладает рядом других преимуществ. Внутри каждый уровень может разбиваться на целый ряд подуровней, которые обеспечивают более точечную функциональность различных областей приложения (см. рисунок).
Уровень представления – это уровень интерфейса пользователя, который отвечает за представление информации пользователю и отображение пользовательских действий в вызовы функции на уровне бизнес-логики.
Уровень доменной модели – это уровень логики предметной области, реализующий основную функциональность МФПК ТП ЭлС.
Подуровень бизнес-логики состоит из самостоятельных алгоритмических модулей, каждый из которых описывает реализацию алгоритма компьютерного моделирования в виде программного кода. При реализации различных алгоритмов могут выделяться общие процедурные операции, программные коды которых формируются в общую библиотеку алгоритмов. Помимо этого, подуровень бизнес-логики содержит программный код, отвечающий за формирование отчетности, команды действий пользователя, корректность проверки исходных данных для моделирования.
Подуровень доступа к данным обеспечивает
- высокоуровневый интерфейс доступа к уровню данных;
- экспорт данных в общепринятые форматы представления данных; например, результаты компьютерного моделирования могут быть выгружены в табличное представление Microsoft Excel;
- обмен результатами моделирования с программным комплексом моделирования интервально-стохастических и детерминированных температурных полей в технических системах STF-ElectronMod [7].
Уровень данных – это уровень информационного обеспечения МФПК ТП ЭлС, который включает кластер БД тепловых параметров, электрических параметров, характеристик, конфигураций и топологий ЭлС, БД параметров и конструкции теплоотводов и систем охлаждения ЭлС, БД параметров окружающей среды теплоносителей внутри ЭлС.
Журналирование и справочная информация являются общей инфраструктурой для уровней представления данных и доменной модели.
Заключение
В работе представлена концепция программных средств и архитектуры МФПК ТП ЭлС для проведения всестороннего многовариантного математического и компьютерного моделирования тепловых процессов и температурных распределений в сложных ЭлС. Рассмотренная концепция удовлетворяет всем требованиям [8], предъявляемым к проектируемому МФПК ТП ЭлС, и может быть представлена следующими основными тезисами:
- применение в качестве основного языка программирования для разработки МФПК ТП ЭлС объектно-ориентированного языка C#, обладающего богатыми средствами визуализации задаваемых пользователем исходных данных и результатов моделирования;
- оптимизация отдельных функциональных возможностей МФПК ТП ЭлС посредством применения языков C++ или C, что особенно актуально при реализации алгоритмов моделирования;
- архитектура программного комплекса представляет многоуровневую систему, состоящую из уровней представления, доменной модели и данных.
Формирование алгоритмических модулей и общих алгоритмических процедур, а также их модификации и новые реализации будут осуществляться на этапе практического использования МФПК ТП ЭлС в режиме сопровождения.
Литература
1. Конструкторско-технологическое проектирование электронной аппаратуры; [под общ. ред. В.А. Шахнова]. М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. 568 с.
2. Чеканов А.Н. Расчеты и обеспечение надежности электронной аппаратуры. М.: КНОРУС, 2012. 440 с.
3. Ellison G.N. Thermal computations for electronics. Conductive, radiative, and convective air cooling. NY, CRC Press, 2011, 416 p.
4. Мадера А.Г. Концепция математического и компьютерного моделирования тепловых процессов в электронных системах // Программные продукты и системы. 2015. № 4. С. 79‒86.
5. Мадера А.Г., Кандалов П.И. Моделирование трехмерных температурных полей в электронных модулях // Програм- мные продукты и системы. 2010. № 2. С. 29‒33.
6. Мадера А.Г., Кандалов П.И. Анализ интервально-стохастических температурных полей технических систем // Программные продукты и системы. 2014. № 4. С. 41‒45.
7. Кандалов П.И. Программный комплекс моделирования стохастических температурных полей в технических системах STF-ElectronMod // Программные продукты и системы. 2016. № 4. С. 171‒175.
8. Мадера А.Г., Решетников В.Н. Многофункциональный программный комплекс теплового проектирования электронных систем: требования к архитектуре и функциональным возможностям моделирования // Программные продукты и системы. 2017. № 3. С. 367‒372.
9. Решетников В.Н. Космические телекоммуникации. Системы спутниковой связи и навигации. СПб: Ленинградское изд-во, 2010. 132 с.
10. Keller C.J., Antonetti V.W. Statistical thermal design for computer electronics. Electronic Packaging and Production, 1979, vol. 19, no. 3, pp. 55–62.
11. Rinaldi N., D'Alessandro V. Theory of electrothermal behavior of bipolar transistors: part II-two-finger devices. IEEE Transactions Electron Devices, 2005, vol. 52, no. 9, pp. 2022–2033.
12. Mueller O. Internal thermal feedback in four-poles especially in transistors. Proc. IEEE, 1964, vol. 52, pp. 924–930.
13. Kuuse M., Loikkanen M., Bognar Gy. Theoretical investigation of thermal feedback effects in low-power circuits. Proc. Therminic-2005, Belgirate, Italy, 2005, pp. 55–58.
14. Marani R., Perri A. Electrical and thermal characterization of multilayer structure devices for fast PC implementation. Int. J. of Advances in Engineering & Tchnology, 2013, no. 3, pp. 101–113.
15. Рихтер Дж. CLR via C#. Программирование на плат- форме Microsoft .NET Framework 2.0 на языке C#. Мастер-класс; [пер. с англ.]. М.: Русская Редакция; СПб: Питер, 2008. 656 с.
16. Martin Robert C. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall Publ., 2017, 432 p.
References
- Design and Engineering of Electronic Equipment. V.A. Shakhnov (Ed.). Moscow, N.E. Bauman MSTU Publ., 2005, 568 p.
- Chekanov A.N. Calculations and Ensuring Electronic Equipment Reliability. Moscow, KNORUS Publ., 2012, 440 p.
- Ellison G.N. Thermal Computations for Electronics. Conductive, Radiative, and Convective Air Cooling. NY, CRC Press, 2011, 416 p.
- Madera A.G. The concept of mathematical and computer modeling of thermal processes in electronic systems. Software & Systems. 2015, no. 4, pp. 79‒86 (in Russ.).
- Madera A.G., Kandalov P.I. Modeling three-dimensional temperature fields in electronic modules. Software & Systems. 2010, no. 2, pp. 29‒33 (in Russ.).
- Madera A.G., Kandalov P.I. Analysis of interval-stochastic temperature fields in technical systems. Software & Systems. 2014, no. 4, pp. 41‒45 (in Russ.).
- Kandalov P.I. A software complex for simulation of stochastic temperature fields in technical systems STF-ElectronMod. Software & Systems. 2016, no. 4, pp. 171‒175 (in Russ.).
- Madera A.G., Reshetnikov V.N. A multifunctional software package for thermal design of electronic systems: requirements for architecture and modeling functionality. Software & Systems. 2017, no. 3, pp. 367‒372 (in Russ.).
- Reshetnikov V.N. Space Telecommunications. Satellite Communication and Navigation Systems. St. Petersburg, 2010, 132 p.
- Keller C.J., Antonetti V.W. Statistical thermal design for computer electronics. Electronic Packaging and Production. 1979, vol. 19, no. 3, pp. 55–62.
- Rinaldi N., D'Alessandro V. Theory of electrothermal behavior of bipolar transistors: part II-two-finger devices. IEEE Trans. Electron Devices. 2005, vol. 52, no. 9, pp. 2022–2033.
- Mueller O. Proc. IEEE Internal thermal feedback in four-poles especially in transistors. 1964, vol. 52, pp. 924–930.
- Kuuse M., Loikkanen M., Bognar Gy. Theoretical investigation of thermal feedback effects in low power circuits. Therminic-2005. Belgirate, Italy, 2005.
- Marani R., Perri A. Electrical and thermal characterization of multilayer structure devices for fast PC implementation. Int. J. of Advances in Engineering & Technology. 2013, no. 3, pp. 101–113.
- Richter J. CLR via C#. 2nd ed., Microsoft Press, 2006, 736 p.
- Martin R.C. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall Publ., 2017, 432 p.