Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KhAKhANOV_1_B_1256_LIM_TOLY_1178.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

1.13 Сурет. Бағдарламалық-аппараттық комплекстың өмірлік циклының графигі

[32-38] сәйкес ASIC (Application-Specific Integrated Circuit – мамандандырылған интегралды микросхема), IP-core (Intellectual Property Core – кристаллдағы имплементацияға дайын, сақталған функционалды аппараттық модуль), SoC негізіндегі бағдарламалы-аппараттық өнімдердің верификациясының құны жобалаудың жалпы шығындарының 70% құрайды. Ұқсас бағалау, 80%-ға жуығын, жобаның формальді суреттеуінің жалпы ұзындығынан testbench-код өлшемі анықталады. Верификация процесі кезінде шешілетін мәселелер, түпнұсқа кодын оның спецификациясына сәйкес келтіру мақсатында, жобалау қателіктерін мүмкін болғанынша ерте кезеңдерінде жоюмен байланысты. Блокты жобалау деңгейінен кристалл деңгейіне және ары қарай жүйеге ауысу кезінде қатені жіберіп алу оның құнын бірнеше ретке арттырады. Жобаға бағдарлама артықшылығын – ассертация механизмін [35-37] – енгізу жобаны модельдеу процесі кезінде басты айрықшаландырылған шарттар анализін орындауға және бағдарламаны (C++, System Verilog, Vera) немесе аппаратураны (HDL) жобалаудың ерте кезінде анықталатын қателерді диагностикадан өткізуге мүмкіндік береді.

1.9. Жобаны тестілеу мен верификациялау процесінің инфрақұрылымы

Жүйелік деңгейдегі жобаны верификациялау процесінің моделін диагнозының жалпы теңдеуі түрінде көрсетуге болады немесе бағдарламалық компоненттердегі қателерді табу үшін толығырақ

(1.1)

мұндағы T,F – күтілген реакциялы эталондық модельдерді фунционалды жабудың тестті әсері; S,A – верификация және бағдарламалық кодтағы қателерді нақты диагностикадан өткізу үшін ассерция механизмі және тексерілетін HDL-модель. Аппаратты жүзеге асыруды тестілеу аналитикалық формуласы үшін сумма по mod2 (Xor) логикалық операциясын қолдануға негізделген, мұндағы В – кристаллдағы сандық жүйе компоненттерін талап етілген терең диагностикадан өткізуді қамтамасыз ету үшін функционалдық модельге қосымша ретінде қолданылатын, IEEE 1500 стандартынан шекаралық сканерлеу регистрі түріндегі артықшылығы. Осымен қатар – дайын сандық өнімді тестілеу және жобаны верификациялау кезеңінде алынатын қателіктер тізімі.

Верификация, валидация, ассерция сияқты басты ұғымдар арасындағы қатынастарды түсіну үшін келесі анықтамалар [33-35] енгізіледі. Верификациялау – жобалаудың әрбір кезеңінде кіріс суреттелуінің шығысқа формальды түрденуінің дұрыстығын анықтау үшін компоненттер немесе жүйе анализінің процесі. Валидация – әрбір кезеңдегі жобалау орындалғаннан кейін, спецификацияның басты талаптарына сәйкестігін тексеру жолымен, жүйенің және оның компоненттерінің жұмыс істеу қабілетін анықтау процесі. Сертификаттау – спецификацияның оның тағайындалуы бойынша қолданылуы кезіндегі, талаптарына жүйе анықтылығының экспертті кепілдігі.

Ассерция – синтезді орындауға дейін және кейін тестті әрекетте жобаны модельдеу кезінде, спецификация талаптарына қатысты жобалау қателерін ерте анықтау үшін арналған жүйелік деңгейдің инверсты HDL-пікірі. Ассертацияның қасиеттері мен типтері. 1) Ассерцияның шекаралық мәні жобаның диверсиялық моделі, іс жүзінде ассерциялық операторлардың саны – жоба кодының 5%-ы. 2) Лездік және біртактілік ассерциялар жоба моделіне жатады, инверсты if-операторлар нысанында бағдарлама мәтініне қойылады. 3) Параллельді ассерциялар (циклдық немесе көп тактілі) – орындалатын жоба моделіне тәуелсіз және параллельді модельденеді. Есептеу процесі модельдеу циклында орындалады, ол ассерция кірісінің синхроимпульстарымен анықталған уақыт моментінде жоба күйіне анализ жасауға мүмкіндік береді. Assert операторы бағдарлама денесінде орналасқан. Параллельді ассерция модельде таймслот симуляциясы бар болғандықтан сигналдар күресінен қорғанған. Ол сигналды санау (preponed) және ассерцияларды есептеу (postponed) моменттерін береді. 4) Сыртқы ассерциялар өзімен System Verilog немесе PSL тілдерінде жазылған бөлек модуль түріндегі жобаның диверсиялық моделін көрсетеді. Сыртқы ассерциялар функционалды модуль порттарының сигнадарын бақылайды және оларды жобадан тестті ортаға жібереді. 5) Ассерциялар, жалпы жағдайда, HDL-тілдерінің синтезделетін көпшілік асты болмайды. Осымен қатар, Жобалаудың қателерін шығаруға бағытталған ассерция механизмі, функционалды жабылар мен тестті генераторлар HVL-тілдік ортасын қалыптастырады.

Формальды ассерция эталондық шын модельдің көптеген күйлерінде {true – 1, false – 0, don’t care – X} мәндерін қабылдайтын предикант түрінде жазылады. Мұндағы Х – ассерцияның анықталмаған күйі немесе анализденетін бағдарламалық компонент үшін оның болмауы. Ескертілген анықтамаға сәйкес және ассерцияның күйін салыстыруға d(A1) функционалдық реакциясы бойынша d(A1)={Ac,Ag,Aw} үш типқа дифференциалдауға болады – HDL-модельдердің верификациясының аяқталуы, келесі бағдарламалық блокты тексеруге ауысу, консольға хабарлама беру. Ассерция механизмі – A=(A1,A2,. .,A1,…,An) векторы түрінде көрсетілетін пікірлер жүйесі, сонымен бірге кеңістікте және уақытта жүйелік деңгейдің HDL-моделінің қателерін табу мен верификациялауға арналған олардың анализ құралдары d(A). Ассерция механизмінің енгізу мақсаты бағдарламаның HDL-кодындағы семантикалық қателерді жою үшін нақты диагноз алу. Ассерция векторы уақыт пен кеңістіктегі HDL-модельдерінің компоненттерінің логикалық күйлерін және функционалдықтарын бақылауға бағдарланған. Осындай функциялар – диагностика жүргізудің тереңдігінің жоғарылауы – сандық жүйенің компоненттерін тестілеу тестті рұқсат (TAP) контроллерімен басқарылатын, шекаралық сканирлеудің стандарттарында (IEEE 11.49, IEEE 1500) да бола алады.

Валидация мен верификация рәсімдерінің әрекеттестік бөлігінде жобалау процесінің құрылымдық моделі 1.14 суретте келтірілген. Мұнда верификация қарастырылып жатқан жоба деңгейінде орындалған түрленулердің дұрыстығын анықтайтынын, ал валидация әрбір жобалау кезеңінде спецификация талаптарына жүйенің техникалық күйінің сәйкестігін анықтайтынын ескерткен жөн (Spec – спецификация, SL – System Level – жүйелік деңгей, RTL – Register Transfer Level – регистрлік жіберулер деңгейі, Proto – Prototype –түптұлға)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]