CN116483636A - 原型验证系统和方法 - Google Patents

原型验证系统和方法 Download PDF

Info

Publication number
CN116483636A
CN116483636A CN202310423123.5A CN202310423123A CN116483636A CN 116483636 A CN116483636 A CN 116483636A CN 202310423123 A CN202310423123 A CN 202310423123A CN 116483636 A CN116483636 A CN 116483636A
Authority
CN
China
Prior art keywords
verification
board
prototype
circuit
motherboard
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310423123.5A
Other languages
English (en)
Inventor
梁坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310423123.5A priority Critical patent/CN116483636A/zh
Publication of CN116483636A publication Critical patent/CN116483636A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2247Verification or detection of system hardware configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种原型验证系统和方法,其中,系统包括主板和原型验证板。主板包括主板供电端和主板时钟电路;原型验证板包括验证板供电端、验证板时钟电路和模拟电路,模拟电路用于模拟对主板进行管理的基板控制管理器,其中:在主板与原型验证板未连接的情况下,验证板供电端用于为模拟电路供电,验证板时钟电路用于为模拟电路提供时钟信号,以对模拟电路模拟的基板控制管理器进行第一验证;在主板与原型验证板连接的情况下,主板供电端用于为模拟电路供电,主板时钟电路用于为模拟电路提供时钟信号,以对模拟电路模拟的基板控制管理器进行第二验证。可以准确定位验证中出现的问题。

Description

