⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 多时钟描述.txt

📁 verilog语言描述多时钟方法!!!强力推荐。
💻 TXT
字号:
问题:
  端口:
  input clock_a, data_a;
  input clock_b, data_b;
  output q_common;
  功能:
  clock_a上升沿时,q_common <= data_a;
  clock_b上升沿时,q_common <= data_b;
假设clock_a和clock_b不会同时出现。



法一,
module multiClock(d1, d2, clk1, clk2, q);
 input d1, d2;
 input clk1, clk2;
 output q;

 reg q1, q2;
 reg whichOne;

 always @ (posedge clk1) begin
  q1 <= d1;
 end

 always @ (posedge clk2) begin
  q2 <= d2;
 end

 always @ (clk1 or clk2) begin
  case(1)  // synthesis parallel_case
  clk1 : whichOne = 0;
  clk2 : whichOne = 1;
  endcase  // latch inferred
 end

 assign q = whichOne ? q2 : q1;

endmodule





 
 
 
 
 
法二, 
input data_a,data_b,clk_a,clk_b;
output q_common;
reg q_common;
always @(posedge clk_a or posedge clk_b)
begin
        if(clk_a) q_common=data_a;
        else      q_common=dtat_b;
end
 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -