Логический элемент

advertisement
Синтез логических КМОП схем
с пониженным энергопотреблением
П.Н. Бибило, Л.Д. Черемисинова,
С.Н. Кардаш, Н.А. Кириенко, П.В. Леончик,
Д.Я. Новиков, В.И. Романов,
Д.И. Черемисинов
Объединенный институт проблем
информатики НАН Беларуси
Аппаратно-программный комплекс
проектирования КМОП СБИС
Программный комплекс
автоматизации
проектирования
логических схем,
оптимизированных по
критерию
энергопотребления
Библиотека КМОП
элементов с пониженным
энергопотреблением и
повышенной
устойчивостью к вредным
воздействиям
Синтез логической
схемы из
элементов КМОП
библиотеки
КМОП СБИС
с пониженным
энергопотреблением и
повышенной
устойчивостью к вредным
воздействиям
2
Логический элемент «И-НЕ»
Схема электрическая принципиальная
library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.NUMERIC_STD.all;
entity NA is
port (A:IN std_ulogic;
B:IN std_ulogic;
Y:OUT std_ulogic);
end;
architecture BEHAVIOR of NA is
begin
Y <= not (A and B) after 1ns;
end;
Топология
3
Энергосберегающее
проектирование КМОП схем
Оценки качества СБИС :
Площадь кристалла
+
Быстродействие
Энергопотребление
Мотивация :
Чрезмерное рассеивание энергии
Перегрев устройства :
нарушение функциональности
сокращение времени безотказной работы ;
Сокращение времени автономной работы
портативных устройств ;
Повышенное энергопотребление
Рост затрат на оборудование и обслуживание
4
Архитектура программного комплекса для
синтеза логических схем,
оптимизированных по энергопотреблению
Оценка
энергопотребления
VHDL
Оптимизация
двухуровневых
представлений
Двухуровневая
схема из
вентилей
Оптимизация
многоуровневых
представлений
SF,
функциональное
описание
Оценка
энергопотребления
Синтез
схемы
SF,
структурное
описание
SF,
функциональное
описание
VHDL
Leonardo
(синтез схемы)
VHDL
Схемотехническая
модель
Оценка
энергопотребления
5
Программный комплекс ЭЛС
«Энергосберегающий логический синтез»
ЭЛС
Ядро
совокупность
:
проектных
операций
6
Преобразования данных в программном
комплексе синтеза логических схем,
оптимизированных по энергопотреблению
Исходное
описание схемы
на языке VHDL
Конвертер
VHDLSF
Исходное
описание схемы
на языке SF
Описание схемы
на языке SF 1
Проект. операция 1
Проект. операция 2
Описание схемы
на языке SF 2
...
Проект. операция N
Описание схемы
на языке SF N
Конвертер
SFVHDL
Результирующее
описание схемы
на языке VHDL
7
Общий маршрут проектирования
СБИС
Исходная система булевых функций:
– VHDL-описание;
– формат SF SDF – матричная форма;
– формат SF LOG – логические уравнения
Результат покрытия: сеть элементов
КМОП-библиотеки в формате SF CONNECT –
структурное описание netlist
Троичные
матрицы
VHDL
Логические
уравнения
Двухуровневой и
Многоуровневой
логики
Технологически
независимая
оптимизация
на логическом
уровне
Технологически
зависимая
оптимизация
на логическом
уровне
10x 101
X01 100
110 110
11x 010
x = ab’ + b’c + abc’
y = abc’ + ab
z = ab’
Покрытие
Библиотечными
элементами
netlist
layout
Система ЭЛС
8
Технологический процесс проектирования
логических схем в программном
комплексе ЭЛС
9
Технологический процесс проектирования
логических схем в программном
комплексе ЭЛС
10
Работа программного
комплекса ЭЛС
Окно с приветствием
Рабочее окно настройки
Линейка
инструментов
системы ЭЛС
11
Окна программного комплекса
ЭЛС в режиме проектирования
В режиме оптимизации двухуровневой логики
12
Минимизация булевых функций с учетом
энергопотребления
n, m, k – число аргументов, функций,
конъюнкций системы ДНФ;
l1, l2 – число литералов и
kmin1, kmin2 – конъюнкций минимизированных
систем ДНФ;
Ps1, Ps2 – оценки переключательной активности
подсхем;
t1, t2 – время в сек.
Pentium 4 (3 гГц)
Сигнальные
вероятности:
p1 = 0.10; p2 = 0.13;
p3 = 0.16; p4 = 0.19;
p5 = 0.22; p6 = 0.25;
p7 = 0.28; p8 = 0.31;
p9 = 0.34; p10 = 0.37;
p11 = 0.40; p12 = 0.43;
p13 = 0.46; p14 = 0.49;
p15 = 0.52
13
Оптимизация многоуровневых
представлений
y1 = ^a+^b*^e+b*^f;
y2 = ^a*b*^c+^a*^b*^d;
y1 = ^a+(^b*^e)+(^_b*^f);
y2 = ^a*(^(^((^_b*^c)+(^b*^d))));
_b = ^b;
Факторизация
14
Синтез схем из вентилей с
учетом энергопотребления
n – число элементов,
m – число транзисторов,
k1 – число переключений
транзисторов,
k2 – число переключений
транзисторов по алгоритму
Закревского,
max – максимальное число
переключений транзисторов
ЭЛС
alu1
n
m
k1
k2
max
1. ЭЛС
5
26
280
52736
24
2. LeonardoSpectrum
7
32
414
67584
34
Leonardo
15
Синтез схем из библиотечных
элементов в системе ЭЛС
Дерево иерархии
блоков
Булевы
функции в
матричной
форме
CONNECT
d329
A=x14
e329
A=x0
f329
D=x10 A=d329.O B=x15 C=e329.O
g329
A=x18
h329
D=x16 A=f329.O B=g329.O C=x17
i329
D=x10 A=d329.O B=x15 C=e329.O
j329
A=x17
k329
D=j329.O A=i329.O B=x18 C=x16
l329
A=x16
m329
A=x15
16
Верификация состояний
проекта
Верификация выполняется для любых
пар состояний одного и того же проекта
17
Оценка энергопотребления на основе
логического VHDL-моделирования
VHDL-модель схемы
dd3
dd1
dd6
dd5
A3
w3
N
w5
A2
w1
f1
O2
x1
dd7
dd4
dd9
x2
A2
w6
w4
O2
N
f2
x3
dd2
A2
z(3)
z(5)
dd8
w2
z(2)
dd10
XOR2
z(7) z(1)
w7
z(8)
N
z(4) z(6)
z(10)
f3
library ieee;
use ieee.std_logic_1164.all;
use work.perecl.all;
entity circ is
port(x1, x2, x3 : in std_logic;
F1, F2, F3 :out std_logic;
K : out integer);
end;
architecture circ_arch of circ is
signal W :
std_logic_vector (1 to 8);
signal Z :
MAS;
begin
dd1 : A2 port map (w(5), x2, w(1), Z(1));
dd2 : A2 port map (x3, x1, w(2), Z(2));
dd3 : A3 port map (x1, x3, x2, w(3), Z(3));
dd4 : O2 port map (w(7), w(2), w(4), Z(4));
dd5 : N port map (w(3), w(5), Z(5));
dd6 : O2 port map (w(1), w(7), F1, Z(6));
dd7 : A2 port map (x2, x3, w(7), Z(7));
dd8 : XOR2 port map (w(7), w(2), w(8), Z(8
dd9 : N port map (w(4), F2, Z(9));
dd10 : N port map (w(8), F3, Z(10));
p1 : process (Z)
begin
K <= sum_percl(z);
end process;
end;
z(9)
process(z)
К
Подсчет числа переключений
транзисторов:
VHDL модель расширена монитором
для сбора статистики переключений,
который строится автоматически
18
Методика оценки энергопотребления
КМОП СБИС на схемотехническом уровне
Маршрут аналогового моделирования :
Схема  VHDL-описание  netlist КМОП-схемы в формате Edif (LeonardoSpectrum)
 SPICE-описание схемы (схемотех. моделирование AccuSim II)
Результат схемотехнического моделирования
Потребление тока КМОП-схемой (512 тактов)
19
19
Выводы
Программный комплекс ЭЛС позволяет
синтезировать логические схемы из библиотечных КМОП
элементов;
2. подготовить тесты и оценить энергопотребление на этапе
логического проектирования;
3. сформировать описания схем и подготовить тесты для
схемотехнического моделирования,
что приводит
- к сокращению сроков проектирования;
- к уменьшению площади и энергопотребления
функциональных блоков КМОП СБИС.
1.
20
Download