04 2012 档案

Parameter在Module中的定义和调用
摘要:看两个例子即可:module paramreg #(parameter WIDTH = 8) (…);endmoduleparamreg #(2) r1(…); 阅读全文

posted @ 2012-04-28 16:17 freshair_cn 阅读(1004) 评论(0) 推荐(0)

推荐的并行执行语句Case的编码风格
摘要:先看例子:module regwrite( output reg rout; input clk; input [3:0] in; input [3:0] ctrl; ); always @ (posedge clk) begin rout <= 1’b0; //这是亮点 case(1) ctrl[0] : rout <= in[0]; ctrl[1] : rout <= in[1]; ctrl[2] : rout <= in[2]; ctrl[3] : rout <= in[3]; endcase endendmodule亦即在Case之前增加对输出的赋值。To 阅读全文

posted @ 2012-04-28 12:27 freshair_cn 阅读(618) 评论(0) 推荐(0)

忘啦!如何用卡诺图消除竞争冒险
摘要:摘自 http://www.eeworld.com.cn/mndz/2011/0610/article_9802.html 阅读全文

posted @ 2012-04-27 18:35 freshair_cn 阅读(3069) 评论(0) 推荐(0)

很有意思的处理复位信号的方法
摘要:全局异步复位的隐患已经介绍过了;全局同步复位可能出现的问题是,异步信号的Recovery Time可能不满足。解决方法之一是:采样复位信号,使其等效于同步复位。电路图如下:参考代码如下:<Advanced FPGA Design>这本书还介绍了另一种方法。其简称为”Asynchronous Assertion, Synchronous Deassertion”;对应的电路图如下:个人觉得这种方法是不可取的。原因有两:1、Recovery Time仍有可能不满足。2、提出这种方法本来是希望避免同步Reset时时钟周期太大采样不到信号的情况,但一般来说就算是Mhz级的信号,周期最多也1 阅读全文

posted @ 2012-04-27 17:20 freshair_cn 阅读(727) 评论(0) 推荐(0)

为什么不推荐全局异步复位?----兼谈ResetRecoveryTime
摘要:常见的D-触发器异步复位代码如下:module resetff( output reg dat_o; input clk_i, nRst_i; input dat_i; ); always @ (posedge clk_i or negedge nRst_i) if(!nRst_i) dat_o <= 1’b0; else dat_o <= dat_i;endmodule一般情况下这是没有问题的,但当Module的边界就是FPGA的边界时,可能会引起灾难性的后果(… is very dangerous if the module boundary represents the FP 阅读全文

posted @ 2012-04-27 16:38 freshair_cn 阅读(990) 评论(0) 推荐(0)

来自台湾的STA分析的宏文
摘要:http://files.cnblogs.com/freshair_cnblog/%E9%9D%99%E6%80%81%E6%97%B6%E5%BA%8F%E5%88%86%E6%9E%90STA%E5%9F%BA%E7%A1%80%E4%B8%8E%E5%BA%94%E7%94%A8.pdf亮点是布线布局软件判断路径是否成功的介绍,和手把手的时序报告解读分析。这也是两岸电子、软件水平差距的一个缩影吧! 阅读全文

posted @ 2012-04-24 16:35 freshair_cn 阅读(291) 评论(0) 推荐(0)

Latency 和Uncertainty的真正含义
摘要:Latency定义为从Clock源到时序元件(或序向元件,Sequential Cell,台湾的译法)Clock输入端的延迟时间,其值等于时钟延时加上路径延时;Uncertainty定义为Clock到时序元件Clock输入端可能早到或晚到的时间,即Skew。 阅读全文

posted @ 2012-04-24 13:57 freshair_cn 阅读(929) 评论(0) 推荐(0)

万用表电池没电,测量的直流电压偏高
摘要:数字万用表 Vd = (K*Vi)/ Vrf, Vd 是显示值, Vi输入电压, K 一个系数, Vrf 基准电压值。 电池电压正常时 Vrf 是一个常数。当电池电压过低, Vrf 就会低于正常值,所以测量电压偏高。简单一点说,就是电池电压低导致基准电压下降。由于显示值是和待测电压与基准电压的比值成正比,因此显示值变大。 阅读全文

posted @ 2012-04-23 10:01 freshair_cn 阅读(1323) 评论(0) 推荐(0)

导航