FPGA在代码实现方面的小技巧

比如我要对一个1bit位宽的控制信号做延时后送给3个模块,第一个模块要延时100个     时钟   ,第二个模块延时150个时钟,第三个模块延时200个时钟,这时我要怎么做。我们可以定义一个200bit位宽的信号reg [199:0] start_valid, start_valid[199:1]<=start_valid[198:0],然后将start_valid[99]送给第一个模块,start_valid[149]送给第二个模块,start_valid[199]送给第三个模块,是不是很方便。

 FPGA在代码实现方面的小技巧_设计制作_制造/封装

比如一个信号扇出很大,可以将这个新号复制成多个信号,然后分别使用这个信号。时钟使能信号的利用。比如我本来在10MHz的时钟频率下产生了一个基带信号,然后对信号上采样4倍变成40MHz。但现在我想直接在40MHz的时钟频率下产生信号,我要怎么做呢。我们可以在40MHz的时钟频率下产生一个占空比为1:3的10MHz的时钟使能信号,在40MHz的时钟频率,10MHz的时钟使能信号作用下,可以直接产生4倍内插后40MHz速率的基带信号。

 FPGA在代码实现方面的小技巧_设计制作_制造/封装

40MHz时钟频率下的一个使能信号需要转换到10MHz的时钟频率下去怎么办。这个时候我们要利用一个异步F     IF   O来做跨时钟域转换。写时钟为40MHz,写为1bit,读时钟为10MHz,每次读4bit,然后对这4bit做或运算,得到在10MHz下的一个使能信号。顶层控制一定要用状态机,状态机逻辑清楚,非常有效。

93
167
0
19

相关资讯

  1. 1、Imec提出动态随机存取存储器单元架构,DRAM单元保留时间超400s3877
  2. 2、全球汽车压力传感器市场趋势分析1492
  3. 3、一种基于二维异质结构的光电探测器4642
  4. 4、语音交互平台Siri表现实在太糟糕HomePod正成为失败产品4553
  5. 5、新型无线柔软可穿戴健康监视器问世,由可拉伸电子设备构建1246
  6. 6、科蓝软件与蚂蚁金服推出移动金融逸平台方案,实现资源共享1349
  7. 7、​深圳启动新一轮景观亮化提升工作LED屏企获机会134
  8. 8、以国家安全为由,澳大利亚正考虑禁用华为5G设备4301
  9. 9、iPhone12的发布对电信行业意味着什么3342
  10. 10、荷兰赫尔辛基和阿姆斯特丹市将公开展示其AI系统设计4125
全部评论(0)
我也有话说
0
收藏
点赞
顶部