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

📄 ps2_keyboard.vqm

📁 本实验实现PS/2接口与RS-232接口的数据传输
💻 VQM
📖 第 1 页 / 共 5 页
字号:
	.dataa(\div_4:inst2|acc[2] ),
	.aclr(gnd),
	.cin(\div_4:inst2|acc[1]~136 ),
	.regout(\div_4:inst2|acc[2] ),
	.cout(\div_4:inst2|acc[2]~132 ));
defparam \div_4:inst2|acc[2]~I .operation_mode = "arithmetic";
defparam \div_4:inst2|acc[2]~I .synch_mode = "off";
defparam \div_4:inst2|acc[2]~I .register_cascade_mode = "off";
defparam \div_4:inst2|acc[2]~I .sum_lutc_input = "cin";
defparam \div_4:inst2|acc[2]~I .lut_mask = "5AAF";
defparam \div_4:inst2|acc[2]~I .output_mode = "reg_only";

cyclone_lcell \div_4:inst2|acc[1]~I (
	.clk(\mclk~combout ),
	.datab(\div_4:inst2|acc[1] ),
	.aclr(gnd),
	.cin(\div_4:inst2|acc[0]~140 ),
	.regout(\div_4:inst2|acc[1] ),
	.cout(\div_4:inst2|acc[1]~136 ));
defparam \div_4:inst2|acc[1]~I .operation_mode = "arithmetic";
defparam \div_4:inst2|acc[1]~I .synch_mode = "off";
defparam \div_4:inst2|acc[1]~I .register_cascade_mode = "off";
defparam \div_4:inst2|acc[1]~I .sum_lutc_input = "cin";
defparam \div_4:inst2|acc[1]~I .lut_mask = "C303";
defparam \div_4:inst2|acc[1]~I .output_mode = "reg_only";

cyclone_lcell \div_4:inst2|acc[0]~I (
	.clk(\mclk~combout ),
	.datab(\div_4:inst2|acc[0] ),
	.aclr(gnd),
	.regout(\div_4:inst2|acc[0] ),
	.cout(\div_4:inst2|acc[0]~140 ));
defparam \div_4:inst2|acc[0]~I .operation_mode = "arithmetic";
defparam \div_4:inst2|acc[0]~I .synch_mode = "off";
defparam \div_4:inst2|acc[0]~I .register_cascade_mode = "off";
defparam \div_4:inst2|acc[0]~I .sum_lutc_input = "datac";
defparam \div_4:inst2|acc[0]~I .lut_mask = "33CC";
defparam \div_4:inst2|acc[0]~I .output_mode = "reg_only";

cyclone_io \ps2_clk~I (
	.datain(vcc),
	.combout(\ps2_clk~0 ),
	.padio(ps2_clk));
defparam \ps2_clk~I .operation_mode = "bidir";
defparam \ps2_clk~I .input_register_mode = "none";
defparam \ps2_clk~I .output_register_mode = "none";
defparam \ps2_clk~I .oe_register_mode = "none";
defparam \ps2_clk~I .input_async_reset = "none";
defparam \ps2_clk~I .output_async_reset = "none";
defparam \ps2_clk~I .oe_async_reset = "none";
defparam \ps2_clk~I .input_sync_reset = "none";
defparam \ps2_clk~I .output_sync_reset = "none";
defparam \ps2_clk~I .oe_sync_reset = "none";
defparam \ps2_clk~I .input_power_up = "low";
defparam \ps2_clk~I .output_power_up = "low";
defparam \ps2_clk~I .oe_power_up = "low";
defparam \ps2_clk~I .open_drain_output = "true";

cyclone_io \ps2_data~I (
	.datain(\ps2_keyboard_interface:inst|ps2_data_hi_z~29 ),
	.oe(vcc),
	.combout(\ps2_data~0 ),
	.padio(ps2_data));
defparam \ps2_data~I .operation_mode = "bidir";
defparam \ps2_data~I .input_register_mode = "none";
defparam \ps2_data~I .output_register_mode = "none";
defparam \ps2_data~I .oe_register_mode = "none";
defparam \ps2_data~I .input_async_reset = "none";
defparam \ps2_data~I .output_async_reset = "none";
defparam \ps2_data~I .oe_async_reset = "none";
defparam \ps2_data~I .input_sync_reset = "none";
defparam \ps2_data~I .output_sync_reset = "none";
defparam \ps2_data~I .oe_sync_reset = "none";
defparam \ps2_data~I .input_power_up = "low";
defparam \ps2_data~I .output_power_up = "low";
defparam \ps2_data~I .oe_power_up = "low";
defparam \ps2_data~I .open_drain_output = "true";

