一种DDR3控制器IP核的实际带宽测量装置的制作方法

文档序号:11652647阅读:645来源:国知局
一种DDR3控制器IP核的实际带宽测量装置的制造方法

本实用新型涉及集成电路技术领域,尤其涉及一种DDR3控制器IP核的实际带宽测量装置。



背景技术:

随着集成电路技术的快速发展,现场可编程门阵列(FPGA)芯片的集成度不断提高,使之提供越来越多的模块功能,如可编程输入输出单元、可配置逻辑块、片上RAM等。为方便FPGA开发,缩短开发周期和节省开发成本,FPGA供应商及其合作方还提供了实现通用功能的IP核,包括固化在芯片内的硬IP核和可编程调用的软IP核。这些IP都是针对FPGA芯片结构进行的优化的逻辑功能,使用这些功能的IP核有助于加速开发进度,降低开发成本。

如FPGA供应商所提供的DDR3 SDRAM控制器IP核,为用户提供了快速用的Avalon-MM总线接口。然而这个Avalon-MM总线接口的读写周期并不是固定的,要在实际中给出具体的数据带宽是困难的,不仅因为IP核的不透明性,还取决于实际读写突发长度大小、读写操作切换频率有关(连续的写或者读操作,DDR3控制器响应较快,而读写切换DDR3控制器响应速度较慢)。测量DDR3控制器实际带宽对整个应用系统数据通路的同步协调具有重要意义。



技术实现要素:

为了解决上述技术问题,本实用新型的目的是提供一种实现简单的一种DDR3控制器IP核的实际带宽测量装置。

本实用新型所采取的技术方案是:

一种DDR3控制器IP核的实际带宽测量装置,包括数据读写识别模块、带宽计数模块和串口通信模块,所述数据读写识别模块的输出端通过带宽计数模块进而连接至串口通信模块的输入端。

作为本实用新型的进一步改进,所述数据读写识别模块由D触发器和与门组成。

作为本实用新型的进一步改进,所述带宽计数模块包括控制单元和数据通路单元,所述数据读写识别模块的输出端依次通过控制单元和数据通路单元进而连接至串口通信模块的输入端。

作为本实用新型的进一步改进,所述数据通路单元包括有效写次数计数器、有效读次数计数器、有效写总数缓存器和有效读总数缓存器,所述控制单元的第一输出端依次通过有效写次数计数器和有效写总数缓存器进而连接至串口通信模块的第一输入端,所述控制单元的第二输出端依次通过有效读次数计数器和有效读总数缓存器进而连接至串口通信模块的第二输入端,所述控制单元的第三输出端连接至串口通信模块的第三输入端。

作为本实用新型的进一步改进,所述串口通信模块包括串口控制子模块和串口发送子模块,所述有效写总数缓存器的输出端与串口控制子模块的第一输入端连接,所述有效读总数缓存器的输出端与串口控制子模块的第二输入端连接,所述控制单元的第三输出端连接至串口控制子模块的第三输入端,所述串口控制子模块与串口发送子模块相连接。

本实用新型的有益效果是:

本实用新型一种DDR3控制器IP核的实际带宽测量装置通过带宽计数模块能根据读计数标志信号和写计数标志信号进行计数并缓存,然后通过串口通信模块形成数据包并发送出去,方便后续使用单片机或计算机读取串口数据,从而把计算出的实际带宽显示在液晶屏上。本实用新型结构简单,容易实现,有效降低开发成本。

附图说明

下面结合附图对本实用新型的具体实施方式作进一步说明:

图1是本实用新型一种DDR3控制器IP核的实际带宽测量装置的原理方框图;

图2是本实用新型一种DDR3控制器IP核的实际带宽测量装置中数据读写识别模块的原理结构图;

图3是本实用新型一种DDR3控制器IP核的实际带宽测量装置中带宽计数模块的原理结构图;

图4是本实用新型一种DDR3控制器IP核的实际带宽测量装置中串口通信模块的原理结构图。

具体实施方式

参考图1~图4,本实用新型一种DDR3控制器IP核的实际带宽测量装置,包括数据读写识别模块、带宽计数模块和串口通信模块,所述数据读写识别模块的输出端通过带宽计数模块进而连接至串口通信模块的输入端。

优选的,所述数据读写识别模块输入DDR3控制器Avalon总线控制信号(avl_ready、avl_write、avl_rddata_valid),输出读有效标志(rd_valid)、写有效标志(wr_valid)到所述带宽计数模块的输入端。所述带宽计数模块输出有效写总数缓存器(WTC[31:0])、有效读总数缓存器(RTC[31:0])、刷新标志(refresh)信号到所述串口通信模块。所述串口通讯模块输出串口发送端信号(uart_tx)。所述三个模块与DDR3控制器使用同一时钟源(clk)和复位信号(reset_n)。

进一步作为优选的实施方式,所述数据读写识别模块由D触发器和与门组成。

所述数据读写识别模块输入信号为Avalon-MM控制信号中的三个,分别是avl_ready、avl_write、avl_rdata_valid。输出信号为读有效标志(rd_valid)、写有效标志(wr_valid),这两个输出信号都是由输入信号经过组合逻辑,再经过D触发器直接输出。

