基于PCI Express接口的验证平台研究与验证
发布时间:2021-10-07 22:40
随着集成电路产业的高速发展,芯片设计规模大幅提高,研发周期却在不断缩短,为了保障芯片的可靠性需要对芯片验证环节提出更高的要求。传统的验证方式由于效率低下且可靠性较差成为制约芯片设计规模增大的瓶颈,为了解决这一难题,业界提出了验证方法学的解决方案。经历了一系列改进与发展后,新一代的UVM(Universal Verification Methodology)验证方法学凭借其优良高效的特点得到了业界的广泛认可和推广应用,在缩短验证周期的同时还能够最大程度确保验证质量的可靠性,某种程度上代表了验证方法学的发展方向。此外,为了进一步提高验证平台的可移植性、完备性和验证效率,具备一定实力的设计公司提出了验证IP(Intellectual Property)核的概念,针对某一模块和接口验证提供成熟的解决方案。PCI Express(Peripheral Component Interconnect Express)总线协议作为第三代总线协议,保留了上一代PCI(Peripheral Component Interconnect)体系结构的优点并加以改进,由并行结构变为串行结构,并且采用点对点互联的...
【文章来源】:西安电子科技大学陕西省 211工程院校 教育部直属院校
【文章页数】:92 页
【学位级别】:硕士
【部分图文】:
agent部分程序图
图 4.11 driver 部分程序图4.4.3 sequence 设计验证过程中真正费时费力的阶段是编写测试激励并找出 bug。本课题中验证平台的测试激励有两种,一种是通过配置 CPU 对接口进行对接,另一种是配置 DUT 让其进入相应的初始状态,并在输出端口检测数据的输出,与预测的值进行比较。因此虽然 sequence 在验证框架中不是验证平台的一部分,但却是整个验证平台的核心,它保证了验证平台能够正确验证我们的待测设计。Sequence产生激励发送给sequencer,sequencer 作为中间转换模块将收到的 transaction 数据再发送至 driver 进行通信,因此它与 sequencer 之间相互协同,也支撑起了整个验证平台的主要功能。本课题 PCIe Sequenc 组件由 cdnPcieUvmSequence 函数派生,部分代码如下图所示,UVM 平台一般由 objection 机制负责运行过程的开启和关闭[39],因此课题引入phase 函数中的 raise_objection 和 drop_objection 管理平台的实际运行过程,但是sequence 属于 object 类型而非 phase 函数,也就是说两者从属于不同的机制,解决方
图 4.12 sequence 部分程序图4.4.4 sequencer 设计Sequencer 在验证平台中和 driver 以及 sequence 有密切关系,Sequencer 主要作是检测是否有 sequence 组件请求传出数据,同时也检测 driver 是否发出数据请求Sequencer 派生自 uvm_sequencer,数据产生后,需要将 transaction 送到 driver 中进加载到 DUT 中,这一通信过程需要一种接口能将激励配置转化为所需要的事务激励以便 sequencer 组件获取数据后能够返回响应信号。本课题根据 TLM 双向通信机制实现控制数据传输过程。PCIe Sequencer 派生cdnPcieUvmSequencer,包含的数据类型为 PciePacket。Sequencer 的部分程序代码图 4.13 所示。
本文编号:3422913
【文章来源】:西安电子科技大学陕西省 211工程院校 教育部直属院校
【文章页数】:92 页
【学位级别】:硕士
【部分图文】:
agent部分程序图
图 4.11 driver 部分程序图4.4.3 sequence 设计验证过程中真正费时费力的阶段是编写测试激励并找出 bug。本课题中验证平台的测试激励有两种,一种是通过配置 CPU 对接口进行对接,另一种是配置 DUT 让其进入相应的初始状态,并在输出端口检测数据的输出,与预测的值进行比较。因此虽然 sequence 在验证框架中不是验证平台的一部分,但却是整个验证平台的核心,它保证了验证平台能够正确验证我们的待测设计。Sequence产生激励发送给sequencer,sequencer 作为中间转换模块将收到的 transaction 数据再发送至 driver 进行通信,因此它与 sequencer 之间相互协同,也支撑起了整个验证平台的主要功能。本课题 PCIe Sequenc 组件由 cdnPcieUvmSequence 函数派生,部分代码如下图所示,UVM 平台一般由 objection 机制负责运行过程的开启和关闭[39],因此课题引入phase 函数中的 raise_objection 和 drop_objection 管理平台的实际运行过程,但是sequence 属于 object 类型而非 phase 函数,也就是说两者从属于不同的机制,解决方
图 4.12 sequence 部分程序图4.4.4 sequencer 设计Sequencer 在验证平台中和 driver 以及 sequence 有密切关系,Sequencer 主要作是检测是否有 sequence 组件请求传出数据,同时也检测 driver 是否发出数据请求Sequencer 派生自 uvm_sequencer,数据产生后,需要将 transaction 送到 driver 中进加载到 DUT 中,这一通信过程需要一种接口能将激励配置转化为所需要的事务激励以便 sequencer 组件获取数据后能够返回响应信号。本课题根据 TLM 双向通信机制实现控制数据传输过程。PCIe Sequencer 派生cdnPcieUvmSequencer,包含的数据类型为 PciePacket。Sequencer 的部分程序代码图 4.13 所示。
本文编号:3422913
本文链接:https://www.wllwen.com/kejilunwen/dianzigongchenglunwen/3422913.html