原型验证系统和方法
技术领域
本发明涉及计算机技术领域,具体涉及一种原型验证系统和方法。
背景技术
BMC(Baseboard Management Controller,基板管理控制器)是当前所有服务器的一个管理服务的基础控制器,主要是监测与记录整个服务器的各项关键数据。BMC的原型验证是指在对BMC芯片进行流片之前,通过其他芯片,比如FPGA(Field Programmable GateArray,可编程阵列逻辑)芯片,先对BMC芯片的功能进行验证,在验证通过后,再对BMC芯片进行流片,如此,以降低流片得到的BMC芯片无法使用的概率。
目前,针对BMC的原型验证主要是搭配服务器主板进行验证。这种验证方法存在无法准确定位验证中出现的问题。
发明内容
有鉴于此,本发明实施方法提供了一种原型验证系统和原型验证方法,可以准确定位验证中出现的问题。
本发明一方面提供了原型验证系统,所述系统包括:
主板,包括主板供电端和主板时钟电路;
原型验证板,包括验证板供电端、验证板时钟电路和模拟电路,所述模拟电路用于模拟对所述主板进行管理的基板控制管理器,其中:
在所述主板与所述原型验证板未连接的情况下,所述验证板供电端用于为所述模拟电路供电,所述验证板时钟电路用于为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第一验证;
在所述主板与所述原型验证板连接的情况下,所述主板供电端用于为所述模拟电路供电,所述主板时钟电路用于为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第二验证。
在一些实施例中,所述模拟电路包括多个相互连接的验证芯片,所述多个相互连接的验证芯片用于共同完成对所述基板控制管理器的模拟。
在一些实施例中,相互连接的验证芯片之间基于第一协议进行通信;
所述验证板时钟电路包括第一时钟电路,所述第一时钟电路用于在所述验证芯片之间基于所述第一协议通信时,为所述第一协议提供第一频率的时钟信号。
在一些实施例中,在所述多个验证芯片中,至少部分验证芯片包括双倍速率同步动态随机存储器;
所述验证板时钟电路包括第二时钟电路,所述第二时钟电路用于为所述双倍速率同步动态随机存储器提供的第二频率的时钟信号。
在一些实施例中,所述模拟电路模拟的所述基板控制管理器具有多个不同的功能;
在所述多个相互连接的验证芯片中,至少部分验证芯片用于验证的功能不同。
在一些实施例中,所述主板包括主板端口,所述原型验证板包括验证板端口,所述主板与所述原型验证板通过所述主板端口和所述验证板端口连接,在所述主板与所述原型验证板连接的情况下,所述主板与所述原型验证板之间基于第二协议通信。
在一些实施例中,在所述主板与所述原型验证板连接的情况下,所述验证板供电端与所述主板供电端连接,所述主板通过所述主板供电端和所述验证板供电端为所述原型验证板提供第一电压的供电,以及所述主板通过主板端口和验证板端口为所述原型验证板提供第二电压的供电。
在一些实施例中,所述验证芯片中烧录有程序代码,所述程序代码运行时,用于模拟所述基板控制管理器的功能;
对所述模拟电路模拟的所述基板控制管理器进行第一验证,包括对所述程序代码的正确性进行验证。
在一些实施例中,在所述程序代码的验证通过的情况下,对所述模拟电路模拟的所述基板控制管理器进行第二验证,包括对所述原型验证板与所述主板之间的通信线路是否正常进行验证,和/或对所述主板的通信线路是否正常进行验证。
本发明另一方面还提供了一种原型验证方法,应用于原型验证系统,所述原型验证系统包括主板和原型验证板,所述原型验证板包括模拟电路,所述模拟电路用于模拟对所述主板进行管理的基板控制管理器;所述方法包括:
在所述主板与所述原型验证板未连接的情况下,通过设置于所述原型验证板的验证板供电端为所述模拟电路供电,以及通过设置于所述原型验证板的验证板时钟电路为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第一验证;
在所述主板与所述原型验证板连接的情况下,通过设置于所述主板的主板供电端为所述模拟电路供电,以及通过设置于所述主板的主板时钟电路为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第二验证。
在一些实施例中,所述模拟电路包括多个相互连接的验证芯片,所述验证芯片中烧录有程序代码,所述程序代码运行时,用于模拟所述基板控制管理器的功能;
所述对所述模拟电路模拟的所述基板控制管理器进行第一验证,包括:
对所述程序代码的正确性进行验证。
在一些实施例中,在所述程序代码的验证通过的情况下,所述对所述模拟电路模拟的所述基板控制管理器进行第二验证,包括:
对所述原型验证板与所述主板之间的通信线路是否正常进行验证,和/或
对所述主板的通信线路是否正常进行验证。
在本申请一些实施例的技术方案中,通过为原型验证板设置验证板供电端和验证板时钟电路,使得在基板控制管理器的原型验证过程中,可以针对原型验证板进行独立的第一验证,以及搭配主板进行第二验证。在第一验证和第二验证两个阶段的验证中,若出现验证问题,可以明确定位出问题是由原型验证板导致的,还是由主板导致的,因此,可以准确定位验证中出现的问题。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了一些技术中的主板的结构示意图;
图2示出了一些技术中的针对基板控制管理器的原型验证系统的示意图;
图3示出了本申请的一个实施例提供的原型验证系统的模块示意图;
图4示出了图3中的原型验证系统的结构示意图;
图5示出了图3中的原型验证板的结构示意图;
图6示出了图5中的原型验证板包括的验证板时钟电路的结构示意图;
图7示出了本申请的一个实施例提供的RMII/NCSI功能验证的网络拓扑图;
图8示出了本申请的一个实施例提供的USB功能验证的网络拓扑图;
图9示出了本申请的一个实施例提供的I3C功能验证的网络拓扑图;
图10示出了本申请的一个实施例提供的原型验证方法的流程示意图。
具体实施方法
为使本发明实施方法的目的、技术方案和优点更加清楚,下面将结合本发明实施方法中的附图,对本发明实施方法中的技术方案进行清楚、完整地描述,显然,所描述的实施方法是本发明一部分实施方法,而不是全部的实施方法。基于本发明中的实施方法,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施方法,都属于本发明保护的范围。
在对本申请进行阐释前,先对本申请涉及的相关概念进行说明。
VR(Voltage Regulator),表示电源管理器;FAN,模块表示风扇;PCH(PlatformController Hub),表示集成南桥;CPLD(Complex Programmable Logic Device),表示复杂可编程逻辑器件;CPU(Central Processing Unit),表示中央处理器;DIMM(Dual-Inline-Memory-Modules),表示双列直插式存储模块;FLASH,表示Flash存储器;CLOCK BUFFER,表示时钟缓冲器;LEVEL SHIFT,表示电平转换设备;USB PHY,表示USB接口网卡;ADC(Analog-to-Digital Converter),表示模数转换器;SERSOR,表示传感器;UART HEADER(UniversalAsynchronous Receiver/Transmitter),表示异步收发传输器;EMMC(Embedded MultiMedia Card),针对手机或平板电脑等产品的内嵌式存储器;I210,一种网卡;RTL8211,一种以太网收发器;DRAM(Dynamic Random Access Memory),动态随机存取存储器;SD(SecureDigital Memory Card),基于半导体快闪存储器的新一代高速存储设备;DCSCM(Datacenter-ready Secure Control Module),数据中心预备安全控制模组;LTPI,基于DCSCM2.0协议的标准信号传输链路;SPI(Serial Peripheral Interface),表示串行外设接口;QSPI(Quad SPI),表示6线spi;DDR(Double Data Rate Synchronous DynamicRandom Access Memory),双数据率同步动态随机存储器;FPGA(Field Programmable GateArray),现场可编程门阵列;GPIO(General-purpose input/output),通用型之输入输出;I2C(Inter-Integrated Circuit),又称为IIC,集成电路总线;I3C(Improved InterIntegrated Circuit),I2C总线的提高版;UART(Universal Asynchronous Receiver-Transmitter),通用异步收发器;RGMII(Reduced Gigabit Media IndependentInterface),精简的GMII接口;RMII(Reduced Media Independent Interface),简化媒体独立接口;USB(Universal Serial Bus),通用串行总线;
请参阅图1,为一些技术中的主板11的结构示意图。图1中,主板11通过双CPU搭载DIMM,配合PCH和CPLD进行CPU和系统的系统引导(又称为boot),BMC监控主板11上的各项事务。
请参阅图2,为一些技术中的针对基板控制管理器的原型验证系统100的示意图。图2中,原型验证系统100包括主板11和验证板12。验证板12上的FPGA用于模拟BMC,高密连接器2和高密连接器3位于扣卡上。在对BMC进行原型验证时,主板11上的高密连接器0和高密连接器1连接验证板12上的高密连接器2和高密连接器3,目的是让FPGA的信号可以通过这些高密连接器连接到主板11上,与CPU、PCH、CPLD以及其他元器件进行通信,同时,主板11通过高密连接器给验证板12上的元器件供电。这种原型验证系统100存在如下问题:
1)在原型验证时,需要对主板11上的走线进行重新设计,将原来与BMC连接的信号线,改为与高密连接器连接,这会破坏主板11的现有结构。
2)由于验证板12需要依赖主板11供电,因此验证过程中需要搭配主板11进行验证,这使得不容易定位验证过程中出现的问题。举例来说,假设在主板11的系统引导过程中出现问题,这个问题可能是对主板11的走线进行重新设计时引入的,也有可能是扣卡的硬件设计问题,也有可能是扣卡的原型验证系统的代码问题。
3)由于高密连接器有较为严格的信号速率传输要求,并且高密连接器价格高昂,走线方面比较密集,扇出信号较为困难,因此,寻找合适的高密连接器存在难度。
4)验证板11上的FPGA通常需要选择具有高规格高性能的FPGA,这种大型FPGA的成本投入太高,且符合原型验证系统100的FPGA的规格较少,不利于原型验证的进程。
5)开源化、模块化和流程化不容易实现。当前的服务器环境都在进行模块化和开源化的进程,有关开源的东西越来越多,比如OCP和OPEN BMC,扣卡设计不容易进行OPENBMC的开源化设计。
鉴于此,请参阅图3,为本申请的一个实施例提供的原型验证系统300的模块示意图。图3中,原型验证系统300包括主板31和原型验证板32。其中,主板31包括主板供电端311和主板时钟电路312。原型验证板32包括验证板供电端321、验证板时钟电路322和模拟电路323,模拟电路323用于模拟对主板31进行管理的基板控制管理器(即BMC),其中:
在主板31与原型验证板32未连接的情况下,验证板供电端321用于为模拟电路323供电,验证板时钟电路322用于为模拟电路323提供时钟信号,以对模拟电路323模拟的基板控制管理器进行第一验证;
在主板31与原型验证板32连接的情况下,主板供电端311用于为模拟电路323供电,主板时钟电路322用于为模拟电路323提供时钟信号,以对模拟电路323模拟的基板控制管理器进行第二验证。
如此,在对基板控制管理器的原型验证过程中,可以分为两步进行验证,首先在主板31与原型验证板32未连接的情况下进行第一验证。第一验证可以是无需基于主板31进行的验证。若在第一验证过程出现问题,由于该阶段并未搭配主板31进行验证,因此可以明确定位出问题是由原型验证板32导致的。比如,可能是原型验证板32中的程序代码异常、原型验证板32的通信线路异常等问题。在原型验证板32验证完成后,将原型验证板32与主板31连接,以进行第二验证。第二验证可以是需要基于主板31进行的验证。若该阶段出现问题,由于原型验证板32已经通过验证(即不存在问题),那么可以明确定位出问题是由主板31导致的。比如,可能是原型验证板32与主板31之间的通信异常、主板31的通信线路异常等。关于第一验证和第二验证的具体示例,可参见后续相关描述,此处不赘述。
综上所述,在本申请一些实施例的技术方案中,通过为原型验证板32设置验证板供电端321和验证板时钟电路322,使得在基板控制管理器的原型验证过程中,可以针对原型验证板32进行独立的第一验证,以及搭配主板31进行第二验证。在第一验证和第二验证两个阶段的验证中,若出现验证问题,可以明确定位出问题是由原型验证板32导致的,还是由主板31导致的,因此,可以准确定位验证中出现的问题。
以下对本申请的方案做进一步说明。
请参阅图4至图6。图4为图3中的原型验证系统300的结构示意图。图5为图3中的原型验证板32的结构示意图。图6为图5中的原型验证板32包括的验证板时钟电路322的结构示意图。
基于图4和图5所示的结构。在一些实施例中,模拟电路323包括多个相互连接的验证芯片。相互连接的验证芯片之间可以基于第一协议进行通信。其中,验证芯片之间的相互连接,可以是所有验证芯片之间的两两相互连接,或者部分验证芯片之间的两两相互连接。比如,假设有验证芯片A、验证芯片B和验证芯片C,那么验证芯片A分别连接验证芯片B和验证芯片C,且验证芯片B连接验证芯片C;或者也可以是验证芯片A分别连接验证芯片B和验证芯片C,但验证芯片B与验证芯片C之间不连接。
验证芯片可以是多个较小规格性能的FPGA芯片。FPGA芯片之间可以通过总线连接,并基于第一协议进行通信。如此,多个较小规模的FPGA芯片通过拼接,可以得到一个具有高规格高性能的FPGA芯片。拼接的FPGA芯片之间可以实现逻辑资源、内存模块的相互调用。其中,第一协议可以是AURORA协议。图4中,示例性的使用两个较小规格性能的FPGA芯片拼接得到一个高规格高性能的FPGA芯片。由于较小规格性能的FPGA芯片较容易获取得到,且价格便宜,因此,可以降低原型验证的难度和成本。
该多个相互连接的验证芯片用于共同完成对基板控制管理器的模拟。具体的,可以是每个验证芯片分别用于模拟基板控制管理器的一部分功能,也可以是不同验证芯片之间通过共享硬件资源,共同完成基板控制管理器的模拟。以图4所示实施例为例,芯片FPGA0可用于连接GPIO、I2C总线、I3C总线、UART、RGMII、RMII、显卡等,以接收或发送低速信号、网络信号、与主板31的系统引导(即boot)相关的信号。同时,在芯片FPGA0中可以模拟基板控制管理器的与上述功能模块相关的内容工程文件。如此,便可以基于芯片FPGA0,完成基板控制管理器的上述功能验证。而芯片FPGA1可用于验证基板控制管理器的USB内部集成控制器、安全启动、加密算法、LTPI等功能。
在一些实施例中,至少部分验证芯片包括双倍速率同步动态随机存储器。双倍速率同步动态随机存储器又可称为DDR控制器,可以提高验证芯片的性能。
继续请参阅6,在一些实施例中,考虑到第一协议和双倍速率同步动态随机存储器所需的时钟频率不同,验证板时钟电路322可以包括第一时钟电路3221和第二时钟电路3222,其中,第一时钟电路3221用于在验证芯片之间基于第一协议通信时,为第一协议提供第一频率的时钟信号,第二时钟电路3222用于为双倍速率同步动态随机存储器提供的第二频率的时钟信号。如此,以保证第一验证的顺利执行。在本实施例中,第一时钟电路3221为图6中的RC21008,用于为第一协议提供频率为156.25MHZ的时钟信号,第二时钟电路3222为图6中的CK440,用于为双倍速率同步动态随机存储器提供100MHZ的时钟信号。时钟电路的个数和所提供的频率可以根据实际情况设置,本申请对此不做限制。
继续参阅图4,在一些实施例中,主板31包括主板端口313,原型验证板32包括验证板端口324,主板31与原型验证板32通过主板端口313和验证板端口324连接,在主板31与原型验证板32连接的情况下,主板31与原型验证板32之间基于第二协议通信。具体的,第二协议可以是DCSCM协议。主板端口313和验证板端口324可以是DCSCM端口。遵循标准的硬件接口定义和固定的结构(DCSCM协议和DCSCM端口的固有特点)有利于对基板控制管理器进行迭代更新的验证。
以下结合图4至图6,示例性的对原型验证的具体过程进行说明。为了能够更加清楚的阐述整个验证过程,先对图4和图5中的相关模块功能进行说明。图4中和图5中,原型验证板32包括两个验证板供电端321,分别为验证板供电端PSU CON和验证板供电端PWR CON。主板31包括两个主板供电端311,分别为主板供电端PWR CON和主板供电端RISER SLOT。图5中,各个模块的作用如下:
ALLFLOW UART,用于传输串口信息,具体包括基板控制管理器的串口信息和SYSTEM串口信息;
UART,用于传输SOL传口信息以及用来debug的串口信息;
LEVEL SHIFT,用于进行电平转换的芯片。由于FPGA芯片的电平和BMC实际的电平不一致,因此需要通过LEVEL SHIFT芯片将电平转化为一致。
FAN CON,表示连接风扇的连接器。主要用来验证PWM和TACH信号。
LED、SWITCH、BTN,用于实现至少部分原型验证板32的逻辑控制。
EMMC/SD,可以用于存储OS系统。
DDR4,具体为SDRAM,表示基板控制管理器中存储信息的介质。
QSPI FLASH,用于加载FPGA芯片自身的FIRMWARE以及模拟的ARM CORE的固件信息。
MCIO,用于连接主板31的PCIE资源。
JTAG HEADER,用于调试FPGA芯片的连接器。
PORT80,用于显示系统的工作进程,主要用于显示DEBUG信息。
VR,DCSCM板系统自身的电压控制器。
VGA,显卡输出的连接器。
RTL8211、I210,网卡芯片。
USB PHY,用于验证USB3.0的信号。
LTPI,用于验证基板控制管理器接口的一种高速接口协议。
AURORA,表示XLINX FPGA芯片自身的高速GTY互联协议。
INTERCONNECT IO,表示FPGA0芯片和FPGA1芯片之间互联的IO信号。
CPLD,用于传输和主板31之间SGPIO总线上的IO信号。
CK440/RC21008,表示时钟产生器,用于给系统提供100M和156.25MHZ的时钟。
PSU CON,用于连接PSU电源,以在原型验证板32单独验证时,给原型验证板32供电。
PWR CON,用于搭配主板31一起验证时,给原型验证板32供电。
基于以上描述,首先进行第一验证。
在本实施例中,验证芯片中烧录有程序代码(比如通信协议代码),程序代码运行时,用于模拟基板控制管理器的功能。对模拟电路323模拟的基板控制管理器进行第一验证,包括对程序代码的正确性进行验证。结合参阅图4至图6。在进行第一验证之前,可以首先将验证板供电端PSU CON与电源连接,以给原型验证板32供电,并且烧录模拟基板控制管理器的FPGA芯片的FIRMWAR到QSPI FLASH中。这种情况下,原型验证板32将进行单独的系统引导,CK440和RC21008将分别为原型验证板32提供时钟,CK440给FPGA0芯片内置的双倍速率同步动态随机存储器提供100MHZ的时钟,RC21008给FPGA0芯片和FPGA1芯片互联的AURORA协议提供时钟(100M和156.25MHZ的时钟拓扑如图6所示)。需要说明的是,在第一验证的过程中,由于原型验证板32没有连接主板31的计算资源,所以不能对基板控制管理器的所有规格参数进行完整验证,但是可以进行大部分的程序代码验证。第一验证示例性的包括:
1)验证LTPI功能。具体的,可以分为I2C、UART、GPIO功能验证。验证过程如下:
结合参阅图5。可以将CPLD与FPGA0连通,由CPLD发送测试信号给FPGA0。再通过MUX切换,将CPLD与FPGA1连通,由CPLD发送测试信号给FPGA1,再由FPGA1通过LTPI将测试信号发送给FPGA0。若在MUX切换前后,FPGA0接收到的测试信号相同,表示LTPI代码部分以及物理链路验证成功。为便于理解,举例来说,假设MUX切换前,CPLD给FPGA0发送数字01。MUX切换后,CPLD再通过FPGA1给FPGA0发送01。若FPGA0在MUX切换前后,接收到的信息均为01,则表示在FPGA0与FPGA1之间的LTPI协议是正确的,且物理链路是连通的。若FPGA0在MUX切换前后接收到的信息不同,表示FPGA0与FPGA1之间的LTPI协议是不正确的,需要对LTPI协议的相关程序代码进行更改。比如,假设在MUX切换前后,CPLD均发送的是数字01,但在MUX切换前,FPGA0接收到的信息为01,在MUX切换后,FPGA0接收到的信息为00,则表示FPGA0与FPGA1之间的LTPI协议不正确。
2)验证AURORA协议和双倍速率同步动态随机存储器。具体的,在AURORA协议和双倍速率同步动态随机存储器正常的情况下,FPGA0和FPGA1可以进行拼接,进而可以将多片FPGA的逻辑资源、内存模块进行相互调用。若不能实现相关功能,则表示AURORA协议和双倍速率同步动态随机存储器验证不通过。
3)验证RGMII功能。具体的,可以使用RJ45连接器,PING通网口,验证FPGA内部的eMAC模块代码无误即可。
4)验证SD/EMMC功能。具体的,可以在SD或EMMC中安装OS系统来验证读写速率是否达标,来验证基板控制管理器与SD或EMMC之间通路以及内置的基板控制管理器内部的AXI总线。
5)验证I2C和ADC功能。具体的,由于基板控制管理器通常作为I2C的HOST,所以FPGA0芯片和FPGA1芯片也作为I2C的HOST,去访问一些I2C的设备(如FRU、THERMALSENSOR)。若能正常访问,表示I2C功能正常。而对于ADC功能的验证,则可以获取原型验证板32上各POWER RAIL的电压值,并通过I2C接口发送给FPGA0芯片或者FPGA1芯片,再通过其他形式上传到内置ARM CORE上进行处理即可进行验证。
6)验证PWM和TACH信号。具体的,可以由FPGA0芯片出PWM波和TACH信号,连接风扇,可以通过改变PWM信号的占空比来调整风扇的转速来验证PWM和TACH功能。
综上,完成第一验证,以下进行第二验证。
在本实施例中,在程序代码的验证通过的情况下,对模拟电路323模拟的基板控制管理器进行第二验证,包括对原型验证板32与主板31之间的通信线路是否正常进行验证,和/或对主板31的通信线路是否正常进行验证。其中,在进行第二验证之前,需要先对主板31与原型验证板32之间的供电进行调整。在本实施例中,由于主板端口313和验证板端口324之间是基于DCSCM2.0的标准协议进行通信,按照这个标准协议,主板31通过主板端口313和验证板端口324,只能给原型验证板32提供4.4A的P12V,这个供电无法满足原型验证板32的供电需求,故可以将验证板供电端PSU CON连接的电源去除,以及将验证板供电端PWR CON与主板供电端RISER SLOT连接,由主板31通过主板供电端RISER SLOT和验证板供电端PWR CON为原型验证板32提供第一电压的供电,以及由主板31通过主板端口313和验证板端口324为原型验证板32提供第二电压的供电。完成以上操作后,便可进行第二验证。其中,在不搭配主板31时所验证的功能都可以在搭配主板31时进行功能验证,由于时钟需要切换,所以可以对时钟切换电路进行COLAY设计。具体的,第二验证示例性的包括:
1)由于在第一验证中,针对LTPI功能只验证了FPGA0芯片和FPGA1芯片之间的信息传输,因此,可以在搭配主板31时,将主板31上的GPIO、I2C、UART均在实际的工作系统下进行验证。以GPIO为例,可以将主板31上的GPIO从CPLD与原型验证板32上的CPLD通过SGPIO相连接,然后在原型验证板32上进行解码,通过LTPI从FPGA0芯片传输到FPGA1芯片,验证实际系统中的LTPI传输链路。
2)显卡功能验证。显卡所需的PCIE资源可以从CPU(或者PCH)得到。PCIE资源可以传输给FPGA0芯片的高速收发器GTY,在FPGA0芯片内部,PCIE资源可以传输给VGA模块(包括2D DRAWING ENGINE),由VGA模块输出R、G、B(RED、GREEN、BLUE)数字信号,经过一个数模转换器,转换成模拟信号,再经过一系列物理链路的电气特性匹配,可以连接到具有VGA接口的显示器上,这样在系统下启动成功时可以直接进入BIOS的界面。
3)网络功能RMII/NCSI验证。结合参阅图7,为本申请的一个实施例提供的RMII/NCSI功能验证的网络拓扑图。具体的,由于网卡芯片I210需要的PCIE资源,因此需要在验证之前,由主板31将PCIE资源传输给I210。又由于DCSCM接口连接器的物理PIN限制,所以可以采用MCIO和线缆的连接方式,将主板31的PCIE资源发送给I210。这样,完成PCIE资源传输之后,若在I210可以PING通网络,RMII功能得以验证。进一步的,NCSI可以在S5状态下从FPGA芯片通过串口进行IP CONFIG绑定,在FPGA reboot后可以PING通,表示RMII和NCSI功能验证成功。
4)验证USB功能。结合参阅图8,为本申请的一个实施例提供的USB功能验证的网络拓扑图。具体的,PCIE资源可以通过CABLE发送给FPGA1,这样在FPGA1内部的USBCONTRIOLLER可以得到验证,FPGA1在内部将PCIE资源转化成ULPI(USB2.0的协议接口)和PIPE(USB3.0的协议接口)信号,连接到USB的PHY芯片上,输出USB3.0和USB2.0的信号,连接到USB3.0的连接器上,当HOST可以识别到USB设备插入时,原型验证系统的USB功能得以验证,同时也可以验证KVM。
5)验证LPC和eSPI功能。具体的,这两种协议信号因为电平不同,所以传输的物理链路不同,但传输的内容基本相同(主要传输系统的一些boot相关的逻辑信号),故可以连接PORT 80显示LPC和ESPI的传输。需要说明的是,由于EGS和BHS不支持LPC,在搭配IntelEGS或者BHS平台的CPU进行验证时,LPC需要单独连接到一个header上搭配其他系统进行验证。
6)验证MCTP OVER PCIE功能。为便于理解,先对MCTP OVER PCIE功能进行介绍。正常情况下,一个基板控制管理器用于管理其中一个主板31,但在一些主板31的基板控制管理器异常的情况,可以通过其它主板31的基板控制管理器来对该些主板31的部分功能进行管理,此处,基板控制管理器对多个主板31进行管理的功能,即MCTP OVER PCIE功能。对该功能进行验证时,可以搭配主板31上的PCIE资源,使用一套主板31和两套原型验证板32进行CABLE连接,若在同一个HOST OS下可以访问,表示MCTP OVER PCIE功能验证成功。
7)验证I3C功能。结合参阅图9,为本申请的一个实施例提供的I3C功能验证的网络拓扑图。I3C的功能必须搭配主板31才能验证。以识别I3C的DIMM条为例,当在uboot界面可以扫描到主板上I3C的地址,则I3C验证成功。
8)验证PECI功能。PECI时Intel标准定义的用来使基板控制管理器对CPU进行温度参数等数据采集的一根总线,当FPGA0拿到这些CPU的温度信息上传到ARM CORE处理,则PECI的功能得到了验证。
综上,完成第二验证。
请参阅图10,为本申请的一个实施例提供的原型验证方法的流程示意图。原型验证方法可应用于原型验证系统,原型验证系统包括主板和原型验证板,原型验证板包括模拟电路,用于模拟对主板进行管理的基板控制管理器。图10中,原型验证方法包括如下步骤:
步骤S11,在主板与原型验证板未连接的情况下,通过设置于原型验证板的验证板供电端为模拟电路供电,以及通过设置于原型验证板的验证板时钟电路为模拟电路提供时钟信号,以对模拟电路模拟的基板控制管理器进行第一验证;
步骤S12,在主板与原型验证板连接的情况下,通过主板供电端为模拟电路供电,以及通过主板时钟电路为模拟电路提供时钟信号,以对模拟电路模拟的基板控制管理器进行第二验证。
在一些实施例中,模拟电路包括多个相互连接的验证芯片,验证芯片中烧录有程序代码,程序代码运行时,用于模拟基板控制管理器的功能;
对模拟电路模拟的基板控制管理器进行第一验证,包括:
对程序代码的正确性进行验证。
在一些实施例中,在程序代码的验证通过的情况下,对模拟电路模拟的基板控制管理器进行第二验证,包括:
对原型验证板与主板之间的通信线路是否正常进行验证;和/或
对主板的通信线路是否正常进行验证。
原型验证方法的原理,可参见上述原型验证系统的相关介绍,此处不赘述。
虽然结合附图描述了本发明的实施方法,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (12)

