CN100442783C - 基于现场可编程逻辑阵列的读写缓存单元的方法及装置 - Google Patents

基于现场可编程逻辑阵列的读写缓存单元的方法及装置 Download PDF

Info

Publication number
CN100442783C
CN100442783C CNB200610073191XA CN200610073191A CN100442783C CN 100442783 C CN100442783 C CN 100442783C CN B200610073191X A CNB200610073191X A CN B200610073191XA CN 200610073191 A CN200610073191 A CN 200610073191A CN 100442783 C CN100442783 C CN 100442783C
Authority
CN
China
Prior art keywords
message
descriptor
read
cache blocks
fpga
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.)
Active
Application number
CNB200610073191XA
Other languages
English (en)
Other versions
CN1870593A (zh
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.)
New H3C Information Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CNB200610073191XA priority Critical patent/CN100442783C/zh
Publication of CN1870593A publication Critical patent/CN1870593A/zh
Application granted granted Critical
Publication of CN100442783C publication Critical patent/CN100442783C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了基于FPGA的读写缓存单元的方法及装置,其关键是,设置外部的缓存单元,将所述缓存单元划分为若干小缓存块,并将报文的描述信息和报文数据全部写入到所述缓存单元中,使得一个报文对应若干缓存块。当FPGA读取信息时,先读取报文描述信息所在缓存块,再根据得到的报文描述信息读取报文数据所在缓存块。应用本发明,由于无需使用FPGA的内部缓存单元存储报文描述信息和报文数据,因而摆脱了FPGA内部缓存资源的限制,且节省了FPGA的内部缓存,使得有限的FPGA内部缓存可以用来做其他处理。又因为将缓存单元分为较小的缓存块,因而充分利用了DDRRAM的缓存空间,提高了外部缓存单元的利用率。

Description

基于现场可编程逻辑阵列的读写缓存单元的方法及装置
技术领域
本发明涉及现场可编程逻辑阵列(FPGA,Field Programmable Gate Array)技术领域,特别是指基于FPGA的读写缓存单元的方法及装置。
背景技术
FPGA在处理报文时,通常对某一段时间内超过系统处理能力的报文暂存在缓存中,这样能够提高系统对突发流量的处理能力。
FPGA对分组报文按包为单位进行处理,因此在写入和读出缓存数据时需要将各个报文的数据区分开来。图1是现有的FPGA处理流程示意图。FPGA将接收到的来自上游芯片的大量数据报文先放入缓存中,之后,再从缓存中读取一个数据报文,处理完毕发送给下游芯片后,再读取下一个报文。图1中的缓存可为FPGA内部的缓存,也可以是外部的缓存单元。
一般来说,缓存接口总线位宽总是8bit或者9bit的整数倍,如果是8bit的整数倍则该缓存没有实现错误校正码(ECC,Error Correction Code)功能,如果是9bit的整数倍则该缓存实现了ECC功能。
图2所示为现有实现方式一的FPGA处理流程示意图。本实现方案中,使用FPGA内部的缓存进行读写操作。由于FPGA的内部缓存是带有ECC功能的,因此此处假设总线位宽为144bit,即9×16。又因为存储报文数据只用到其中的128bit,因此多余的16bit就可以用来区分一个报文的开始和结束即传送报文描述信息,从而使系统实现按报文进行处理。基于上述设定,FPGA的内部缓存的数据结构如表1所示。
  bit143   bit142   bit128~bit141   bit0~bit127
  报文开始标识   报文结束表示   保留位   报文数据
  报文开始标识   报文结束表示   保留位   报文数据
  …   …   …   …
表1
FPGA写模块将待处理报文写入缓存单元的处理过程如下:
写模块接收到写信号后,在写入一个报文最初的128bit数据时将“报文开始标识”置为有效;在写入一个报文最后的128bit数据后,将“报文结束标识”置为有效;重复上述步骤,继续写入下一个报文。
FPGA读模块从缓存中读取数据报文的过程如下:
读模块接收到读信号后开始读取缓存单元中的数据,读到“报文开始标识”有效时认为开始读取一个报文;读到“报文结束标识”时认为当前报文已经全部被读出;对读出的报文进行处理,处理完之后继续读取下一个报文。
现有实现方式一存在以下缺陷:FPGA器件内部的缓存单元一般都很小,只能够存储几十个报文,因此这种设计不但过多地消耗了FPGA的内部缓存资源,而且本身实现的存储能力也非常有限,不适合于高速通信系统中的应用。
图3所示为现有实现方式二的FPGA处理流程示意图。本实现方案中,应用FPGA内部的缓存和外部的缓存单元共同实现。现在市场上的缓存单元通常为双沿数据速率采样的随机访问存储器DDRRAM(DDR,Double Data Rate;RAM,Random Access Memory),且一般的DDRRAM均不支持ECC功能,只能实现128bit(即假设为8×16)的总线位宽,这样不能够直接在此总线上实现报文描述信息的传输。本方案的实现思想是将报文数据放入DDRRAM,同时将每个报文的描述信息放入FPGA的内部缓存,FPGA根据这些描述信息对每个报文进行定界。具体实现为:
将DDRRAM内部划分为若干块,每块的空间大小固定,且一般要大于最大帧长16KBytes。每块空间用于存储一个完整的数据报文,DDRRAM的存储结构如图4所示。
FPGA的内部缓存的数据结构入表2所示。
 长度域  起始地址域  结束地址域
 报文1长度信息  报文1起始地址  报文1结束地址
 报文2长度信息  报文2起始地址  报文2结束地址
 …  …  …