进一步作为优选的实施方式,所述带宽计数模块包括控制单元和数据通路单元,所述数据读写识别模块的输出端依次通过控制单元和数据通路单元进而连接至串口通信模块的输入端。

进一步作为优选的实施方式,所述数据通路单元包括有效写次数计数器、有效读次数计数器、有效写总数缓存器和有效读总数缓存器,所述控制单元的第一输出端依次通过有效写次数计数器和有效写总数缓存器进而连接至串口通信模块的第一输入端,所述控制单元的第二输出端依次通过有效读次数计数器和有效读总数缓存器进而连接至串口通信模块的第二输入端,所述控制单元的第三输出端连接至串口通信模块的第三输入端。

优选的,控制单元输入读有效标志(rd_valid)、写有效标志(wr_valid)信号,而输出信号inc_wcnt、inc_rcnt、clr_cnt负责控制数据单元。数据单元模块含4个32位寄存器,分别为有效写次数计数器、有效读次数计数器、有效写总数缓存器(WTC[31:0])、有效读总数缓存器(RTC[31:0]),其中WTC[31:0]、RTC[31:0]输出到串口通信模块。inc_wcnt指示有效写次数计数器加1,inc_rcnt指示有效读次数计数器加1,clr_cnt指示有效写次数计数器和有效读次数计数器清零并把清零前的数值写入对应的缓存器中。clr_cnt信号每秒产生一次有效,实际上是频率为1的脉冲。控制单元还产生refresh信号输出到串口通信模块,指示缓存器中的内容已刷新,用于触发读取新的缓存器数据。该信号每秒产生一次有效,是频率为1的脉冲,落后clr_cnt信号1个时钟周期。

进一步作为优选的实施方式,所述串口通信模块包括串口控制子模块和串口发送子模块,所述有效写总数缓存器的输出端与串口控制子模块的第一输入端连接,所述有效读总数缓存器的输出端与串口控制子模块的第二输入端连接,所述控制单元的第三输出端连接至串口控制子模块的第三输入端,所述串口控制子模块与串口发送子模块相连接。

优选的,所述串口控制子模块输入从带宽计数模块产生的WTC[31:0]、RTC[31:0]、refresh信号和串口控制子模块产生的ready信号,输出data[7:0]、send信号到串口控制子模块。串口控制子模块还产生串口发送端信号(uart_tx)到外部。串口控制子模块负责产生数据包,控制串口发送子模块进行每字节数据的发送,每当refresh有效时就执行一个数据包的发送。串口发送子模块42在空闲时,ready输出信号有效,此时若检测到send输入信号有效,就会读取8位的data输入信号,然后产生标准的异步串口通信时序的数据帧,在uart_tx端发送出去。在1帧数据发送完成前,ready信号无效,串口通信子模块等待ready有效后再进行下一个字节数据的发送操作。其中,一个数据包包含16个字节,第1,2字节为固定的包头,第3-6字节为有效写总数缓存器(WTC[31:0])数值,第7-10字节为有效读总数缓存器(WTC[31:0])数值,第11-16字节数值为0。

本实用新型实施例中,所有硬件功能均可通过FPGA芯片上实现,用于测量Altera FPGA芯片内部DDR3 控制器 IP核的实际带宽。适用于Altera 的Cyclone V、Stratix III、Stratix IV、Arria V GX, GT, SX, ST等系列的FPGA,DDR3控制器IP核名称为DDR3 SDRAM Controller with UniPHY。探测DDR3控制器的接口为Avalon-MM总线接口,该总线具有非固定等待周期和非固定突发读写长度传输特性。针对这种总线的时序不确定性,该装置使用简单的有效数据读写判断逻辑电路,适用任意读写场合下实际带宽的测量。

本实施例中测量接口介于用户应用模块与DDR3控制之间的Avalon-MM总线接口。对DDR3控制器的读写由用户应用模块决定。所述数据读写识别模块对Avalon-MM总线读写控制和标志信号使用简单的逻辑电路进行判断,输出读计数标志信号和写计数标志信号到带宽计数模块中。带宽数计数模块根据读计数标志信号和写计数标志信号分别对有效写次数计数器、有效读次数计数器进行计数。时间达到1秒后会把计数器的内容写入缓存器中,并把计数器清零重新计数,随后产生一个脉冲给串口通信模块,串口通信模块捕获到脉冲会读取缓存器中的内容,产生一个数据包格式,从串口的发送端发送出去。可以使用单片机或计算机读取串口数据,把计算出的的实际带宽显示在液晶屏上。

实际数据带宽计算:

写数据带宽=WTC×(Avalon-MM数据总线宽度)bps;

读数据带宽=RTC×(Avalon-MM数据总线宽度)bps。

从上述内容可知,本实用新型通过带宽计数模块能根据读计数标志信号和写计数标志信号进行计数并缓存,然后通过串口通信模块形成数据包并发送出去,方便后续使用单片机或计算机读取串口数据,从而把计算出的实际带宽显示在液晶屏上。本实用新型结构简单,容易实现,有效降低开发成本。

以上是对本实用新型的较佳实施进行了具体说明,但本实用新型创造并不限于所述实施例,熟悉本领域的技术人员在不违背本实用新型精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1