System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种可变位宽输入固定位宽输出的同步FIFO设计系统及方法技术方案_技高网

一种可变位宽输入固定位宽输出的同步FIFO设计系统及方法技术方案

技术编号:40665119 阅读:3 留言:0更新日期:2024-03-18 18:59
本发明专利技术公开了一种可变位宽输入固定位宽输出的同步FIFO设计系统及方法,所述系统依据FPGA设计,FIFO的存储结构以4个8bit双端口RAM为基础,增加端口fifo_wr_sel;fifo_wr_sel用于对输入数据设置有效位宽;本发明专利技术基于FPGA实现,使用灵活,资源利用率高,并且可以实现多位宽数据到单字节的输出控制,它可以实现SOC软件设计中不同的位宽总线至SPI接口或串口的通信转换,可根据需要进行连续或者间隔读取操作,并具有空满指示功能,使用这种FIFO缓存方法,可以大大提高总线数据读取效率,减少总线高位宽数据的读取难度和工作量。

【技术实现步骤摘要】

本专利技术涉及工控嵌入,具体涉及一种可变位宽输入固定位宽输出的同步fifo设计系统及方法。


技术介绍

1、集成度迅速提高,以fpga为物理载体进行芯片设计的soc设计方式已成为当今一大主流,内置arm软核,同时嵌入多种管理及接口模块设计,极大地降低了硬件设计的空间成本并且具备了低延时高速片内通信能力。

2、嵌入式软件设计中,fifo作为一种常用的软核,在数据缓存、容纳异步信号频率或相位差异以及解决传输速度匹配问题上应用广泛。同时由于fpga大规模集成了可编程逻辑单元,利用fpga中block ram多样的寻址特性,在fifo的使用中fpga具有了天然的优势。

3、但是fifo研究,不管是在数据缓存还是异步fifo设计亦或是多模式切换设计中,当前技术本身更多的侧重于数据的快速读取、稳定传输和应用场景的多样性,并未涉及到不同接口、不同位宽数据的转换输出。现有fpga数据位宽转换设计,调用了ip dds核,所用片内资源较多,在部分不包含dds核的芯片移植较为困难,且数据在转换结束后,在有效标志位的置位下自动输出,无法自由控制数据读取,应用场景较为有限。


技术实现思路

1、专利技术目的:本专利技术的目的是提供一种可变位宽输入固定位宽输出的同步fifo设计系统及方法通过对存储深度的预设置及输入数据位宽实时选取,可将32bit/16bit/8bit输入数据统一转换为8bit数据输出,在32位soc嵌入式应用开发中,具有极高的实时性和灵活性,可将软核内部的高位宽总线接口与外部8位的spi接口及串口进行有效高速的数据转换。

2、技术方案:本专利技术所述的一种可变位宽输入固定位宽输出的同步fifo设计系统,

3、依据fpga设计,fifo的存储结构以4个8bit双端口ram为基础,增加端口fifo_wr_sel;fifo_wr_sel用于对输入数据设置有效位宽;通过rd_en端口可自由控制数据读取,支持断点续传。

4、本专利技术所述的一种可变位宽输入固定位宽输出的同步fifo设计系统的方法,通过对存储深度及输入数据位宽的设置,可将多字节输入数据统一转换为单字节数据输出,包括以下步骤:

5、数据写入:

6、(1)设置fifo的存储深度;

7、(2)利用fifo的fifo_wr_sel端口对输入数据设置有效位宽;

8、(3)将输入数据预置于输入数据端口;

9、(4)判断fifo满信号是否为高,若为低,则在时钟上升沿处置位fifo_wr_en信号,启动写操作动作,同时依次将输入数据置于输入数据端口;

10、数据存储:

11、(5)根据写数据的有效位宽设置及先入先出原则,对数据进行有序排序,以对应单字节读取端口的操作动作;

12、数据读取:

13、(6)判断fifo是否为空,若不为空,则在时钟上升沿处置位读使能信号;

14、(7)在时钟上升沿处,从读指针指向的当前ram存储区域读出存储数据;

15、(8)若ram读指针当前停留在ram_1~ram_3之间,则指向下一ram序列;

16、(9)若ram读指针当前停留在ram_4,则移至ram1序列,同时所有ram序列读地址进行+1操作;

17、(10)所有数据读取完毕后,fifo空信号empty置1。

18、进一步的,所述步骤(1)具体为:存储深度设置为2n,若不是则设置为其它参数,程序将自动匹配为大于该参数的2n。

19、进一步的,所述步骤(2)具体配置为:001代表输入单字节有效数据,010代表输入为双字节有效数据,100代表输入为四字节有效数据。

20、进一步的,所述步骤(5)具体如下:数据存储时,根据不同的输入位宽及当前的存储剩余空间,分成四个工作状态,具体如下:

