《从存储芯片模拟芯片功率半导体板块速看慕展 附基于System Verilog的芯片模拟器设计与实现.docx》由会员分享,可在线阅读,更多相关《从存储芯片模拟芯片功率半导体板块速看慕展 附基于System Verilog的芯片模拟器设计与实现.docx(7页珍藏版)》请在课桌文档上搜索。
1、从存储芯片模拟芯片功率半导体板块速看慕展7月5日,为期3天的慕尼黑上海电子展圆满落幕,与往年有所不同,今年 的慕展国际芯片大厂有所减少,估计是受到了疫情的影响。今年参展的国内半 导体厂商主要有存储芯片、模拟芯片及功率器件厂商等,并且这些厂商都带来了 目前大受关注的5G、汽车电子、智能设备、第三代半导体材料等新技术和新兴 应用进展。存储芯片厂商本次参展的存储芯片厂商有兆易创新、东芯半导体、聚辰半导体等,电子发 烧友了解到,目前兆易创新和东芯半导体的NoRFIaSh在5G基站和汽车电子领 域的应用进展明显。兆易创新在此次展会上,兆易创新重点展示了存储器、MCU和传感器三大产品线及 解决方案,覆盖工
2、业、汽车、5G、消费电子等多个应用领域。兆易创新是国内 领先的NOR Flash供应商,其NOR Flash产品已进入汽车市场,在5G基站方面, 也已经进入客户测试阶段。电子发烧友拍摄展会上,兆易创新展示了多款采用 GD25 SPI NOR Flash的车载数字组合仪表解决方案。采用GD NOR Flashl0.25 寸双联屏车载虚拟仪表是一款基于2颗GD25S513MD的512Mbit SPl NOR Hash 并联的大容量高数据吞吐率存储解决方案。图片来自兆易创新公众号展会同期, 兆易创新还宣布推出国内首款容量高达2Gb、高性能SPI NOR Flash一一 GD25/GD55B/T/X系
3、列产品,该系列可提供512Mb至2Gb的不同容量选择,支 持高速4通道以及兼容JEDEC xSPl和Xccela规格的高速8通道,主要面向需要 大容量存储、高可靠性与超高速数据吞吐量的工业、车载、AI以及5G等相关应 用领域。图片来自兆易创新公众号兆易创新表示,此次推出的GD2555 BEX 系列产品代表了 SPlNORFIaSh行业的最高水准,提供512Mb、IGb和2Gb的容 量选择,分别采用3.3V和1.8V供电,具有多达18个主要型号的组合,并支持 多种封装形式。东芯半导体在此次展会上,东芯半导体展示的产品线包括SPI NOR、SPI NAND、PPlNAND、DRAM MCP系列产品
4、,这些产品可以应用在符合科技智 能化生活的产品上,如TWS耳机、共享单车、IPCamera、IOG-PoN、WIFI6等。用 于共享单车的SPl NoR和用于企业网关SPl NAND (电子发烧友拍摄)用于智 能音箱的SPlNAND和用于路由器的SPINOR (电子发烧友拍摄)东芯半导体 是一家FabIeSS芯片企业,聚焦中小容量NAND、NOR内存芯片的设计、生产和 销售,是目前国内可以同时提供NAND/NOR/DRAM设计工艺和产品方案的本土 存储芯片研发设计公司。东芯半导体半导体副总经理在接受电子发烧友采访的 时候表示,“公司的NOR FLASH产品已经进入国内领先5G基站供应商的供应
5、链中聚辰半导体聚辰半导体是一家拥有超过20年经验的模拟/数字芯片设计高 科技公司,主营业务为集成电路产品的研发设计和销售,并提供应用解决方案和 技术支持服务,目前拥有EEPROM,音圈马达驱动芯片和智能卡芯片三条主要 产品线。根据研究机构最新数据,2019年聚辰半导体为全球排名第三、国内排 名第一的的EEPROM存储器供应商,是智能手机摄像头模组、液晶模组等细分 领域存储器的主流EEPROM供应商。在此次展会上,聚辰半导体展示了汽车级 串行EEPRc)M存储器。聚辰半导体表示,随着ADAS汽车辅助驾驶、信息化和 智能化等概念的不断升温,汽车电子市场迎来前所未有的发展机遇。聚辰汽车 级EEPRO
6、M拥有耐久性高、可靠性高、温度适应能力强、抗干扰能力强等优势, 可用以存储配置和校准数据,以满足更广泛的驾驶功能。目标应用于车身控制模 块、驾驶辅助系统以及信息娱乐与车联网系统等模块。模拟芯片厂商本次参展的模拟芯片厂商主要有广芯电子、思瑞浦、赛微微电子等,模拟芯 片中的电源芯片产品也是比较受关注的部分,这次展会上就有厂商在电源芯片领 域进展情况的相关展示。广芯电子在此次展会上,广芯电子展出产品包括Switch Power Management LED Driver Level shifter Amplifiers Home Appliano 电子发烧 友拍摄广芯电子是由美国硅谷的华人创业团队于
7、2007年底在上海创立的集成电 路芯片设计公司,司专注于高性能的模拟和混合信号集成电路芯片产品的设计、 研发和销售,产品广泛应用于手机、平板、可穿戴设备、POS机、GPS、电脑、 液晶电视、智能家居、小家电等通用的消费类电子产品以及通信、工业控制等领 域。公司自成立以来,成功开发出7个系列一百余款新产品。广芯电子在展会 现场的工作人员介绍道,“广芯此次展出的MIPl Switch产品,BCT642 BCT644 BCT646等型号几乎在市面上所有品牌手机的摄像头中都有应用J思瑞浦思瑞浦(3PEAK)主要聚焦高性能模拟芯片设计,在信号链模拟芯 片和电源管理模拟芯片领域,积累了大量技术储备,并持续
8、开发、升级,实现模 拟芯片产品大规模量产。产品广泛应用于国内外品牌客户,涵盖信息通讯、工 业控制、监控安全、医疗健康、仪器仪表和家用电器等多种应用领域。思瑞浦 在展会现场的工作人员对电子发烧友表示,“公司早期主要专注于信号链模拟芯 片,从2017年开始研发电源产品,2018年开始大量出货,其中电源监控类产品 在2017年就开始有出货,目前海康、大华等厂商都有用公司的电源监控类产 品。”思瑞浦此次展示的电源管理产品主要有线性稳压电源、开关电源、充电管 理、电源监控和复位芯片、电源时序控制、马达驱动等。赛微微电子赛微微电子有限公司是一家电源和电池管理芯片无晶圆厂半导 体公司,产品线包括电池电量计芯
9、片、电池管理芯片、电池保护芯片、BMS前 端采集芯片以及USB充电控制芯片。公司主要专注市场领域涵盖移动通信、平 板计算机、笔记本计算机、电动工具、电动交通工具、电池储能设备等诸多领 域。在此次展会上,赛微电子展示的电源芯片产品有电量计、电池保护IC、USB 端口充电和保护、电源管理等。电量计产品主要应用于手机、TWS耳机、平板 和POS机;电池保护IC主要应用于电动工具、电动自行车、扭扭车、吸尘器;USB 端口充电和保护产品主要应用于移动电源、车充、旅充、墙充、排插等;电源管 理产品主要应用于智能手表、智能手环、TWS耳机、智能手环、I。T设备等。功率半导体厂商近年来,第三代半导体材料的发展
10、逐渐成熟,产品也逐渐应用在各个领域, 在此次展会上,华润微、泰科天润、瑞能半导体等功率半导体厂商就有推出新品 及展示应用案例。华润微华润微是一家以IDM模式为主运营的半导体企业,旗下有四大事 业群板块,五大业务战略组合。在功率器件板块,华润微电子此次以高、低压 MOSFET和IGBT产品线方式展示,其中高压产品线重点展示了 600V-700高压 超结产品,低压产品线展示了低压沟槽平台85-135V系列以及低压沟槽二代平 台30V系列,1GBT展示了 600V、1200VTrenChFS结构的系列产品。电子发 烧友拍摄展会同期,华润微电子召开SiC新品发布会,正式向市场投入1200V和 650V
11、工业级SiC肖特基二极管功率器件产品系列,同时宣布国内首条6英寸商 用SiC晶圆生产线正式量产。据介绍,华润微全系列1200V650V SiC二极管产 品广泛应用于太阳能、UPS、充电桩、储能和车载电源等领域。泰科天润在此次展会上,泰科天润除了展示优秀的半导体器件系列产品之 外,还重点展示了适配器、医疗电源、矿机电源、AD/DC电源、PFC等方向的 解决方案,这些解决方案都采用了泰科天润第三代半导体材料的功率半导体器 件。图片来自泰科天润半导体公众号20OW多端口 PD适配器用到泰科天润的 G4S06510QT, 250WAC/DC电源用到泰科天润的G3S06502A, IKW宽输入范 围PF
12、C电路用到泰科天润的G3S06505H, 2400W/3200W矿机电源用到泰科天润 的G3S06510H/G3S06520A。泰科天润表示,这些产品由于使用了第三代半导体 材料的功率器件,使得整机的工作频率得到提升,电感等元件的体积得到显著降 低,从而提高整机的功率密度和效率。瑞能半导体瑞能半导体源自恩智浦标准产品事业部,公司较早就推出了第 三代半导体材料的功率器件,功率半导体产品组合包括:碳化硅二极管,可控硅 整流器和三端双向可控硅、功率二极管、高压晶体管等。产品广泛应用于电信、 计算机、消费类电子产品、智能家电、照明、汽车和电源管理应用等市场领域。电 子发烧友拍摄在此次展会上,瑞能除了展
13、示了吸尘器、洗衣机、热水器、咖啡 机等应用方案外,还展示了汽车级应用产品,包括BT155W-1200T-A. BYC30W-600P-A、NXPSC20650W-A、BYC30-1200PBYC40W-1200P,应用于 电动汽车充电桩输入整流和AC/DC变换。瑞能表示,Pt掺杂的快恢复二极管, 具有优化的效率和EMl特性;采用平面工艺的1200V SCR,具有150的高结 温和良好的抗冲击能力。此次展会还展示了被动元器件、元器件电商平台、连 接器等,在此就不一一介绍了。小结受疫情的影响,不仅仅是慕展推迟,今年上半年,很多半导体厂商的业绩也 受到影响,不过这次疫情也给一些厂商带来了新的市场机会
14、。今年下半年,市场 形势还是不稳定,业内人士认为,这也给厂商更多的时间和精力投入研发。从 长期来看,中美摩擦及此次疫情,也给国内半导体厂商提供了更多展示的空间和 舞台,同时5G、人工智能、物联网等新兴领域的逐渐成熟,这些都将加快国内 半导体产业发展。基于System Verilog的芯片模拟器设计与实现摘要:该文在对SyStemVerilog与C语言的接口进行介绍的基础上,详细描 述了两者之间数据共享的基本方法,然后通过对一款示例芯片基本功能的分析, 设计了芯片模拟器的四个基本接口函数并对其实现进行了简要描述。通过该芯片 模拟器设计与实现的介绍,可以从中了解System Verilog测试平台
15、下芯片模拟器 实现的一般方法。关键词:SyStemVerilog;芯片模拟器Abstract: This paper introduces the interface between System Verilog and C, and describes the basic method of data sharing between two languages. Through the functional analysis of a sample chip, we design four interface functions of the chip simulator and descr
16、ibe their implementation. We can learn about the realization of chip simulator on System Verilog platform through this paper;Key words: System Verilog; chip simulator1概述在常今百万门级的ASIC设计中,验证所占用的时间无疑成为缩短集成电路 产品设计周期中的瓶颈。如何改进验证方法,改善验证手段,从而提高验证效率, 缩短验证周期,是验证人员乃至产品经理们最关心的问题川。SyStemVerilog结 合了来自Verilog、VHDL,
17、 C+的概念,以及验证平台语言和断言语言,将硬件 描述语言HDL与现代的高层级验证语言HVL结合了起来,使原本繁琐费时的 验证工作变得相对简单易行。与传统的验证方法相比,这种验证方法大大提高了 验证工作的效率,缩短了验证的周期,同时有力地保证了验证的完备性。同时,SyStemVerilOg提供了与其他语言的编程接口,可以通过和其他语言 数据共享的方式进行相互交互,将验证工作中的繁琐复杂的功能交给软件来实 现,提高验证的效率和性能。这样在芯片的验证过程中,就可以通过数据共享将 芯片的主要功能通过软件来实现,然后通过比对结果来验证芯片功能的正确性。2 System Verilog与C语言接口介绍V
18、erilog 使用编程语言接口 (PLI, Programming Language Interface)来跟 C 语 言交互,相比之下SyStemVeriIOg引入了直接编程接口(DPLDireCtPrOgramming Interface),它能更加简单的连接C、C+或者其他非VerilOg编程语言2。一旦声明或者使用import语句导入”了一个C子程序,就可以像调用System VeriIOg中的子程序一样来调用它。import声明定义了 C任务和函数的原型,但 使用的是System Verilog的数据类型,带有返回值的C函数会被映射成一个 System Verilog函数,void类
19、型的C函数则被映射成一个System Verilog任务或 者VOid函数。导入的C子程序可以有多个参数或者没有参数,缺省情况下参数 的方向是input,即数据从System Verilog流向C函数,但是参数的方向也可以定 义为 output 和 inoutc通DPl传递的每个变量都有两个相匹配的定义,一个是System Verilog的, 一个是C语言的,这里需要确保两者使用的是兼容的数据类型。由于数据类型 比较繁杂,为了说明两者之间数据类型的对应关系,以下就SyStemVerilOg和C 语言之间的数据传递进行简单介绍。2.1 数据类型映射表1给出了 SyStemVerilog和C语言子
20、程序输入输出之间数据类型的映射关 系,C结构类型在头文件SVdPi.h中定义,在使用时需要包含此头文件。在使用两种语言进行对接交互的时候,函数参数和返回值的数据类型参照上 表进行相应转换即可保证两者的数据是兼容并可以互相通信使用的。2.2 开放数组当需要在System Verilog和C之间共享数组的时候,可以采用反向工程的方 式分析出数组在System Verilog中的存储方式,而在C中根据数组的内存映射方 式进行操作。然而这种方式很容易出错,一旦任何一个数组有变化,必须重新编 写代码进行调试。在SyStemVeriIOg中提供了“开放数组(open array)”来处理这 种情况,这使得
21、我们能够编写出可以操作任何大小数组的通用C代码。在System Verilog中开放数组的查询函数比较多,这里笔者就基本的开放数组的使用方法 进行简单介绍。使用基本的开放数组在System Verilog和C程序之间传递数据时,在System Verilog中声明相应的C函数,然后在C代码中可以使用SvOpenArrayHandle类 型的句柄来引用此开放数组。该句柄指向一个含有字范围等开放数组信息的结 构,可以通过调用SVGetArrayPtr等方法来获取实际的数组元素,该函数返回一 个Void*类型的指针。23复合类型对于C和C+中比较复杂的类,就类属性的内存映射方式来讲,两种语言 并不完
22、全一致,不能直接共享对象。为了达到共享的目的,SyStemVerilog测试 平台使用压缩结构来保存一个简单的像素,使用类来封装对像素的操作。通过使 用压缩和解压缩的方法对两种数据格式进行转换,就可以使两者共享符合类型的 数据了。3芯片模拟器的设计与实现通过以上介绍,笔者针对芯片的整体架构及功能,采用上述的System Verilog 与C对接的方式对芯片模拟器整体架构及主要功能模块的设计和实现进行详细 说明。3.1 芯片模拟器整体架构在基于SyStem VeriIOg与C对接的模拟器实现中,System VerilOg作为整个 验证环境的平台,将测试数据分别发送给芯片的硬件逻辑和芯片模拟器,
23、然后收 集两者的数据输出结果进行比较,以期判断芯片逻辑的正确与否3,具体的结 构如图1所示。图1其中,芯片模拟器采用软件的方法实现了芯片逻辑需要验证的功能,并根据 整个验证平台的需要添加需要的辅助功能。为了更直观的介绍芯片模拟器的设计 和实现,这里以笔者实现的一个简单芯片模拟器为例进行说明。此芯片的主要功能可以简化为发送、接收数据以及配置芯片参数这三个简单 的功能,芯片模拟器的功能则是在这三个接口上对芯片的功能进行模拟实现,然 后比对相应的数据是否正确。其中发送方向上对测试数据进行处理然后发送输 出,接收方向则从接收方向对测试数据进行处理,配置芯片参数通过测试数据生 成模块将参数发送给芯片模拟
24、器进行配置。需要注意的是,为了验证芯片逻辑的 正确与否,这里System Verilog平台发送给芯片逻辑和芯片模拟器的数据必须是 完全相同的,这样才能保证通过结果比对得到的测试结果是有参考价值的。通过以上分析,笔者将这三个主要功能分别进行实现,其中发送和接收数据 两部分需要用到芯片参数配置部分所配置的芯片参数,因而这里将芯片参数设定 为全局参数,方便芯片参数配置部分进行参数配置以及发送和接收数据时依照此 参数进行数据处理。芯片参数配置设计一个单独的接口方便进行参数配置,同时, 为了验证参数配置地是否正确,需要另外的接口来从全局参数中读取芯片参数来 验证参数配置的正确性。发送数据方向设计一个接
25、口来处理发送方向的数据,这 里需要用到芯片的参数,通过以上的设计简单的读取全局芯片参数即可。接收数 据方向同样设计一个接口来处理接收方向的数据,和发送方向类似,通过读取全 局芯片参数进行数据处理。芯片模拟器的整体结构如图2所示:芯片模振等图23.2 配置接口配置接口负责芯片参数的配置以及验证所配置参数的正确性。由于需要配置 的参数比较多,这里通过地址译码的方式来进行配置;同样,读取芯片参数时也 需要相应的地址来读取所需的芯片参数,基于此两个函数的结构就确定了。配置芯片参数的函数接口如下:int setReg(const SvBitVecVal* addr, const SvOpenArrayH
26、andle data);其中,返回值为1表示配置成功,返回0表示配置过程中出错;参数addr 表示所配置参数在地址列表中的地址,参数data则为相应地址所配置的芯片参 数值,这里data采用开放数组的方式来处理相应数据,为共享数据提供了便利4。 为了能够调用此函数,在相应的SyStemVeriIOg代码中需要导入此函数,具体如 卜:importDPI-C,function int setReg(input bit 7:0 addr, input bit data);读取芯片参数的函数接口如下:int getReg(const SvBitVecVal* addr, const SvOpenArr
27、ayHandle data);类似函数SetReg,返回值为1表示读取参数成功,为0表示读取失败;参数 addr表示要读取参数的地址,data则是读出的芯片参数。同样,为了能够调用此 函数,也需要在相应的SyStemVerilOg代码中导入此函数,具体如下:importiDPI-C,flnction int getReg(input bit 7:0 addr, output bit data);这里需要注意的是此处data的数据方向为OUtPUt,因为这里是读取芯片参数, data的数据空间需要在System Verilog中先分配好。3.3 发送方向发送方向和接收方向的数据处理是芯片最主要的
28、功能,此部分需要按照芯片 逻辑所设计的功能进行模拟实现,这两部分中所用到的芯片参数已通过读取全局 参数解决,其他部分只需用c语言来进行相应功能的实现即可。具体的函数接 口如下:int send(const SvOpenArrayHandle data, const SvBitVecVal* type);其中函数返回值为1表示发送方向数据处理完成并成功发送,0表示发送方 向出错;data即为需要处理的数据,type表示待处理数据的数据类型。System Verilog中导入此函数的方式如下:importiDPI-C,function send(input bit data, input bit
29、(2:0 type);在进行数据处理时只需要在相应的子函数中将data进行数据类型转换,使 其能够在C语言中进行处理,这样就可以使用软件的方法对芯片功能进行模拟 To具体方法如下:unsigned char* data_in = (unsigned char*)svGetArrayPtr(data);通过函数将data套换为C语言中的指针类型,这样就可以通过指针访问 System Verilog中的数据,实现System Verilog和C的数据共享,完成芯片相应 功能的模拟。3.4 接收方向接收方向的数据处理和发送方向类似,函数接口如下:int recv(const SvOpenArrayH
30、andle data);其中函数返回值为1表示接收方向数据处理完成,0表示接收方向出错;data 即为接收的待处理数据。System Verilog中导入此函数的方式如下:importiDPI-C,fnction recv(input bit data);数据处理以及数据共享的实现和发送方向的处理类似,这里不再赘述。4结论及下一步工作本文首先介绍System Verilog和C语言之间数据交互的方法以及两者互相调 用子函数的方式,然后通过笔者以该方式实现的芯片模拟器为例进行详细说明, 以此方式来对整个芯片的功能进行验证,具有一定的普遍性。通过这种方式实现 的芯片模拟器比较灵活,并且实现起来相对
31、硬件描述语言简单,同时通过数据共 享,能够对芯片功能的各个方面进行比较详尽的模拟,在芯片验证工作中具有非 常出色的表现。最后,需要指出,通过这种方式实现的芯片模拟器,在一些方面还存在着不 足,在硬件更底层的模拟中还不能够完全取代其他验证方式;在一些比较特殊的 情形中通过软件来模拟比硬件描述语言更为复杂,这也是此方法的不足;另外, 笔者实现的芯片模拟器在芯片功能模拟时模拟程度还不是非常精确,需要后续的 改进和完善。参考文献:1周卓.基于SV语言的802.11 MAC芯片逻辑验证方案J.现代电子技 术,2009( 18).2 Chris SpearSystem Verilog for Verification!M.Springer,20063 Janick Bergeron,Eduard Cerny,Alan Hunter,et al.System Verilog 验证方法学 M.夏宇闻,杨雷,陈先勇,等,译.北京:北京航空航天大学出版社,2007.4 程刚,蔡敏.基于System Verilog的SoC功能验证方法研究J.科学技术与工 程,2009(22).李磊,罗胜钦.基于VMM方法的SOC集成验证J.电子与封装,2011,11(1).