大家好,
我正在尝试实现一个MUX逻辑,用于将两个时钟信号复用到IO引脚。
我的逻辑适用于低频输入(1-100Hz),但是当我增加输入时钟的频率(> 1KHz)时,输出信号看起来很奇怪,即占空比变化,输出频率在输出时为浆果高(> 1MHz)
我看到一个等于我的时钟幅度的恒定电压。
下面是我的verilog代码和约束文件,可以;有人帮助我理解可能出错的地方
模块main1(TX1,TX40,SEL,TX);输入TX1,TX40,SEL;输出TX;线路tx1_bufg,tx40_bufg; BUFG clk_bufg_inst1(.I(TX1),. O(tx1_bufg)); BUFG clk_bufg_inst2(.I(TX40)
),。O(tx40_bufg));
分配TX =(~SEL& tx1_bufg)|(SEL& tx40_bufg); endmodule
约束文件
NET“SEL”PULLUP; NET“SEL”LOC = AH8; NET“TX1”LOC = C24; NET“TX1”CLOCK_DEDICATED_ROUTE = FALSE; PIN“clk_bufg_inst1.O”CLOCK_DEDICATED_ROUTE = FALSE; NET“TX40”LOC = P3; NET“
TX40“CLOCK_DEDICATED_ROUTE = FALSE; PIN”clk_bufg_inst2.O“CLOCK_DEDICATED_ROUTE = FALSE; NET”TX“LOC = AE6;
我在我的定制
电路板上使用Spartan-6XC6SLX150-3FGG900I,我的最终目标是为MUX多个UART设备实现逻辑。
谢谢,
毗湿奴