一种硬件逻辑资源复用模块及复用实现的方法

文档序号:9754046阅读:1175来源:国知局
一种硬件逻辑资源复用模块及复用实现的方法
【技术领域】
[0001]本发明涉及一种逻辑资源复用技术,特别涉及一种硬件逻辑资源复用模块及复用 实现的方法。
【背景技术】
[0002] 同步数字体系(SDH)广泛的应用于光纤通信中,包括骨干网、城域网还有接入网, 随着业务量不断的增长,对海量数据进行交叉和挑选的难度也越来越大,尤其是对大容量 接入数据进行交叉时,需要耗费大量的硬件逻辑资源,如何利用有限的硬件资源实现更大 容量的数据交叉,这对于硬件电路的设计是一个挑战。

【发明内容】

[0003] 鉴于现有技术存在的问题,本发明针对SDH交叉的需求及其应用特点,在单片FPGA 上实现了 80GX20G的低阶交叉容量的逻辑资源复用模块,具体技术方案是,一种硬件逻辑 资源复用模块,其特征在于:输入信号包含时钟、地址输入、使能输入、数据输入信号,整个 模块共用同一个时钟,输入时钟连接到所有的触发器、存储器的时钟端,地址输入信号经两 级触发器后连接到存储器的写地址端,同时地址输入信号也直接连接到存储器的读地址 端,使能输入经两级触发器后连接到存储器的写使能端,其中使能输入信号经一级触发器 后连接到组合逻辑的输入端,同时使能输入信号也直接连接到存储器的读使能端,数据输 入经一级触发器后连接到组合逻辑的输入,存储器的读数据端输出给组合逻辑的输入,而 组合逻辑的输出经一级触发器后作为模块的输出同时也反馈回来与数据输入合并后连接 到存储器的写数据端。
[0004] 硬件逻辑资源复用实现的方法,其特征在于:实现的方法分以下步骤, 一、 首先任务要满足下列条件 1、 任务可以拆分为多个重复的子任务,且每个子任务完全是同一类问题,可以用相同 的资源去处理, 2、 所有子任务共用同一时钟且在时间上能够完全避开,绝不会出现两个或更多子任务 同时出现的情况, 3、 子任务依次顺序到达,并循环出现,有指示信号指明当前任务的编号; 二、 为了处理每个子任务,需要知道上次处理该任务时的状态,以及当前该任务的输 入,然后根据相应处理逻辑来产生该任务的输出,同时还需要将这个结果缓存起来,以备下 次循环时该任务再次出现时能够回读状态信息; 三、 将这类周期重复依次出现的任务处理分为三类操作, Read_last:读取缓存的上次该任务的状态结果, Current:更新当前该任务的输入, Write:产生该任务新的状态作为输出并写入缓存; 复用的资源在每个时钟周期内都在工作,即在时钟的第η个周期内同时执行如下3个操 作, 任务(n-1)的Write操作, 任务η的Current操作, 任务(n+1)的Read_last操作。
[0005] 本发明的有益效果是,实现了对组合逻辑资源的节省,可以利用有限的逻辑资源 实现更大容量的数据处理,耗费的LUT资源可以降低了两个数量级。
【附图说明】
[0006] 图1是本发明的电路原理图。
【具体实施方式】
[0007] 如图1所示,用SDH处理低阶指针来举例说明。SDH的帧复用结构决定其8个VC4(每 个VC4又包含63个VC12)的共504个VC12在时间上是顺序依次到达的,不妨按照到达先后顺 序称其为时隙〇到时隙503,每个VC12时隙有各自的指针开销需要处理,处理指针开销时需 要同时用到其上次处理的状态及当前该时隙的输入数据,假设当前时钟周期(time=0)正在 处理时隙0,也就是组合逻辑在处理时隙0的指针开销(需要用到当前时隙0的输入指针开销 数据及其上次处理的状态信息),同时需要进行时隙1的读取存储器操作(设置读地址读取 时隙1的缓存信息),于是在下一个时钟周期(time=l)时,时隙0处理结果出来了并写入缓存 以备下次调用(时隙〇的写入存储器操作),同时时隙1的上次缓存结果也读取回来了,刚好 赶上当前时隙1的输入信息,可以进行时隙1的指针开销处理操作,同时去读取接下来的时 隙2的缓存信息,直到进行到第503号时隙后循环回时隙0并依次类推。
[0008] 模块的输入包含时钟、输入地址、输入使能和输入数据(要求输入是对齐的),其中 输入地址用于指示当前时隙编号,输入使能用于指示数据有效性(时隙循环周期之间可以 有空闲时段),整个模块共用一个时钟,存储器是标准的RAM存储器,有时钟(读、写时钟是 相同的)、写地址、写使能、写数据、读地址、读使能、读数据管脚,其连接如图所示。触发器是 标准的不带复位不带预置的最简单的触发器,有输入数据、输出数据、时钟管脚,其连接如 图所示。组合逻辑是普通的逻辑电路,通过与或非等门电路组合而成,对具体的门电路组合 结构没有特殊要求,只要满足时序收敛(从输入到输出的时延小于一个时钟周期)的任意组 合逻辑都可以,它的输入信号连接到门电路的输入管脚,输出信号来自于门电路的输出管 脚。
[0009] 触发器用于将信号延迟一个时钟周期,存储器用于缓存某个子任务的状态信息, 组合逻辑是实现子任务处理的核心部分,其中的组合逻辑部分就是被复用起来的硬件资 源,使得相同的多个子任务可以共享使用同一份硬件资源(而不是有多少个子任务就使用 多少份硬件资源)。而触发器和存储器则是为了实现复用而额外付出的代价。需要注意的 是,图中组合逻辑及其后面的触发器共同组成了时钟周期延迟为1的模型,但实际上这并不 是必须的,若延迟大于1则只需相应的增加写地址和写使能的触发器级数以匹配延迟即可 (即保证写使能、写地址、写数据的对齐)。
[0010] 原理 SDH协议中基于帧结构将带宽分成了许多时隙,即各级虚容器,包括高阶的VC4和低阶 的VC12等,当需要对时隙进行交叉时,首先需要根据时隙各自的高阶、低阶指针一级级的将 数据收下来,而解析这些指针需要消耗一定数量的硬件资源来实现。考虑到时隙的数量很 多(特别是低阶时隙),如果每个时隙各自消耗一份逻辑硬件资源
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1