1.一种原型验证系统,其特征在于,所述系统包括:
主板,包括主板供电端和主板时钟电路;
原型验证板,包括验证板供电端、验证板时钟电路和模拟电路,所述模拟电路用于模拟对所述主板进行管理的基板控制管理器,其中:
在所述主板与所述原型验证板未连接的情况下,所述验证板供电端用于为所述模拟电路供电,所述验证板时钟电路用于为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第一验证;
在所述主板与所述原型验证板连接的情况下,所述主板供电端用于为所述模拟电路供电,所述主板时钟电路用于为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第二验证。
2.如权利要求1所述的系统,其特征在于,所述模拟电路包括多个相互连接的验证芯片,所述多个相互连接的验证芯片用于共同完成对所述基板控制管理器的模拟。
3.如权利要求2所述的系统,其特征在于,相互连接的验证芯片之间基于第一协议进行通信;
所述验证板时钟电路包括第一时钟电路,所述第一时钟电路用于在所述验证芯片之间基于所述第一协议通信时,为所述第一协议提供第一频率的时钟信号。
4.如权利要求2所述的系统,其特征在于,在所述多个验证芯片中,至少部分验证芯片包括双倍速率同步动态随机存储器;
所述验证板时钟电路包括第二时钟电路,所述第二时钟电路用于为所述双倍速率同步动态随机存储器提供的第二频率的时钟信号。
5.如权利要求2所述的系统,其特征在于,所述模拟电路模拟的所述基板控制管理器具有多个不同的功能;
在所述多个相互连接的验证芯片中,至少部分验证芯片用于验证的功能不同。
6.如权利要求1所述的系统,其特征在于,所述主板包括主板端口,所述原型验证板包括验证板端口,所述主板与所述原型验证板通过所述主板端口和所述验证板端口连接,在所述主板与所述原型验证板连接的情况下,所述主板与所述原型验证板之间基于第二协议通信。
7.如权利要求6所述的系统,其特征在于,在所述主板与所述原型验证板连接的情况下,所述验证板供电端与所述主板供电端连接,所述主板通过所述主板供电端和所述验证板供电端为所述原型验证板提供第一电压的供电,以及所述主板通过主板端口和验证板端口为所述原型验证板提供第二电压的供电。
8.如权利要求2所述的系统,其特征在于,所述验证芯片中烧录有程序代码,所述程序代码运行时,用于模拟所述基板控制管理器的功能;
对所述模拟电路模拟的所述基板控制管理器进行第一验证,包括对所述程序代码的正确性进行验证。
9.如权利要求8所述的系统,其特征在于,在所述程序代码的验证通过的情况下,对所述模拟电路模拟的所述基板控制管理器进行第二验证,包括对所述原型验证板与所述主板之间的通信线路是否正常进行验证,和/或对所述主板的通信线路是否正常进行验证。
10.一种原型验证方法,其特征在于,应用于原型验证系统,所述原型验证系统包括主板和原型验证板,所述原型验证板包括模拟电路,所述模拟电路用于模拟对所述主板进行管理的基板控制管理器;所述方法包括:
在所述主板与所述原型验证板未连接的情况下,通过设置于所述原型验证板的验证板供电端为所述模拟电路供电,以及通过设置于所述原型验证板的验证板时钟电路为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第一验证;
在所述主板与所述原型验证板连接的情况下,通过设置于所述主板的主板供电端为所述模拟电路供电,以及通过设置于所述主板的主板时钟电路为所述模拟电路提供时钟信号,以对所述模拟电路模拟的所述基板控制管理器进行第二验证。
11.如权利要求10所述的方法,其特征在于,所述模拟电路包括多个相互连接的验证芯片,所述验证芯片中烧录有程序代码,所述程序代码运行时,用于模拟所述基板控制管理器的功能;
所述对所述模拟电路模拟的所述基板控制管理器进行第一验证,包括:
对所述程序代码的正确性进行验证。
12.如权利要求11所述的方法,其特征在于,在所述程序代码的验证通过的情况下,所述对所述模拟电路模拟的所述基板控制管理器进行第二验证,包括:
对所述原型验证板与所述主板之间的通信线路是否正常进行验证;和/或
对所述主板的通信线路是否正常进行验证。
CN202310423123.5A 2023-04-19 2023-04-19 原型验证系统和方法 Pending CN116483636A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310423123.5A CN116483636A (zh) 2023-04-19 2023-04-19 原型验证系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310423123.5A CN116483636A (zh) 2023-04-19 2023-04-19 原型验证系统和方法

