首页> 中国专利> 一种数据转换单元及其实现方法以及数据接收模块

一种数据转换单元及其实现方法以及数据接收模块

摘要

本发明公开了一种数据转换单元,该数据转换单元包括:转换器,用于封装算法处理,从外部接收输入信号和输出信号,在输入信号有效、且输出信号无效时从所述数据接收模块接收数据进行算法处理并输出;数据接收模块,用于从外部接收输入信号,记录自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存并输出数据至所述转换器。应用本发明能保证芯片仿真平台的数据处理准确性。

著录项

  • 公开/公告号CN1794244A

    专利类型发明专利

  • 公开/公告日2006-06-28

    原文格式PDF

  • 申请/专利权人 北京中星微电子有限公司;

    申请/专利号CN200510023083.7

  • 发明设计人 游明琦;

    申请日2005-12-26

  • 分类号G06F17/50;G06F11/00;

  • 代理机构北京德琦知识产权代理有限公司;

  • 代理人王琦

  • 地址 100083 北京市海淀区学院路35号世宁大厦15层

  • 入库时间 2023-12-17 17:20:52

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-02-27

    未缴年费专利权终止 IPC(主分类):G06F17/50 授权公告日:20100915 终止日期:20111226 申请日:20051226

    专利权的终止

  • 2010-09-15

    授权

    授权

  • 2006-08-23

    实质审查的生效

    实质审查的生效

  • 2006-06-28

    公开

    公开

说明书

技术领域

本发明涉及芯片仿真技术,特别涉及应用于芯片仿真平台中的一种数据转换单元及其实现方法、以及一种数据接收模块。

背景技术

目前,芯片已在电子技术领域发挥着重要作用,大部分电子设备的运行都依赖于其内部芯片的实现。芯片的实现包括两个阶段:芯片设计和芯片制造。

所谓芯片设计包括:算法实现和外围逻辑电路设计。其中,算法是芯片的灵魂,其用于描述芯片所实现的功能,所谓算法实现包括:算法研究、在芯片中实现研究得到的算法等等;所谓外围逻辑电路指为实现芯片功能而设计的辅助电路,比如:电源的连通、内部模块的握手等。之后,要在芯片设计的基础之上进行芯片制造,而芯片制造的成本非常高,每次投片的成本通常在几十万美元左右。芯片制造的主要步骤就是要依据芯片设计结果进行流片。但是,芯片一经流片,其内部的逻辑就不能再被改变,如果芯片设计出现问题,就只能重新流片,这将给公司带来巨大损失。

由于芯片流片的成本非常高,这就对芯片设计提出了很高要求,如何确保芯片设计的正确性,是所有芯片公司都要面对的重要课题。在芯片设计的过程中,通常需要构建芯片仿真软件平台来对芯片功能的正确性进行验证。目前,芯片仿真软件平台主要使用的硬件描述语言有VHDL、Verilog等,业界已存在一些基于VHDL、Verilog等主流硬件描述语言的芯片仿真平台,能处理芯片算法仿真和芯片外围逻辑电路仿真。

其中,芯片仿真的关键在于算法仿真,原因在于:芯片的核心为其所承载的算法,算法将直接决定芯片实现的功能。所以,在芯片正确性的验证中,最重要的就是芯片功能的验证也就是芯片算法的验证。虽然目前基于硬件描述语言的芯片仿真平台能够验证芯片的算法,但还存在以下缺点:

1、仿真速度慢

因为硬件描述语言用于描述硬件的功能,它支持硬件所需的并行处理结构,这种结构与计算机的特性是不同的,如要在计算机上对硬件描述语句进行仿真,只能通过解释程序来实现。也就是说,目前所有基于硬件描述语言的仿真平台都是对这些硬件描述语句进行解释执行,其执行速度是非常慢的。举例来说,如在V568芯片中对V568的芯片语句进行仿真,则一幅VGA的图像即分辨率为640×480的图像数据格式至少需要一天以上的时间来处理。

2、占用较多资源

由于这些芯片仿真平台非常复杂,因此对计算机的要求也很高,往往需要运行在工作站上,甚至需要多台工作站同时运行,这将耗费大量处理资源,使芯片仿真成本较高。

3、实现复杂

由于这些芯片仿真平台功能非常强大,所以使用非常复杂,比如需要建立测试环境等等,而且每种芯片的内部功能都可能不同,那么就要为每种芯片建立一个仿真环境,这样实现起来难度相当大。

