Научная статья на тему 'Принципы построения программного комплекса для теплового проектирования электронных систем'

Принципы построения программного комплекса для теплового проектирования электронных систем Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
174
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
программный комплекс / тепловое проектирование / тепловые процессы / электронная система / архитектура / температурное распределение / software package / thermal design / thermal processes / electric system / architecture / temperature distribution

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — А Г. Мадера, П И. Кандалов

В работе рассматриваются концептуальные вопросы разработки программного комплекса для теплового проектирования сложных электронных систем и проведения многовариантного компьютерного моделирования нестационарных, нелинейных, детерминированных и стохастических тепловых процессов и температурных полей в электронных системах любой сложности и при воздействии дестабилизирующих факторов. Многофункциональный программный комплекс должен обеспечивать графическое представление исходных данных и результатов вычислений температурных распределений и тепловых характеристик в виде таблиц, графиков, диаграмм и т.п. Вычислительные алгоритмы, реализующие математические модели программного комплекса, должны быть реализованы и оптимизированы как для пользовательских компьютеров, так и для суперкомпьютерных систем путем их распараллеливания с помощью программных интерфейсов Open Multi-Processing (OpenMP) и Message Passing Interface (MPI). Основным языком программирования разрабатываемого комплекса является язык C#, обеспечивающий кроссплатформенность, скорость и удобство разработки, поддержку выборочной оптимизации на языках C++ и C. Средой разработки служит Microsoft Visual Studio под управляемой ОС Windows, при этом адаптация под другие платформы обеспечивается кроссплатформенной средой исполнения Mono. Рассмотрена архитектура проектируемого программного комплекса, которая представляет собой трехуровневую модель, включающую уровни представления данных, доменную модель и уровень данных, позволяющих оптимизировать программный комплекс, расширять его функциональные возможности и адаптировать под требуемые платформы.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Principles of software construction for electronic system thermal design

Abstract. The paper considers conceptual issues on developing a multifunctional software package for thermal design of complex electronic systems. The software package is intended to carry out mathematical and computer analysis of the nonlinear unsteady-state stochastic and determine thermal processes and temperature distributions in electronic systems of any structural complexity and the impact of destabilizing factors. A multifunctional software package should provide a graphical representation of both source data and computer modeling results in the form of tables, graphs, diagrams, etc. Computational algorithms that implement mathematical models should be written and optimized both for personal computers and supercomputer systems through their paralleling using Message Passing Interface (MPI) or Open Multi-Processing (OpenMP). The basic programming language for developing the developed software package is C#. It provides a cross-platform, development speed and convenience, support for selective optimization in C++ and C. An integrated development environment is Microsoft Visual Studio that runs only Microsoft Windows platform. It is possible to run development programs in Linux or Mac OS X using non-Microsoft .NET implementations like Mono. The authors consider the architecture of the developed software package divided into three levels. They are: a presentation level, a business logical level, and a database level that allows effective optimizing the software package, extending its functionality and supporting several platforms like Mac OS X or Linux.

Текст научной работы на тему «Принципы построения программного комплекса для теплового проектирования электронных систем»

УДК 519.684.6 + 519.685.1 + 519.688 Дата подачи статьи: 28.03.18

DOI: 10.15827/0236-235X^31.3.435-438 2018. Т. 31. № 3. С. 435-438

Принципы построения программного комплекса для теплового проектирования электронных систем

А.Г. Мадера 1, д.т.н.., профессор, зав. отделом, [email protected] П.И. Кандалов 1, зам.. зав. отделом, [email protected]

1 Центр визуализации и спутниковъх информационнъж технологий ФНЦ НИИСИ РАН, г. Москва, 117218, Россия

В работе рассматриваются концептуальные вопросы разработки программного комплекса для теплового проектирования сложных электронных систем и проведения многовариантного компьютерного моделирования нестационарных, нелинейных, детерминированных и стохастических тепловых процессов и температурных полей в электронных системах любой сложности и при воздействии дестабилизирующих факторов.

Многофункциональный программный комплекс должен обеспечивать графическое представление исходных данных и результатов вычислений температурных распределений и тепловых характеристик в виде таблиц, графиков, диаграмм и т.п. Вычислительные алгоритмы, реализующие математические модели программного комплекса, должны быть реализованы и оптимизированы как для пользовательских компьютеров, так и для суперкомпьютерных систем путем их распараллеливания с помощью программных интерфейсов Open Multi-Processing (OpenMP) и Message Passing Interface (MPI).

Основным языком программирования разрабатываемого комплекса является язык C#, обеспечивающий крос-сплатформенность, скорость и удобство разработки, поддержку выборочной оптимизации на языках C++ и C. Средой разработки служит Microsoft Visual Studio под управляемой ОС Windows, при этом адаптация под другие платформы обеспечивается кроссплатформенной средой исполнения Mono.

Рассмотрена архитектура проектируемого программного комплекса, которая представляет собой трехуровневую модель, включающую уровни представления данных, доменную модель и уровень данных, позволяющих оптимизировать программный комплекс, расширять его функциональные возможности и адаптировать под требуемые платформы.

Ключевые слова: программный комплекс, тепловое проектирование, тепловые процессы, электронная система, архитектура, температурное распределение.

