Доклады БГУИР
2015 № 2 (88)
УДК 681.51
СИСТЕМАТИЗАЦИЯ ПРОГРАММНО-ТЕХНИЧЕСКИХ СРЕДСТВ УПРАВЛЯЮЩИХ СИСТЕМ АЭС
В Н. ДУРНЕВ, А Н. ЧЕРНЯЕВ, К.К. КОЛЧЕВ
Всероссийский научно-исследовательский институт по эксплуатации атомных электростанций
Ферганская, 25, Москва, 109507, Россия
Поступила в редакцию 6 февраля 2015
Введение
Систематизация - это процедура объединения, сведения групп однородных по неким признакам, параметрам, критериям единиц к определенному иерархиезированному единству в функциональных целях, на основе существующих между ними связей и/или взаимодополняющих связей с внешним миром. В технике систематизация является основой унификации и стандартизации. Систематизация позволяет организовать программно-технические средства ТЭС и АЭС в определенную систему согласно принятому принципу. Затем путем классификации устройства могут быть объединены в группы на основе отмеченных сходств. Систематизация устанавливает взаимосвязь между исследуемыми программно-техническими средствами, выделяет основные структурные единицы, что позволяет рассматривать конкретное устройство как часть целой системы.
Цель систематизации программно-технического комплекса (ПТС) управляющих систем ТЭС и АЭС - внедрение основы для лицензирования применяемых технических и программно-технических средств, распределение требований для различных групп устройств, установка терминологии, устранение неопределенности в вопросах аппаратного разнообразия управляющих систем безопасности.
Структура программно-технических средств
Технические и программно-технические средства, применяемые в управляющих системах ТЭС и АЭС, можно объединить в структуру, приведенную на рисунке.
Структура программно-технических средств
Обозначения на рис. 1: микроконтроллер (Micro Controller Unit, MCU), Микропроцессор (Central Processing Unit, CPU); программируемая логическая матрица (ПЛМ, Programmable Logic Array, PLA); программируемая матрица логики (ПМЛ, Programmable Array Logic, PAL); сложные программируемые логические устройства (СПЛУ, Complex Programmable Logic Device, CPLD); программируемые пользователем вентильные матрицы (ППВМ, Field-
Programmable Gate Array, FPGA); интегральная схема специального назначения (ИССН, Application Speciifc Integrated Circuit, ASIC); операционный усилитель (Operational Amplifier, OpAmp); комплементарная структура металл-оксид-полупроводник (КМОП, complementary metal-oxide-semiconductor, CMOS); транзисторно-транзисторная логика (ТТЛ, Transistortransistor logic, TTL); эмиттерно-связанная логика (ЭСЛ, Emitter-coupled logic, ECL).
Уровень технологий электронных схем
Нижний уровень структуры содержит технологии, применяемые для построения электронных схем. Электронная схема - это сочетание отдельных электронных компонентов, таких как резисторы, конденсаторы, индуктивности, диоды и транзисторы, соединенных между собой [1]. Каждая технология описывает порядок объединения электронных компонент в электронную или интегральную схему для выполнения ей заданных функций [1, 2]. Интегральная схема, микросхема или чип - это электронная схема, изготовленная на полупроводниковой подложке и помещенная в неразборный корпус.
Различают два типа электронных схем:
- аналоговые схемы оперируют с аналоговыми непрерывными сигналами, приращение которых стремится к нулю с уменьшением интервала времени между наблюдениями. Среди аналоговых схем широкое распространение в управляющих системах получили схемные решения с использованием операционных усилителей [3], предназначенных для выполнения математических операций;
- цифровые электронные схемы предназначены для преобразования и обработки дискретных и цифровых сигналов;
Для построения цифровых электронных и интегральных схем применяются технологии КМОП, ТТЛ и ЭСЛ [1, 2]. КМОП - это технология построения электронных схем с использованием полевых транзисторов с изолированным затвором и каналами разной проводимости. Использование полевых транзисторов позволяет сократить энергопотребление по сравнению с технологиями на биполярных транзисторах. ТТЛ - это технология построения электронных схем с использованием полевых транзисторов и резисторов. КМОП уступает ТТЛ в быстродействии. ЭСЛ - это технология построения электронных схем с использованием дифференциальных каскадов на полевых транзисторах. Электронные схемы, выполненные по технологии ЭСЛ, характеризуется наибольшим быстродействием и энергопотреблением. КМОП, ТТЛ или ЭСЛ технологии, применяемые в электронных схемах, позволяют реализовать логические операции с бинарными сигналами, например, мажоритарную обработку, а в совокупности с АЦП и ЦАП - арифметические операции.
Уровень технологий интегральных схем
Технологии, расположенные на нижнем уровне структуры (см. рис. 1), используются для построения электронных и интегральных схем. Интегральные схемы более компактны по сравнению с электронными схемами при выполнении ими одинаковых функций. Примерами интегральных схем являются устройства или компоненты, производимые для массового применения, например, различные виды компьютерной памяти, шифраторы и дешифраторы, АЦП и ЦАП [3].
Пользовательская функция, выполняемая интегральной схемой, может задаваться:
- однократно на этапе производства, что не всегда приемлемо и экономически невыгодно;
- многократно на этапе применения.
В большинстве случаев более подходящим решением являются интегральные схемы с программируемой логической функцией - ПЛИС (программируемая логическая интегральная схема; PLD, programmable logic device) [4, 5]. ПЛИС является основой для создания различных цифровых устройств. Существуют различные типы ПЛИС, например: PLA (Programmable Logic Array, программируемые логические матрицы), PAL (Programmable Array Logic, программируемые матрицы логики), CPLD (Complex Programmable Logic Device), FPGA (Field-Programmable Gate Array, программируемая пользователем вентильная матрица) и др.
Первым представителем ПЛИС является PLA. Для вычисления сложных логических выражений PLA использует простые операции И, ИЛИ [4, 5]. Сигналы поступают в PLA по проводникам, которые соединены через ключи с входами логических вентилей, выполняющих операцию И. Выходы вентилей И соединены с проводниками, подключенными через ключи к входам вентилей ИЛИ. Для вычисления сложных логических выражений необходимо задать структуру PLA путем замыкания и размыкания ключей. Совокупность ключей на входах вентилей И называется матрицей логики И, а на входах вентилей ИЛИ - матрицей логики ИЛИ.
Для задания структуры схемы PLA возможно конфигурирование матрицы логики И и ИЛИ. Менее гибким аналогом по заданию структуры является PAL [4 ,5]. В схеме PAL разработчик может конфигурировать только матрицу И. Матрица логики ИЛИ является фиксированной.
Следующим шагом развития логических матриц является CPLD. Интегральная схема содержит блоки ввода-вывода, шины межсоединений и макроячейки [4]. Макроячейки - это основная часть схемы, выполняющая логические операции. Каждая макроячейка подобна схеме PAL. Шины межсоединений обеспечивают взаимодействие макроячеек и блоков ввода-вывода. Путь сигнала по шине задается с помощью ключей. Блоки ввода-вывода предназначены для осуществления внешних подключений. CPLD позволяет реализовать более сложные логические операции по сравнению с PAL за счет укрупнения и развития вычислительной структуры.
Разновидность интегральной схемы - FPGA - может быть сконфигурирована разработчиком или производителем после изготовления. Состоит FPGA из множества логических блоков с несколькими входами и одним выходом [4-6]. Каждый блок выполняет логические операции, результат выполнения которых задан в форме таблиц Look-Up-Table (LUT). LUT-таблицы схожи с таблицами истинности логических операций. Прирост вычислительных возможностей FPGA достигается за счет значительного увеличения количества транзисторов и их уплотнения в сравнении с другими видами ПЛИС.
Значительная часть современных вычислительных устройств выполнена на основе интегральных схем ASIC (application-specific integrated circuit, интегральная схема специального назначения) [5, 6]. Непрограммируемая интегральная схема - ASIC - является интегральной схемой, часть структуры которой задается предприятием-изготовителем, а остальная часть определяется разработчиком.
Задание функций интегральных схем выполняется с помощью языков аппаратного описания HDL, например, AHDL, VHDL, Verilog [4-6]. Преобразование HDL-описания в конфигурацию интегральной схемы выполняется программными средствами автоматизации проектирования электронных устройств (Electronic Design Automation). Конфигурация интегральной схемы - это низкоуровневое описание, задающее путь сигнала по интегральной схеме, с целью выполнения пользовательской функции.
Файл конфигурации непрограммируемой интегральной схемы, например, ASIC, содержит описания электрических соединений, использующихся непосредственно для создания необходимых для производства фотошаблонов. Файл конфигурации ПЛИС, например, FPGA или CPLD, содержит информацию о положениях ключей шины соединений, ключей матриц логики (для CPLD) или LUT-таблицы (для FPGA). Он загружается по интерфейсу (например, JTAG, Joint Test Action Group [6]) в FPGA/CPLD или сохраняется во внешнюю память устройства, например, EEPROM. Функциональные возможности интегральных схем ограничены их видом и количеством логических элементов.
Уровень программного обеспечения
Дальнейшее развитие функциональных возможностей интегральных схем достигается путем разделения выполняемых ими функций на элементарные операции. Элементарная операция - простейшее действие, совершаемое интегральной схемой, то есть такое действие, которое не может быть представлено совокупностью более простых. Фиксированные последовательности элементарных операций называются машинными инструкциями. Количество машинных инструкций ограничено, но их достаточно для реализации всех необходимых вычислительных задач. Машинные инструкции вместе с механизмами, обеспечивающими их выполнение (соглашениями о типах данных, системами регистров,
методами адресации, моделями памяти, способами обработки прерываний и исключений, методами ввода и вывода), образуют систему команд. Интегральная схема или ее функциональный блок, выполняющая машинные инструкции в соответствии с выбранной системой команд, называется процессором.
Реализация пользовательской функции процессором достигается путем последовательного выполнения машинных инструкций [3 ,7]. Процесс задания периодичности выполнения машинных инструкций и синхронизации работы процессора с остальными компонентами системы посредством тактового сигнала называется тактированием. Таким образом, обязательным условием выполнения пользовательской функции процессором является использование тактирования. Технические средства второго уровня систематизации также могут содержать тактируемые элементы, но их использование необязательно.
Конфигурация процессора содержит описание системы команд. Возможно использование системы команд сторонних производителей или создание собственной.
Микропроцессорное программно-техническое средство (CPU-based) - это устройство, в котором процессор является отдельной интегральной схемой (CPU), а остальные компоненты, например, ОЗУ, ПЗУ, АЦП, ЦАП, таймеры подключаются к нему с помощью внешних соединений. Большинство современных CPU - это интегральные схемы специального назначения, сконфигурированные для выполнения определенной системы команд.
Микроконтроллер (MCU) - это интегральная схема, выполняющая функции процессора, ОЗУ, ПЗУ, периферийных устройств [3, 7, 8]. Большая часть микроконтроллеров не предназначена для взаимодействия с пользователем и программируется для решения отдельной задачи. Обычно микроконтроллер выполняет циклично только одну программу. Контакты микроконтроллера используются для ввода-вывода сигналов.
Система на кристалле (SoC, System-on-Chip) не имеет принципиальных отличий от микроконтроллера. Она выполняет функции процессора, ОЗУ, ПЗУ, периферийных устройств и взаимодействует с остальными компонентами посредством внешних соединений [6]. Система на кристалле появилась в результате маркетингового продвижения современных микроконтроллеров, функции которых соответствуют функциям персонального компьютера. При этом они являются более компактными устройствами.
Распределение по уровням систематизации
Распределение программно-технических средств. Систематизация ПТС состоит из трех уровней. Технические и программно-технические средства, принадлежащие каждому последующему уровню систематизации, выполнены с использованием технологий нижестоящих уровней. Способ выполнения пользовательской функции, представленный в табл. 1, является критерием отнесения ПТС к уровням систематизации.
Таблица 1. Критерии отнесения ПТС к уровням систематизации
Уровень систематизации Способ выполнения пользовательской функции
Уровень программного обеспечения С помощью процессора, путем последовательного выполнения машинных инструкций.
Уровень технологий интегральных схем С помощью интегральной схемы при прохождении сигнала от входных контактов интегральной схемы к выходным.
Уровень технологий электронных схем С помощью одной или нескольких технологий электронных схем при прохождении сигнала по элементам схемы.
Распределение способов задания пользовательской функции
В соответствии с рассмотренной систематизацией для каждого уровня корректно применение терминов задания функции интегральных или электронных схем, представленных в табл. 2.
Уровень систематизации Способ задания пользовательской функции Форма представления пользовательской функции
Уровень программного обеспечения Программирование Программа
Уровень технологий интегральных схем Конфигурирование Конфигурация
Уровень технологий электронных схем Конструирование Электронная схема
Конструирование - соединение отдельных электронных компонентов, таких как резисторы, конденсаторы, индуктивности, диоды и транзисторы, с помощью проводников (контактных дорожек) с целью создания электронной схемы, выполняющей заданную функцию. Конфигурирование - задание логической функции интегральной схемы с помощью языков описания аппаратуры интегральных схем (HDL, Hardware Description Language). Программирование - процесс разработки программ, выполняемых процессором циклически. Программой называется синтаксический блок, соответствующий правилам конкретного языка программирования и состоящий из объявлений и утверждений или инструкций необходимых для выполнения пользовательских функций. Термин программирование не должен употребляться в отношении ПЛИС, так как под программированием понимается только разработка программ для выполнения процессором.
Заключение
Систематизация ПТС охватывает все современные технические и программно-технические средства, применяемые в управляющих системах ТЭС и АЭС; устанавливает соответствие между уровнями и способами задания функций электронных и интегральных схем; определяет однозначную границу уровней ПТС, что является обязательным требованием при стандартизации; является основой для выбора технических и программно-технических средств управляющих систем АЭС; определяет терминологию способов задания и представления пользовательской функции для различных видов технических и программно-технических средств.
Систематизация позволяет отказаться от неопределенного и многозначного понятия «жесткой» логики, вносящего разногласия и споры при выборе технических средств управляющих систем безопасности АЭС и вызывающего проблемы лицензирования. Технические средства, выполненные на базе «жесткой» логики в том или ином трактовании этого понятия, должны быть отнесены в одну из соответствующих систематизации групп.
Технические и программно-технические средства, принадлежащие разным уровням систематизации, отвечают требованию аппаратного разнообразия при проектировании управляющих систем безопасности АЭС. Систематизация ПТС должна использоваться для формирования требований к управляющим системам АЭС в форме ограничения на виды применяемых устройств. На всех этапах жизненного цикла управляющих систем АЭС рекомендуется использовать терминологию в соответствии с данной систематизацией.
Список литературы
1. Манаев Е. И. Основы радиоэлектроники. М., 1990.
2. Пухальский Г. И., Новосельцева Т. Я. Цифровые устройства. СПб, 1996.
3. ДжонсМ. X Электроника - практический курс. М., 1999.
4. Stephen B., Zvonko V. Fundamentals of Digital Logic with VHDL Design. New York, 2004.
5. Максфилд К. Проектирование на ПЛИС. Курс молодого бойца. М., 2007.
6. Грушвицкий Р.И., Мурсаев А.Х., Угрюмов Е.П. Проектирование систем на микропросхемах программируемой логики. СПб, 2002.
7. Микушин А. В. Занимательно о микроконтроллерах. СПб, 2006.
8. Кениг А., Кениг М. Полное руководство по PIC-микроконтроллерам. Киев, 2007.