表2
FPGA写模块将待处理报文写入缓存单元的处理过程如下:
写模块接收到写信号后,将当前报文数据直接写入DDRRAM;提取当前报文的描述信息,如长度和地址信息,写入FPGA的内部缓存;继续按上述过程进行下一个报文的写入。
FPGA读模块从缓存中读取数据报文的过程如下:
读模块接收到读信号后首先读取FPGA内部缓存中的长度和地址信息;按照长度和地址信息读取DDRRAM块中的报文数据;读完当前报文之后进行处理,处理完之后继续读取下一个报文。
现有实现方式二存在以下缺陷:由于每个分组报文都被分成描述信息和数据两部分,且分别存储在FPGA内的缓存中和外部的缓存单元中,因此,受FPGA本身缓存大小的限制,FPGA的内部缓存只能够存储N个报文的描述信息,这样外部DDRRAM就只能被划分为N块,以保证每块对应一个报文的数据。但是实际上每个报文数据的存储是不需要如此大的块空间的,这样使得DDRRAM的很多空间被白白的浪费掉。同时使用这种方法对FPGA内部缓存资源的占用也比较多。
发明内容
有鉴于此,本发明的一个目的在于提供基于FPGA的读写缓存单元的方法,本发明的另一目的在于提供基于FPGA的读写缓存单元的装置,以摆脱FPGA内部缓存资源的限制,并充分利用外部缓存单元的存储空间。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于FPGA的向缓存中写入数据的方法,在FPGA外部设置缓存单元,并将所述缓存单元划分为若干缓存块;该方法还包括以下步骤:
a、FPGA中的写模块接收到写信号后,提取待写入报文的描述信息,将该描述信息写入缓存块地址写指针当前所指的缓存块内,所述写指针地址加1;
b、向当前指针所指缓存块写入报文数据,每写完一缓存块,所述写指针地址加1;
c、根据描述信息判断待写入报文是否写入完毕,若是,则进入空闲状态,等到下一次接到写信号后重复执行步骤a,否则,返回步骤b。
较佳地,所述写入描述信息的缓存块与所述写入报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
较佳地,所述待写入报文的描述信息至少包括该报文长度信息。
较佳地,当所述写入描述信息的缓存块与所述写入报文数据的缓存块位于不同的缓存单元内时,所述待写入报文的描述信息还可以进一步包括地址信息。
较佳地,所述待写入报文的描述信息进一步包括序列号。
较佳地,所述步骤c是根据当前所写入报文长度信息是否等于描述信息中的报文长度信息来判断待写入报文是否写入完毕。
较佳地,所述缓存单元包括但不限于DDRRAM。
一种基于FPGA的从缓存中读出数据的方法,在FPGA外部设置缓存单元,并将所述缓存单元划分为若干缓存块;该方法还包括以下步骤:
A、FPGA中的读模块接收到读信号后,从缓存块地址读指针当前所指的缓存块中读取报文的描述信息,所述读读指针地址加1;
B、从当前缓存块内读取报文数据,每读完一缓存块所述读指针地址加1;
C、根据描述信息判断是否读取完毕,若是,则进入空闲状态,等到下一次接到读信号后重复执行步骤A,否则,返回步骤B。
较佳地,所述读出描述信息的缓存块与所述读出报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
较佳地,所述报文的描述信息至少包括报文长度信息。
较佳地,当所述读出描述信息的缓存块与所述读出报文数据的缓存块位于不同的缓存单元内时,所述报文的描述信息进一步包括地址信息。
较佳地,所述待写入报文的描述信息进一步包括序列号。
较佳地,所述从缓存块中读取描述信息后,进一步包括:判断该描述信息中的序列号与前一描述信息中的序列号是否连续,若是,再执行后续步骤,否则,上报错误信息,结束本流程。
较佳地,所述步骤C是根据当前所读出报文长度信息是否等于描述信息中的报文长度信息来判断待报文数据是否读出完毕。
较佳地,所述缓存单元包括但不限于DDRRAM。
一种基于现场可编程逻辑阵列的读写缓存单元的装置,包括FPGA以及设置在FPGA外部的被划分为若干缓存块的缓存单元;
所述FPGA,用于提取待写入报文的描述信息和报文数据,并控制写指针;或者,用于提取待读入报文的描述信息和报文数据,并控制读指针;
其中,在写入数据报文时,当所述的当前的缓存块写满以后,所述FPGA控制所述写指针地址加1,指向下一块待写的缓存块,直到写完一个数据报文为止;在读取数据报文时,当所述的当前的缓存块读取完毕以后,所述FPGA控制所述读指针地址加1,指向下一块待读取的缓存块,直到读取出一个完整的报文为止;
所述缓存单元的缓存块用于存放描述信息和报文数据。
较佳地,所述用于存储描述信息的缓存块与用于存储报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
较佳地,所述报文的描述信息至少包括报文长度信息。
本发明的关键是,设置外部的缓存单元,将所述缓存单元划分为若干小缓存块,并将报文的描述信息和报文数据全部写入到所述缓存单元中,使得一个报文对应若干缓存块。当FPGA读取信息时,先读取报文描述信息所在缓存块,再根据得到的报文描述信息读取报文数据所在缓存块。应用本发明,由于无需使用FPGA的内部缓存单元存储报文描述信息和报文数据,因而摆脱了FPGA内部缓存资源的限制,且节省了FPGA的内部缓存,使得有限的FPGA内部缓存可以用来做其他处理。又因为将缓存单元分为较小的缓存块,因而充分利用了DDRRAM的缓存空间,提高了外部缓存单元的利用率。
再有,由于本发明采用了序列号机制检测系统异常,通过上报中断进行错误恢复,因而有较好的异常恢复能力,能够保证整个系统的可靠性。
附图说明
图1是现有的FPGA处理流程示意图;
图2是现有实现方式一的FPGA处理流程示意图;
图3是现有实现方式二的FPGA处理流程示意图;
图4是基于现有实现方式二的DDRRAM的存储结构示意图;
图5是应用本发明一实施例的FPGA处理流程示意图;
图6是基于图5所示实施例的DDRRAM的存储结构示意图;
图7是基于图5所示实施例的向缓存单元中写入报文的流程示意图;
图8是基于图5所示实施例的从缓存单元中读出报文的流程示意图;
图9是基于图5所示实施例的另一DDRRAM的存储结构示意图;
图10是应用本发明另一实施例的FPGA处理流程示意图。
具体实施方式
下面结合附图,对本发明再做进一步地详细说明。
本发明的思路是完全使用外部的缓存单元来存储报文的描述信息和报文数据,而不再占用FPGA的内部缓存来存储上述信息。
图5所示为应用本发明一实施例的FPGA处理流程示意图。本例中,只使用一个外部的缓存单元,如DDRRAM。
将所述DDRRAM划分为若干个相同大小的缓存块,每个缓存块的大小设置需要兼顾考虑缓存空间利用率和读写带宽:如果每个缓存块设置太大,则缓存的空间利用率就比较低,但是读写带宽会比较大;如果每个缓存块设置太小,则缓存的空间利用率会很高,但是读写带宽会比较低。参见图6,每个报文在DDRRAM中都占用一缓存块空间用于存储报文描述信息,再占用若干缓存块空间用于存储报文数据。由于每个报文长度大小不一样,因此每个报文实际所占用缓存块的个数也不一样。
FPGA写模块将待处理报文写入缓存单元的处理过程如图7所示:写模块维护一个缓存块地址写指针,系统初始化后该写指针指向第一缓存块所在的地址。
步骤701,FPGA中的写模块处于空闲状态,判断是否接收到写信号,若是,则执行步骤702,否则,重复执行步骤701。
步骤702,提取待写入报文的描述信息,将该描述信息写入指针当前所指的缓存块中;缓存块地址写指针加1。上述描述信息中包含报文长度信息。
步骤703,将报文数据写入缓存块地址指针当前所指的缓存块中,每写完一缓存块,缓存块地址写指针加1。
步骤704,判断已写入报文长度信息是否已等于从描述信息中得到的报文长度信息即实际的报文长度,也就是说判断报文是否写入完毕,若是,则进入空闲状态后,执行步骤701,否则,重复执行步骤703。
经过上述处理,可将一个报文的描述信息和报文数据全部写入到一个外部的缓存单元中。由于报文的描述信息和数据混合存储在一个缓存单元中,因此FPGA的读模块必须能够知道哪块是描述信息、哪块是实际的报文数据;这是通过FPGA读模块内部维护的缓存块地址读指针维护的,具体为:系统初始化后所述读指针指向第一缓存块地址,并默认当前缓存块存储的是报文描述信息;每读出一个缓存块后所述读指针都会加1,这样当读完一个报文的描述信息和数据时所述读指针就指向了下一个报文的描述信息块所在地址,从而实现对报文进行定界。
FPGA读模块将待处理报文读出缓存单元的处理过程如图8所示:读模块维护一个缓存块地址读指针,系统初始化后该读指针指向第一缓存块所在的地址。
步骤801,FPGA中的读模块处于空闲状态,判断是否接收到读信号,若是,则执行步骤802,否则,重复执行步骤801。
步骤802,从当前缓存块中读取数据,并认为该数据是描述信息,即从当前缓存块中读取报文信息,之后,缓存块地址读指针加1。该描述信息中至少包含数据报文的长度信息。
步骤803,从当前缓存块地址读指针所指的缓存块内读取数据,并认为该数据是报文的数据,即读取报文数据,每读完一缓存块,缓存块地址读指针加1。
步骤804,根据当前所读出报文长度信息是否等于描述信息中的报文长度信息判断报文数据是否读取完毕,若是,则进入空闲状态后,执行步骤801,否则,返回步骤803。
经过上述处理,实现了从外部的缓存单元读出报文。
另外,由于FPGA的读模块是需要根据描述信息块中的报文长度信息来判断是否要继续读报文数据的,因此,报文长度信息一旦出错,则FPGA读模块中维护的读指针就会出错,这样就不能够知道下一个报文的开始地址在哪里,从而造成系统发生不可恢复的错误。而在写入或者读出报文描述信息时,如果系统受到强干扰(如雷击),则很难保证报文描述信息中报文长度信息的正确性。
为了避免由于报文长度信息的错误而导致问题,可做如下处理:
在报文描述信息中进一步增加一序列号,此时报文描述信息包括报文长度信息和序列号两部分,参见图9。这样,FPGA的写模块在写入描述信息时,需写入报文长度信息和该报文的序列号,且两个相邻报文之间的序列号是连续的,如,后一报文可以为前一报文的序列号加一或减一等。
FPGA的读模块读取到报文描述信息后,首先判断读出的当前报文序列号和前一报文的序列号之间是否连续,若不连续,则说明读指针的位置已发生错;此时FPGA向CPU上报中断,申请对FPGA进行复位,从而使系统能够从错误中恢复出来;若连续,再继续后面的读报文数据的操作。
当然,在一块DDRRAM不够用的情况下,还可以再串另一块DDRRAM,,也就是说,从理论上讲,上述外挂的DDRRAM可以是无限大的。
图10是应用本发明另一实施例的FPGA处理流程示意图。其与图5所示实施例的区别是:将两块DDRRAM并为一块缓存单元进行使用。这样,如果两块DDRRAM可以提供64bits的总线宽度,而实际存储报文数据只使用其中的32bit,那么剩下的32bit可用来存储报文的描述信息,此时该描述信息中可以仅包含报文长度信息,还可以进一步包含地址信息,所述地址信息为开始地址和结束地址,而且,该描述信息中还可以进一步包含序列号。
本发明同时还提供了一种基于现场可编程逻辑阵列的读写缓存单元的装置,该装置包括FPGA以及设置在FPGA外部的被划分为若干缓存块的缓存单元;与现有技术不同的是,该FPGA装置并不利用自身的内部缓存存储报文的描述信息和报文数据,因此,该FPGA具有的内部缓存可以很小,但是依然可以存储较多的报文,同时也不会浪费外部缓存单元的空间,利用本发明,一个具有500K左右的内部缓存的FPGA装置和一个256M的外部DDRRAM配合使用,可以最多存储多达10万个报文。
在读/写入数据时,该FPGA,用于提取待读/写入报文的描述信息,将该描述信息读/写入缓存块地址读/写指针当前所指的缓存块内,控制所述读/写指针地址加1;该FPGA,还用于向当前指针所指缓存块读/写入报文数据,每读/写完一缓存块,控制所述读/写指针地址加1;该FPGA还会根据描述信息判断待读/写入报文是否写入完毕,若读/写入完毕,进入空闲状态,等到接到下一个读/写入信号再执行写操作,若未读/写入完毕,则向下一缓存块读/写入报文数据,直到读/写完一个数据报文为止;
该外部缓存单元被划分成多个缓存块,每一个缓存块的大小设置需要兼顾考虑缓存空间的利用率和读写带宽,如果块设置太大,则缓存空间的利用率会比较低,但是读写的带宽会比较大,如果块设置太小,则缓存空间的利用率会比较高,但是读写的带宽会比较低,所以,可以根据实际情况需要灵活均衡设置。同时,每个报文在外部缓存单元中都会占有一块缓存块用来存储从该FPGA接收的报文描述信息,另外需要占用若干缓存块存储报文数据,由于每个报文长度可能大小不一致,所以,每个报文所拥有的缓存块个数也可能不一致。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (18)

