Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Тестування та верифікація HDL-моделей компонентів SOC

Реферат Тестування та верифікація HDL-моделей компонентів SOC





пропонується аналіз тестопригодності програмного коду дискретного косинусного перетворення з Xilinx бібліотеки. Було виконано побудову транзакційної моделі, підрахунок характеристик тестопригодності (), визначення критичних точок. Потім у Відповідно до числом і типами компонентів було розроблено функціональне покриття, фрагмент якого представлений лістингом 2.

Лістинг 2.

c0: coverpoint xin

{

bins minus_big = {[128:235]};

bins minus_sm = {[236:255]};

bins plus_big = {[21:127]};

bins plus_sm = {[1:20]};

bins zero = {0};

}

c1: coverpoint dct_2d

{

bins minus_big = {[128:235]};

bins minus_sm = {[236:255]};

bins plus_big = {[21:127]};

bins plus_sm = {[1:20]};

bins zero = {0};

bins zero2 = (0 => 0);

}

endgroup

Для критичних точок, визначених в результаті аналізу тестопригодності транзакційного графа розроблена ассерціонная модель перевірки основних характеристик дискретного косинусного перетворення. Істотний фрагмент коду механізму ассерція представлений лістингом 3.

Лістинг 3.

sequence first (reg [7:0] a, reg [7:0] b);

reg [7:0] d;

(! RST, d = a)

# # 7 (b == d);

endsequence

property f (a, b);

@ (posedge CLK)

// disable iff (RST | | $ isunknown (a)) first (a, b);

! RST | => first (a, b);

endproperty

odin: assert property (f (xin, xa7_in))

// $ display ("Very good");

else $ error ("The end, xin =% B, xa7_in =% b ", $ past (xin, 7), xa7_in);

У результаті проведеної верифікації дискретного косинусного перетворення в середовищі Questa, Mentor Graphics були знайдені неточності у восьми рядках вихідного коду HDL-моделі:

// add_sub1a <= xa7_reg + xa0_reg ;//

Подальше виправлення помилок призвело до появи виправленого фрагмента коду, який показаний в лістингу 4.

Лістинг 4.

add_sub1a <= ({xa7_reg [8], xa7_reg} + {Xa0_reg [8], xa0_reg});

add_sub2a <= ({xa6_reg [8], xa6_reg} + {Xa1_reg [8], xa1_reg});

add_sub3a <= ({xa5_reg [8], xa5_reg} + {Xa2_reg [8], xa2_reg});

add_sub4a <= ({xa4_reg [8], xa4_reg} + {Xa3_reg [8], xa3_reg});

end

else if (toggleA == 1'b0)

begin

add_sub1a <= ({xa7_reg [8], xa7_reg} - {Xa0_reg [8], xa0_reg});

add_sub2a <= ({xa6_reg [8], xa6_reg} - {Xa1_reg [8], xa1_reg});

add_sub3a <= ({xa5_reg [8], xa5_reg} - {Xa2_reg [8], xa2_reg});

add_sub4a <= ({xa4_reg [8], xa4_reg} - {Xa3_reg [8], xa3_reg});


Назад | сторінка 3 з 3





Схожі реферати:

  • Реферат на тему: Складність методів Вирішення проблеми дискретного логаріфмування в групі то ...
  • Реферат на тему: Розрахунок інформаційних характеристик дискретного каналу
  • Реферат на тему: Сутність моделі часткової опису дискретного каналу
  • Реферат на тему: Створення моделі і моделювання елементів дискретного пристрою
  • Реферат на тему: Аналіз тестопригодності за методом Сamelot