Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как отключить комбинационную схему?
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Nick Kovalyov
Допустим, не обязательно в ПЛИС, имеется комбинационная схема, реализующая, например, некоторую булеву функцию. Необходимо в некоторые моменты (когда она ненужна) максимально снизить ее энергопотребление, "отключить" (не снимая питания ес-но). Пусть с помощью спецсигнала нужно управлять "включением" ее в работу. Что необходимо подать на ее входы для минимизации энергопотребления? Что даст (теоретически) установка на каждом ее входе элемента с 3-стабильным состянием, который в нужные моменты не будет пропускать входные сигналы?
sazh
Цитата(Nick Kovalyov @ Sep 20 2008, 18:18) *
Допустим, не обязательно в ПЛИС, имеется комбинационная схема, реализующая, например, некоторую булеву функцию. Необходимо в некоторые моменты (когда она ненужна) максимально снизить ее энергопотребление, "отключить" (не снимая питания ес-но). Пусть с помощью спецсигнала нужно управлять "включением" ее в работу. Что необходимо подать на ее входы для минимизации энергопотребления? Что даст (теоретически) установка на каждом ее входе элемента с 3-стабильным состянием, который в нужные моменты не будет пропускать входные сигналы?


http://www.bookman.ru/book3643828.html
В книге есть раздел Architecting Power
Но рекомендации не утешительны для FPGA.
Это gate клок (системный клок, замешанный со спецсигналом) на регистры, между которыми имеется комбинационная схема.
Рекомендуются также малопотребляющие кристаллы и кристаллы, имеющие возможность работать по обоим фронтам системного клока.

SUMMARY OF KEY POINTS
. Clock control resources such as the clock enable flip-flop input or a global
clock mux should be used in place direct clock gating when they are
available.
. Clock gating is a direct means for reducing dynamic power dissipation but
creates difficulties in implementation and timing analysis.
. Mishandling clock skew can cause catastrophic failures in the FPGA.
. Clock gating can cause hold violations that may or may not be corrected by
the implementation tools.
. To minimize the power dissipation of input devices, minimize the rise and
fall times of the signals that drive the input.
. Always terminate unused input buffers. Never let an FPGA input buffer float.
. Dynamic power dissipation drops off with the square of the core voltage,
but reducing voltage will have a negative impact on performance.
. Dual-edge triggered flip-flops should only be used if they are provided as
primitive elements.
. There is no steady-state current dissipation with a series termination.
DmitryR
Чтобы минимизировать потребление надо, чтобы входы не менялись. Для этого надо на входы поставить триггеры, на их CE завести тот самый управляющий сигнал. Это если по-простому, если по-сложному - то да, можно еще на эти триггеры gated clock сделать, но это имеет смысл только тогда, когда этих триггеров очень много.
FAE_SKV
Цитата(Nick Kovalyov @ Sep 20 2008, 18:18) *
Допустим, не обязательно в ПЛИС, имеется комбинационная схема, реализующая, например, некоторую булеву функцию. Необходимо в некоторые моменты (когда она ненужна) максимально снизить ее энергопотребление, "отключить" (не снимая питания ес-но). Пусть с помощью спецсигнала нужно управлять "включением" ее в работу. Что необходимо подать на ее входы для минимизации энергопотребления? Что даст (теоретически) установка на каждом ее входе элемента с 3-стабильным состянием, который в нужные моменты не будет пропускать входные сигналы?


У Актела есть семейство ПЛИС IGLOO, разработанное специально для портативной техники. У них есть режим Flash*Freeze при котором микросхема просто останавливается и практически ничего не потребляет (от 4 мкВт), но при этом сохраняется полностью состояние логической матрицы, памяти, регистров. После выхода из режима просто продолжаем работу с места остановки.

Цитата(Nick Kovalyov @ Sep 20 2008, 18:18) *
Допустим, не обязательно в ПЛИС, имеется комбинационная схема, реализующая, например, некоторую булеву функцию. Необходимо в некоторые моменты (когда она ненужна) максимально снизить ее энергопотребление, "отключить" (не снимая питания ес-но). Пусть с помощью спецсигнала нужно управлять "включением" ее в работу. Что необходимо подать на ее входы для минимизации энергопотребления? Что даст (теоретически) установка на каждом ее входе элемента с 3-стабильным состянием, который в нужные моменты не будет пропускать входные сигналы?