21、状态1:输入数据有效位宽为8bit时,在写有效信号指示下,ram写指针依次在ram_1~ram_4之间移动,数据依次写入写指针指向的当前ram存储区域,同时写指针移向下一ram,而当前ram写地址进行+1操作,以待后续数据进行写入;

22、状态2:输入数据有效位宽为16bit时,在写有效信号指示下,ram写指针在ram_1~ram_4之间进行间隔1移动,写指针指向的当前及下一ram写有效,输入数据高低8位分别写入当前及下一ram存储区域中,写入完成后,写指针进行间隔移动,此双ram序列地址进行+1操作,以待后续数据进行写入;

23、状态3:输入数据有效位宽为32bit时,在写有效信号指示下,ram写指针停止移动,所有ram序列写有效,数据写入完成后,所有ram序列地址进行+1操作,以待后续数据进行写入;

24、状态4:写满信号置位操作,当ram存储序列剩余空间不足以存储一个32bit数据时,fifo_full写满信号将会置1以停止写输入操作;当ram存储序列剩余空间不足以存储两个32bit数据时,almost_full信号将会置1,以提醒使用者关注fifo的使用状态。

25、本专利技术所述的一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现任一项一种可变位宽输入固定位宽输出的同步fifo设计系统的方法。

26、本专利技术所述的一种存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现任一项所述的一种可变位宽输入固定位宽输出的同步fifo设计系统的方法。

27、有益效果:与现有技术相比,本专利技术具有如下显著优点:基于fpga实现,使用灵活,资源利用率高,并且可以实现多位宽数据到单字节的输出控制,它可以实现soc软件设计中不同的位宽总线至spi接口或串口的通信转换,可根据需要进行连续或者间隔读取操作,并具有空满指示功能,使用这种fifo缓存方法,可以大大提高总线数据读取效率,减少总线高位宽数据的读取难度和工作量。

本文档来自技高网...

【技术保护点】

1.一种可变位宽输入固定位宽输出的同步FIFO设计系统,其特征在于,依据FPGA设计,FIFO的存储结构以4个8bit双端口RAM为基础,增加端口fifo_wr_sel;fifo_wr_sel用于对输入数据设置有效位宽;通过rd_en端口可自由控制数据读取,支持断点续传。

2.一种根据权利要求1所述的可变位宽输入固定位宽输出的同步FIFO设计系统的方法,其特征在于,通过对存储深度的预设置以及输入数据位宽的实时选取,可将多字节输入数据统一转换为单字节数据输出,包括以下步骤:

3.根据权利要求2所述的一种可变位宽输入固定位宽输出的同步FIFO设计系统的方法,其特征在于,所述步骤(1)具体为:存储深度设置为2N,若不是则设置为其它参数,程序将自动匹配为大于该参数的2N。

4.根据权利要求2所述的一种可变位宽输入固定位宽输出的同步FIFO设计系统的方法,其特征在于,所述步骤(2)具体配置为:001代表输入单字节有效数据,010代表输入为双字节有效数据,100代表输入为四字节有效数据。

5.根据权利要求2所述的一种可变位宽输入固定位宽输出的同步FIFO设计系统的方法,其特征在于,所述步骤(5)具体如下:数据存储时,根据不同的输入位宽及当前的存储剩余空间,分成四个工作状态,具体如下:

6.一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现如权利要求2-5任一项一种可变位宽输入固定位宽输出的同步FIFO设计系统的方法。

7.一种存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现根据权利要求2-5任一项所述的一种可变位宽输入固定位宽输出的同步FIFO设计系统的方法。

...

【技术特征摘要】

1.一种可变位宽输入固定位宽输出的同步fifo设计系统,其特征在于,依据fpga设计,fifo的存储结构以4个8bit双端口ram为基础,增加端口fifo_wr_sel;fifo_wr_sel用于对输入数据设置有效位宽;通过rd_en端口可自由控制数据读取,支持断点续传。

2.一种根据权利要求1所述的可变位宽输入固定位宽输出的同步fifo设计系统的方法,其特征在于,通过对存储深度的预设置以及输入数据位宽的实时选取,可将多字节输入数据统一转换为单字节数据输出,包括以下步骤:

3.根据权利要求2所述的一种可变位宽输入固定位宽输出的同步fifo设计系统的方法,其特征在于,所述步骤(1)具体为:存储深度设置为2n,若不是则设置为其它参数,程序将自动匹配为大于该参数的2n。

4.根据权利要求2所述的一种可变位宽输入固定位宽输出的同步f...

【专利技术属性】
技术研发人员:董艳博祝瑞军王小红杨合民胡静梁帅奇杨海英张青杰田安民卢文兵孙光淼张雪珺马嘉远王佳玉
申请(专利权)人:国电南瑞科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1