Kirchhoff's laws

春春找我,要我帮忙看一个verilog代码,是实现倍频的功能,不要求综合,只要求行为级的描述。我觉得有点晕,verilog如此NX的我,看这个还是觉得累,关键是,我一看见代码,脑子里面全是硬件实现的电路,想不到软件的方法。。。。。

突然想到了Verilog-A,google后,Download PDF,居然看到Kirchhoff's laws (基尔霍夫定律) 突然想到模电书,魔王,还有TongJi

。。。。

Verilog-A 学习中。。。。

=========================================================
Add in Aug 4
=========================================================
昨天下午,通过伟大的即时聊天工具QQ和Chunchun沟通了一下,终于改正了几个小bug,把代码写好了。其实代码很简单,我是觉得不太有用处的,我以前也不会这么写,因为都是些不能综合的语句。也正因为如此,我会犯错误。。。
现在好了,bug纠正了一下。

另外Verilog-A真好,描述的很神奇,Cadence的ICFB下有ahdl的例子,可以很好的描述PLL之类的电路,用Specre仿了一下,还可以。不过感觉Verilog-A也就在建模的时候用一下。具体的功能可能我还没发掘出来

先把昨天的代码贴出来吧

`timescale 1ns / 1ps
module pll(clk_in/*,reset*/,divN,clk_out);
input clk_in;
//input reset;
input [4:0]divN;
output clk_out;
reg clk_out;

time t1;
time t2;
real period;

initial begin

    clk_out = 1'b0;
    forever #(period/(divN+3)) clk_out = !clk_out;
end

always @ (posedge clk_in) begin
    t2=t1;
    t1=$time;
    period = t1-t2;
end

initial begin
    period = 10;
    t1 = 50;
    t2 = 0;
end

endmodule

版权声明:本文为kingbeful原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。