cyclone_io \reset~I (
	.combout(\reset~combout ),
	.padio(reset));
defparam \reset~I .operation_mode = "input";
defparam \reset~I .input_register_mode = "none";
defparam \reset~I .output_register_mode = "none";
defparam \reset~I .oe_register_mode = "none";
defparam \reset~I .input_async_reset = "none";
defparam \reset~I .output_async_reset = "none";
defparam \reset~I .oe_async_reset = "none";
defparam \reset~I .input_sync_reset = "none";
defparam \reset~I .output_sync_reset = "none";
defparam \reset~I .oe_sync_reset = "none";
defparam \reset~I .input_power_up = "low";
defparam \reset~I .output_power_up = "low";
defparam \reset~I .oe_power_up = "low";

cyclone_lcell \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\reset~combout ),
	.datac(\ps2_keyboard_interface:inst|ps2_clk_s ),
	.datad(\ps2_keyboard_interface:inst|m1_state.m1_rx_clk_h ),
	.aclr(gnd),
	.regout(\ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker ));
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .operation_mode = "normal";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .synch_mode = "off";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .sum_lutc_input = "datac";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .lut_mask = "000A";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I (
	.clk(\div_256:inst1|clk ),
	.datab(\ps2_keyboard_interface:inst|m1_state.m1_rx_falling_edge_marker ),
	.datac(\ps2_keyboard_interface:inst|ps2_clk_s ),
	.datad(\ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l ),
	.aclr(gnd),
	.sclr(\__ALT_INV__reset~combout ),
	.regout(\ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l ));
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .operation_mode = "normal";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .sum_lutc_input = "datac";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .lut_mask = "CFCC";
defparam \ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|reduce_or~0_I (
	.datab(\ps2_keyboard_interface:inst|m1_state.m1_rx_clk_h ),
	.datad(\ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l ),
	.combout(\ps2_keyboard_interface:inst|reduce_or~0 ));
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .operation_mode = "normal";
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .synch_mode = "off";
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .sum_lutc_input = "datac";
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .lut_mask = "00CC";
defparam \ps2_keyboard_interface:inst|reduce_or~0_I .output_mode = "comb_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[0]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_done~82 ),
	.datab(\ps2_keyboard_interface:inst|timer_60usec_count[0] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[0] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[0]~229 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .sum_lutc_input = "datac";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .lut_mask = "6688";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[0]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[1]~I (
	.clk(\div_256:inst1|clk ),
	.datab(\ps2_keyboard_interface:inst|timer_60usec_count[1] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[0]~229 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[1] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[1]~221 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .lut_mask = "3C3F";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[1]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[2]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_count[2] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[1]~221 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[2] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[2]~233 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .lut_mask = "A50A";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[2]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[3]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_count[3] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[2]~233 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[3] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[3]~225 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .lut_mask = "5A5F";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[3]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[4]~I (
	.clk(\div_256:inst1|clk ),
	.datab(\ps2_keyboard_interface:inst|timer_60usec_count[4] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[3]~225 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[4] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[4]~237 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .lut_mask = "C30C";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[4]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[5]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_count[5] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[4]~237 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[5] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[5]~241 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .lut_mask = "5A5F";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[5]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[6]~I (
	.clk(\div_256:inst1|clk ),
	.datab(\ps2_keyboard_interface:inst|timer_60usec_count[6] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[5]~241 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[6] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[6]~245 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .lut_mask = "C30C";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[6]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[7]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_count[7] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[6]~245 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[7] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[7]~249 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .sum_lutc_input = "cin";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .lut_mask = "5A5F";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[7]~I .output_mode = "reg_only";

cyclone_lcell \ps2_keyboard_interface:inst|timer_60usec_count[8]~I (
	.clk(\div_256:inst1|clk ),
	.dataa(\ps2_keyboard_interface:inst|timer_60usec_count[8] ),
	.aclr(gnd),
	.sclr(\ps2_keyboard_interface:inst|reduce_or~0 ),
	.cin(\ps2_keyboard_interface:inst|timer_60usec_count[7]~249 ),
	.regout(\ps2_keyboard_interface:inst|timer_60usec_count[8] ),
	.cout(\ps2_keyboard_interface:inst|timer_60usec_count[8]~257 ));
defparam \ps2_keyboard_interface:inst|timer_60usec_count[8]~I .operation_mode = "arithmetic";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[8]~I .synch_mode = "on";
defparam \ps2_keyboard_interface:inst|timer_60usec_count[8]~I .register_cascade_mode = "off";
defparam \ps2_keyboard_

⌨️ 快捷键说明

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