鉴于上述基于硬件描述语言的芯片仿真平台的缺点,最近,业界还提出了一种基于C/C++等语言的芯片仿真平台,该种芯片仿真平台与计算机的特性相符合,可运行在一台计算机之上,因此,运行速度自然比基于硬件描述语言的仿真平台快很多,易于调试(debug),而且不会占用太多处理资源,具有较强的可实施性。

此外,该种基于C/C++等语言的芯片仿真平台能为用户提供诸如动态创建算法仿真模型、运行算法仿真模型等功能,使用户能按仿真需要灵活建立所要仿真的芯片算法组合,从而易于用户调整芯片算法的组合方式,以仿真得到芯片算法的最佳组合。这里,每一算法仿真模型对应一种或多种芯片算法的组合,用户在一次芯片算法仿真过程中可能选择一个或多个算法仿真模型来进行仿真处理。

其中,该芯片仿真平台所能提供的各个算法处理将分别被封装至各个数据转换单元中。当要按算法仿真模型处理数据时,将按当前算法仿真模型中各个算法处理的组合方式连接该算法仿真模型中各个算法处理对应各个数据转换单元,并向当前算法仿真模型中的初始算法处理对应的数据转换单元输入数据;每一数据转换单元对自身接收到的数据进行对应的算法处理并输出,由当前算法仿真模型中最后的算法处理对应的数据转换单元输出结果数据。

由于,该种芯片仿真平台运行于一台计算机之上,因此,计算机的中央处理单元(CPU)在每一时刻只能为一个数据转换单元分配资源。所以,构成当前算法仿真模型的各个数据转换单元中,每一时刻只能有一个数据转换单元在运行。这样,当某一数据转换单元输出数据至另一数据转换单元、但该另一数据转换单元又没有得到CPU资源而不能运行时,就会出现数据处理出错、数据丢失等问题。并且,对于数据转换单元来说,其接收数据的速度与其自身转换并输出数据的速度通常不同,这样就容易产生数据丢失和漏处理等问题。

发明内容

有鉴于此,本发明的主要目的在于提供一种数据转换单元及其实现方法,能保证在芯片算法仿真平台的数据处理准确性。

本发明的另一目的在于提供一种数据接收模块,能协助数据转换单元对数据进行正确处理,避免数据丢失、误处理等现象。

为达到上述目的,本发明的技术方案是这样实现的:

本发明公开了一种数据转换单元,该数据转换单元包括:

转换器,用于封装算法处理,从外部接收输入信号和输出信号,在输入信号有效、且输出信号无效时从所述数据接收模块接收数据进行算法处理并输出;

数据接收模块,用于从外部接收输入信号,记录自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存并输出数据至所述转换器。

其中,所述数据接收模块包括:

存储器,用于从外部接收所述输入信号,从所述地址计数器接收自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存并输出数据至所述转换器;

地址计数器,用于监控所述存储器的读写操作,记录该存储器缓存的有效数据长度并输出至该存储器。

其中,所述输入信号为该数据转换单元输入端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空;所述输出信号为该数据转换单元输出端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。

本发明还公开了一种数据转换单元的实现方法,该方法包括:所述数据转换单元中封装有算法处理,对接收到的数据进行所封装的算法处理并输出;

所述数据转换单元进一步接收输入信号和输出信号;

该数据转换单元在对数据进行算法处理之前进一步缓存接收到的数据,并记录自身缓存的有效数据长度;

所述数据转换单元接收数据的方法为:当自身缓存的有效数据长度为零、且输入信号有效时接收数据;

所述数据转换单元对接收到的数据进行算法处理的方法为:当输入信号有效、且输出信号无效时,对自身缓存的数据进行算法处理。

其中,所述输入信号为该数据转换单元输入端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空;所述输出信号为该数据转换单元输出端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。

其中,所述数据转换单元由容器实现。

本发明还公开了一种数据接收模块,该数据接收模块包括:

存储器,用于从外部接收输入信号,从所述地址计数器接收自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存数据并输出至自身连接的数据转换单元;

地址计数器,用于监控所述存储器的读写操作,记录该存储器缓存的有效数据长度并输出至所述存储器。

其中,所述输入信号为数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。

其中,所述数据接收模块独立设置于所述数据转换单元之外;或者,集成于所述数据转换单元之中。

由上述方案可以看出,本发明的关键在于:数据转换单元能根据外部输入信号和输出信号自动判断自身是否可以接收数据进行缓存,并对缓存的数据进行算法处理。

