前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一道有趣的笔试题(二)、降低功耗

一道有趣的笔试题(二)、降低功耗

作者头像
根究FPGA
发布2020-06-29 15:30:26
6050
发布2020-06-29 15:30:26
举报
文章被收录于专栏:根究FPGA

开头,也感谢各位朋友关注!

看到了一些interesting的题,和大家分享一下,如果大家有什么额外的见解欢迎大家公众号后台留言!

题目:

修改下面的电路,使其功耗最小,同时保持功能不变

怎么做暂且不讲,老样子,容我先念叨一下这类题的原理!

首先要明确的是:

在同步数据电路设计中,降低动态功耗最有效以及使用最广的技术是在默写指定区域数据流的特定阶段在不需要时钟处于活动状态时禁止时钟活动,因为FPGA的功耗大多数是与系统时钟的翻转有关,所以临时性的停止系统设计中某些处于非活动区域的时钟往往是最小化这类功耗最直接的方法。为了达成此目的,有两种推荐方法,一种是在触发器中使用时钟使能,另外一种是使用全局时钟多路选择器(Xilinx器件中称为BUFGMUX单元)。

怎么做:

本案例中,在EN==1时,D触发器的输出是一个翻转信号,在EN==0时,D触发器的输出进行保持,所以使用门控时钟使能的方式:

代码:

代码语言:javascript
复制
module gh(
input D,
input EN,
input clk,
output reg Q
); 
wire clk1;
assign clk1=EN&clk;
always@(posedge clk1) 
Q<=D; 
endmodule

电路图:

~~~~感谢阅读~~~~谢谢!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 根究FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目:
  • 修改下面的电路,使其功耗最小,同时保持功能不变
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档