ISSN 2076-2429 (print)
162
Праці Одеського політехнічного університету, 2014. Вип. 1(43)
ISSN 2223-3814 (on line)
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ
АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
COMPUTER AND INFORMATION NETWORKS AND SYSTEMS
MANUFACTURING AUTOMATION
А.В. Дрозд, д-р техн. наук, проф., УДК 004. К.В. Защелкин, канд. техн. наук, доц., Одес. нац. политехн. ун-тГРИН-ОРИЕНТИРОВАННАЯ ЕСТЕСТВЕННАЯ
КОНВЕЙЕРИЗАЦИЯ ЦИФРОВЫХ СХЕМ
В FPGA-ПРОЕКТАХ
Введение. Программируемые логические схемы типа FPGA (Field Programmable Gate Array) [1] являются широко используемой элементной базой для построения цифровых систем.Микросхемы FPGA применяются в тех областях, где нет сверхжестких ограничений по производительности и габаритам устройств, но требуются характеристики, которые не могут быть обеспечены микропроцессорами или микроконтроллерами [2]. Активное использование микросхем FPGA в составе различных мобильных устройств, питающихся от автономных источников, обусловливает актуальность проблемы снижения энергопотребления FPGA-проектов.
Подходы к решению данной проблемы выступают составной частью методологии оптимального использования вычислительных ресурсов, имеющей обобщенное название “гринкомпьютинг” (Green Computing, Green IT) [3, 4].
Анализ последних исследований и публикаций. Мощность Pref, потребляемая цифровым вычислительным устройством, зависит от суммарной эффективной емкости Cref за один такт работы устройства, напряжения питания Vref и частоты переключений fref [5]:
Pref = CrevV 2 ref f ref, (1) При этом сомножители Vref и fref в выражении (1) не являются независимыми друг от друга.
Минимальная задержка прохождения сигнала зависит от напряжения Vref по обратно пропорциональному нелинейному закону [5]. Это означает, что снижение напряжения питания приводит к увеличению минимальной задержки и соответственно к уменьшению максимально возможной частоты fref функционирования устройства.
Index DOI
© А.В. Дрозд, К.В. Защелкин,
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
ISSN 2076-2429 (print) Праці Одеського політехнічного університету, 2014. Вип. 1(43) ISSN 2223-3814 (on line) Исходя из формулы (1) можно выделить три пути уменьшения мощности Pref:— уменьшение величины Cref. Величина Cref в основном зависит от таких параметров, как площадь кристалла; количество транзисторов, размещенных на нем; суммарная длина межсоединений. Уменьшение величины Cref возможно только за счет применения иных технологических или архитектурных подходов, которые изменяют указанные параметры;
— уменьшение величины fref. Предельное возможное (максимальное) значение величины fref определяется задержкой прохождения сигнала между вычислительными блоками. От значения fref зависит то, насколько быстро может быть выполнена вычислительная функция устройства. Уменьшение fref приводит к пропорциональному уменьшению мощности потребления, но и к такому же уменьшению быстродействия вычислителя. То есть, при уменьшении fref вычислительная задача решается за большее время, но в ходе ее решения потребляется мощность, которая меньше первоначальной. Это, в итоге, не дает выигрыша по суммарным затратам энергии на решение задачи;
— уменьшение величины Vref. Поскольку величина Vref находится в формуле (1) во второй степени, ее уменьшение вносит больший вклад в снижение потребляемой мощности, чем остальные сомножители. Однако, как было указано выше, уменьшение Vref влечет уменьшение максимально возможной частоты fref. Это, в свою очередь, приводит к недостатку, указанному применительно к предыдущему пути уменьшения мощности: увеличению времени решения задачи, а следовательно, к незначительности выигрыша по суммарным затратам энергии на решение задачи.
Существуют способы компенсации уменьшения частоты fref при снижении напряжения Vref.
Эти способы позволяют получить неизменную (или незначительно отличающуюся) производительность вычислений при уменьшении частоты. Так, предлагаются характерные способы компенсации, основанные на параллельном дублировании вычислительных блоков и конвейеризации вычислителя [5]. Однако эти способы ориентированы:
— на использование в среде специализированной элементной базы (микросхем типа ASIC [6]);
— на изменение проекта на высоком уровне, т.к. оперируют крупными блоками проекта.
Указанные ограничения существующих способов дают возможность предложить развитие способов компенсации уменьшения частоты при снижении напряжения, ориентированное на низкоуровневые особенности архитектуры программируемых микросхем FPGA.
Цель работы состоит в исследовании подходов к снижению энергопотребления цифровых систем за счет использования низкоуровневых особенностей архитектуры микросхем FPGA.
Изложение основного материала. Снижение энергопотребления цифровых синхронных схем путем уменьшения напряжения питания, достигаемое согласно (1), должно быть обеспечено достаточной продолжительностью такта для учета замедления выполняемых вычислений.
Один из подходов, позволяющих согласовать увеличенное в такте время вычислений и исходную тактовую частоту, состоит в дополнительной конвейеризации участков конвейера путем введения промежуточных регистровых структур [5].
Архитектура микросхем FPGA построена на основе, упорядоченной в виде двухмерной матрицы совокупности логических ячеек LE (Logic Element), каждая из которых содержит программируемый вычислитель (LUT — Look Up Table) и элемент памяти T [1]. Таким образом, архитектура микросхем FPGA позволяет естественным образом организовывать конвейерные каскады на уровне ее ячеек. Более того, такая организация микросхем FPGA дает возможность гибко варьировать длины критических путей прохождения сигнала путем изменения порядка следования вычислителей и элементов памяти. Так архитектура FPGA позволяет за счет имеющихся ресурсов ячеек создавать различное количество последовательно подключенных элементарных вычислителей между конвейерными каскадами с целью достижения оптимального для конкретной проектной задачи соотношения между производительностью, затратами оборудования и энергопотреблением.
Возможности естественной конвейеризации, предусмотренной для разработки синхронных цифровых схем в FPGA-проектах, позволяет продемонстрировать следующий эксперимент.
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
ISSN 2076-2429 (print) Праці Одеського політехнічного університету, 2014. Вип. 1(43) ISSN 2223-3814 (on line) Цель эксперимента состоит в оценке возможностей сохранения тактовой частоты FPGAпроекта при замедлении вычислений в условиях снижения напряжения питания и соответственно энергопотребления, реализуемых за счет дополнительной конвейеризации схемы на уровне логических ячеек LUT-ориентированной архитектуры.Исходная схема для проведения эксперимента (далее схема S1) реализует логическую функцию y = x0 < x1 < x2 < K < x16383 (2) и представляет собой семиуровневое дерево вычислительных блоков LUT. Выходы блоков предыдущего уровня схемы непосредственно подключаются к входам блоков следующего уровня.
На первом уровне используется 4096 блоков. Каждый следующий уровень содержит в раза меньше блоков: второй уровень — 1024 блока, третий уровень — 256 блоков и т.д. Последний седьмой уровень состоит из одного блока.
Количество аргументов функции (2) выбрано равным 16384 как число:
— кратное 4n для того, чтобы задействовать все входы 4-входовых блоков LUT, участвующих в реализации функции;
— обеспечивающее максимальное заполнение микросхемы при данной структуре схемы S1.
Формирование аргументов функции производится при помощи счетчика Джонсона соответствующей разрядности.
Схема проектируется в САПР Altera Quartus II v13 64 bit на FPGA Altera семейства Cyclone II EP2C35F672C6 [7]. Временные параметры оцениваются при помощи модуля TimeQuest Timing Analyzer [8], а энергопотребление — утилитой Power Play [9].
Блоки верхнего уровня иерархии схемы S1, полученной в схемотехническом редакторе САПР Altera Quartus II, показаны на рис. 1.
Рис. 1. Представление схемы S1 в схемотехническом редакторе САПР Altera Quartus Схема содержит блок SourceJohnson — счетчик Джонсона, формирующий значения аргументов логической функции (2) и блок LUTTree вычисления ее значений.
Из исходной схемы S1 получены схемы S2, S3, S4, которые также реализуют логическую функцию (2) в виде семиуровневого дерева вычислительных блоков LUT, однако отличаются от схемы S1 наличием конвейерных каскадов между уровнями.
Конвейерные каскады образуются триггерами логических ячеек FPGA, которые обеспечивают вычислительную функцию каждого уровня схемы.
Структура схем S1 … S4, показана на рис. 2. В схеме S1 все уровни (обозначены буквами “У” с порядковыми номерами) соединены между собой непосредственно. В схемах S2 и S3 регистровые структуры (обозначены как RG) установлены после каждого третьего и каждого второго уровня, соответственно, а в схеме S4 между всеми соседними уровнями.
Методика проведения эксперимента содержит следующие шаги:
1) в среде САПР Altera Quartus II проектируются схемы S1…S4 и определяются затраты оборудования на их реализацию;
2) при помощи модуля TimeQuest Timing Analyzer САПР Altera Quartus II оцениваются максимальные частоты тактирования F1MAX…F4MAX, на которых схемы S1…S4 могут функционировать корректно;
3) используя утилиту Power Play в составе САПР Altera Quartus II, оценивается электропотребление каждой из схем S1…S4 при частоте тактирования F1MAX;
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
ISSN 2223-3814 (on line) Результаты. В табл. 1 приведены оценки энергопотребления для схем S1…S4. Для этого использованы следующие показатели: частота тактирования F (исходная F1MAX = 135,15 MHz для схемы S1 и максимальные F2MAX…F4MAX для схем S2…S4 ); динамическая и статическая составляющие энергопотребления; а также суммарное энергопотребление ядра микросхемы (VССINT) и системы ввода-вывода (VССIO), полученные для указанных частот тактирования.
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
Праці Одеського політехнічного університету, 2014. Вип. 1(43) Отношение максимальных частот F2MAX, F3MAX и F4MAX, полученных для схем S2…S4, к частоте F1MAX оценивает коэффициенты сокращения времени вычислений в исходном такте, достигнутые за счет дополнительной конвейеризации. Они составляют соответственно K2=1,36, K3=1,56 и K4=3,11, оценивая возможности повышения производительности схем или замедления времени выполнения вычислений в такте исходной частоты F1MAX.Последнее, согласно (1), позволяет оценить максимальные возможности энергосбережения при понижении напряжения до полного использования такта K22=1,8, K32=2,5 и K42=9,7. Эти возможности реализуются при линейном увеличении времени вычислений с понижением напряжения питания в рамках сохранения помехоустойчивого представления логического нуля и единицы.
Абсолютные и относительные затраты оборудования на реализацию схем S1…S4 в составе микросхемы представлены в табл. 2.
В табл. 2 можно отметить одинаковое количество используемых блоков LUT (16 %) и ожидаемый рост количества задействованных элементов памяти Т с 49 до 66 % в соответствии с дополнительной конвейеризацией, выполняемой от схемы к схеме при их расположении в порядке увеличения номеров от S1 до S4. Кроме того, можно наблюдать процесс снижения с до 0 % разности между количеством используемых ячеек LE и элементов памяти, который свидетельствует об увеличении с 8 до 16 % количества ячеек LE, в которых используются и LUT, и элемент памяти. Таким образом, количество ячеек LE изменяется нелинейно: снижается от схемы S1 к схеме S2 и далее увеличивается в соответствии с ростом количества используемых элементов памяти. Такой же характер изменений претерпевает для схем S1…S4 динамическая составляющая энергопотребления ядра на частоте F1MAX. На максимальных частотах F2MAX…F4MAX схемы S2…S4 показывают рост этой составляющей в соответствии с увеличением количества тактов и соответственно переключений, выполняемых за единицу времени.
Динамическая составляющая энергопотребления системы ввода-вывода растет с увеличением частоты от F1MAX до F4MAX. Статическая составляющая энергопотребления ядра и системы ввода-вывода микросхемы соответственно остается постоянной или изменяется незначительно, повторяя характер изменений динамической составляющей, а также передавая его показателям суммарного энергопотребления.
Выводы. По результатам проведенных экспериментальных исследований можно сделать следующие выводы.
Архитектура микросхем FPGA естественным образом позволяет организовывать конвейерные каскады на уровне ее ячеек. Особенности организация микросхем FPGA порождают возможность гибкого варьирования длины критических путей прохождения сигнала путем изменения последовательности следования вычислителей (блоков LUT) и элементарных блоков памяти.
Рассмотренная технология снижения энергопотребления предполагает конвейерную компенсацию потери производительности вычислений. Эта технология может быть эффективно реализована в среде FPGA за счет возможности создания различного количества последовательно подключенных элементарных вычислителей между конвейерными каскадами.
Архитектура микросхем FPGA позволяет естественно реализовывать данную технологию для достижения оптимального соотношения между производительностью, энергопотреблением и затратами оборудования.
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
ISSN 2223-3814 (on line) Таким образом, проведенные экспериментальные исследования показывают целесообразность использования естественных возможностей конвейеризации схем в FPGA-проектах для повышения производительности и снижения динамической составляющей энергопотребления.Литература 1. Грушвицкий, Р.И. Проектирование систем на микросхемах с программируемой структурой / Р.И. Грушвицкий, А.Х. Мурсаев, Е.П. Угрюмов. — 2-е изд., [перераб. и доп.]. — СПб.: БХВПетербург, 2006. — 736 с.
2. Maxfield, C. The Design Warriors Guide to FPGAs: Design, Tools and Flows / C. Maxfield. — USA, Burlington: Newnes, 2004. — 542 p.
3. Drozd, J.V. Resource Approach to Development of the Green Technologies in Computer Systems and Their Components / J.V. Drozd, M.A. Drozd // Електротехнічні та комп’ютерні системи. — 2013. — 4. Smith, B.E. Green Computing: Tools and Techniques for Saving Energy, Money, and Resources / B.E. Smith. — Boca Raton: CRC Press, 2014. — 240 p.
5. Rabaev, J. Digital Integrated Circuits / J. Rabaev, A. Chandrakasan, B. Nikolic. — 2nd Edition — Prentice Hall, 2003. — 760 p.
6. Угрюмов, Е.П. Цифровая схемотехника / Е.П. Угрюмов. — 3-е изд. — СПб.: БХВ-Петербург, 7. Cyclone II Architecture [Электронный ресурс] // Cyclone II Device Handbook Version 3.1. — Altera Corporation, 2007. — Режим доступа: http://www.altera.com/literature/hb/cyc2/cyc2_cii51002.pdf (Дата обращения: 22.03.2014 г.) 8. The Quartus II TimeQuest Timing Analyzer [Электронный ресурс] // Quartus II Handbook Version 13.1.0. — Altera Corporation, 2013. — Режим доступа: http://www.altera.com/literature/hb/qts/ qts_qii53018.pdf (Дата обращения: 22.03.2014 г.) 9. PowerPlay Power Analysis [Электронный ресурс] // Quartus II Handbook Version 13.1.0. — Altera Corporation, 2013. — Режим доступа: http://www.altera.com/literature/hb/qts/qts_qii53013.pdf (Дата обращения: 22.03.2014 г.) References 1. Grushvitskiy, R.I. Proektirovanie sistem na mikroskhemakh s programmiruemoy strukturoy [Designing systems on chips with programmable structure] / R.I. Grushvitskiy, A.Kh. Mursaev, E.P. Ugryumov. — 2nd edition, revised and enlarged. — Saint Petersburg, 2006. — 736 p.
2. Maxfield, C. The Design Warriors Guide to FPGAs: Design, Tools and Flows / C. Maxfield. — USA, Burlington: Newnes, 2004. — 542 p.
3. Drozd, J.V. Resource Approach to Development of the Green Technologies in Computer Systems and Their Components / J.V. Drozd, M.A. Drozd // Електротехнічні та комп’ютерні системи. — 2013. — 4. Smith, B.E. Green Computing: Tools and Techniques for Saving Energy, Money, and Resources / B.E. Smith. — Boca Raton: CRC Press, 2014. — 240 p.
5. Rabaev, J. Digital Integrated Circuits / J. Rabaev, A. Chandrakasan, B. Nikolic. — 2nd Edition — Prentice Hall, 2003. — 760 p.
6. Ugryumov, E.P. Tsifrovaya shemotekhnika [Digital circuitry] / E.P. Ugryumov. — 3rd edition. — Saint Petersburg, 2010. — 797 p.
7. Cyclone II Architecture [Electronic resource] // Cyclone II Device Handbook Version 3.1. — Altera Corporation, 2007. — Available at: http://www.altera.com/literature/hb/cyc2/cyc2_cii51002.pdf (Access date: 22.03.2014 г.) 8. The Quartus II TimeQuest Timing Analyzer [Electronic resource] // Quartus II Handbook Version 13.1.0. — Altera Corporation, 2013. — Available at: http://www.altera.com/literature/hb/qts/ qts_qii53018.pdf (Access date: 22.03.2014 г.) 9. PowerPlay Power Analysis [Electronic resource] // Quartus II Handbook Version 13.1.0. — Altera Corporation, 2013. — Available at: http://www.altera.com/literature/hb/qts/qts_qii53013.pdf (Access date:
КОМП’ЮТЕРНІ Й ІНФОРМАЦІЙНІ МЕРЕЖІ І СИСТЕМИ. АВТОМАТИЗАЦІЯ ВИРОБНИЦТВА
Праці Одеського політехнічного університету, 2014. Вип. 1(43)АНОТАЦІЯ / АННОТАЦИЯ / ABSTRACT
О.В. Дрозд, К.В. Защолкін. Грін-орієнтована природна конвеєризація цифрових схем в FPGA-проектах. Розглянуто проблему зниження енергоспоживання цифрових систем, побудованих на елементній базі мікросхем FPGA.Відзначено традиційні шляхи зниження енергоспоживання в цифрових системах. Проведено дослідження можливостей зниження енергоспоживання цифрових систем за рахунок використання низькорівневих особливостей архітектури мікросхем FPGA. Показано, що архітектура мікросхем FPGA дозволяє за рахунок наявних ресурсів її внутрішніх осередків створювати різну кількість послідовно підключених елементарних обчислювачів між конвеєрними каскадами з метою досягнення оптимального для конкретної проектної задачі співвідношення між продуктивністю, витратами на обладнання та енергоспоживанням. Показано доцільність використання природних можливостей конвеєризації схем в FPGAпроектах для підвищення продуктивності і зниження динамічної складової енергоспоживання.
Ключові слова: грін-технології, оцінка енергоспоживання, комп'ютерна система, цифрова система, FPGA, конвеєризація.
А.В. Дрозд, К.В. Защелкин. Грин-ориентированная естественная конвейеризация цифровых схем в FPGAпроектах. Рассмотрена проблема снижения энергопотребления цифровых систем, построенных на элементной базе микросхем FPGA. Отмечены традиционные пути снижения энергопотребления в цифровых системах. Проведено исследование возможностей снижения энергопотребления цифровых систем за счет использования низкоуровневых особенностей архитектуры микросхем FPGA. Показано, что архитектура микросхем FPGA позволяет за счет имеющихся ресурсов ее внутренних ячеек создавать различное количество последовательно подключенных элементарных вычислителей между конвейерными каскадами с целью достижения оптимального для конкретной проектной задачи соотношения между производительностью, затратами на оборудования и энергопотреблением. Показана целесообразность использования естественных возможностей конвейеризации схем в FPGA-проектах для повышения производительности и снижения динамической составляющей энергопотребления.
Ключевые слова: грин-технологии, оценка энергопотребления, компьютерная система, цифровая система, FPGA, конвейеризация.
A.V. Drozd, K.V. Zashcholkin. Green-oriented natural pipelining of digital circuits in FPGA-projects. The problem of reducing the power consumption for digital systems based on the FPGA chip element base is considered. The traditional ways of reducing energy consumption in digital systems are emphasized. A study of the possibilities for reducing energy consumption of digital systems is provided through the use of low-level features of the FPGA chip architecture. The paper shows that FPGA microchip architecture allows due to its internal cells resources to provide the diverse amount of serially connected computing units, created between pipelined stages in order to achieve the optimal correlation for the specific project and its productivity, hardware costs and power consumption. The expediency of using natural criteria for pipelining schemes in FPGA projects is demonstrated to improve performance and to reduce power consumption of any dynamic component.
Keywords: green technologies, estimation of power consumption, computer system, digital system, FPGA, pipelining.