1、一种基于FPGA的向缓存中写入数据的方法,其特征在于,在FPGA外部设置缓存单元,并将所述缓存单元划分为若干缓存块;该方法还包括以下步骤:
a、FPGA中的写模块接收到写信号后,提取待写入报文的描述信息,将该描述信息写入缓存块地址写指针当前所指的缓存块内,所述写指针地址加1;
b、向上述写指针当前所指缓存块写入报文数据,每写完一缓存块,所述写指针地址加1;
c、根据描述信息判断待写入报文是否写入完毕,若是,则进入空闲状态,等到下一次接到写信号后重复执行步骤a,否则,返回步骤b。
2、根据权利要求1所述的方法,其特征在于,所述写入描述信息的缓存块与所述写入报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
3、根据权利要求2所述的方法,其特征在于,所述待写入报文的描述信息至少包括该报文长度信息。
4、根据权利要求3所述的方法,其特征在于,当所述写入描述信息的缓存块与所述写入报文数据的缓存块位于不同的缓存单元内时,所述待写入报文的描述信息还进一步包括地址信息。
5、根据权利要求3或4所述的方法,其特征在于,所述待写入报文的描述信息进一步包括序列号。
6、根据权利要求3所述的方法,其特征在于,所述步骤c是根据当前所写入报文长度信息是否等于描述信息中的报文长度信息来判断待写入报文是否写入完毕。
7、根据权利要求1或2所述的方法,其特征在于,所述缓存单元是DDRRAM。
8、一种基于FPGA的从缓存中读出数据的方法,其特征在于,在FPGA外部设置缓存单元,并将所述缓存单元划分为若干缓存块;该方法还包括以下步骤:
A、FPGA中的读模块接收到读信号后,从缓存块地址读指针当前所指的缓存块中读取报文的描述信息,所述读指针地址加1;
B、从所述读指针当前所指缓存块内读取报文数据,每读完一缓存块所述读指针地址加1;
C、根据描述信息判断是否读取完毕,若是,则进入空闲状态,等到下一次接到读信号后重复执行步骤A,否则,返回步骤B。
9、根据权利要求8所述的方法,其特征在于,所述读出描述信息的缓存块与所述读出报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
10、根据权利要求9所述的方法,其特征在于,所述报文的描述信息至少包括报文长度信息。
11、根据权利要求10所述的方法,其特征在于,当所述读出描述信息的缓存块与所述读出报文数据的缓存块位于不同的缓存单元内时,所述报文的描述信息进一步包括地址信息。
12、根据权利要求10或11所述的方法,其特征在于,所述待写入报文的描述信息进一步包括序列号。
13、根据权利要求12所述的方法,其特征在于,所述从缓存块中读取描述信息后,进一步包括:判断该描述信息中的序列号与前一描述信息中的序列号是否连续,若是,再执行后续步骤,否则,上报错误信息,结束本流程。
14、根据权利要求10所述的方法,其特征在于,所述步骤C是根据当前所读出报文长度信息是否等于描述信息中的报文长度信息来判断待读取报文数据是否读出完毕。
15、根据权利要求8、或9所述的方法,其特征在于,所述缓存单元是DDRRAM。
16、一种基于现场可编程逻辑阵列的读写缓存单元的装置,其特征在于,该装置包括FPGA以及设置在FPGA外部的被划分为若干缓存块的缓存单元;
所述FPGA,用于向其外部缓存单元写入报文的描述信息和报文数据,并控制写指针;以及,用于从其外部缓存单元读取报文的描述信息和报文数据,并控制读指针,其中,写入或读取完一个缓存块,FPGA根据描述信息判断一个报文数据是否写入或读取完毕;
其中,在写入报文时,当写指针当前所指的缓存块写满以后,所述FPGA控制所述写指针地址加1,指向下一块待写的缓存块,直到写完一个报文为止;在读取报文时,当读指针当前所指的缓存块读取完毕以后,所述FPGA控制所述读指针地址加1,指向下一块待读取的缓存块,直到读取出一个完整的报文为止;
所述缓存单元的缓存块用于存放描述信息和报文数据。
17、根据权利要求16所述的装置,其特征在于,所述用于存储描述信息的缓存块与用于存储报文数据的缓存块位于同一缓存单元内,或不同的缓存单元内。
18、根据权利要求17所述的装置,其特征在于,所述报文的描述信息至少包括报文长度信息。
CNB200610073191XA 2006-04-12 2006-04-12 基于现场可编程逻辑阵列的读写缓存单元的方法及装置 Active CN100442783C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200610073191XA CN100442783C (zh) 2006-04-12 2006-04-12 基于现场可编程逻辑阵列的读写缓存单元的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200610073191XA CN100442783C (zh) 2006-04-12 2006-04-12 基于现场可编程逻辑阵列的读写缓存单元的方法及装置