Publications (1)

Publication Number Publication Date
CN116483636A true CN116483636A (zh) 2023-07-25

Family

ID=87226319

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310423123.5A Pending CN116483636A (zh) 2023-04-19 2023-04-19 原型验证系统和方法

Country Status (1)

Country Link
CN (1) CN116483636A (zh)

Similar Documents

Publication Publication Date Title
US10387362B2 (en) Secondary data channel communication system
US10175296B2 (en) Testing a board assembly using test cards
US20080140898A1 (en) Computer bus power consuming device
CN114721992B (zh) 一种服务器及其服务器管理系统
CN115496018A (zh) 一种SoC芯片多版本验证方法、装置及设备
CN112069106B (zh) 一种基于fpga的多路服务器peci链路控制系统
US6944425B2 (en) Method and apparatus for providing wireless diagnostics, authentication, and redundancy of wired circuitry
CN218938947U (zh) 基于硬件仿真加速器的jtag接口适配板及系统
US7597592B2 (en) Automatic configuration of an interface to a host or client
CN111949464A (zh) 一种cpu网络接口适配性测试板卡、测试系统及测试方法
CN116483636A (zh) 原型验证系统和方法
US20230334155A1 (en) Data center security control module and control method thereof
CN116501678A (zh) 一种拓扑板卡和板载系统
CN111008102A (zh) Fpga加速卡高速接口si测试控制装置、系统及方法
CN216388068U (zh) 一种pcie接口验证板及测试系统
CN213276462U (zh) 双路服务器主板及双路服务器
CN115729872A (zh) 一种计算设备及pcie线缆连接的检测方法
CN204189089U (zh) 一种服务器
CN112000189A (zh) 一种基于s2500处理器的服务器主板
CN218273375U (zh) 基于ast2500的bmc管理模块及服务器系统
CN219476054U (zh) 服务器及电子设备
TW202046108A (zh) 調試裝置及具有所述調試裝置的電子裝置
CN219392545U (zh) 一种时钟板及时钟兼容验证系统
US12007928B2 (en) Signal bridging using an unpopulated processor interconnect
US11657014B2 (en) Signal bridging using an unpopulated processor interconnect

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination