Search In this Thesis
   Search In this Thesis  
العنوان
A Scalable and Reusable Verification Environment for System-on-Chip /
المؤلف
Hegazy,Ali Mohamed Saad Abdelfattah Abdelrahman
هيئة الاعداد
باحث / علي محمد سعد عبد الفتاح عبد الرحمن حجازي
مشرف / محمد واثق علي كامل الخراشيمحمد واثق علي كامل الخراشيمحمد واثق علي كامل الخراشيمحمد واثق علي كامل الخراشيمحمد واثق علي كامل الخراشيمحمد واثق علي كامل الخراشي
مناقش / أحمد حسن كامل مدين
مناقش / محمد أمين ابراهيم دسوقي
تاريخ النشر
2023
عدد الصفحات
59p.:
اللغة
الإنجليزية
الدرجة
ماجستير
التخصص
هندسة النظم والتحكم
تاريخ الإجازة
1/1/2023
مكان الإجازة
جامعة عين شمس - كلية الهندسة - كهرباء حاسبات
الفهرس
Only 14 pages are availabe for public view

from 95

from 95

Abstract

System-on-Chip (SoC) verification is a challenging task due to the increasing complexity and diversity of SoC designs. Traditional verification methods often suffer from scal- ability issues, low reusability of testbenches, and insufficient coverage of system-level scenarios. In this thesis, we explore the existing verification challenges in SoC design and propose a verification architecture specifically aimed at addressing these challenges. The proposed verification approach and architecture aim to mitigate some of the cur- rent issues and facilitate testbench development by significantly reducing verification time and improving the reusability of testbenches.
The verification architecture in this thesis consists of two flows: block-level and system- level verification flow. Block-level verification flow checks the functionality of the blocks inside the SoC by stress testing them and trying to stimulate all possible testing scenar- ios. The verification environments built for the blocks have to be modular and reusable. Reusing the block level test cases and verification environments in the system-level en- vironment reduces the verification time and cost significantly. On the other hand, the system-level verification flow ensures proper integration and communication between the blocks while evaluating system-level scenarios. Unlike the block-level verification flow, the system-level verification does not require stress testing as it is performed at the block level.
To demonstrate the effectiveness of the proposed verification architecture, we conducted a case study on an SoC design based on the Cortex-M3 processor. Our verification process started with block-level verification, wherein we proposed reusable UVM verifi- cation environments for two common blocks in different SoCs: the processor and the bus matrix. We provided a detailed explanation of the components inside each environment, as well as the connections and flows between them. To further optimize the block-level verification process, we adopted a novel reference model approach for the Cortex-M3 pro- cessor, where we leveraged the processor simulator from Arm (Keil µVision) to act as the reference model and deliver expected results, rather than building one from scratch.
Finally, the simulation flow and results are presented, where we described how we planned, generated and executed the test cases for each verification environment. Code and functional coverage results for the Cortex-M3 processor and bus matrix are included as well.