首页> 中国专利> 光收发器中的动态存储器分配

光收发器中的动态存储器分配

摘要

本发明公开了在光收发器中为存储参数数据而动态地分配存储器的方法,算法,架构,电路,和/或系统。该光收发器包括光接收器,用于接收光数据;光发送器,用于发送光数据;微处理器,用于为每个参数访问数据,其中该参数与一个或多个光接收器和发送机操作有关的;一个或多个存储器,用于在多个由微处理器动态分配的位置上存储数据;和一个接口,用于接收一个或多个来自主机的参数数据请求,并提供对应该要求的响应数据。在本公开中,主机不清楚存储器中存储数据的位置。

著录项

  • 公开/公告号CN102420663A

    专利类型发明专利

  • 公开/公告日2012-04-18

    原文格式PDF

  • 申请/专利权人 索尔思光电(成都)有限公司;

    申请/专利号CN201110337920.9

  • 发明设计人 陶德·洛浦;

    申请日2011-10-31

  • 分类号H04B10/24;

  • 代理机构四川力久律师事务所;

  • 代理人林辉轮

  • 地址 611731 四川省成都市高新区西区科新路8号成都出口加工区西区2号5号标准厂房

  • 入库时间 2023-12-18 04:55:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-05-06

    授权

    授权

  • 2012-05-30

    实质审查的生效 IPC(主分类):H04B10/24 申请日:20111031

    实质审查的生效

  • 2012-04-18

    公开

    公开

说明书

技术领域

本发明一般涉及光收发器领域。更具体地说,本发明的实施例适用于和光收 发器的操作有关的数据的存储器分配。

背景技术

光收发器通过光链路(比如,光纤链路)以光形式发送和接收数据。光收发 器包括激光驱动器电路,用于驱动二极管(比如,发光二极管[LED]),以在光 链路上由接收到的电信号产生光脉冲信号。光接收器包括接收光信号的光敏二极 管,该光信号随后转换为电信号。因此,光收发器转换(I)光信号到模拟和/ 或数字电信号和(II)电信号到光信号。

为了判断光收发器是否正常工作,需要监控多个操作参数。常用的方法以存 储器映射的方式将这些被监控的参数存储在光收发器中。在这种情况下,主处理 器或者电路板发送存储器地址到收发器,以便在收发器中访问存储于此存储器地 址上的被监控参数。但是,该方法把存储器静态分配,用于这些参数的存储单元, 从而限制了这些存储器用于其它用途。

发明内容

本发明的实施例涉及在光收发器中为参数数据动态地分配存储器的方法,算 法,架构,电路和/或系统。

在一个实施例中,光收发器包括(I)光接收器,用于接收光数据;(II) 光发送器,用于发送光数据;(III)微处理器,用于访问多个参数中的每一个 数据,这些参数与光接收器和光发送器的至少一个操作有关;(IV)一个或多个 存储器,用于在多个位置保存数据,这些位置是由微处理器动态分配的;和(V) 接口,用于(a)接收主机发送的对一个或多个参数的数据请求,(b)为请求提供 回应数据,主机并不知道这些存储数据的一个或多个存储器的位置。本发明还涉 及包括这种光收发器的单纤三向光复用器。

在另一个实施例中,控制对光收发器中参数访问的方法包括(I)扫描光接 收器中的一个或多个存储器,判定其中的可用数据存储单元位置;(II)在可用 的存储单元位置中动态地分配位置用于参数数据存储单元,其中参数数据为该光 收发器的操作参数;(III)把参数数据存储到该位置的一个或多个存储器中。

在又一个实施例中,访问光收发器中参数数据的方法包括(I)接收来自主 机对参数数据的请求,其中参数数据用于该光收发器的操作参数;(II)把请求 中的指令符转化到光收发器中一个或多个存储器的位置,在该位置上存储参数数 据,主机不知道该位置的所在;(III)向主机发送被请求的参数数据。

在又一个实施例中,参数数据访问系统包括(i)光收发器,用于发送和接 收光数据,其中该光收发器包括微处理器和存储器,微处理器用于访问参数数据, 而存储器用于在一个或多个位置上存储参数数据,该位置是由微处理器动态分配 的;(ii)主机,用于向光接收器发起参数数据请求,并接收来自光接收器对应 于请求的参数数据,其中该参数数据涉及一个或多个光收发器的操作,且主机并 不知道存储数据的一个或多个存储器的一个或多个位置。

本发明的实施例优选地提供了一种方法在光收发器中为参数数据存储用途 动态地分配存储器。