У КМОП микросхем статическое потребление очень маленькое. Основное потребление в динамике при переключении схемы. Чем выше скорость переключения транзисторов внутри микросхемы, тем выше потребление. По выходу схемы потребление определяется нагрузкой. Отсюда делай выводы.
DmitryR
Цитата(FAE_SKV @ Sep 30 2008, 10:15) *
У КМОП микросхем статическое потребление очень маленькое. Основное потребление в динамике при переключении схемы.

Это так было давно, с тех пор слой оксида стал очень тонок и течет через него в статике прилично. Стоило посмотреть даташиты на FPGA, прежде чем так писать: FPGA имеют к тому же довольно большую площадь кристалла, и некоторые из них в статике кушают амперы.
Самурай
Цитата(DmitryR @ Sep 30 2008, 13:29) *
Это так было давно, с тех пор слой оксида стал очень тонок и течет через него в статике прилично. Стоило посмотреть даташиты на FPGA, прежде чем так писать: FPGA имеют к тому же довольно большую площадь кристалла, и некоторые из них в статике кушают амперы.


Не скажу насчет FPGA (амперы в статике? Точно?) но вот например для справки некоторые усредненные и приблизительные данные по современным технологиям (точных цифр не привожу, т.к. NDA):

45нм(1.2V):

AND2 : 1000pW
Flip-Flop : 4000pW
XOR2 : 3000pW
MUX2 : 2500pW


65нм(1.32V):

AND2 : 700pW
Flip-Flop : 3000pW
XOR2 : 1500pW
MUX2 : 1000pW

Остальное не сложно посчитать самомуsmile.gif
bloodden
Цитата(Самурай @ Sep 30 2008, 20:34) *
Не скажу насчет FPGA (амперы в статике? Точно?) но вот например для справки некоторые усредненные и приблизительные данные по современным технологиям (точных цифр не привожу, т.к. NDA):

45нм(1.2V):

AND2 : 1000pW
Flip-Flop : 4000pW
XOR2 : 3000pW
MUX2 : 2500pW
65нм(1.32V):

AND2 : 700pW
Flip-Flop : 3000pW
XOR2 : 1500pW
MUX2 : 1000pW

Остальное не сложно посчитать самомуsmile.gif

Чёт не то. Это как получается: чем меньше техпроцесс, тем больше потребление? Чушь. Скорее наоборот.
FAE_SKV
Цитата(DmitryR @ Sep 30 2008, 13:29) *
Это так было давно, с тех пор слой оксида стал очень тонок и течет через него в статике прилично. Стоило посмотреть даташиты на FPGA, прежде чем так писать: FPGA имеют к тому же довольно большую площадь кристалла, и некоторые из них в статике кушают амперы.


На какие FPGA? У всех микросхем всех производителей потребление в статике уменьшается. Не надо забывать, что очень выросла степень интеграции - количество транзисторов - а следовательно и суммарный ток утечки. Вот только если бы все было так однозначно, то какой-нибудь Virtex5 должен был бы кушать в статике немерено и вряд ли бы кто-то стал его использовать. Да, пленочки становяться тоньше, но ток утечки определяется не только толщиной, но и качеством изготовления. Почитай книжечки по изготовлению полевых транзисторов. тогда поймешь из чего складывается ток утечки. Количество нанометров не самый главный параметр.

Цитата(DmitryR @ Sep 30 2008, 13:29) *
Это так было давно, с тех пор слой оксида стал очень тонок и течет через него в статике прилично. Стоило посмотреть даташиты на FPGA, прежде чем так писать: FPGA имеют к тому же довольно большую площадь кристалла, и некоторые из них в статике кушают амперы.

Это какая же ПЛИС кушает в статике амперы? И сколько же тогда она жрет в динамике?

А вот тебе пример по FLASH ПЛИС Актел
Actel APA1000 технология 0,22 мкм, потребление в статике 19мВт
Actel A3P1000 технология 0,13 мкм, потребление в статике 12мВт

