UVM-верификация модулей микроконтроллерного ядра

Содержание

Слайд 2

2 Актуальность Цикл разработки Получение ТЗ Разработка описания устройства Верификация Получение

2

Актуальность

Цикл разработки

Получение ТЗ

Разработка описания устройства

Верификация

Получение netlist

Достигли желаемого результата?

ДА

НЕТ

Слайд 3

3 Актуальность Цифровое устройство – система из модулей

3

Актуальность

Цифровое устройство – система из модулей

Слайд 4

4 Актуальность Тестирование ядра «Кролик» инструкциями ASSEMBLER: ROM FLASH CPU

4

Актуальность

Тестирование ядра «Кролик» инструкциями ASSEMBLER:

ROM

FLASH

CPU

Слайд 5

5 Актуальность Ядро как система из модулей INT OAB MEMARB MMU Кролик PSW ALU PC COMDEC

5

Актуальность

Ядро как система из модулей

INT

OAB

MEMARB

MMU

Кролик

PSW

ALU

PC

COMDEC

Слайд 6

6 Цель: Верифицировать модули микроконтроллерного ядра «Кролик» Задачи: 1. Разработать архитектуру

6

Цель: Верифицировать модули микроконтроллерного ядра «Кролик»

Задачи:
1. Разработать архитектуру тестового окружения, позволяющую:
-

Генерировать случайные тестовые воздействия
- Сравнивать выходные результаты с эталонными
- Оценивать функциональное покрытие
2. Реализовать тестовое окружение для модулей ядра
3. Достичь результатов тестового покрытия 95% и выше

Цель и задачи

Слайд 7

7 SEQUENCER DRIVER MONITOR DUT SCOREBOARD SUBSCRIBER AGENT ENV TEST seqi UVM окружение Ход работы

7

SEQUENCER

DRIVER

MONITOR

DUT

SCOREBOARD

SUBSCRIBER

AGENT

ENV

TEST

seqi

UVM окружение

Ход работы

Слайд 8

8 Constraint 1 – битовой шины 100111001000100111010001000101010110101001000010101000100010001011010101000100010 DUT С1: 1010011010010101 C2:

8

Constraint 1 – битовой шины

100111001000100111010001000101010110101001000010101000100010001011010101000100010

DUT

С1: 1010011010010101

C2: 1111111011111111

C3: 0001000000000000

0 := 50

1 :=

50

C1:

C2:

0 := 1

1 := 99

C3:

0 := 99

1 := 1

Ход работы

Слайд 9

9 MONITOR SCOREBOARD COMPARATOR PREDICTOR SEQI reference Сравнение с эталоном Ход работы

9

MONITOR

SCOREBOARD

COMPARATOR

PREDICTOR

SEQI

reference

Сравнение с эталоном

Ход работы

Слайд 10

10 Кодовое покрытие Функциональное покрытие FULL FULL BLOCK STATE BRANCH FSM

10

Кодовое покрытие

Функциональное покрытие

FULL

FULL

BLOCK

STATE

BRANCH

FSM

BIN1

BIN2

0%

100%

0%

100%

Ход работы

Слайд 11

11 Ход работы covergroup zeros = 00000000 ones = FFFFFFFF others

11

Ход работы

covergroup
zeros = 00000000
ones = FFFFFFFF
others = [00000001 : FFFFFFFE]

Функциональное покрытие 32-битной шины

Слайд 12

Верификация модулей 12

Верификация модулей

12

Слайд 13

Верификация модулей 13

Верификация модулей

13

Слайд 14

Верификация модулей 14

Верификация модулей

14

Слайд 15

Верификация модулей 15

Верификация модулей

15

Слайд 16

Верификация модулей 16

Верификация модулей

16

Слайд 17

Верификация модулей 17

Верификация модулей

17

Слайд 18

Верификация модулей 18

Верификация модулей

18

Слайд 19

Верификация модулей 19

Верификация модулей

19