本发明的实施例允许增加存储器分配和整个收发器系统设计的灵活性(而且 参数数据的数量和类别也被收集,存储并处理)。本发明这些及其他的优点在以 下优选实施例的详细描述中会更清楚地呈现出来。

附图说明

图1是与本发明实施例相关的典型光收发器系统的原理框图。

图2是与本发明实施例相关的典型微控制器的原理框图,该典型微控制器适 用于光收发器。

图3是与本发明实施例有关的典型参数数据控制结构的原理框图。

图4A,4B,4C是与本发明实施例有关的典型动态存储器映射的原理框图,该 典型动态存储器映射用于适用参数数据。

图5与本发明实施例有关的典型方法的流程,适用于存储器位置分配和参数 数据访问控制。

具体实施例

本发明的各种实施例都会有详细的参照。实施例会结合附图进行说明。本发 明会结合随后的实施例说明,应该理解的是本发明不限于这些实施例的说明。相 反的,本发明还预期涵盖,可能包括在由附加权利要求限定的本发明的主旨和范 围内的可替换地,修正的和等同的方案。而且,在下文对本发明的详细说明中, 指定了很多特殊细节,以便对本发明的透彻理解。但是,对于一个所属技术领域 的专业人员来说,本发明没有这些特殊细节也可以实现的事实是显而易见的。在 其他例子中,公知的方法,程序,部件和电路没有详尽说明,以避免本公开的各 方面变得含糊不清。

随后的一部分详细说明需要用到过程,程序,逻辑块,功能块,处理,和其 他代码来表示计算机,处理器,控制器和/或存储器中的操作符号,数据位,或 数据流方面的术语。数据处理技术领域的专业人员通常用这些说明和表述来把他 们工作的实质有效地传达给所属技术领域的其他专业人员。此处的,过程,程序, 逻辑块,功能,方法等等通常都视为导向期望的和/或预期的结果的步骤或指令 中的继发事件。步骤通常包括物理数量的物理操作。虽然未必,但这些数量通常 以在计算机或数据处理系统中的电子,磁力,光,或存储的,转移的,组合的, 对照的量子信号及其他被操控的形式表现。对普通用途而言,事实证明,参考这 些信号,如位,流,值,要素,符号,特征,项,数字或类似的事物,和它们在 计算机程序或软件中的表现形式,如代码(可以是目标代码,源代码或二进制代 码)给这类说明和表述带来了便利。

不管怎样,我们都应该考虑到所有这些及类似的术语都与适当的物理量和/ 或信号有关,并且它们仅仅是适用于这些量和/或信号的符号而已。除非有特别 说明和/或否则就如下所述一样显而易见,用贯穿本申请的论述术语诸如“处理”, “操作”,“处理”,“计算”,“判定”,“操纵”,“转化”或者诸如此类 的涉及电脑或数据处理系统的动作或步骤,或类似装置(如,电气,光学或量子 计算,处理装置或电路)来处理或转换数据表示物理量(如,电子)都是允许的。 这类术语涉及,在电路,系统或构造(比如,寄存器,存储器,其他这样的信息 存储,传输或显示装置等等)的部件范围内,把物理量处理或转换成在相同或者 不同系统或构造的其他部件范围中类似的物理量。

此外,在本申请的背景下,术语“电线”,“接线”,“线”,“信号”, “导体”和“总线”涉及任何已知的结构,构造,排列,技术,方法和/或步骤, 用于在电路中物理上地从一个点转移信号到另一个点。并且,除非已经注明,否 则,从就只能从此处的大前提下使用,术语“已知的”,“固定的”,“赋予的”, “某种”和“预先约定的”来提及值,数量,参数,约束,条件,状态,过程, 程序,方法,实践或他们的组合,理论上是可变的,但是这种可变往往是提前设 定,并且在那之后,使用时不发生改变。

相似地,为了方便和简单起见,虽然术语“时间”,“比率”,“周期”和 “频率”通常是可交换的并且可以交替使用,但是赋予他们的含义通常是在此类 技术上公认的。并且,为了简便,术语“数据”,“数据流”,“比特”,和“信 息”可能会可替换地使用,如术语“链接到”,“联结到”和“通讯”(指间接 或者直接的连接,联结或通讯),但是他们通常也是被赋予此类技术上公认的含 义。

本发明的实施例优选地提供了一种方法,用在动态地为光收发器中存储参数 数据分配存储器。

本发明的实施例允许内存器分配和整个收发器系统设计更加灵活,且参数数 据的数量和类别也被收集,存储并处理。本发明会在下文中利用典型的实施例把 其各个方面做详细的说明。