У Xilinx и Altera будет побольше , т.к. они выполнены по ОЗУ технологии, но не ватты!
DmitryR
Цитата(FAE_SKV @ Oct 1 2008, 10:51) *
Вот только если бы все было так однозначно, то какой-нибудь Virtex5 должен был бы кушать в статике немерено и вряд ли бы кто-то стал его использовать.

Это какая же ПЛИС кушает в статике амперы? И сколько же тогда она жрет в динамике?

А вот тебе пример по FLASH ПЛИС Актел
Actel APA1000 технология 0,22 мкм, потребление в статике 19мВт
Actel A3P1000 технология 0,13 мкм, потребление в статике 12мВт

У Xilinx и Altera будет побольше , т.к. они выполнены по ОЗУ технологии, но не ватты!

Хорошего человека обидеть может каждый. Загляните всеж пожалуйста в Xilinx DS202 (версия 4.7, 23 сентября 2008), страница 3, таблица 4, это как раз Virtex-5 в статике расписан. По Vccint (который 1 вольт номинально) меньше ампера кушает только четверть семейства, старшие - более 4 ампер. Удивлены? Не удивляйтесь, они вдвое "тоньше", чем Actel ProASIC3 и гораздо большей площади (при равном количестве логики там есть аппаратные умножители и больше PLL). И несмотря на такое потребление - их используют. Процессоры современные потребляют еще в разы больше, от них же не отказываются.
FAE_SKV
Цитата(DmitryR @ Oct 1 2008, 12:41) *
Хорошего человека обидеть может каждый. Загляните всеж пожалуйста в Xilinx DS202 (версия 4.7, 23 сентября 2008), страница 3, таблица 4, это как раз Virtex-5 в статике расписан. По Vccint (который 1 вольт номинально) меньше ампера кушает только четверть семейства, старшие - более 4 ампер. Удивлены? Не удивляйтесь, они вдвое "тоньше", чем Actel ProASIC3 и гораздо большей площади (при равном количестве логики там есть аппаратные умножители и больше PLL). И несмотря на такое потребление - их используют. Процессоры современные потребляют еще в разы больше, от них же не отказываются.

Согласен. Насчет Virtex-5 и других последних больших ПЛИС был неправ. Я все больше смотрю на ПЛСИ поменьше. А тогда как объяснить, исходя из Вашей логике следующе

Spartan IIE XC2S600E 0.18/0,22 мкм, 15 552 LE, 4 DLL, потребление в статике 400 мА.
Actel ProASIC3E A3PE600 0,13 мкм 13 824 LE, 6 PLL, потребление в статике 45 мА.
даже если учесть, что LE в Spartan больше возмем большую ПЛИС Actel
Actel A3PE1500, 38 400 LE, 6 PLL потребление в статике 105 мА.
Как-то неукладывается ПЛИС Актел "тоньше", ячеек больше, а кушает почти в четыре раза меньше.

Здесь дело не в нанометрах, а в технологии изготовления и быстродействии. ОЗУ КМОП технология изначально больше кушает. А FLASH КМОП значительно меньше. К тому же ток потребления даже у одного производителя растет скорее за счет увеличения объема, а не уменьшения толщины.
DmitryR
Цитата(FAE_SKV @ Oct 2 2008, 18:12) *
Здесь дело не в нанометрах, а в технологии изготовления и быстродействии. ОЗУ КМОП технология изначально больше кушает. А FLASH КМОП значительно меньше. К тому же ток потребления даже у одного производителя растет скорее за счет увеличения объема, а не уменьшения толщины.

ЗДЕСЬ (в приведенном примере) - да, действительно, и с этим я вроде бы и не спорил. Однако, несколькими постами выше вы утверждали, что у КМОП микросхем ВООБЩЕ статическое потребление ничтожно. Что я и оспорил, показав, что у наиболее употребимых FPGA статическое потребление таки велико. Далее, если посмотреть даташиты разных семейств Xilinx с примерно одинаковым объемом логики, то будет заметна и разница в потреблении от толщины техпроцесса. Разумеется, отсюда есть исключения всякие в виде Actel разных (если взять их antifuse к примеру - так те наверное еще на порядок меньше текут) или Lattice XP, но это именно исключения, так как распространены мало.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.