CN104252560B - 基于现场可编程门阵列的集中缓存式装置及设计方法 - Google Patents

基于现场可编程门阵列的集中缓存式装置及设计方法 Download PDF

Info

Publication number
CN104252560B
CN104252560B CN201410451627.9A CN201410451627A CN104252560B CN 104252560 B CN104252560 B CN 104252560B CN 201410451627 A CN201410451627 A CN 201410451627A CN 104252560 B CN104252560 B CN 104252560B
Authority
CN
China
Prior art keywords
functional module
signal
register
time slot
unit
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
CN201410451627.9A
Other languages
English (en)
Other versions
CN104252560A (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.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Fiberhome Telecommunication 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 Fiberhome Telecommunication Technologies Co Ltd filed Critical Fiberhome Telecommunication Technologies Co Ltd
Priority to CN201410451627.9A priority Critical patent/CN104252560B/zh
Publication of CN104252560A publication Critical patent/CN104252560A/zh
Application granted granted Critical
Publication of CN104252560B publication Critical patent/CN104252560B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Logic Circuits (AREA)

Abstract

一种基于现场可编程门阵列的集中缓存式装置及设计方法,涉及现场可编程门阵列设计领域,适用于至少2个相同的功能模块,该装置包括:时分复用控制单元,用于将时间周期划为至少2个等时长的时隙,每一个时隙按顺序对应一个功能模块,每个功能模块在对应的时隙内进行输入信号处理;信号串行化单元,用于将每个功能模块的并行输入信号转化为串行输入信号;集中存储寄存器,用于保存每个功能模块的寄存器,并在每个功能模块对应的时隙内读写该功能模块的寄存器;组合逻辑单元,用于单个功能模块进行输入信号处理的组合逻辑;信号并行化单元,用于将每个功能模块的输入信号处理后的串行输出信号还原为并行输出信号。

Description

基于现场可编程门阵列的集中缓存式装置及设计方法
技术领域
本发明涉及现场可编程门阵列设计领域,具体来讲是一种基于现场可编程门阵列的集中缓存式装置及设计方法。
背景技术
FPGA(Field Programmable Gate Array,现场可编程门阵列)是在PAL(Programmable Array Logic,可编程阵列逻辑)、GAL(Generic Array Logic,通用阵列逻辑)、PLD(Programmable Logic Device,可编程逻辑器件)等可编程器件的基础上进一步发展的产物,是ASIC(Application Specific Integrated Circuit,专用集成电路)中集成度最高的一种。FPGA的可编程特性使得该器件具有独特的灵活性,可以帮助系统厂商在最短的时间内推出产品并实现产业化;随着工艺的进步,传统ASIC产品所需的NRE(Non-Recurring Engineering,一次性工程)成本越来越高,受企业研发资金的约束,传统ASIC在很多市场领域已被FPGA取代。FPGA的应用领域已从原来的通信逐步扩展到消费电子、汽车电子、工业控制、测试测量等广泛的领域。因此,如何有效利用FPGA内部逻辑资源也变得越来越重要。
FPGA内部包括CLB(Configurable Logic Block,可配置逻辑模块)、IOB(InputOutput Block,输出输入模块)和Interconnect(内部连线)三大个部分。IOB是芯片与外界电路接口部分,完成不同电器特性下对输入/输出信号的驱动与匹配要求;CLB主要由组合逻辑、寄存器、选择器和控制单元组成;Interconnect用于连通FPGA内部所有单元。用户通过对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户所需的逻辑功能。
当FPGA设计中包含N个相同功能模块时,通常实现方法是完成一个功能模块,然后做N次复制,如图1所示,若一个功能模块占用X个组合逻辑单元,Y个寄存器,Z条内部连线,那么N次复制后一般就会占用X×N个组合逻辑单元,Y×N个寄存器,Z×N条内部连线,严重消耗了FPGA的硬件资源,提高了设计成本,同时过多的内部连线也可能会导致整个设计所能达到的最大频率(Fmax)不符合要求。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于现场可编程门阵列的集中缓存式装置及设计方法,能够减少多个相同功能模块占用的组合逻辑资源,节省设计成本,且功能模块的数量越大,效果越明显。
为达到以上目的,本发明采取的技术方案是:一种基于现场可编程门阵列的集中缓存式装置,适用于至少2个相同的功能模块,包括时分复用控制单元、信号串行化单元、集中存储寄存器、组合逻辑单元、信号并行化单元;所述时分复用控制单元用于将时间周期划为至少2个等时长的时隙,每一个时隙按顺序对应一个功能模块,每个功能模块在对应的时隙内进行输入信号处理;所述信号串行化单元用于将每个功能模块的并行输入信号转化为串行输入信号;所述集中存储寄存器用于保存每个功能模块的寄存器,并在每个功能模块对应的时隙内读写该功能模块的寄存器;所述组合逻辑单元用于单个功能模块进行输入信号处理的组合逻辑;所述信号并行化单元用于将每个功能模块的输入信号处理后的串行输出信号还原为并行输出信号。
在上述技术方案的基础上,所述组合逻辑单元为单路HDLC解封装组合逻辑。
在上述技术方案的基础上,所述集中存储寄存器为block RAM或者分布式RAM。
在上述技术方案的基础上,所述时分复用控制单元划分的时隙按顺序不断循环。
本发明还提供一种基于现场可编程门阵列的集中缓存式设计方法,包括以下步骤:步骤S1.时分复用控制单元根据功能模块的数目将时间周期划为相应数目的时隙;信号串行化单元将每个功能模块的并行输入信号转化为串行输入信号;步骤S2.各个功能模块的寄存器按顺序存储在集中存储寄存器的地址中;步骤S3.在同一个时隙内,对应的功能模块的输入信号输入时,从集中存储寄存器中读取对应的寄存器值,并调用组合逻辑单元,计算该功能模块的输出结果,然后将数据处理后的新寄存器值重新存入到集中存储寄存器的对应地址中;步骤S4.信号并行化单元将每个功能模块的输出结果按对应关系重新还原为并行输出信号。
在上述技术方案的基础上,步骤S1中,每个输入信号对应设有一个顺序标记信号,所述顺序标记信号用于指示输入信号对应的时隙。
在上述技术方案的基础上,步骤S4中,信号并行化单元将每个功能模块的输出结果按顺序标记信号的对应关系重新还原为并行输出信号。
在上述技术方案的基础上,步骤S2中,各个功能模块寄存器在每个地址中的存放位置是相同的。
在上述技术方案的基础上,每个功能模块的输入信号设有一个数据有效信号,所述数据有效信号用于指示当前时隙内输入信号的数据是否有效。
本发明的有益效果在于:
1.本发明采用的集中缓存式设计方法,能够减少多个相同功能模块占用的组合逻辑资源,节省设计成本,且功能模块的数量越大,效果越明显。
2.本发明利用信号串行化单元将多个相同功能模块端口串行化,减少了功能模块之间的信号连线,进而节约了FPGA的布线资源。
3.本发明提供的集中缓存式设计方法,通过共享组合逻辑单元,将N个功能模块的N×X个组合逻辑单元减少到X个组合逻辑单元,比传统设计方法的资源占用率少,这为软件在FPGA内部布局布线提供了便利,因此会有效提高设计的最大系统时钟频率(Fmax),提高设计的稳定性。
附图说明
图1为背景技术中N个相同功能模块通常设计方法的示意图;
图2本发明中基于现场可编程门阵列的集中缓存式装置的结构框图;
图3本发明中基于现场可编程门阵列的集中缓存式设计方法的示意图;
图4本发明实施例8路HDLC解封装结构示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图2所示,一种基于现场可编程门阵列的集中缓存式装置,适用于至少2个相同的功能模块,包括时分复用控制单元、信号串行化单元、集中存储寄存器、组合逻辑单元、信号并行化单元;所述时分复用控制单元用于将时间周期划为至少2个等时长的时隙,每一个时隙按顺序对应一个功能模块,每个功能模块在对应的时隙内进行输入信号处理;所述时分复用控制单元划分的时隙按顺序不断循环。所述信号串行化单元用于将每个功能模块的并行输入信号转化为串行输入信号;所述集中存储寄存器用于保存每个功能模块的寄存器,并在每个功能模块对应的时隙内读写该功能模块的寄存器;所述组合逻辑单元为单个功能模块进行输入信号处理的组合逻辑;所述信号并行化单元用于将每个功能模块的输入信号处理后的串行输出信号还原为并行输出信号。
参见图3所示,根据上述装置的基于现场可编程门阵列的集中缓存式设计方法,包括以下步骤:
步骤S1.时分复用控制单元根据功能模块的数目将时间周期划为相应数目的时隙;信号串行化单元将每个功能模块的并行输入信号转化为串行输入信号,且每个输入信号对应设有一个顺序标记信号(number);所述顺序标记信号还用于指示输入信号对应的时隙。每个功能模块的输入信号设有一个数据有效信号(dv),所述数据有效信号用于指示当前时隙内输入信号的数据是否有效。例如:具体为划分N个时隙,每个功能模块的输入信号按固定顺序占用一个时隙,比如第0个功能模块占用第0个时隙,第1个功能模块占用第1个时隙,以此类推,第N-1个功能模块占用第N-1个时隙。按之前举例,顺序标记信号为0时,串行化的输入信号对应第0个功能模块输入信号。
步骤S2.各个功能模块的寄存器按顺序存储在集中存储寄存器的地址中,且各个功能模块寄存器在每个地址中的存放位置是相同的。例如:第0个功能模块数据处理的寄存器存储在集中存储寄存器的地址0,第1个功能模块数据处理的寄存器存储在集中存储寄存器的地址1,以此类推,第N-1个功能模块寄存器存储在集中存储寄存器的地址N-1。同时,第0个功能模块的寄存器a储存在地址0的比特0,第1个功能模块的寄存器a也同样存在地址1的比特0。
步骤S3.由于每个功能模块所要实现的功能相同,因此所有功能模块的数据处理的组合逻辑是一样的。在时分复用模块控制下,在同一个时隙内,对应的功能模块的输入信号输入时,从集中存储寄存器中读取对应的寄存器值。例如:当输入的串行化数据的顺序标记信号为0时,集中存储寄存器的地址0中的寄存器值将被读出,此时该寄存器值以及输入信号同属于第0个功能模块。
调用组合逻辑单元,计算该功能模块的输出结果,然后将数据处理后的新寄存器值重新存入到集中存储寄存器的对应地址中;例如:在第0个时隙内,同属于第0个功能模块的输入信号加上该功能模块的寄存器按单个功能模块数据处理方式就可得出第0个功能模块的输出结果,同时数据处理后的寄存器值重新存入到集中存储寄存器的地址0。
步骤S4.信号并行化单元将每个功能模块的输出结果按顺序标记信号的对应关系重新还原为并行输出信号。与串行化输入信号类似,输出的串行化数据处理结果也设有顺序标记信号指明当前输出结果对应哪个功能模块。例如:顺序标记信号为0时输出结果对应第0个功能模块。
参见图4所示,以组合逻辑单元为单路HDLC(High-Level Data Link Control,高级数据链路控制)解封装组合逻辑为例,对本发明做进一步说明:
信号串行化单元将8路HDLC解封装的数据输入data0-data7按时分复用控制单元划分的时隙转化为串行码流,第0个功能模块对应第0个时隙,第1个功能模块对应第1个时隙,以此类推。转化后的顺序标记信号用于指示串行码流data对应的时隙,如顺序标记信号为0时,data对应data0;顺序标记信号为1时,data对应data1。数据有效信号用于指示当前时隙的data是否有效。
集中存储寄存器中存储了HDLC解封装操作所要用的所有寄存器。所述集中存储寄存器为block RAM(块随机存储器)或者分布式RAM,其地址深度为8,地址0存储第0个功能模块的寄存器,地址1存储第1个功能模块的寄存器,以此类推。时分复用控制单元控制该集中存储寄存器的读写操作,它在各个时隙读出对应地址寄存器值data_rd,然后在数据处理后得到的寄存器新值data_wr,并将data_wr在当前时隙重新存入集中存储寄存器。如,在顺序标记信号为0时,读出0地址的寄存器值data_rd,经过数据处理后得data_wr,然后重新存入地址0。
单路HDLC解封装组合逻辑主要是在各个时隙将各路数据输入data以及寄存器data_rd相结合,按单路HDLC协议进行解封装处理,得出解封装后的数据包。Data_out是解封装得到的数据,sop指示数据包头,eop指示数据包尾,dv_out指示当前的data_out、sop、eop是否有效。在顺序标记信号为0时,其是对第0路输入信号进行解封装处理,得到的是第0路的解封装数据包;当顺序标记信号为1时,是对第1路输入信号进行解封装处理,得到的是第1路的解封装数据包,以此类推。
最后,信号并行化处理模块将得到的串行解封装数据包根据顺序标记信号恢复为8路数据流,实现8个单路HDLC解封装模块的功能效果。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (8)

1.一种基于现场可编程门阵列的集中缓存式装置,适用于至少2个相同的功能模块,其特征在于:包括时分复用控制单元、信号串行化单元、集中存储寄存器、组合逻辑单元、信号并行化单元;
所述时分复用控制单元用于将时间周期划为至少2个等时长的时隙,每一个时隙按顺序对应一个功能模块,每个功能模块在对应的时隙内进行输入信号处理;
所述信号串行化单元用于将每个功能模块的并行输入信号转化为串行输入信号;
所述集中存储寄存器用于保存每个功能模块的寄存器,并在每个功能模块对应的时隙内读写该功能模块的寄存器;
所述组合逻辑单元用于单个功能模块进行输入信号处理的组合逻辑;
所述信号并行化单元用于将每个功能模块的输入信号处理后的串行输出信号还原为并行输出信号;
所述组合逻辑单元为单路HDLC解封装组合逻辑。
2.如权利要求1所述的基于现场可编程门阵列的集中缓存式装置,其特征在于:所述集中存储寄存器为block RAM或者分布式RAM。
3.如权利要求1所述的基于现场可编程门阵列的集中缓存式装置,其特征在于:所述时分复用控制单元划分的时隙按顺序不断循环。
4.根据权利要求1所述装置的基于现场可编程门阵列的集中缓存式设计方法,其特征在于,包括以下步骤:
步骤S1.时分复用控制单元根据功能模块的数目将时间周期划为相应数目的时隙;信号串行化单元将每个功能模块的并行输入信号转化为串行输入信号;
步骤S2.各个功能模块的寄存器按顺序存储在集中存储寄存器的地址中;
步骤S3.在同一个时隙内,对应的功能模块的输入信号输入时,从集中存储寄存器中读取对应的寄存器值,并调用组合逻辑单元,计算该功能模块的输出结果,然后将数据处理后的新寄存器值重新存入到集中存储寄存器的对应地址中;
步骤S4.信号并行化单元将每个功能模块的输出结果按对应关系重新还原为并行输出信号。
5.如权利要求4所述的基于现场可编程门阵列的集中缓存式设计方法,其特征在于:步骤S1中,每个输入信号对应设有一个顺序标记信号,所述顺序标记信号用于指示输入信号对应的时隙。
6.如权利要求5所述的基于现场可编程门阵列的集中缓存式设计方法,其特征在于:步骤S4中,信号并行化单元将每个功能模块的输出结果按顺序标记信号的对应关系重新还原为并行输出信号。
7.如权利要求4所述的基于现场可编程门阵列的集中缓存式设计方法,其特征在于:步骤S2中,各个功能模块寄存器在每个地址中的存放位置是相同的。
8.如权利要求4所述的基于现场可编程门阵列的集中缓存式设计方法,其特征在于:每个功能模块的输入信号设有一个数据有效信号,所述数据有效信号用于指示当前时隙内输入信号的数据是否有效。
CN201410451627.9A 2014-09-05 2014-09-05 基于现场可编程门阵列的集中缓存式装置及设计方法 Active CN104252560B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410451627.9A CN104252560B (zh) 2014-09-05 2014-09-05 基于现场可编程门阵列的集中缓存式装置及设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410451627.9A CN104252560B (zh) 2014-09-05 2014-09-05 基于现场可编程门阵列的集中缓存式装置及设计方法

Publications (2)

Publication Number Publication Date
CN104252560A CN104252560A (zh) 2014-12-31
CN104252560B true CN104252560B (zh) 2017-08-01

Family

ID=52187448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410451627.9A Active CN104252560B (zh) 2014-09-05 2014-09-05 基于现场可编程门阵列的集中缓存式装置及设计方法

Country Status (1)

Country Link
CN (1) CN104252560B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2672014T3 (es) * 2015-06-16 2018-06-12 Framatome Matriz de puertas programable por campo que comprende una pluralidad de bloques funcionales y dispositivo de control para una central eléctrica
CN110222519B (zh) * 2019-06-05 2021-02-05 郑州信大捷安信息技术股份有限公司 一种可配置通道的数据处理系统及方法
CN114143195B (zh) * 2021-11-19 2023-05-23 烽火通信科技股份有限公司 一种数据包处理装置及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541707A (zh) * 2010-12-15 2012-07-04 中国科学院电子学研究所 复用jtag接口的fpga片内逻辑分析仪系统和方法
CN103297055A (zh) * 2013-03-19 2013-09-11 中国科学院声学研究所 一种采用fpga实现多路串行adc同步的装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541707A (zh) * 2010-12-15 2012-07-04 中国科学院电子学研究所 复用jtag接口的fpga片内逻辑分析仪系统和方法
CN103297055A (zh) * 2013-03-19 2013-09-11 中国科学院声学研究所 一种采用fpga实现多路串行adc同步的装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于FPGA的多串口模块的设计和实现;董长富等;《设计参考》;20061130;第8卷(第11期);43-46 *

Also Published As

Publication number Publication date
CN104252560A (zh) 2014-12-31

Similar Documents

Publication Publication Date Title
CN103222234B (zh) 具有灵活信道绑定的可缩放互连模块
CN104954096B (zh) 一种一主多从的高速同步串行通信数据传输方法
CN107966923A (zh) 传感器接口电路及数据通道选择方法、存储介质、数据采集系统
CN104252560B (zh) 基于现场可编程门阵列的集中缓存式装置及设计方法
CN100442074C (zh) 通过单个测试访问端口连接多个测试访问端口控制器
CN105243044B (zh) 基于串口的管理系统及管理方法
CN103327281B (zh) 一种格式转换方法及格式转换电路
CN101923133A (zh) 集成电路片上系统核间连线故障的测试系统和方法
CN101865977A (zh) 基于查找表结构的fpga可编程逻辑单元的遍历测试方法
CN102981996A (zh) 一种外设接口的扩展装置和方法
CN108304336A (zh) 一种信号处理装置和方法
CN103645435B (zh) 多信号模型可编程逻辑器件的软件模块可测性设计方法
CN105629811B (zh) 支持多种测试功能复用的输入输出接口电路及其生成方法
CN201876522U (zh) 一种通用测试设备
CN108008284A (zh) 一种芯片测试系统
CN109407574A (zh) 一种多总线可选择输出控制装置及其方法
CN104460857B (zh) 一种高速外设部件互连标准卡及其使用方法和装置
CN112183005B (zh) 集成电路测试模式下的dft电路构建方法及应用
CN102200565B (zh) 一种芯片测试装置
CN103226531B (zh) 一种双端口外设配置接口电路
CN103631314B (zh) 去除电平信号中毛刺的方法
CN106991027A (zh) 基于serdes协议验证的检查器、功能验证系统及方法
CN104050121A (zh) 双收双发可编程arinc429通讯接口芯片
CN201918981U (zh) 双相哈佛码总线信号编解码电路
US20060026468A1 (en) Crossbar switch debugging

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant