微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于FPGA数据存储

关于FPGA数据存储

时间:10-02 整理:3721RD 点击:
本人在读研究生一枚,现在在做一个FPGA项目,关于数据的存储遇到了困难,请各位大神帮助。设计的输出数据为100M的10位并行数据,要求如下:
在检测到32位头测试字(测试字为指定的序列)后开始进行数据存储,有效数据长度为5120bit,之后要检测32位尾测试字。因为数据为并行数据,不知道应该如何实现。希望有大神能够提出有效的方案。如果能提供完整咨询,可以支付适当的报酬。
注:板子为xilinx的KC705

输入数据是多少位并行?时钟频率?就是一个帧头帧尾检测,加上数据存储转换,这个不难吧

如果是八位数据输入,那就做成10位ram数据存储啦
前四个byte和最后四个byte就是检测,中间按byte计数,每5个byte循环一次,在第2到5个byte把数据组合成10位存起来

这个,乍一看,挺简单的;
其实,仔细想想,需要一定得算法。
因为100Mclk,并行数据10bits,传统简单的方法,要大于1G的高频clk,按bit搜索特定序列。
那么,短时间内,我只能想到一个比较笨的方法:
(1)切换时钟域:100M转换为100*10/32;clk31.25;
(2)数据同步转换:10Bits转换为32Bits;
(3)32bits在clk31.25下分为32路并行数据;
(4)32路并行数据肯定有一路是能够搜索到特定的序列的;
(5)至于其他细致的部分,肯定需要完善。
后续有好的方法,再讨论。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top