00001 #include "types.h" 00002 00003 nnode_t *make_not_gate_with_input(npin_t *input_pin, nnode_t *node, short mark); 00004 nnode_t *make_1port_logic_gate_with_inputs(operation_list type, int width, signal_list_t *pin_list, nnode_t *node, short mark); 00005 nnode_t *make_2port_logic_gates_with_inputs(operation_list type, int width_port1, signal_list_t *pin_list1, int width_port2, signal_list_t *pin_list2, nnode_t *node, short mark); 00006 00007 nnode_t *make_not_gate(nnode_t *node, short mark); 00008 nnode_t *make_1port_logic_gate(operation_list type, int width, nnode_t *node, short mark); 00009 00010 nnode_t *make_1port_gate(operation_list type, int width_input, int width_output, nnode_t *node, short mark); 00011 nnode_t *make_2port_gate(operation_list type, int width_port1, int width_port2, int width_output, nnode_t *node, short mark); 00012 nnode_t *make_3port_gate(operation_list type, int width_port1, int width_port2, int width_port3, int width_output, nnode_t *node, short mark); 00013 00014 npin_t *get_a_zero_pin(); 00015 npin_t *get_a_one_pin(); 00016 00017 00018 char *node_name_based_on_op(nnode_t *node); 00019 char *node_name(nnode_t *node, char *instance_prefix_name); 00020 char *hard_node_name(nnode_t *node, char *instance_name_prefix, char *hb_name, char *hb_inst); 00021 nnode_t *make_mult_block(nnode_t *node, short mark);