CN116841347A - 一种修正cpld内部时钟频率的装置及方法 - Google Patents
一种修正cpld内部时钟频率的装置及方法 Download PDFInfo
- Publication number
- CN116841347A CN116841347A CN202310797472.3A CN202310797472A CN116841347A CN 116841347 A CN116841347 A CN 116841347A CN 202310797472 A CN202310797472 A CN 202310797472A CN 116841347 A CN116841347 A CN 116841347A
- Authority
- CN
- China
- Prior art keywords
- frequency
- cpld
- tested
- programmable device
- clock
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012360 testing method Methods 0.000 claims abstract description 58
- 239000013078 crystal Substances 0.000 claims abstract description 50
- 238000012937 correction Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 238000013461 design Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明提供了一种修正CPLD内部时钟频率的装置及方法,装置包括:测试板,测试板包括:可编程器件;外部晶振,连接于可编程器件,并配置用于产生外部时钟;以及插槽,连接于可编程器件;待测板卡,配置用于插入至插槽,待测板卡包括:待测CPLD,待测CPLD具有内部时钟;可编程器件配置用于基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡;待测板卡中的待测CPLD配置用于基于偏差值将第二频率修正为指定频率,以作为待测CPLD的系统时钟频率。本发明实现了使CPLD内部时钟频率准确的情况下还能不浪费硬件资源和PCB板空间,有效节省了生产成本。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种修正CPLD内部时钟频率的装置及方法。
背景技术
目前,服务器行业竞争日趋激烈,生产服务器内部CPLD(Complex ProgrammableLogic Device,复杂可编程逻辑器件)器件的厂商也越来越多,不同厂商的CPLD内部晶振的频率准确性是有一定差异的,偏差相对较小的就可以作为系统时钟来使用,同时价格也相对高一些。在其他性能近似,因内部晶振频率的准确性而选择相对价格高的CPLD,就得不偿失了。
在目前所用的CPLD中,针对其中内部晶振频率不准确的问题,主要通过引入外部晶振,构建产生准确的时钟频率电路来作为CPLD的系统时钟频率。存在的缺陷首先是对带有CPLD的板卡空间资源的浪费,其次也是对CPLD内部已经存在的内部晶振不使用的资源浪费,最后也提高了板卡的生产成本。
发明内容
有鉴于此,本发明的目的在于提出一种修正CPLD内部时钟频率的装置及方法,用以修正某些CPLD内部晶振频率与手册偏差较大的问题,从而将内部晶振产生的时钟频率来作为CPLD系统时钟,而不通过引入外部时钟来作为系统时钟频率,减少生产成本,节省资源成本。
基于上述目的,本发明提供了一种修正CPLD内部时钟频率的装置,包括:
测试板,测试板包括:
可编程器件;
外部晶振,连接于可编程器件,并配置用于产生外部时钟;以及插槽,连接于可编程器件;
待测板卡,配置用于插入至插槽,待测板卡包括:
待测CPLD,待测CPLD具有内部时钟;
可编程器件配置用于基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡;
待测板卡中的待测CPLD配置用于基于偏差值将第二频率修正为指定频率,以作为待测CPLD的系统时钟频率。
在一些实施例中,可编程器件进一步配置用于:
基于外部时钟的第一频率得到其第一时钟周期,并基于预设数量的第一时钟周期得到时长;
确定时长内内部时钟的第二时钟周期数量;
基于时长以及第二时钟周期数量得到内部时钟的第二时钟周期;
基于第二时钟周期得到内部时钟的第二频率。
在一些实施例中,待测板卡进一步配置用于:
将接收到的偏差值存储至UFM中;
响应于接收到频率修正指示,取出UFM中的偏差值以修正待测CPLD的第二频率。
在一些实施例中,可编程器件包括:
I2C接口,配置用于使可编程器件通过I2C接口将偏差值发送至待测板卡。
在一些实施例中,可编程器件还包括:
调试接口,配置用于接收待烧录的固件文件。
在一些实施例中,可编程器件还配置用于:
基于偏差值与指定频率的比值得到偏差系数。
在一些实施例中,指定频率为待测CPLD的芯片手册中内部晶振的标准频率。
在一些实施例中,可编程器件为CPLD或MCU。
在一些实施例中,待测板卡为硬盘背板或风扇板。
本发明的另一方面,还提供了一种修正CPLD内部时钟频率的方法,包括采用测试板对待测板卡中待测CPLD的内部时钟频率进行修正;
其中,测试板包括:
可编程器件;
外部晶振,连接于可编程器件,并配置用于产生外部时钟;以及插槽,连接于可编程器件;
待测板卡配置用于插入至插槽;
可编程器件配置用于基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡;
待测板卡中的待测CPLD配置用于基于偏差值将第二频率修正为指定频率,以作为待测CPLD的系统时钟频率。
在一些实施例中,可编程器件进一步配置用于:
基于外部时钟的第一频率得到其第一时钟周期,并基于预设数量的第一时钟周期得到时长;
确定时长内内部时钟的第二时钟周期数量;
基于时长以及第二时钟周期数量得到内部时钟的第二时钟周期;
基于第二时钟周期得到内部时钟的第二频率。
在一些实施例中,待测板卡进一步配置用于:
将接收到的偏差值存储至UFM中;
响应于接收到频率修正指示,取出UFM中的偏差值以修正待测CPLD的第二频率。
在一些实施例中,可编程器件包括:
I2C接口,配置用于使可编程器件通过I2C接口将偏差值发送至待测板卡。
在一些实施例中,可编程器件还包括:
调试接口,配置用于接收待烧录的固件文件。
在一些实施例中,可编程器件还配置用于:
基于偏差值与指定频率的比值得到偏差系数。
在一些实施例中,指定频率为待测CPLD的芯片手册中内部晶振的标准频率。
在一些实施例中,可编程器件为CPLD或MCU。
在一些实施例中,待测板卡为硬盘背板或风扇板。
本发明至少具有以下有益技术效果:
本发明的修正CPLD内部时钟频率的装置,通过设置测试板,并在测试板上设置可编程器件、与可编程器件连接的外部晶振、以及与可编程器件连接的插槽,并通过将待测板卡插入插槽,从而使可编程器件基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡,并使待测板卡中的待测CPLD基于偏差值将第二频率修正为指定频率,可以在修正后将待测板卡从插槽上取下,从而避免现有技术中通过使用外部晶振的时钟频率作为CPLD的系统时钟频率,导致浪费硬件资源,以及浪费PCB板空间的问题,实现了使CPLD内部时钟频率准确的情况下还能不浪费硬件资源和PCB板空间,有效节省了生产成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明实施例提供的修正CPLD内部时钟频率的装置的示意图;
图2为根据本发明实施例提供的修正CPLD内部时钟频率的装置的完整结构示意图;
图3为根据本发明实施例提供的外部时钟频率与内部时钟频率的关系示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备固有的其他步骤或单元。
基于上述目的,本发明实施例的第一个方面,提出了一种修正CPLD内部时钟频率的装置的实施例。图1示出的是本发明提供的修正CPLD内部时钟频率的装置的实施例的示意图。如图1所示,本发明实施例的修正CPLD内部时钟频率的装置包括测试板10和待测板卡20;
测试板10包括可编程器件101、与可编程器件101连接的外部晶振102、以及与可编程器件101连接的插槽103;外部晶振102配置用于产生外部时钟;
待测板卡20配置用于插入至插槽103,待测板卡20包括待测CPLD 201,待测CPLD201具有内部时钟;
可编程器件101配置用于基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡20;
待测板卡20中的待测CPLD 201配置用于基于偏差值将第二频率修正为指定频率,以作为待测CPLD 201的系统时钟频率。
本发明实施例的修正CPLD内部时钟频率的装置,通过设置测试板,并在测试板上设置可编程器件、与可编程器件连接的外部晶振、以及与可编程器件连接的插槽,并通过将待测板卡插入插槽,从而使可编程器件基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡,并使待测板卡中的待测CPLD基于偏差值将第二频率修正为指定频率,可以在修正后将待测板卡从插槽上取下,从而避免现有技术中通过使用外部晶振的时钟频率作为CPLD的系统时钟频率,导致浪费硬件资源,以及浪费PCB板空间的问题,实现了使CPLD内部时钟频率准确的情况下还能不浪费硬件资源和PCB板空间,有效节省了生产成本。
在一些实施例中,可编程器件101进一步配置用于:基于外部时钟的第一频率得到其第一时钟周期,并基于预设数量的第一时钟周期得到时长;确定时长内内部时钟的第二时钟周期数量;基于时长以及第二时钟周期数量得到内部时钟的第二时钟周期;基于第二时钟周期得到内部时钟的第二频率。
图3为根据本发明实施例提供的外部时钟频率与内部时钟频率的关系示意图。如图3所示,基于外部时钟的第一频率得到内部时钟的第二频率的计算方式如下:
外部时钟频率生成的固定时间信号的持续时长是外部时钟周期t1*计数个数N(如图所示以N是8为例);在该时长内,对未知的内部时钟频率进行计数,计数个数为cnt(如图所示以cnt是5为例),由此即可算出内部时钟频率为:cnt/(t1*N)。
本实施例中,由于外部时钟频率一直是准确的,因此利用外部时钟频率计算内部时钟频率,不仅能够使未知的内部时钟频率由未知变为已知,得到内部时钟频率的真实值,而且便于后续根据计算出的内部时钟的真实频率来进行准确修正。
在一些实施例中,待测板卡20进一步配置用于:将接收到的偏差值存储至UFM中;响应于接收到频率修正指示,取出UFM中的偏差值以修正待测CPLD 201的第二频率。
本实施例中,通过设置UFM(CPLD内部提供给用户使用的非易失性存储区域)来存储偏差值,能够使待测板卡20不插在插槽103(SLOT)上时,待测板卡20直接从UFM中取出偏差值来对CPLD的内部时钟频率(即第二频率)进行修正。
CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)属于大规模集成电路范围,是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆("在系统"编程)将代码传送到目标芯片中,实现设计的数字系统。CPLD主要是由可编程逻辑宏单元(MC,Macro Cell)围绕中心的可编程互连矩阵单元组成。其中MC结构较复杂,并具有复杂的I/O(数据输入/输出)单元互连结构,可由用户根据需要生成特定的电路结构,完成一定的功能。由于CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。
CPLD具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格大众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计和产品生产之中。几乎所有应用中小规模通用数字集成电路的场合均可应用CPLD器件。CPLD器件已成为电子产品不可缺少的组成部分。
在一些实施例中,可编程器件101包括:I2C接口,配置用于使可编程器件101通过I2C接口将偏差值发送至待测板卡20。
在一些实施例中,可编程器件101还配置用于:基于偏差值与指定频率的比值得到偏差系数。
图2为根据本发明实施例提供的修正CPLD内部时钟频率的装置的完整结构示意图。如图2所示,待测板卡20内设置有UFM,UFM通过待测板卡20的I2C(Inter-IntegratedCircuit,一种串行半双工通信总线)接口接收可编程器件101发送的偏差信息,包括偏差值和偏差系数。
在一些实施例中,可编程器件101还包括:调试接口,配置用于接收待烧录的固件文件。
在一些实施例中,指定频率为待测CPLD 201的芯片手册中内部晶振的标准频率。
本实施例中,CPLD的芯片手册中具有内部晶振的标准频率,在该标准频率下,CPLD性能更加稳定、优良。
在一些实施例中,可编程器件101为CPLD或MCU。
MCU(Microcontroller Unit,微控制单元),又称单片微型计算机(Single ChipMicrocomputer)或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换等周边接口,甚至LCD(液晶显示器)驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
在一些实施例中,待测板卡20为硬盘背板或风扇板。
如图2所示,构建了一个能测量CPLD内部晶振频率的测试板10;将外部晶振102产生准确的时钟频率与带有待测CPLD 201的待测板卡20都接到测试板10的可编程器件101上;编写可编程器件101的代码,可通过JTAG(Joint Test Action Group,边界扫描)烧录,来比较得到内部时钟频率的准确值或者是照芯片手册上晶振频率值的偏差值和/或偏差系数,后通过I2C传到测试的带有CPLD板卡的UFM里存储起来;将存储到UFM里的数据取出,并修改待测板卡20上的CPLD代码,以对内部时钟晶振频率进行修正,修正后即可使用。
本发明的修正CPLD内部时钟频率的装置的构建和使用方法的示例性实施例如下:
首先,可以基于使用CPLD比较多的待测板卡20(如硬盘背板)上,构建一个能测量CPLD内部晶振频率的测试板10,其上有引入外部晶振102,产生准确的外部时钟频率来作为测试板10上可编程器件101的系统时钟;
其次,将带有测量内部晶振频率的CPLD的硬盘背板插在测试板10的SLOT(插槽103)上,利用其上内部晶振产生的内部时钟频率接到测试板10上可编程器件101上;
再次,通过JTAG将可编程器件101所需进行的操作的相关代码烧录到测试板10上的可编程器件101;
然后,测试板10上的CPLD通过I2C总线可以将计算出的内部时钟的频率的准确值、照芯片手册上内部时钟晶振频率值的偏差值/偏差系数,传输到硬盘背板上的CPLD,然后存放在UFM中。
由此,通过从UFM中读取到的具体晶振频率、偏差值/偏差系数,进行修正后,从而来达到晶振频率准确性的使用要求,之后就可以正常使用CPLD的内部时钟频率来作为其系统时钟频率。
本发明实施例的第二个方面,还提供了一种修正CPLD内部时钟频率的方法。一种修正CPLD内部时钟频率的方法包括采用测试板对待测板卡中待测CPLD的内部时钟频率进行修正;
其中,测试板包括:
可编程器件;
外部晶振,连接于可编程器件,并配置用于产生外部时钟;以及插槽,连接于可编程器件;
待测板卡配置用于插入至插槽;
可编程器件配置用于基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡;
待测板卡中的待测CPLD配置用于基于偏差值将第二频率修正为指定频率,以作为待测CPLD的系统时钟频率。
本发明实施例的修正CPLD内部时钟频率的方法,通过使用测试板,并在测试板上设置可编程器件、与可编程器件连接的外部晶振、以及与可编程器件连接的插槽,并通过将待测板卡插入插槽,从而使可编程器件基于外部时钟的第一频率得到内部时钟的第二频率,并确定第二频率与指定频率的偏差值,并将偏差值发送至待测板卡,并使待测板卡中的待测CPLD基于偏差值将第二频率修正为指定频率,可以在修正后将待测板卡从插槽上取下,从而避免现有技术中通过使用外部晶振的时钟频率作为CPLD的系统时钟频率,导致浪费硬件资源,以及浪费PCB板空间的问题,实现了使CPLD内部时钟频率准确的情况下还能不浪费硬件资源和PCB板空间,有效节省了生产成本。
在一些实施例中,可编程器件进一步配置用于:基于外部时钟的第一频率得到其第一时钟周期,并基于预设数量的第一时钟周期得到时长;确定时长内内部时钟的第二时钟周期数量;基于时长以及第二时钟周期数量得到内部时钟的第二时钟周期;基于第二时钟周期得到内部时钟的第二频率。
图3为根据本发明实施例提供的外部时钟频率与内部时钟频率的关系示意图。如图3所示,基于外部时钟的第一频率得到内部时钟的第二频率的计算方式如下:
外部时钟频率生成的固定时间信号的持续时长是外部时钟周期t1*计数个数N(如图所示以N是8为例);在该时长内,对未知的内部时钟频率进行计数,计数个数为cnt(如图所示以cnt是5为例),由此即可算出内部时钟频率为:cnt/(t1*N)。
本实施例中,由于外部时钟频率一直是准确的,因此利用外部时钟频率计算内部时钟频率,不仅能够使未知的内部时钟频率由未知变为已知,得到内部时钟频率的真实值,而且便于后续根据计算出的内部时钟的真实频率来进行准确修正。
在一些实施例中,待测板卡进一步配置用于:将接收到的偏差值存储至UFM中;响应于接收到频率修正指示,取出UFM中的偏差值以修正待测CPLD的第二频率。
本实施例中,通过设置UFM(CPLD内部提供给用户使用的非易失性存储区域)来存储偏差值,能够使待测板卡不插在插槽(SLOT)上时,待测板卡直接从UFM中取出偏差值来对CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)的内部时钟频率(即第二频率)进行修正。
CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)属于大规模集成电路范围,是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆("在系统"编程)将代码传送到目标芯片中,实现设计的数字系统。CPLD主要是由可编程逻辑宏单元(MC,Macro Cell)围绕中心的可编程互连矩阵单元组成。其中MC结构较复杂,并具有复杂的I/O(数据输入/输出)单元互连结构,可由用户根据需要生成特定的电路结构,完成一定的功能。由于CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。
CPLD具有编程灵活、集成度高、设计开发周期短、适用范围宽、开发工具先进、设计制造成本低、对设计者的硬件经验要求低、标准产品无需测试、保密性强、价格大众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计和产品生产之中。几乎所有应用中小规模通用数字集成电路的场合均可应用CPLD器件。CPLD器件已成为电子产品不可缺少的组成部分。
在一些实施例中,可编程器件包括:I2C接口,配置用于使可编程器件通过I2C接口将偏差值发送至待测板卡。
在一些实施例中,可编程器件还配置用于:基于偏差值与指定频率的比值得到偏差系数。
图2为根据本发明实施例提供的修正CPLD内部时钟频率的装置的完整结构示意图。如图2所示,待测板卡内设置有UFM,UFM通过待测板卡的I2C(Inter-IntegratedCircuit,一种串行半双工通信总线)接口接收可编程器件发送的偏差信息,包括偏差值和偏差系数。
在一些实施例中,可编程器件还包括:调试接口,配置用于接收待烧录的固件文件。
在一些实施例中,指定频率为待测CPLD的芯片手册中内部晶振的标准频率。
本实施例中,CPLD的芯片手册中具有内部晶振的标准频率,在该标准频率下,CPLD性能更加稳定、优良。
在一些实施例中,可编程器件为CPLD或MCU。
MCU(Microcontroller Unit,微控制单元),又称单片微型计算机(Single ChipMicrocomputer)或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换等周边接口,甚至LCD(液晶显示器)驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
在一些实施例中,待测板卡为硬盘背板或风扇板。
如图2所示,构建了一个能测量CPLD内部晶振频率的测试板;将外部晶振产生准确的时钟频率与带有待测CPLD的待测板卡都接到测试板的可编程器件上;编写可编程器件的代码,可通过JTAG(Joint Test Action Group,边界扫描)烧录,来比较得到内部时钟频率的准确值或者是照芯片手册上晶振频率值的偏差值和/或偏差系数,后通过I2C传到测试的带有CPLD板卡的UFM里存储起来;将存储到UFM里的数据取出,并修改待测板卡上的CPLD代码,以对内部时钟晶振频率进行修正,修正后即可使用。
本发明的修正CPLD内部时钟频率的装置的构建和使用方法的示例性实施例如下:
首先,可以基于使用CPLD比较多的待测板卡(如硬盘背板)上,构建一个能测量CPLD内部晶振频率的测试板,其上有引入外部晶振,产生准确的外部时钟频率来作为测试板上可编程器件的系统时钟;
其次,将带有测量内部晶振频率的CPLD的硬盘背板插在测试板的SLOT(插槽)上,利用其上内部晶振产生的内部时钟频率接到测试板上可编程器件上;
再次,通过JTAG将可编程器件所需进行的操作的相关代码烧录到测试板上的可编程器件;
然后,测试板上的CPLD通过I2C总线可以将计算出的内部时钟的频率的准确值、照芯片手册上内部时钟晶振频率值的偏差值/偏差系数,传输到硬盘背板上的CPLD,然后存放在UFM中。
由此,通过从UFM中读取到的具体晶振频率、偏差值/偏差系数,进行修正后,从而来达到晶振频率准确性的使用要求,之后就可以正常使用CPLD的内部时钟频率来作为其系统时钟频率。
本领域技术人员将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种修正CPLD内部时钟频率的装置,其特征在于,包括:
测试板,所述测试板包括:
可编程器件;
外部晶振,连接于所述可编程器件,并配置用于产生外部时钟;以及
插槽,连接于所述可编程器件;
待测板卡,配置用于插入至所述插槽,所述待测板卡包括:
待测CPLD,所述待测CPLD具有内部时钟;
所述可编程器件配置用于基于所述外部时钟的第一频率得到所述内部时钟的第二频率,并确定所述第二频率与指定频率的偏差值,并将所述偏差值发送至所述待测板卡;
所述待测板卡中的所述待测CPLD配置用于基于所述偏差值将所述第二频率修正为所述指定频率,以作为所述待测CPLD的系统时钟频率。
2.根据权利要求1所述的方法,其特征在于,所述可编程器件进一步配置用于:
基于所述外部时钟的所述第一频率得到其第一时钟周期,并基于预设数量的所述第一时钟周期得到时长;
确定所述时长内所述内部时钟的第二时钟周期数量;
基于所述时长以及所述第二时钟周期数量得到所述内部时钟的第二时钟周期;
基于所述第二时钟周期得到所述内部时钟的所述第二频率。
3.根据权利要求1所述的方法,其特征在于,所述待测板卡进一步配置用于:
将接收到的所述偏差值存储至UFM中;
响应于接收到频率修正指示,取出所述UFM中的所述偏差值以修正所述待测CPLD的所述第二频率。
4.根据权利要求1所述的方法,其特征在于,所述可编程器件包括:
I2C接口,配置用于使所述可编程器件通过所述I2C接口将所述偏差值发送至所述待测板卡。
5.根据权利要求1所述的方法,其特征在于,所述可编程器件还包括:
调试接口,配置用于接收待烧录的固件文件。
6.根据权利要求1所述的方法,其特征在于,所述可编程器件还配置用于:
基于所述偏差值与所述指定频率的比值得到偏差系数。
7.根据权利要求1所述的方法,其特征在于,所述指定频率为所述待测CPLD的芯片手册中内部晶振的标准频率。
8.根据权利要求1所述的方法,其特征在于,所述可编程器件为CPLD或MCU。
9.根据权利要求1所述的方法,其特征在于,所述待测板卡为硬盘背板或风扇板。
10.一种修正CPLD内部时钟频率的方法,其特征在于,包括采用测试板对待测板卡中待测CPLD的内部时钟频率进行修正;
其中,所述测试板包括:
可编程器件;
外部晶振,连接于所述可编程器件,并配置用于产生外部时钟;以及
插槽,连接于所述可编程器件;
所述待测板卡配置用于插入至所述插槽;
所述可编程器件配置用于基于所述外部时钟的第一频率得到所述内部时钟的第二频率,并确定所述第二频率与指定频率的偏差值,并将所述偏差值发送至所述待测板卡;
所述待测板卡中的所述待测CPLD配置用于基于所述偏差值将所述第二频率修正为所述指定频率,以作为所述待测CPLD的系统时钟频率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310797472.3A CN116841347A (zh) | 2023-06-30 | 2023-06-30 | 一种修正cpld内部时钟频率的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310797472.3A CN116841347A (zh) | 2023-06-30 | 2023-06-30 | 一种修正cpld内部时钟频率的装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116841347A true CN116841347A (zh) | 2023-10-03 |
Family
ID=88162878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310797472.3A Pending CN116841347A (zh) | 2023-06-30 | 2023-06-30 | 一种修正cpld内部时钟频率的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116841347A (zh) |
-
2023
- 2023-06-30 CN CN202310797472.3A patent/CN116841347A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7852099B1 (en) | Frequency trimming for internal oscillator for test-time reduction | |
CN103823698A (zh) | Fpga和dsp目标程序的烧写和启动的方法及设备 | |
TWI620061B (zh) | 伺服器的偵錯裝置及其偵錯方法 | |
CN112067978A (zh) | 一种基于fpga的fpga筛选测试系统及方法 | |
US20170277613A1 (en) | Multiple mode testing in a vector memory restricted test environment | |
CN113376514B (zh) | Fpga芯片测试方法、装置、系统及存储介质 | |
CN112306937B (zh) | 服务器中主板器件的设定选择电路、方法、设备及介质 | |
CN109117299B (zh) | 服务器的侦错装置及其侦错方法 | |
CN107300650B (zh) | 一种间歇寿命试验系统和方法 | |
CN116841347A (zh) | 一种修正cpld内部时钟频率的装置及方法 | |
US20130166956A1 (en) | Diagnostic card for recording reboot times of servers | |
CN111696617A (zh) | 非挥发性存储器读数据速度测试电路和测试方法 | |
CN110750399A (zh) | 一种串口误码率测试方法及装置、计算机设备、可读存储介质 | |
US10720223B2 (en) | Memory device with internal measurement of functional parameters | |
CN114942871A (zh) | 一种nfc芯片的测试方法、装置、可读介质及电子设备 | |
CN110609243B (zh) | 一种cpu电源效率的测试方法、系统及相关组件 | |
Loskutov et al. | SEFI cross-section evaluation by fault injection software approach and hardware detection | |
CN113295986A (zh) | 一种芯片、芯片工艺角的测量方法及装置 | |
CN112015229A (zh) | 一种可使用调试器实现芯片内部时钟校准的电路 | |
CN112737574A (zh) | 一种芯片内部时钟源的计时校准方法及相关装置 | |
CN113160875A (zh) | 芯片测试系统和测试方法 | |
CN100426234C (zh) | 测量基本输入输出系统的自我开机测试时间的方法 | |
US20230236838A1 (en) | Computer program product that includes a firmware structure, and booting method for a control system | |
CN105718402B (zh) | 可编程时序发生器 | |
CN116151187B (zh) | 处理触发条件的方法、装置和存储介质 |
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 |