Publications (2)

Publication Number Publication Date
CN1870593A CN1870593A (zh) 2006-11-29
CN100442783C true CN100442783C (zh) 2008-12-10

Family

ID=37444144

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200610073191XA Active CN100442783C (zh) 2006-04-12 2006-04-12 基于现场可编程逻辑阵列的读写缓存单元的方法及装置

Country Status (1)

Country Link
CN (1) CN100442783C (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101093521B (zh) * 2007-07-24 2011-09-21 中兴通讯股份有限公司 一种fpga仿真装置及其方法
CN101150525B (zh) * 2007-11-20 2010-07-21 杭州华三通信技术有限公司 缓存地址释放方法、系统及逻辑模块
CN102789424B (zh) * 2012-07-16 2014-12-10 哈尔滨工业大学 基于fpga的外扩ddr2的读写方法及基于fpga的外扩ddr2颗粒存储器
CN102780620B (zh) * 2012-07-24 2016-06-15 中兴通讯股份有限公司 一种网络处理器和报文处理方法
CN104991745B (zh) * 2015-07-21 2018-06-01 浪潮(北京)电子信息产业有限公司 一种存储系统数据写入方法和系统
CN106681949B (zh) * 2016-12-29 2019-12-10 北京四方继保自动化股份有限公司 基于一致性加速接口的直接内存操作实现方法
CN112685358B (zh) * 2020-12-24 2023-07-28 电信科学技术第五研究所有限公司 一种基于fpga的ddr3分组读写方法
CN113709061A (zh) * 2021-07-23 2021-11-26 合肥忆芯电子科技有限公司 一种报文转发的方法和电路

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001086812A2 (en) * 2000-05-05 2001-11-15 Xilinx, Inc. Fpga lookup table with high speed read decoder
CN1439966A (zh) * 2003-03-28 2003-09-03 北京港湾网络有限公司 多通道先进先出数据缓冲存储装置
KR20040088105A (ko) * 2003-04-08 2004-10-16 엘지전자 주식회사 플랙서블 프로그램 어레이 칩에서의 버퍼 컨트롤 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001086812A2 (en) * 2000-05-05 2001-11-15 Xilinx, Inc. Fpga lookup table with high speed read decoder
CN1439966A (zh) * 2003-03-28 2003-09-03 北京港湾网络有限公司 多通道先进先出数据缓冲存储装置
KR20040088105A (ko) * 2003-04-08 2004-10-16 엘지전자 주식회사 플랙서블 프로그램 어레이 칩에서의 버퍼 컨트롤 방법

Also Published As

Publication number Publication date
CN1870593A (zh) 2006-11-29

Similar Documents

Publication Publication Date Title
CN100442783C (zh) 基于现场可编程逻辑阵列的读写缓存单元的方法及装置
CN101853301A (zh) 正则表达式匹配的方法和系统
CN113535633A (zh) 一种片上缓存装置和读写方法
CN102831088A (zh) 基于混合存储器的数据迁移方法和装置
CN103279309A (zh) 基于fpga的ddr控制装置及方法
CN102799660A (zh) 一种java卡对象管理方法
CN115687228B (zh) 一种基于PCIe总线的星载固态存储系统及方法
CN110750372A (zh) 基于共享内存的日志系统及日志管理方法
US20240020246A1 (en) Method for Generating Information Based on FIFO Memory and Apparatus, Device and Medium
CN101227689B (zh) 信息上报方法及装置
CN101369251B (zh) 快闪式内存及操作一快闪式内存的方法
CN105095104A (zh) 数据缓存处理方法及装置
CN101493759B (zh) 一种任意容量异步先入先出存储器的地址控制方法
CN112463655B (zh) 一种高速数据采集存储系统的数据存储及读取方法
CN101848150B (zh) 维护多播计数器的计数值的方法及装置
CN101661429A (zh) 一种统计信息的存储方法及设备
CN101071404A (zh) 一种小容量fifo存储器的数据搬移触发装置和方法
CN104035898A (zh) 一种基于vliw类型处理器的访存系统
CN100487657C (zh) 嵌入式系统中自动监测内存泄漏与内存越界的方法
CN104731526B (zh) 一种不满条带写的方法及装置
CN110720126B (zh) 传输数据掩码的方法、内存控制器、内存芯片和计算机系统
CN109710187A (zh) NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质
CN102033823A (zh) 一种保存数据的方法及装置
CN111694777B (zh) 基于PCIe接口的DMA传输方法
CN107861895A (zh) 基于分布式仲裁的可编程输入输出pio写合并装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20230615

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right