Successfully reported this slideshow.
Унифицированная высокоуровневая
модель программно-аппаратной
системы для верификации свойств
надежности функционирования
 ...
2
 ОСНОВНЫЕ ЭТАПЫ ПРОЕКТИРОВАНИЯ
ПРОГРАММНО-АППАРАТНЫХ СИСТЕМ
 Architectural and RTL Design
Input: Архитектурная/поведенч...
3
     Основные Вызовы в практике
верификации проектов
 Верификация занимает 50-80% of ASIC / IP / SoC
проектных затрат
 ...
НЕКОТОРЫЕ ФАКТОРЫ СТОИМОСТИ
ПРОЕКТИРОВАНИЯ
 RTL Синтез по исходной спецификации,
 Разработка производственных и эксплуат...
5
Возможности    повышения эффективности 
Переиспользование (Reuse) входных данных и
результатов различных этапов проектир...
          УНИФИКАЦИЯ
 {Task_i}- набор задач,
решение которых
необходимо для
разработки проекта
системы (синтеза,
тестиров...
          ЯЗЫКИ СПЕЦИФИКАЦИИ
Уровень модели
Арихитектурно-
Алгоритмический
Поведенческий
RTL
  SystemC, Abstract State Mac...
8
Algorithmic State Machine (ASM)
An Algorithmic State Machine (ASM) –направленный граф с начальной 
вершиной   (Begin), к...
Блок-схема алгоритма Контроллера Светофора
main- main road, sec- secondary, amb- ambulance 9
10
Переход от блок-схемы алгоритма к
ASM :
Вершины  НАБОР МИКРООПЕРАЦИЙ y1, y2, … ,
yN,  операторы Y1, Y2, … ,YM
Неформа...
Блок-схема- ASM  FSM
 Входы вершин “Begin” .
“End” помечаем как a1
 Входы вершин следующих
за операторными
вершинами по...
12
Основные свойства ASM, обеспечивающие
прозрачность связей разных уровней
проектирования
 Все операции в одной оператор...
Таблица переходов FSM контроллера
13
Структурное представление FSM
14
15
Синтез схем с использованием системы
Abelite
(Prof. Samary Baranov, Holon Institute of Technology, Israel)
ASM-descript...
ASM как средство
унификации

16
ASM-Диаграмма
Анализ
тестов
Анализ
производительности
Анализ
надежности
17
Общая схема верификации проектов
18
Верификация на основе Model Checking
FINITE-STATE
SYSTEM
PROPERTY
TO VERIFY
MODEL
CHECKING
PROGRAM
PROPERTY IS TRUE OR
...
Формальная верификация для проверки соответствия проекта
определенным требованиям производительности и надежности
Использование ASM- для
полуформальной спецификации проекта
20
Защита (Hardening) от EU
Hamming distance preserving arithmetic, Shlomi Dolev (Ben-Gurion Univ.,
Israel and Sergey Frenkel...
модель самовосстановления
после прекращения действия помехи
Начальный момент t=0;
 автомат X под действием помехи переход...
Произведение автоматов
Распределение вероятностнй входов X известно.
Множество состяний автомата- {(si,sj
f
)}, i,j=1,..n
...
Вероятностная модель
 Цепь Маркова (ЦМ) Zt=(Xt, Yt), описывает совместное
функционирование ЦМ Xt и Yt до момента, когда л...
25
Вычисление вероятности
самовосстановления
26
D ектор начального распределения определяется начальными
состояниями исправно...
Пример вычисления переходных вероятности ЦМ Zt
 Состояния A0 и A1 -вероятность остаться в каждом
из этих состояний равна ...
28
Методология совместной функциональной и
надежностной верификации
ASM диаграмма фазы выборки конвейеризированного
процессора
29
Входные данные программ верификации,генерируемые из
ASM
Таблица переходов
автомата
Микрооперации
30
Анализ надежности
Вероятности восстановления через t тактов после сбоя (1,2):
SH = (0.0, 0.034, 0.46, 0.55, 0.64, 0.68),
и...
32
Thank You!
Upcoming SlideShare
Loading in …5
×

TMPA-2013 Frenkel: Verifying Functional Reliability

802 views

Published on

Tools & Methods of Program Analysis (TMPA-2013)
Frenkel, S.L., Zakharov, V.N., Ushakov, V.G., Institute of Informatics Problems, RAS; Moscow State University
Unified High Level Model of Software and Hardware System for Verifying Functional Reliability

  • Be the first to comment

  • Be the first to like this

TMPA-2013 Frenkel: Verifying Functional Reliability

  1. 1. Унифицированная высокоуровневая модель программно-аппаратной системы для верификации свойств надежности функционирования   С.Л. Френкель1 , В.Н.Захаров1 , В.Г. Ушаков2 1 Институт проблем информатики (fsergei@mail.ru, VZakharov@ipiran.ru) 2 Московский гос. университет им. М.В. Ломоносова, Институт проблем информатики РАН ( Ushakov@akado.ru ).
  2. 2. 2  ОСНОВНЫЕ ЭТАПЫ ПРОЕКТИРОВАНИЯ ПРОГРАММНО-АППАРАТНЫХ СИСТЕМ  Architectural and RTL Design Input: Архитектурная/поведенческая модель на HDL (Verilog, VHDL) или языках высокого уровня (SystemC, SystemVerilog) Output: RTL модель:  data path  control logic (конечно-автоматная модель блока управления)  Logic Synthesis Input: RTL описание Output: вентильная модель  Physical Design Вне нашего рассмотрения
  3. 3. 3      Основные Вызовы в практике верификации проектов  Верификация занимает 50-80% of ASIC / IP / SoC проектных затрат  Вычислительная сложность формальной верификации  Моделирование:медленно, трудоемкость подбора тестовых примеров и анализа результатов  Дороговизна программных инструментов. Высокие, и зачастую противоречивые требования к подготовке персонала
  4. 4. НЕКОТОРЫЕ ФАКТОРЫ СТОИМОСТИ ПРОЕКТИРОВАНИЯ  RTL Синтез по исходной спецификации,  Разработка производственных и эксплуатационных тестов  Функционально-временная верификация проекта  Анализ надежности в присутствии различных внешних помех ф
  5. 5. 5 Возможности    повышения эффективности  Переиспользование (Reuse) входных данных и результатов различных этапов проектирования через унификацию исходных спецификаций.
  6. 6.           УНИФИКАЦИЯ  {Task_i}- набор задач, решение которых необходимо для разработки проекта системы (синтеза, тестирования, верификации, надежности и.т.д.) ФЗ-формализованное задание, Ispec_i- неформальная  спецификация i-ой  задачи   6 Унификация {Task_i} (Ispec_i) i=  1,2…k     ФЗ (Design Input)  SW_i(input) Requirements
  7. 7.           ЯЗЫКИ СПЕЦИФИКАЦИИ Уровень модели Арихитектурно- Алгоритмический Поведенческий RTL   SystemC, Abstract State Machine  (AsmL),Promela (синтез, верификация) SystemC, System Verilog, SMV  (синтез, верификация)   VHDL, Verilog (синтез, верификация,  производственные тесты)  7
  8. 8. 8 Algorithmic State Machine (ASM) An Algorithmic State Machine (ASM) –направленный граф с начальной  вершиной   (Begin), конечной (End), и конечным множеством  операторных  и условных вершин с одним входом.  Вершина End не имеет выходов.  Операторная вершина содержит  описание операторов на некотором псевдо-коде. ASM позволяет: Иерархически описать алгоритм работы проектируемой системы , Специфицировать Data Path проектируемой системы,  Специфицировать  управляющий автомат проектируемой системы.
  9. 9. Блок-схема алгоритма Контроллера Светофора main- main road, sec- secondary, amb- ambulance 9
  10. 10. 10 Переход от блок-схемы алгоритма к ASM : Вершины  НАБОР МИКРООПЕРАЦИЙ y1, y2, … , yN,  операторы Y1, Y2, … ,YM Неформальные условия в условных вершинах  булевы функции от x1, x2,, … , xL
  11. 11. Блок-схема- ASM  FSM  Входы вершин “Begin” . “End” помечаем как a1  Входы вершин следующих за операторными вершинами помечаем как a1,..,aM (M=6) Входы разных вершин, кроме END, помечаются разными индексами) 11
  12. 12. 12 Основные свойства ASM, обеспечивающие прозрачность связей разных уровней проектирования  Все операции в одной операторной вершине выполняются в одном и том же цикле  Если две операции в двух последовательных вершинах могут быть выполены в одном цикле, то вершины (и соответсnвующие им состояния ai ) могут быть объеденены в одну  Для каждой регистровой операции (register- transfer statement), существует путь между регистром -иcточником, и регистром – приемником .
  13. 13. Таблица переходов FSM контроллера 13
  14. 14. Структурное представление FSM 14
  15. 15. 15 Синтез схем с использованием системы Abelite (Prof. Samary Baranov, Holon Institute of Technology, Israel) ASM-description FSMFSM Micro operations RTL (VHDL) Design Tools (SYNOPSIS,CADENCE) I2 Joint ASM Flow Chart I1 In
  16. 16. ASM как средство унификации  16 ASM-Диаграмма Анализ тестов Анализ производительности Анализ надежности
  17. 17. 17 Общая схема верификации проектов
  18. 18. 18 Верификация на основе Model Checking FINITE-STATE SYSTEM PROPERTY TO VERIFY MODEL CHECKING PROGRAM PROPERTY IS TRUE OR A COUNTER EXAMPLE propagates sets of states, not individual trajectories
  19. 19. Формальная верификация для проверки соответствия проекта определенным требованиям производительности и надежности
  20. 20. Использование ASM- для полуформальной спецификации проекта 20
  21. 21. Защита (Hardening) от EU Hamming distance preserving arithmetic, Shlomi Dolev (Ben-Gurion Univ., Israel and Sergey Frenkel (IPI RAN), 2008
  22. 22. модель самовосстановления после прекращения действия помехи Начальный момент t=0;  автомат X под действием помехи переходит в состояние Y0 вместо состояния X0.  Обозначим такой автомат как как Y. Неисправный автомат Y действует на тех же входных сигналах с теми же переходами и выходными сигналами в зависимости от текущих состояний и входных сигналов. Так происходит до того момента, когда либо проявилось действие помехи в выходном сигнале, либо состояния обоих автоматов совпадут. 22
  23. 23. Произведение автоматов Распределение вероятностнй входов X известно. Множество состяний автомата- {(si,sj f )}, i,j=1,..n {si }- состояния исправного автомата, {sj f } – автомат, подвергшийся действию помехи Время до самовосстановления (Self-healing time):
  24. 24. Вероятностная модель  Цепь Маркова (ЦМ) Zt=(Xt, Yt), описывает совместное функционирование ЦМ Xt и Yt до момента, когда либо выходной сигнал неисправного автомата окажется отличным от выходного сигнала исправного автомата (проявилось действие помехи в выходном сигнале), либо состояния обоих автоматов совпадут.  Множества состояний S1,2, |S1,2| = n, обеих ЦМ одинаковы, начальные состояния X0, Y0, Y0 ≠ X0 детерминированы. Множество состояний ЦМ Zt представляет собой S = {(i,j), i,j = 1,…,n, j ≠ i} ∪ A0 ∪ A1, где состояние (i,j) означает, что исправный автомат находится в состоянии i, а неисправный – в состоянии j (отличном от состояния i исправного автомата), состояние  A1 – неправильное функционирование (в результате действия помехи) уже проявилась в выходном сигнале),  A0 – произошло восстановление траектории функционирования автомата до проявления эффекта помехи на выходе.  Число состояний этой ЦМ равно n(n – 1) + 2. Состояния A0 и A124
  25. 25. 25
  26. 26. Вычисление вероятности самовосстановления 26 D ектор начального распределения определяется начальными состояниями исправного и неисправного автоматов. Если исправный автомат в начальный момент 0 находится в состоянии i0 , а неисправный – в состоянии j0 ≠ i0 , то p(i0,j0) (0) = 1, а остальные координаты вектора нулевые. Матрица переходных вероятностей * вычисляется по известным вероятностям выполнения условных вершин Распределение времени t от прекращения действия помехи до самовосстановления:
  27. 27. Пример вычисления переходных вероятности ЦМ Zt  Состояния A0 и A1 -вероятность остаться в каждом из этих состояний равна 1. (1,2) – исправный и неисправный автоматы находятся, соответственно, в состояниях a1и a2, (2,1) – в состояниях и a2 и a1.  Из состояния (1,2) в состояние A0 можно попасть только в том случае, когда поступит сигнал ¬ x1x2x3 с вероятностью q1p2p3. Тогда оба автомата (исправный и неисправный) перейдут в одно и тоже состояние a2, а выходной сигнал у обоих автоматов – y2,y4  из состояния (1,2) в состояние A1 можно попасть. если поступит сигнал x1 ¬x2 (с вероятностью p1q2, ), тогда выходной сигнал у исправного автомата y2y3, у неисправного – y2y4 (при этом исправный автомат переходит из состояния a1 в состояние a2, неисправный – из состояния a2 в состояние a1 ),либо, если поступит сигнал x1x2 ¬x3, выходной сигнал у исправного автомата –y2y4, , у неисправного – y1y2 (при этом оба автомата попадают в состояние a1 ), либо, если поступит сигнал ¬x1x2 ¬x3, тогда выходной сигнал у исправного автомата –y2y4 , у неисправного-y1y4 – (при этом исправный автомат: a1- a2, неисправный- a2-a1)
  28. 28. 28 Методология совместной функциональной и надежностной верификации
  29. 29. ASM диаграмма фазы выборки конвейеризированного процессора 29
  30. 30. Входные данные программ верификации,генерируемые из ASM Таблица переходов автомата Микрооперации 30
  31. 31. Анализ надежности Вероятности восстановления через t тактов после сбоя (1,2): SH = (0.0, 0.034, 0.46, 0.55, 0.64, 0.68), и после сбоя (5.2): S = (0.00, 0.79, 0.79, 0,85, 0.89, 0.92, 0.93 31
  32. 32. 32 Thank You!

×