Возможности современных информационных технологий позволяют создавать многофункциональные программные комплексы (МФПК) нового поколения, обладающие гибкостью, расширяемостью, возможностью переноса на различные платформы. Такие программные комплексы должны отвечать определенным требованиям, разрабатываться в соответствующей архитектуре и технологиях. Большое внимание при создании МФПК должно уделяться их предварительному моделированию на этапе проектирования [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] архитектура МФПК ТП ЭлС разделяется на три уровня: уровень представления, уровень доменной модели, включающий бизнес -логику приложения и уровень доступа к данным, и уровень данных. Такое разделение приложения по уровням повышает производительность, масштабируемость, гибкость, повторное использование кода и обладает рядом других преимуществ. Внутри каждый уровень может разбиваться на целый ряд подуровней, которые обеспечивают более точечную функциональность различных областей приложения (см. рисунок).

Уровень представления - это уровень интерфейса пользователя, который отвечает за представление информации пользователю и отображение пользовательских действий в вызовы функции на уровне бизнес-логики.

Уровень доменной модели - это уровень логики предметной области, реализующий основную функциональность МФПК ТП ЭлС.

Подуровень бизнес-логики состоит из самостоятельных алгоритмических модулей, каждый из которых описывает реализацию алгоритма компьютерного моделирования в виде программного кода. При реализации различных алгоритмов могут выделяться общие процедурные операции, программные коды которых формируются в общую библиотеку алгоритмов. Помимо этого, подуровень бизнес-логики содержит программный код, отвечающий за формирование отчетности, команды действий пользователя, корректность проверки исходных данных для моделирования.

Уровень представления данных

Пользовательский интерфейс (UI)

Код UI

I

Уровень доменной модели

Бизнес-логика

АМ 1 АМ 2 АМ n I

Общая библиотека алгоритмов

Сервисные функции

Доступ к данным

Доступ к БД

Экспорт данных

Обмен данными -

Уровень данных

БД БД

SZ-

Общепринятые

форматы представления данных

Приложение STF-EiectranMod

Архитектура МФПК ТП ЭлС: АМ - алгоритмический модуль

The architecture of a multifunctional software package for electronic system thermal design

Подуровень доступа к данным обеспечивает

- высокоуровневый интерфейс доступа к уровню данных;

- экспорт данных в общепринятые форматы представления данных; например, результаты компьютерного моделирования могут быть выгружены в табличное представление 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. N° 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. Ther-minic-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#. Мастер-класс; I 16. Martin Robert C. Clean Architecture: A Craftsman's Guide [пер. с англ.]. М.: Русская Редакция; СПб: Питер, 2008. 656 с. | to Software Structure and Design. Prentice Hall Publ., 2017, 432 p.

Software & Systems Received 28.03.18

DOI: 10.15827/0236-235X.031.3.435-438 2018, vol. 31, no. 3, pp. 435-438

Principles of software construction for electronic system thermal design

A.G. Madera 1, Dr.Sc. (Engineering), Professor, [email protected] P.I. Kandalov 1, Research Associate, [email protected]

1 Center of Visualization and Satellite Information Technologies SRISA, Moscow, 117218, Russian Federation

Abstract. The paper considers conceptual issues on developing a multifunctional software package for thermal design of complex electronic systems. The software package is intended to carry out mathematical and computer analysis of the nonlinear unsteady-state stochastic and determine thermal processes and temperature distributions in electronic systems of any structural complexity and the impact of destabilizing factors.

A multifunctional software package should provide a graphical representation of both source data and computer modeling results in the form of tables, graphs, diagrams, etc. Computational algorithms that implement mathematical models should be written and optimized both for personal computers and supercomputer systems through their paralleling using Message Passing Interface (MPI) or Open Multi-Processing (OpenMP).

The basic programming language for developing the developed software package is C#. It provides a cross-platform, development speed and convenience, support for selective optimization in C++ and C. An integrated development environment is Microsoft Visual Studio that runs only Microsoft Windows platform. It is possible to run development programs in Linux or Mac OS X using non-Microsoft .NET implementations like Mono.

The authors consider the architecture of the developed software package divided into three levels. They are: a presentation level, a business logical level, and a database level that allows effective optimizing the software package, extending its functionality and supporting several platforms like Mac OS X or Linux.

Keywords: software package, thermal design, thermal processes, electric system, architecture, temperature distribution.

References

1. Design and Engineering of Electronic Equipment. V.A. Shakhnov (Ed.). Moscow, N.E. Bauman MSTU Publ., 2005, 568 p.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2. Chekanov A.N. Calculations and Ensuring Electronic Equipment Reliability. Moscow, KNORUS Publ., 2012, 440 p.

3. Ellison G.N. Thermal Computations for Electronics. Conductive, Radiative, and Convective Air Cooling. NY, CRC Press, 2011, 416 p.

4. 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.).

5. Madera A.G., Kandalov P.I. Modeling three-dimensional temperature fields in electronic modules. Software & Systems. 2010, no. 2, pp. 29-33 (in Russ.).

6. 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.).

7. 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.).

8. 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.).

9. Reshetnikov V.N. Space Telecommunications. Satellite Communication and Navigation Systems. St. Petersburg, 2010, 132 p.

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 Trans. Electron Devices. 2005, vol. 52, no. 9, pp. 2022-2033.

12. Mueller O. Proc. IEEE Internal thermal feedback in four-poles especially in transistors. 1964, vol. 52, pp. 924-930.

13. Kuuse M., Loikkanen M., Bognar Gy. Theoretical investigation of thermal feedback effects in low power circuits. Therminic-2005. Belgirate, Italy, 2005.

14. 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.

15. Richter J. CLR via C#. 2nd ed., Microsoft Press, 2006, 736 p.

16. Martin R.C. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall Publ., 2017, 432 p.

i Надоели баннеры? Вы всегда можете отключить рекламу.