libero NetlistViewer
libero 编译后的 网表查看:
总计 写了 两个模块 , 一个 上电复位模块, 一个 led 一秒 闪烁一次 !

/////////////////////////////////////////////////////////////////////////////////////////////////// // Company: <Name> // // File: led_toggle.v // File history: // <Revision number>: <Date>: <Comments> // <Revision number>: <Date>: <Comments> // <Revision number>: <Date>: <Comments> // // Description: // // <Description here> // // Targeted device: <Family::ProASIC3> <Die::A3P250> <Package::100 VQFP> // Author: <Name> // /////////////////////////////////////////////////////////////////////////////////////////////////// //`timescale <time_units> / <precision> module led_toggle( input clk_40mhz, input rst_n, output led_0 ); // 即 32 位计数器最大计数值为 2^32 // 时钟频率为 40 MHz,对应周期为 25 ns,因此最大计时时间约为 107.374 秒 parameter CLK_40MHZ_TICK_100S = 32'd4000000000; parameter CLK_40MHZ_TICK_10S = 32'd400000000; parameter CLK_40MHZ_TICK_5S = 32'd200000000; parameter CLK_40MHZ_TICK_1S = 32'd40000000; parameter CLK_40MHZ_TICK_200MS = 32'd8000000; parameter CLK_40MHZ_TICK_100MS = 32'd4000000; parameter CLK_40MHZ_TICK_10MS = 32'd400000; // 闪烁 led 100ms 闪烁一次 parameter LED_0_TOGGLE_CNT = CLK_40MHZ_TICK_1S; // 时钟计数 reg [25:0] clk_40mhz_cnt = 26'd0; // 定义 led_0 寄存器 reg led_0_reg; always @(posedge clk_40mhz or negedge rst_n) begin if (!rst_n) begin clk_40mhz_cnt <= 26'd0; // 复位计数器 led_0_reg <= 1'b1; // 初始状态熄灭 end else if( clk_40mhz_cnt >= LED_0_TOGGLE_CNT )begin clk_40mhz_cnt <= 26'd0; // 计数器清零 led_0_reg <= ~led_0_reg; // 翻转 led 状态 end else begin clk_40mhz_cnt <= clk_40mhz_cnt + 26'd1; // 计数加一 end end assign led_0 = led_0_reg; // 低电平点亮 //<statements> endmodule
top.v
// top.v module top ( input clk_40mhz, // 40 MHz input GPIO->62 GCA1/IO50PDB1 inout rst_n_in, // reset input GPIO->64 // 观察信号 // output gpio_26, // LED Interface output led_0 // LED0 output GPIO->13, 低电平点亮 ); // reset reset reset_i( // Inputs .CLK_IN(clk_40mhz), // Outputs .RESET_OUT(rst_n), // Inouts .RESET_IN(rst_n_in) ); // 例化 LED 闪烁 模块 led_toggle led_toggle_inst ( .clk_40mhz(clk_40mhz), // 40 MHz clock input .rst_n(rst_n), // Reset input from power_on_reset .led_0(led_0) // LED0 output ); endmodule
TOP 网表查看 :

RESET 网表:

led 网表文件: 一个 计时器 , 挺复杂 !

浙公网安备 33010602011771号