根据本发明的不同实施例,本发明提供了一种构架或电路,用于存储器分配, 适用于光收发器系统的。总之,与本发明实施例有关的光收发器包括带有多个位 置的存储器,这些位置在由微处理器或微控制器分配后,用于存储来自与接收机 操作有关的被监控参数。和传统方法相比,本方法允许光纤收发器在链路时间或 操作时间时以动态的方式存储存储器,使得系统设计更加灵活。

参数数据访问系统的实施例

在一个实施例中,参数数据访问系统包括(i)光收发器,用于发送和接收 光数据,其中该光收发器包括微处理器和存储器,微处理器用于访问参数数据, 而存储器用于在一个或多个由该微处理器动态分配的位置存储参数数据;(ii) 主机,用于为参数数据,向光接收器发起的请求和接收来自光接收器的响应请求 的参数数据,其中该参数数据涉及一个或多个该光接收器的操作,且该主机并不 知道一个或多个存储器中存储数据的位置。

图1举例说明了与本发明实施例有关的实施例光收发器系统100。光收发器系 统100包含光收发器104(比如,光纤收发器)和主机102。主机102包含主处理器, 电路板,独立的光网络装置(比如,中继器,光开关,机顶盒等等)或者任何其 他包括合适的控制器或处理器的部件或装置。主机102通过通讯接口122与光收发 器104相接。例如,通讯接口122是一个串行接口。可替换地,通讯接口122是一 个包含多个位信号的并行接口。

光收发器104包含微控制器(MCU)120,光发送器116,和光接收器118。 例如,光发送器116包含发光二极管(LED),激光二极管,或者任何其他适当的 装置,用于通过光信号介质130(比如光纤)产生光脉冲(比如光信号)。光接 收器118是光电二极管或者其他装置,用于接收光信号132且把接收到的光信号 转换成电信号。光信号130和132是独立的光链路,或者是普通光纤链路的一部 分或其他适用的光连接(比如,光波导,多模纤维[MMF],单模纤维[SMF]等等)。 另外,单纤双向光复用器,单纤三向光复用器或其他多联收发器配置是由至少两 个光收发器104或它们的部件构成的(比如,两个或以上的带单一光电发送器的 光电接收器)。

模拟电信号124在模数转换器(ADC)106和光发送器116,以及光接收器118 和ADC106之间传输。模拟电信号124以电子信息的形式容纳光信号信息。ADC106 随后把这些电信号从模拟形式转化到数字形式,用于MCU120中的数字处理。 MCU120还包括接口控制器114,中央处理器(CPU)或者微处理器110,指令存储 器108和数据存储器112。通常,MCU120与主机102一般通过主机通讯接口122接 收和发送通讯信息。

在某些实施例中,指令存储器108是非易失存储器,而数据存储器112是易失 存储器。但是,指令存储器108可替换为易失存储器,或包含部分的非易失和易 失存储器。同样,数据存储器108或许也可替换为包含非易失存储器,或包含部 分的非易失和易失存储器。非易失存储器的例子包括电可擦写只读存储器 (EEPROM),闪速只读存储器,磁随机存储器(MRAM),激光可编程存储器(比 如,熔断器),或者其他合适类型的ROM或者非易失存储器装置。易失存储器的 例子包括静态随机访问存储器(SRAM),动态随机访问存储器(DRAM),或者在通 电时保持存储状态的其他合适类型的随机访问存储器或易失性存储元件。

此外,当数据存储器112通常被描述为存储与收发器操作有关的参数数据时, 这样的数据可替换地或可附加地存储在指令存储器108中。比如,性能,存储器 可用性和操作效率的因素用来判定参数数据是否存储在指令存储器108和/或数 据存储器112中。在一些应用中,出于性能的考虑,就将指令存储在RAM或者其他 数据存储器中。而且,比如当存储的数据不发生改变或者相对很少改变的时候, 出于效率的考虑,就将不同数据的内存信息(比如,参数数据)存储在ROM或者 其他非易失存储器中。

光收发器的实施例

在一个例子中,光收发器包含(i)光接收器,用于接收光数据;(ii)光 发送器,用于发送光数据的;(iii)微处理器,用于为参数而访问数据,其中 每个参数与至少一个光接收器和光发送器的操作有关;(iv)一个或多个存储器, 用于把数据存储到多个微处理器动态分配的位置上;和(v)接口,用于(a)接 收来自主机对一个或多个参数数据的请求和(b)提供对应该请求的响应数据, 其中该主机并不知道一个或多个存储器中的一个或多个位置,而数据就存储在该 位置上。

图2举例说明了一种微控制器120的例子,用于与本发明实施例有关的光收发 器。ADC106用光信息信号124连接光发送器和/或光接收器(未在图中显示)。 CPU110通过转换器206,利用控制信号216与ADC106互相作用。寄存器202可以通 过获取来自转换器206的输出数据,为ADC106存储和提供输出。在某些情况下, 不但信号分离器(未在图中显示)或者多个寄存器用于在一个更高速率支持转换 器206的数据输出,而且寄存器202也能做到。比如,数据可以连续或循环地从转 换器206输出到多个寄存器中。在信号分离器的例子中,来自转换器206的数据输 出通过不同的信号分离器的输出发送到CPU110。

比如,寄存器202包括与光发送器116和/或光接收器118(例子见图1)操作 相关的参数数据。如上所述,寄存器202,在图2中显示为一个单独的寄存器,也 可以是多个寄存器,或者其他较大的存储器部件,用于获取大量来自ADC106的数 据。比如,通过串行或者并行的方式获取各种参数数据。因此,尽管转换器206 的输出通常是多位的(比如,n比特宽,当n是至少大于2的整数,诸如4,6,8, 10,12,16,32等等),但是寄存器202的数据输出还是可以为并行或者串行的。 为使CPU110能够撷取这种参数数据,数据访问控制信号224可以由CPU110激活。 通过ADC输出信号/总线218输出来自寄存器202的数据,回应控制信号224。

参数数据在预先设定的频率和/或按需求提供给寄存器202和/或供CPU110访 问(通过ADC输出信号218)。比如,在ADC106和/或CPU110正常操作期间,转换 器206周期性地更新寄存器202。如果数据访问控制信号224处于激活状态, CPU110便通过ADC输出信号218在同样的频率接收来自寄存器202的周期性更新数 据。

比如,本参数更新率在大约1ms到大约100ms(比如,大约在50ms)之间变化, 或者任何其他在此范围内外的合适更新率,这个取决于ADC106和CPU110的操作频 率及寄存器202的设计(比如,它是否是寄存器或多个寄存器的一部分,它是否 包括信号分离器等等)。某些实施例也支持多个参数更新比率(比如,不同更新 率用于不同的参数),包括一个或多个参数的可变更新率,用于周期性更新数据 的。

在一些应用中,用户可以将这种参数数据更新率程序化。比如,不同支持的 更新率凭借图形用户界面(GUI)呈现在用户面面前以供选择。同样,当给出的 参数数据是可选的或者固定的时,也可以根据需求更新参数数据。在某些情况下, 可以采用选项(比如,一个用户选项)来周期性地设定或者仅按需更新参数数据。 在其他情况下,按需参数数据更新基本上可以无视其他周期性数据更新模式。

这样,就可以通过寄存器202和ADC输出信号218周期性地和/或按需求地更新 参数数据。这些数据更新模式取决于特殊程序,某种参数和用户/客户设置。

CPU110通过接口信号226从指令存储器108撷取(比如,获取和/或预取)指 令。CPU110也可以通过总线210与数据存储器112相接。比如,在总线210上把从 ADC218接收来的参数数据提供给数据存储器112,用于存储。总线210是串行总线 或者是用于串行和/或并行通信的多位总线,并且支持单向和/或双向信号发送。 CPU 110同样在总线210上发送控制信号,用于控制数据112存储器扫描,以确定 可用存储器位置,用于随后或者基本同时的从寄存器202撷取过来的参数数据存 储。数据存储器112的这种扫描也可以以周期性的方式和/或响应需求的方式执 行,例如由主机103请求撷取数据参数。比如,用与ADC输出信号218的更新速率 大致相同,或者稍高或稍低的速率扫描数据存储器112用于可用位置。而且,按 需参数数据更新也介入或包含为可用位置而扫描数据存储器112。

在一个例子中,数据存储器112包括存储器部分212和缓存部分204。相对于 数据存储器112其余部分缓存部分204可以是一个更小和更快的存储器(比如,用 更小的电容/密度并且在更高的频率运行)。存储器部分212和/或缓存部分204 同样也包括各种的寄存器,这些寄存器能够被划分为参数数据的存储单元, CPU110管理这些寄存器的位置。并且,存储器部分212和缓存部分204可以被再分 成任意数量的块或存储器其他的排列模式(比如,不同的芯片)。在这样设计示 例中,缓存部分204向接口控制器114提供数据存储器输出222。比如,缓存部分 204存储多份主机102最可能请求的参数数据。在一个实施例中,存储用户配置预 定数量的参数到存储器部分212的缓存部分204中,以便于此类被请求参数数据可 以更快地提供给主机102。可替换地,在存储器部分212中多份的参数数据也可以 基于其他因素在缓存部分204中生成,诸如最近写入或者存入存储器部分212的参 数数据,或者主机102最近请求的参数数据。用这种方式,缓存部分204可以有效 地用于减少参数数据访问时间,以服务主机102的请求。

在某些实施例中,可以访问和存储数据存储器112中参数数据。为确定存储 参数数据的可用位置,CPU110扫描数据存储器112。因此,适当的可用位置被定 位给参数数据存储单元。如上所述,这种定位和参数数据的访问和存储都可以周 期性地和/或按需地执行。一旦参数数据已经在数据存储器112中存储,本数据就 可以通过主机通信接口122访问。另外,通过把主机对参数数据的请求与链接到 数据存储器112合适存储单元位置的指标寄存器相关联,CPU110就可以管理参数 数据存储单元位置。

在某些实施例中,主机102不知道数据存储器上存储参数数据的位置。因此, MCU120可以保留参数数据存储信息(比如,在数据存储器112中某参数数据存储 的位置)而不用把此信息提供到光收发器本身以外(比如,图1中的光纤收发器 104)。尽管如此,主机102仍然可以请求来自光收发器的此参数数据。

比如,接口控制器114可以通过主机通信接口122接收参数数据请求。来自主 机102的参数数据请求包括标识符,该标识符用于寻找相应数据的参数。在本公 开中,为了兼容传统或现存的(比如,“老式”)主机,虽然主机发送的请求可 能包括地址信息,但是该地址信息辨识参数寻找的相应数据可以包括或者不包括 这样的地址信息。

寄存器208可以存储进入的指示符和外出的参数数据。可替换地,单独的寄 存器用于存储进入的指示符和外出的参数数据。控制器214(比如,微处理器, 可编程逻辑器件[PLD],复杂可编程逻辑器件[CPLD],现场可编程门列阵[FPGA] 等等)在接口控制器114内用指令信号220发送请求到CPU110。CPU110然后把来 自参数数据请求的指示符关联或者映射到数据存储器112中特定存储位置,其中 该被请求参数数据便处于该特定位置上。比如,CPU110保存目录,用于将来自该 参数数据请求的指示符映射到指针寄存器,其中所述寄存器链接到在数据存储器 112中的适当存储单元位置。

一旦CPU110通过指令信号220接收参数数据请求,CPU110就由信号210发送存 储器读取请求到存储器112。主机102也通过发送存储器地址作为指令或者请求的 一部分来访问参数数据。

但是,该存储器地址是由主机102发送的这样的参数数据访问存储器地址, CPU110可能会将其忽略或者将其解析为非存储器地址。比如,虽然主机102可以 把最受欢迎的参数数据关联到某位置,其中该位置在数据存储器112的特殊存储 器地址上,但是主机102仍可以不知道存储参数数据的真实地址。这样的操作可 以使老式主机系统适应,其中主机根据它的存储位置请求参数数据。不管怎样, 在典型的实施例中,光收发器(而不是主机)还是可以存储和/或获悉真实的参 数数据存储位置。

一旦主机通信接口122接收的请求指令,或同类指令或者它们的衍生(比如, 参数数据标识符)通过指令信号220发送到CPU110,CPU110就可以在总线210上发 出一个读取指令到数据存储器112。作为此过程的一部分,CPU110有效地把自主 机102接收到的信息转化成为一个存储最受欢迎参数数据的真实存储位置,其中 自主机102接收到的信息被看作是参数数据访问请求的一部分。如下所述,指示 符可以用于完成这种转化或映射操作。无论如何,参数数据都通过存储器输出信 号222从数据存储器112读取。接口控制寄存器208接收被请求的参数数据。该被 请求的参数数据随后通过主机通信接口122提供给主机102。

如上所述,接口控制寄存器208也可以用于存储进入标识符,其中该进入标 识符是由来自主机102的参数数据请求解析的或源于它。在这种情况下,寄存器 208要足够宽(比如,32位,64位,128位等等)来容纳这样的请求信息和外出参 数数据信息。可替换地,单独的寄存器(比如,16位,32位,64位等等)用于 存储进入的标识符信息和外出的参数数据。而且,这里所述的各种的寄存器和存 储单元位置也可以合并到一个相同存储器模块或者其他存储单元结构中。

图3举例说明了与本发明实施例有关的参数数据控制结构300示例。CPU110 中的参数数据控制器302可以激活信号224,来读取在ADC输出总线218上的ADC输 出寄存器202的参数数据内容。参数数据控制器302然后可以通过总线316,把受 访的参数数据写入到参数数据寄存器308中。比如,参数数据寄存器308包含任意 数量的寄存器(比如,310-0,310-1,310-2,…310-N,其中N是大于3的整数)。 如上所述,ADC输出寄存器202要用到多个寄存器来而非一个来实施。比如,参数 数据寄存器308可以构成此多个寄存器或者其他来,作为ADC输出寄存器202的替 代。

来自参数寄存器308的输出318在分配的存储器312中提供给了一个合适的位 置314(比如,314-X,…314-Y,…314-Z,…314-N,…)。在指针寄存器304 中,参数数据控制器302也可以设置(比如,通过信号322)一个指针306(例如, 306-0,306-1,306-2,…306-N),保持与分配的存储位置314(比如,通过信号 320)一致。在这种方式中,来自ADC输出寄存器202的参数数据存储在位置314 上,其中位置314处于分配的存储器312中。并且,随后通过来自指针寄存器304 的指针306访问位置314。参数数据控制器302保持指针寄存器304与分配的存储器 312一致。参数数据控制器302还包含一个表,用于存储与特殊参数一致的指针306 的位置。这样,就可以把来自参数数据请求的标识符关联或者映射到特殊存储器 位置314,其中该特殊存储器314位置是在分配的存储器312中的该被请求参数数 据的所在。数据存储器输出可以随后,在总线222上借由信号220提供给来自分配 存储器312的接口控制器114的回应请求。

可接受的寄存器大小(比如,8位宽,16位宽,32位宽等等)取决于CPU架构, 操作系统及其他设计考虑等因素,同时亦由每个具体的实施例决定。同样,任何 适用于寄存器的格式(比如,位映像,带或不带符号整数,IEEE浮点等等)都会 在某些实施例中得到支持。而且,任何适用于数据存储器112的容量(比如,至 少2kB,几个kB,16kB,或更高)都能在具体的实施例中得到支持。同样,任何 合适的存储器技术或者合适类型的存储器(比如,闪存,串行EEPROM,SRAM,DRAM 等等)也能在具体的实施例中得到支持。除此之外,相对于数据存储器112剩余 部分,缓存204(见例,图2)表示一种更小和更快的存储器。在缓存204中寻找或 复制各种寄存器和/或分配的存储器部分,可以支持更快访问可能存储在此的参 数数据。

图4A,4B和4C举例说明了和本发明实施例有关的动态存储器设计或示意 图示例,适用于存储参数数据。

例子400(FIG.4A)是各种的受监的控参数数据,该受监控的参数数据与光 收发器操作有关的,这些数据存储在数据存储器112的各种存储器位置402中。在 这个例子当中,温度数据存储在存储器位置402-0,电压(比如,电源电压)数 据存储在存储器位置402-1,光或激光偏置电流数据存储在存储器位置402-3,发 送的光或激光功率数据存储在存储器位置402-4并且接收的光功率数据存储在存 储器位置402-6。存储器位置402-2和402-5为其他数据/信息而保留,或者在未来 分配给新的参数数据(比如,新数据,用于新参数或先前的受监控参数)。

在某些实施例中,用在动态模式,定位或者再定位参数数据在合适存储器位 置问。正如例子400’所示(图4B),可以将温度数据存储在存储器位置402-0, 将电压数据存储在存储器位置402-2,将光偏置电流数据存储在存储器位置 402-1,将发送的光功率数据存储在存储器位置402-6,且将接收的光功率数据存 储在存储器位置402-4。在400’表示在几个接收和存储新参数数据周期之后的例 子400的地方的情况下,旧的或者不必要的参数数据可以被覆盖或者分配到数据 存储器112中不同的存储器位置。因此,正如这里所讨论的,可以将参数数据存 储在任何合适的动态分配存储器位置。

如图4中例子400”,也可以将某参数数据存储在数据存储器中112的至少一 个存储器位置402上。比如,可以将温度数据存储在存储器位置402-0,402-2和 402-3,而电压数据可以存储在存储器位置402-1,光偏置电流数据可以存储在存 储器位置402-5,发送的光功率数据可以存储在存储器位置402-6,而接收的光功 率数据存储在存储器位置402-4。存储在存储器位置402-0,402-2和402-3的 温度数据表示相同温度参数的不同实例或者取样。相同参数的这种多重实例或者 取样用于计算平均值,总数,或者其他数学计算结果(比如,最大/最小测定值), 其中此类数学计算结果在存储在多存储器位置中的参数数据上发挥作用。可替换 地,存储在存储器位置(比如,402-0)上的温度数据可以表示光收发器的部件 (比如,激光发射器)温度,而存储在存储器位置(比如,402-2,402-3)上的 温度数据可以表示其他光收发器的部件(比如,接收器激光二极管,发送器驱动 电路等等)的温度。

当如图4A,4B和4C中所示的参数数据表示某些参数数据例时,任何与光收 发器操作有关的数据都可以包括在具体的实施例中。比如,光收发器104中复合 结构或单元的温度,诸如发送激光温度,模块温度,和/或光收发器118部件温度, 都可以被存储和/或管理。又例如,光收发器104中复式结构,信号或单元的电压 都可以被存储和/或管理。此外,包括发送器功率,射频(RF)功率和/或视频功 率的功率数据都可以被存储和/或管理,诸如发送的光数字功率,接收的光数字 功率,接收的光视频功率,射频输出功率,和/或视频输出功率。而且,也可以 存储和/或管理其他激光相关数据,诸如激光输出波长和/或光输出数据频率。

与光收发器操作有关的函数或参数也可以随着时间而改变。比如,来自ADC 106(比如,在ADC输出寄存器202上)的数据输出可以调节(比如,通过公式, 校准,再编程等等),以便访问不同数据。参数寄存器308,ADC输出寄存器202 或其他关联的寄存器也可以被再编程,改变存储在此的信息。由于再分配涵盖了 不同的被监控参数,所以分配的存储器312也可以完全或者部分地解除分配。

示例的控制参数数据访问方法

在一个例子中,控制对光收发器参数数据访问的方法可以包含(i)扫描所 述光接收器的一个或多个存储器,以确定其中的可用数据存储单元位置;(ii) 在可用存储单元位置中动态地为参数数据存储分配位置,其中参数数据为所述光 收发器的操作参数;(iii)把参数数据存储在所述位置的一个或多个存储器中。 在另一个例子中,光收发器参数数据访问的方法包含(i)接收来自主机对参数 数据的请求,其中参数数据为所述光收发器的操作参数;(ii)把所述请求的标 识符转化到所述光收发器的一个或多个存储器的位置,所述参数数据存储在该位 置上,所述主机不知道该位置;和(iii)向所述主机发送所述被请求的参数数 据。

图5举例说明了与本发明实施例有关的用于控制对的参数数据的访问方法的 示例。流程从502开始,而且可以在504扫描存储器,以寻找用于参数数据存储单 元(可选择性地,用于指针存储)的可用位置。比如,CPU110可以扫描数据存储 器112来寻找这样的可用位置。可用位置可以在506分配给与收发器操作有关的参 数数据。比如,在数据存储器112内,分配的存储器部分312可以通过被完全扫描 的存储器部分来确定。分配存储器位置还包括设置指针寄存器模块(比如,图3 中的寄存器模块304),以便把某指针寄存器(比如,寄存器306-0到306-N)与 相应的参数数据(比如,存储在分配的存储器312中的)相关联。比如,指针寄 存器306-0可以用于存储特殊部件的温度的位置指针,指针寄存器306-1可以用于 存储指针,该指针用于电压位置;指针寄存器306-2可以用于存储指针,该指针 用于发送的光功率(比如,激光输出功率)的位置,而指针寄存器306-N可以用 于存储指针,该指针用于接收的光功率的位置。

回到图5的流程图,在508,在存储器中,把参数数据存储在被分配的位置上。 比如,参数数据可以从图3中的参数寄存器308(或ADC输出寄存器202)转移到一 个分配的存储器312中分配的位置,而分配的位置的地址可以被存储在指针寄存 器306-0,306-1,306-2,…和/或306-N,此类寄存器是与取得数据中的参数 相对应的。因此,指针寄存器304中的指针306-0,306-1,306-2,…306-N随后 用于在分配的存储器312中寻找存储的参数数据的相应位置。

假设,在510,主机没有接收到参数数据(比如,读取指令),那么流程返 回到504扫描可用的存储器位置。因此,连续的参数监控,光收发器中的访问, 和在分配的存储单元的参数数据存储都会出现,直到主机接在510收到对这种数 据的请求。一旦主机在510接收到对参数数据的请求,来自主机请求的指令标识 符或其他信息可以在512通过指针被转化为或者关联到合适位置,该合适位置位 于被请求参数数据的被分配的存储器中。

比如,图3中的参数数据控制器302可以向指针寄存器304发送信号322,以匹 配合适指针306-0,306-1,306-2,…或306-N,该合适指针与分配的存储器312 中的被请求的数据相对应。

回到图5,在514,被请求的参数数据之后会从分配的存储器312撷取,然后 借由通信接口发送到主机,假如有来自主机的又一个读取指令,那么流程500就 返回到510。比如,参考图3,指针寄存器306-2用于判定,在分配的存储单元314-Y 是否找到被请求参数数据。这种数据随后通过存储器输出222提供给接口控制器 114,而后通过主机通信接口122从接口控制器114发送到主机102。一旦在510(图 5)接收到又一个来自主机的参数数据请求,那么在512可以同样地将这个请求转 化,用于在分配的存储器访问新的参数数据。但是,在510,如果没有未决的主 机对参数数据的请求,流程返回504扫描可用存储器(比如,在数据存储器112 中),以寻找可用位置。在流程500的进一步的实施例中,上部循环504,506, 508和510都可以同时地和/或持续地和上部循环510,512和514一起运行。

如上所述,在具体实施例中,相对于从主机接收读取指令时的速率和向主机 发送被请求的参数数据时的速率,扫描存储器时的速率和存储数据在分配的存储 单元上时的速率是可变的。比如,包括504,506和508的流程可以发生在同一速 率,而包括510,512和514的流程则发生在不同的速率。因此,参数数据可以以 某个速率存储在分配的存储器中,其中此速率可以独立于主机请求此种数据时的 速率。可替换地,这种情况对速率来说也是一样,比如当基于参数数据请求按需 获得参数数据时。

示例的软件

本发明还包括算法、计算机程序和/或软件,其可执行或可实施的位于嵌入 式装置(例如网络开关、路由器等)或通用计算机或工作站,其中嵌入式装置、 计算机或工作站具有用于执行一个或多个本方法的步骤的常见数字信号处理器 和/或一个或多个硬件的操作。通常,在本公开中,主机就是此类嵌入式装置。 因此,在另一方面,本发明涉及执行上述方法的算法和/或软件。比如,本发明 还涉及包含一套非暂时性计算机程序或者计算机可读介质。该非暂时性计算机程 序被合适的处理装置(比如,信号处理装置,诸如微控制器,微处理器或DSP装 置)执行。该计算机可读介质配置用于执行上述方法和/或算法。

比如,计算机程序可以存在于任何类型的可读介质上,而计算机可读介质包 含任何(非瞬时)介质。该非瞬时介质,诸如软盘,CD-ROM,磁带或硬盘装置, 可以由处理装置读取,且该处理装置配置用于读取介质和执行存储在非瞬时介质 之上或之中的代码。在某些实施例中,存在于主机中的部分软件和/或算法属于 通用计算机程序的范畴(比如,驱动器),并且在此类介质上被解码和/或被存 储。此类代码可以包含目标代码,源代码和/或二进制代码。

在本公开中,由于信号生成与代码或硬件执行代码有关,所以代码通常是在 用于通过合适的介质(诸如铜线,常见的双绞线,常见的网线,常见的光数据传 输电缆,或甚至是用于无线信号传输的空气或者真空)上传输的。执行本方法的 代码通常是数字的,而且一般通过常见的数字数据处理器(比如,微处理器,微 控制器,或逻辑电路诸如可编程门列阵,可编程逻辑电路/装置或特殊应用[集成] 电路)配置用于处理工作。

在各种实施例中,计算机可读介质包括一个或多个指令用于(i)扫描光收 发器的一个或多个存储器,以判定其中的可用数据存储单元位置;(ii)从可用 数据存储单元位置中,为参数数据存储单元分配位置,其中参数数据为光收发器 的操作参数;和(iii)把参数数据存储在该位置的一个或多个存储器中。计算 机可读介质还包括至少一个指令,用于存储指针或预定位置中存储的参数数据的 位置地址,该预定位置与获得数据的参数对应。

在实施例中,计算机可读介质包含至少一个指令,用于(i)接收,辨识或 处理来自主机的参数数据请求,其中该参数数据为光收发器的操作参数;(ii) 把所述请求的标识符转化到光收发器的一个或多个存储器位置,所述参数数据存 储在该位置上;和(iii)向主机发送被请求的参数数据。通常,主机不知道存 储参数数据的位置。

虽然以上例子包括寄存器的特殊实施和其他存储器设计,但是该技术领域的 专业人员会仍承认其他技术和设计也可以依照实施例使用。比如,不光指针,数 据访问标记技术也可以在某些实施例中使用。而且,该技术领域的专业人员会承 认其他形式的信号发送和/或控制方法(比如,基于电流的信号发送,基于标记 的信号发送,差分信号发送等等)也可以依照各种实施例使用。

图解和说明已经展现了前述的本发明的特殊实施例。他们的目的不是用确切 的形式限制本发明,而是,很明显,依照上述技术使本发明也可以得到修改和变 更。实施例的选定和描述使本发明的原理及它的实际应得以最清楚地阐述,从而 使所属专业技术领域的其他人员能最大程度地利用本发明及带各种修改的实施 例,以适用于预期的特殊用途。即,由添加至此的权利要求和它们的等效叙述所 规定的本发明的范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号