因此,本发明所提供的数据转换单元及其实现方法以及数据接收模块,能够保证芯片仿真平台的数据转换单元的数据处理正确性,避免数据丢失、误处理等问题的出现,从而解决了现有基于C/C++等语言的芯片仿真平台存在的关键问题。

附图说明

图1为本发明数据转换单元的组成结构示意图;

图2为本发明方法一较佳实施例处理流程示意图。

具体实施方式

下面结合附图及具体实施例对本发明再作进一步详细的说明。

本发明提供了一种数据转换单元,该数据转换单元主要应用于芯片仿真平台之中。由背景技术可知,现有的数据转换单元主要用于封装算法处理并对接收到的数据进行该算法处理。为保证算法处理的准确性,避免数据丢失和误处理,本发明的数据转换单元主要包括两部分:数据接收模块和转换器。

其中,转换器用于封装算法处理,从外部接收自身所在数据转换单元的输入信号和输出信号,在输入信号有效、且输出信号无效时从所述数据接收模块接收数据进行算法处理并输出;数据接收模块,用于从外部接收自身所在数据转换单元的输入信号,记录自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存并输出数据至所述转换器。

图1为本发明数据转换单元一较佳实施例组成结构示意图。如图1所示,该数据转换单元包括:转换器和数据接收模块,该数据接收模块进一步包括:存储器和地址计数器。这里,本发明的数据接收模块通常也被称为数据转换单元的输入端口(PORT)。

其中,转换器用于封装算法处理,从数据转换单元外部的输入数据实体和输出数据实体分别接收输入信号和输出信号,当输入信号有效而输出信号无效时从存储器接收数据,对该数据进行算法处理之后输出数据至该输出数据实体;存储器用于从所述输入数据实体接收输入信号,从地址计数器接收自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部接收数据,缓存并输出数据至所述转换器;地址计数器用于监控自身连接的存储器的读写操作,记录该存储器缓存的有效数据长度并输出至该存储器。

其中,数据转换单元连接的输入数据实体和输出数据实体可能有多种,比较典型的就是在芯片仿真平台中数据转换单元之间连接的数据缓存单元。因此,所述输入信号可以为该数据转换单元输入端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空;所述输出信号可以为该数据转换单元输出端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。这里,关于数据缓存单元的具体实现非本发明解决的问题、且已在本申请人另一篇专利中有详细描述,因此,本文对此不作进一步详述。

在上述本发明数据转换单元的基础之上,本发明还提供了一种数据转换单元的实现方法,图2为本发明方法一较佳实施例处理流程示意图。如图2所示,具体处理包括:

步骤201:预先在数据转换单元中封装算法处理。

步骤202:当该数据转换单元启动之后,将从外部的输入数据实体和输出数据实体分别读取输入信号和输出信号。

步骤203:当输入信号有效、且自身保存的有效数据长度为零时,该数据转换单元开始从外部的输入数据实体接收数据并缓存;当输入信号有效、且输出信号无效时,该数据转换单元对自身缓存的数据进行所封装的算法处理,再输出算法处理后的数据给输出数据实体。

这里,所述输入数据实体和输出数据实体可以为芯片仿真平台中各个数据转换单元之问连接的数据缓存单元,因此,所述输入信号可以为:该数据转换单元输入端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空;所述输出信号可以为:该数据转换单元输出端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。

依据以上图2所述方法实现的数据转换单元可采用容器来实现,因此,通常也把本发明数据转换单元称为系统容器。

此外,本发明还提供了一种数据接收模块,该数据接收模块与图1所示数据接收模块的组成结构相同,包括:存储器和地址计数器。

其中,存储器用于从外部的输入数据实体接收输入信号,从所述地址计数器接收自身缓存的有效数据长度,当自身缓存的有效数据长度为零、且输入信号有效时从外部的输入数据实体接收数据,缓存数据并输出至自身连接的数据转换单元;地址计数器用于监控自身连接的存储器的读写操作,记录该存储器缓存的有效数据长度并输出至该存储器。

同样,所述输入数据实体可以为芯片仿真平台中数据转换单元之间连接的数据缓存单元,则所述输入信号可以为所述数据转换单元输入端连接的数据缓存单元输出的存储状态,所述输入信号有效为所述存储状态非空,所述输入信号无效为所述存储状态为空。

本发明所述数据接收模块可以独立设置于所述数据转换单元之外;或者,集成于所述数据转换单元之中。

综上所述,应用本发明数据转换单元及其实现方法以及数据接收模块能够保证芯片仿真平台的数据转换单元的数据处理正确性,避免数据丢失、误处理等问题的出现。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号