打印
[Actel FPGA]

全局网络与象限网络指定的问题

[复制链接]
1507|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
LPC300|  楼主 | 2010-2-21 20:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何指定一个时钟分配到全局网络或确定的象限全局网络上。
如,我想把clk_or指定到象限全局上,应该怎么实现。
module test
(           clk_A,
            clk_B,
            clk,
            rst_n,
            
            count
            );
input clk_A;
input clk_B;
input rst_n;
input clk;


output [31:0] count;
reg   tamp_a0,tamp_b0,tamp_a1,tamp_b1;
reg [31:0]  count;
reg [31:0]  count_q;

wire clk_AA;
wire clk_BB;
wire clk_or;
wire    clk_or_in;
CLKINT      u_clk_or(
                    .Y       (clk_or),
                    .A       (clk_or_in)
                    );
assign clk_or_in = clk_AA|clk_BB;
assign clk_AA = tamp_a0^tamp_a1;
assign clk_BB = tamp_b0^tamp_b1;
always @(posedge clk or negedge rst_n)
begin
    if(!rst_n)
    begin
        tamp_a0 <= 0;
        tamp_a1 <= 0;
    end
    else
    begin
        tamp_a0 <= clk_A;
        tamp_a1 <= tamp_a0;
    end
end
always @(posedge clk or negedge rst_n)
begin
    if(!rst_n)
    begin
        tamp_b0 <= 0;
        tamp_b1 <= 0;
    end
    else
    begin
        tamp_b0 <= clk_B;
        tamp_b1 <= tamp_b0;
    end
end
always @(posedge clk_or or negedge rst_n)
begin
    if(!rst_n)
        count_q <=32'b0;
    else
    begin
        case({tamp_a0,tamp_a1,tamp_b0,tamp_b1})
        4'b1000,4'b0111,4'b1110,4'b0001: count_q <= count_q + 1;                                 
        4'b1011,4'b0100,4'b0010,4'b1101: count_q <= count_q - 1;
        default:count_q <= count_q;
        endcase
    end
end
always @(posedge clk or negedge rst_n)
begin
    if(!rst_n)
        count <=32'b0;
    else
        count <= count_q;
end
endmodule


相关帖子

沙发
maoyanketi| | 2010-2-21 22:20 | 只看该作者
帮LZ顶下

使用特权

评论回复
板凳
金鱼木鱼| | 2010-2-22 22:03 | 只看该作者
帮顶

使用特权

评论回复
地板
年轻不在| | 2010-2-24 00:49 | 只看该作者
菜鸟,请问什么是全局网络和象限网络?

使用特权

评论回复
5
LPC300|  楼主 | 2010-2-24 15:55 | 只看该作者
问题已经解决!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:30——驱动高手、流利的英语

107

主题

525

帖子

0

粉丝