安全智能卡/钥匙SoC芯片验证平台设计与实现

安全智能卡/钥匙SoC芯片验证平台设计与实现

论文摘要

随着集成电路技术的迅猛发展,SoC技术成为当今应用最为广泛的技术之一。SoC芯片设计使得集成电路的集成度和复杂性越来越高,而激烈的市场竞争又要求产品性能高,成本低上市时间短。在这种情况下,芯片的正确性和可靠性都面临巨大的挑战,因此,验证成为SoC设计中的一项至关重要的工作。在目前的SoC芯片设计流程中,验证占据了大部分的时间与资源,特别是功能验证有很大的工作量。验证平台技术是一种为SoC设计服务的验证技术,它能够出色完成SoC设计中多种多样的验证工作,提高设计效率,缩短设计时间,同时也对芯片的正确性和可靠性提供有力保障。由于SoC芯片的复杂性,验证平台技术也成为一项最有难度,最有挑战的课题。论文介绍了一款信息安全类SoC芯片的验证平台设计,即解决了实际项目中的具体问题,也对SoC验证技术这一课题进行了更深层次的探索。论文课题属于某款信息安全类SoC芯片设计项目中的一部分,主要负责SoC芯片功能验证以及验证方法的研究。首先,论文分析了现在SoC芯片的基本结构和芯片设计流程,充分的理解SoC芯片的架构是搭建良好验证平台的基础。SoC芯片的基本结构就是基于总线的结构,几乎所有的SoC芯片都是基于总线结构的,但是这并不意味着SoC芯片都相同,SoC芯片具有丰富的多样性。第二,论文研究了当前广泛使用的验证方法与技术,并对其进行分类比较,以便在平台设计中灵活的应用和选择这些验证方法,当前业界的验证方法多种多样,在芯片设计的不同阶段使用的验证手段也各不相同,所以如何在平台中选择正确有效的验证方法也是需要认真分析和考虑的。第三,进行验证平台设计,这款验证平台是基于软硬件协同验证和事务及仿真的验证方法,充分考虑了SoC芯片的共性即总线结构,因此平台的可重用性非常好。同时,平台也对该款芯片的特殊性进行了创新设计,针对性很强。在精心设计下,平台的可配置性和自动化程度都相当高,为SoC芯片的功能正确性和可靠性提供了有力保障,并提高了设计效率。论文的研究工作在以下几点进行了创新性研究:第一,SoC功能验证平台架构设计,通过对多种SoC芯片的结构和在SoC设计中验证需求的研究,对验证平台的结构进行精心设计,使之能够适应大多数SoC芯片的验证工作,可重用程度高。第二,同时支持软硬件协同验证和事务级仿真验证方法,通过对多种验证方法的研究,对平台进行设计,使之支持软硬件协同验证和事务级仿真的验证能力,这两种方法分别在不同情况下都有重要的应用,而且由于提高了抽象层次,验证的效率的效果都非常好。第三.可配置程度高,在SoC芯片验证流程中,不同的阶段需要不同的验证环境和验证方式,或者在相同阶段验证对不同的模块进行验证也需要对改变验证环境的部分内容。在这款验证平台中可以方便的配置平台使其使用于验证的不同情况。第四,自动化程度高,在SoC功能验证中存在大量的重复工作,这款验证平台具有高度的自动化运行能力,帮组验证人员完成这些工作,为验证节省了大量的时间。第五,支持动态时序仿真验证,验证平台除了能够完成功能仿真验证,还能够实现网表仿真进行动态时需验证,也就是后仿真阶段的工作。第六,信息安全类SoC芯片特殊功能验证,由于本款SoC芯片是安全类芯片,故具有很多加密模块,保证这些特殊模块的正确性和可靠性非常重要,验证平台针对这一点进行了特殊设计。总之,论文在充分研究SoC基本结构以及大量验证方法的基础上,设计了一款可配置程度高,自动化程度高,可重用的SoC功能验证平台,同时对SoC验证方法进行了深入探索和研究。这款SoC芯片现已流片成功,验证平台在设计过程中起到了重要作用。

论文目录

  • 摘要
  • ABSTRACT
  • 第1章 绪论
  • 1.1 课题背景
  • 1.2 课题来源
  • 1.3 课题研究意义
  • 1.4 论文结构
  • 1.5 小结
  • 第2章 SoC 芯片设计
  • 2.1 SoC 概述
  • 2.2 SoC 芯片典型结构
  • 2.2.1 微处理器
  • 2.2.2 存储器
  • 2.2.3 总线结构
  • 2.2.4 中断控制器
  • 2.2.5 定时计数器
  • 2.2.6 可编程I/O 接口
  • 2.3 SoC 芯片设计流程
  • 2.4 SoC 设计中的关键技术
  • 2.4.1 IP 核复用技术
  • 2.4.2 超深亚微米技术
  • 2.4.3 软硬件协同设计技术
  • 2.4.4 SoC 时序分析与综合
  • 2.4.5 SoC 可测性设计技术
  • 2.4.6 SoC 低功耗设计技术
  • 2.5 SoC 芯片验证技术
  • 2.5.1 验证流程
  • 2.5.2 验证方法
  • 2.5.3 验证平台
  • 2.6 小结
  • 第3章 验证平台设计
  • 3.1 验证平台体系结构设计
  • 3.1.1 平台基础架构设计
  • 3.1.2 两种验证模式的平台架构设计
  • 3.1.3 CPU 验证的平台架构设计
  • 3.2 验证平台功能模块设计
  • 3.2.1 监视器模块设计
  • 3.2.2 存储器模型
  • 3.2.3 激励发生器
  • 3.2.4 总线数据比较模块
  • 3.3 验证平台目录结构设计
  • 3.4 小结
  • 第4章 验证平台的实现与仿真
  • 4.1 验证平台工作模式设计
  • 4.1.1 Slave 模式
  • 4.1.2 Master 模式
  • 4.2 验证平台配置文件设计
  • 4.2.1 CLKRSTSTIM 模块命令文件
  • 4.2.2 CLKPERSTIM 模块命令文件
  • 4.2.3 IOSTIM 模块命令文件
  • 4.3 验证平台的 C 环境实现
  • 4.3.1 C 语言源程序编辑及编译方法
  • 4.3.2 Hex 文件的格式
  • 4.4 验证平台的 C 语言编程实现
  • 4.4.1 变量定义
  • 4.4.2 存储模式
  • 4.4.3 中断函数的编写
  • 4.5 验证平台 C 语言宏定义实现
  • 4.5.1 读寄存器
  • 4.5.2 写寄存器
  • 4.5.3 写读比
  • 4.5.4 写读并等待
  • 4.5.5 读并比较(BYTE)
  • 4.5.6 读并比较(BIT)
  • 4.5.7 比较并等待(BYTE)
  • 4.5.8 比较并等待
  • 4.5.9 小于比较
  • 4.5.10 大于比较
  • 4.5.11 输出注释信息
  • 4.6 验证平台的仿真实现
  • 4.6.1 仿真软件介绍
  • 4.6.2 Questasim 软件仿真流程
  • 4.6.3 仿真目录设计
  • 4.6.4 仿真脚本设计
  • 4.6.5 仿真输出文件
  • 4.7 小结
  • 第5章 基于平台的实例验证
  • 5.1 计时器模块 TIME0 结构
  • 5.2 验证向量
  • mode0 验证程序设计方案'>5.2.1 Time0mode0 验证程序设计方案
  • mode1 验证程序设计方案'>5.2.2 Time0mode1 验证程序设计方案
  • 5.3 验证步骤
  • 5.4 验证结果
  • mode0 验证结果'>5.4.1 Time0mode0 验证结果
  • mode0 验证结果'>5.4.2 Time0mode0 验证结果
  • 5.5 小结
  • 第6章 总结
  • 致谢
  • 参考文献
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    安全智能卡/钥匙SoC芯片验证平台设计与实现
    下载Doc文档

    猜你喜欢