mirror of https://github.com/lnis-uofu/SOFA.git
Merge pull request #36 from LNIS-Projects/xt_dev
Critical Patch on VPR Arch for Shift Register Implementation
This commit is contained in:
commit
82c00eda30
|
@ -1,2 +1,3 @@
|
|||
*.gds filter=lfs diff=lfs merge=lfs -text
|
||||
*.spef filter=lfs diff=lfs merge=lfs -text
|
||||
*.v filter=lfs diff=lfs merge=lfs -text
|
||||
|
|
|
@ -0,0 +1,237 @@
|
|||
<!-- Architecture annotation for OpenFPGA framework
|
||||
This annotation supports the k4_frac_cc_sky130nm.xml
|
||||
- General purpose logic block
|
||||
- K = 6, N = 10, I = 40
|
||||
- Single mode
|
||||
- Routing architecture
|
||||
- L = 4, fc_in = 0.15, fc_out = 0.1
|
||||
- Skywater 130nm PDK
|
||||
- circuit models are binded to the opensource skywater
|
||||
foundry middle-speed (ms) standard cell library
|
||||
-->
|
||||
<openfpga_architecture>
|
||||
<technology_library>
|
||||
<device_library>
|
||||
<device_model name="logic" type="transistor">
|
||||
<lib type="industry" corner="TOP_TT" ref="M" path="${OPENFPGA_PATH}/openfpga_flow/tech/PTM_45nm/45nm.pm"/>
|
||||
<design vdd="0.9" pn_ratio="2"/>
|
||||
<pmos name="pch" chan_length="40e-9" min_width="140e-9" variation="logic_transistor_var"/>
|
||||
<nmos name="nch" chan_length="40e-9" min_width="140e-9" variation="logic_transistor_var"/>
|
||||
</device_model>
|
||||
<device_model name="io" type="transistor">
|
||||
<lib type="academia" ref="M" path="${OPENFPGA_PATH}/openfpga_flow/tech/PTM_45nm/45nm.pm"/>
|
||||
<design vdd="2.5" pn_ratio="3"/>
|
||||
<pmos name="pch_25" chan_length="270e-9" min_width="320e-9" variation="io_transistor_var"/>
|
||||
<nmos name="nch_25" chan_length="270e-9" min_width="320e-9" variation="io_transistor_var"/>
|
||||
</device_model>
|
||||
</device_library>
|
||||
<variation_library>
|
||||
<variation name="logic_transistor_var" abs_deviation="0.1" num_sigma="3"/>
|
||||
<variation name="io_transistor_var" abs_deviation="0.1" num_sigma="3"/>
|
||||
</variation_library>
|
||||
</technology_library>
|
||||
<circuit_library>
|
||||
<circuit_model type="inv_buf" name="sky130_fd_sc_hd__inv_1" prefix="sky130_fd_sc_hd__inv_1" is_default="true" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/inv/sky130_fd_sc_hd__inv_1.v">
|
||||
<design_technology type="cmos" topology="inverter" size="1"/>
|
||||
<device_technology device_model_name="logic"/>
|
||||
<port type="input" prefix="in" lib_name="A" size="1"/>
|
||||
<port type="output" prefix="out" lib_name="Y" size="1"/>
|
||||
<delay_matrix type="rise" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
<delay_matrix type="fall" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
</circuit_model>
|
||||
<circuit_model type="inv_buf" name="sky130_fd_sc_hd__buf_2" prefix="sky130_fd_sc_hd__buf_2" is_default="false" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/buf/sky130_fd_sc_hd__buf_2.v">
|
||||
<design_technology type="cmos" topology="buffer" size="1" num_level="2" f_per_stage="2"/>
|
||||
<device_technology device_model_name="logic"/>
|
||||
<port type="input" prefix="in" lib_name="A" size="1"/>
|
||||
<port type="output" prefix="out" lib_name="X" size="1"/>
|
||||
<delay_matrix type="rise" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
<delay_matrix type="fall" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
</circuit_model>
|
||||
<circuit_model type="inv_buf" name="sky130_fd_sc_hd__buf_4" prefix="sky130_fd_sc_hd__buf_4" is_default="false" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/buf/sky130_fd_sc_hd__buf_4.v">
|
||||
<design_technology type="cmos" topology="buffer" size="1" num_level="2" f_per_stage="4"/>
|
||||
<device_technology device_model_name="logic"/>
|
||||
<port type="input" prefix="in" lib_name="A" size="1"/>
|
||||
<port type="output" prefix="out" lib_name="X" size="1"/>
|
||||
<delay_matrix type="rise" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
<delay_matrix type="fall" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
</circuit_model>
|
||||
<circuit_model type="inv_buf" name="sky130_fd_sc_hd__inv_2" prefix="sky130_fd_sc_hd__inv_2" is_default="false" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/inv/sky130_fd_sc_hd__inv_2.v">
|
||||
<design_technology type="cmos" topology="buffer" size="1"/>
|
||||
<device_technology device_model_name="logic"/>
|
||||
<port type="input" prefix="in" lib_name="A" size="1"/>
|
||||
<port type="output" prefix="out" lib_name="Y" size="1"/>
|
||||
<delay_matrix type="rise" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
<delay_matrix type="fall" in_port="in" out_port="out">
|
||||
10e-12
|
||||
</delay_matrix>
|
||||
</circuit_model>
|
||||
<!-- Define a circuit model for the standard cell MUX2
|
||||
OpenFPGA requires the following truth table for the MUX2
|
||||
When the select signal sel is enabled, the first input, i.e., in0
|
||||
will be propagated to the output, i.e., out
|
||||
If your standard cell provider does not offer the exact truth table,
|
||||
you can simply swap the inputs as shown in the example below
|
||||
-->
|
||||
<circuit_model type="gate" name="sky130_fd_sc_hd__mux2_1" prefix="sky130_fd_sc_hd__mux2_1" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/mux2/sky130_fd_sc_hd__mux2_1.v">
|
||||
<design_technology type="cmos" topology="MUX2"/>
|
||||
<device_technology device_model_name="logic"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="false"/>
|
||||
<port type="input" prefix="in0" lib_name="A1" size="1"/>
|
||||
<port type="input" prefix="in1" lib_name="A0" size="1"/>
|
||||
<port type="input" prefix="sel" lib_name="S" size="1"/>
|
||||
<port type="output" prefix="out" lib_name="X" size="1"/>
|
||||
</circuit_model>
|
||||
<circuit_model type="chan_wire" name="chan_segment" prefix="track_seg" is_default="true">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="false"/>
|
||||
<port type="input" prefix="in" size="1"/>
|
||||
<port type="output" prefix="out" size="1"/>
|
||||
<wire_param model_type="pi" R="101" C="22.5e-15" num_level="1"/>
|
||||
<!-- model_type could be T, res_val and cap_val DON'T CARE -->
|
||||
</circuit_model>
|
||||
<circuit_model type="wire" name="direct_interc" prefix="direct_interc" is_default="true">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="false"/>
|
||||
<port type="input" prefix="in" size="1"/>
|
||||
<port type="output" prefix="out" size="1"/>
|
||||
<wire_param model_type="pi" R="0" C="0" num_level="1"/>
|
||||
<!-- model_type could be T, res_val cap_val should be defined -->
|
||||
</circuit_model>
|
||||
<circuit_model type="mux" name="mux_tree" prefix="mux_tree" is_default="true" dump_structural_verilog="true">
|
||||
<design_technology type="cmos" structure="tree" add_const_input="true" const_input_val="1"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="false"/>
|
||||
<pass_gate_logic circuit_model_name="sky130_fd_sc_hd__mux2_1"/>
|
||||
<port type="input" prefix="in" size="1"/>
|
||||
<port type="output" prefix="out" size="1"/>
|
||||
<port type="sram" prefix="sram" size="1"/>
|
||||
</circuit_model>
|
||||
<circuit_model type="mux" name="mux_tree_tapbuf" prefix="mux_tree_tapbuf" dump_structural_verilog="true">
|
||||
<design_technology type="cmos" structure="tree" add_const_input="true" const_input_val="1"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__buf_4"/>
|
||||
<pass_gate_logic circuit_model_name="sky130_fd_sc_hd__mux2_1"/>
|
||||
<port type="input" prefix="in" size="1"/>
|
||||
<port type="output" prefix="out" size="1"/>
|
||||
<port type="sram" prefix="sram" size="1"/>
|
||||
</circuit_model>
|
||||
<!--DFF subckt ports should be defined as <D> <Q> <CLK> <RESET> <SET> -->
|
||||
<circuit_model type="ff" name="sky130_fd_sc_hd__dfxtp_1" prefix="sky130_fd_sc_hd__dfxtp_1" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/dfxtp/sky130_fd_sc_hd__dfxtp_1.v">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<port type="input" prefix="D" size="1"/>
|
||||
<port type="output" prefix="Q" size="1"/>
|
||||
<port type="clock" prefix="clk" lib_name="CLK" size="1" is_global="false" default_val="0" />
|
||||
</circuit_model>
|
||||
<circuit_model type="lut" name="frac_lut4" prefix="frac_lut4" dump_structural_verilog="true">
|
||||
<design_technology type="cmos" fracturable_lut="true"/>
|
||||
<input_buffer exist="false"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__buf_2"/>
|
||||
<lut_input_inverter exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<lut_input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__buf_2"/>
|
||||
<lut_intermediate_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__buf_2" location_map="-1-"/>
|
||||
<pass_gate_logic circuit_model_name="sky130_fd_sc_hd__mux2_1"/>
|
||||
<port type="input" prefix="in" size="4"/>
|
||||
<port type="output" prefix="lut3_out" size="1" lut_frac_level="3" lut_output_mask="1"/>
|
||||
<port type="output" prefix="lut4_out" size="1" lut_output_mask="0"/>
|
||||
<port type="sram" prefix="sram" size="16"/>
|
||||
</circuit_model>
|
||||
<!--Scan-chain DFF subckt ports should be defined as <D> <Q> <Qb> <CLK> <RESET> <SET> -->
|
||||
<circuit_model type="ccff" name="sky130_fd_sc_hd__dfxtp_1" prefix="sky130_fd_sc_hd__dfxtp_1" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/PDK/skywater-pdk/libraries/sky130_fd_sc_hd/latest/cells/dfxtp/sky130_fd_sc_hd__dfxtp_1.v">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<port type="input" prefix="D" size="1"/>
|
||||
<port type="output" prefix="Q" size="1"/>
|
||||
<port type="clock" prefix="prog_clk" lib_name="CLK" size="1" is_global="true" default_val="0" is_prog="true"/>
|
||||
</circuit_model>
|
||||
<circuit_model type="iopad" name="EMBEDDED_IO_HD" prefix="EMBEDDED_IO_HD" is_default="true" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/HDL/common/digital_io_hd.v">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<port type="input" prefix="SOC_IN" lib_name="SOC_IN" size="1" is_global="true" is_io="true" is_data_io="true"/>
|
||||
<port type="output" prefix="SOC_OUT" lib_name="SOC_OUT" size="1" is_global="true" is_io="true" is_data_io="true"/>
|
||||
<port type="output" prefix="SOC_DIR" lib_name="SOC_DIR" size="1" is_global="true" is_io="true"/>
|
||||
<port type="input" prefix="IO_ISOL_N" lib_name="IO_ISOL_N" size="1" is_global="true" default_val="1"/>
|
||||
<port type="output" prefix="inpad" lib_name="FPGA_IN" size="1"/>
|
||||
<port type="input" prefix="outpad" lib_name="FPGA_OUT" size="1"/>
|
||||
<port type="sram" prefix="en" lib_name="FPGA_DIR" size="1" mode_select="true" circuit_model_name="sky130_fd_sc_hd__dfxtp_1" default_val="1"/>
|
||||
</circuit_model>
|
||||
<circuit_model type="hard_logic" name="LOGIC_VDD" prefix="LOGIC_VDD" is_default="true" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/HDL/common/digital_io_hd.v">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<port type="output" prefix="a" lib_name="Y" size="1"/>
|
||||
</circuit_model>
|
||||
<circuit_model type="hard_logic" name="LOGIC_GND" prefix="LOGIC_GND" is_default="false" verilog_netlist="${SKYWATER_OPENFPGA_HOME}/HDL/common/digital_io_hd.v">
|
||||
<design_technology type="cmos"/>
|
||||
<input_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<output_buffer exist="true" circuit_model_name="sky130_fd_sc_hd__inv_1"/>
|
||||
<port type="output" prefix="a" lib_name="Y" size="1"/>
|
||||
</circuit_model>
|
||||
</circuit_library>
|
||||
<configuration_protocol>
|
||||
<organization type="scan_chain" circuit_model_name="sky130_fd_sc_hd__dfxtp_1" num_regions="1"/>
|
||||
</configuration_protocol>
|
||||
<connection_block>
|
||||
<switch name="routing" circuit_model_name="mux_tree_tapbuf"/>
|
||||
</connection_block>
|
||||
<switch_block>
|
||||
<switch name="routing" circuit_model_name="mux_tree_tapbuf"/>
|
||||
</switch_block>
|
||||
<routing_segment>
|
||||
<segment name="hop4" circuit_model_name="chan_segment"/>
|
||||
</routing_segment>
|
||||
<direct_connection>
|
||||
<direct name="adder_carry" circuit_model_name="direct_interc"/>
|
||||
</direct_connection>
|
||||
<tile_annotations>
|
||||
<global_port name="clk" tile_port="SUPER_LOGIC_CELL.QCK" is_clock="true" default_val="0"/>
|
||||
</tile_annotations>
|
||||
<pb_type_annotations>
|
||||
<!-- physical pb_type binding in complex block IO -->
|
||||
<pb_type name="IO" physical_mode_name="PHYSICAL" idle_mode_name="INPUT"/>
|
||||
<!-- IMPORTANT: must set unused I/Os to operating in INPUT mode !!! -->
|
||||
<pb_type name="IO[PHYSICAL].PHYSICAL" circuit_model_name="EMBEDDED_IO_HD" mode_bits="1"/>
|
||||
<pb_type name="IO[INPUT].INPUT" physical_pb_type_name="IO[PHYSICAL].PHYSICAL" mode_bits="1"/>
|
||||
<pb_type name="IO[OUTPUT].OUTPUT" physical_pb_type_name="IO[PHYSICAL].PHYSICAL" mode_bits="0"/>
|
||||
<!-- End physical pb_type binding in complex block IO -->
|
||||
|
||||
<!-- physical pb_type binding in complex block CLB -->
|
||||
<!-- physical mode will be the default mode if not specified -->
|
||||
<pb_type name="SUPER_LOGIC_CELL.LC" physical_mode_name="PHYSICAL"/>
|
||||
<pb_type name="SUPER_LOGIC_CELL.LC[PHYSICAL].PHYSICAL.frac_logic.frac_lut4" circuit_model_name="frac_lut4" mode_bits="0"/>
|
||||
<pb_type name="SUPER_LOGIC_CELL.LC[PHYSICAL].PHYSICAL.ff" circuit_model_name="sky130_fd_sc_hd__dfxtp_1"/>
|
||||
<!-- BEGIN Binding operating pb_types in mode 'ble4' -->
|
||||
<pb_type name="SUPER_LOGIC_CELL.LC[DEFAULT].DEFAULT.lut_part[VPR_LUT4].VPR_LUT4.lut_inst" physical_pb_type_name="SUPER_LOGIC_CELL.LC[PHYSICAL].PHYSICAL.frac_logic.frac_lut4" mode_bits="0">
|
||||
<!-- Binding the lut4 to the first 4 inputs of fracturable lut4 -->
|
||||
<port name="in" physical_mode_port="in[0:3]"/>
|
||||
<port name="out" physical_mode_port="lut4_out"/>
|
||||
</pb_type>
|
||||
<pb_type name="SUPER_LOGIC_CELL.LC[DEFAULT].DEFAULT.ff" physical_pb_type_name="SUPER_LOGIC_CELL.LC[PHYSICAL].PHYSICAL.ff"/>
|
||||
<!-- END Binding operating pb_types in mode 'ble4' -->
|
||||
|
||||
<!-- physical pb_type binding in complex block LOGIC1 -->
|
||||
<pb_type name="LOGIC_1.logic_1" circuit_model_name="LOGIC_VDD"/>
|
||||
<!-- physical pb_type binding in complex block LOGIC0 -->
|
||||
<pb_type name="LOGIC_0.gnd" circuit_model_name="LOGIC_GND"/>
|
||||
</pb_type_annotations>
|
||||
</openfpga_architecture>
|
|
@ -396,18 +396,21 @@
|
|||
<direct name="direct3" input="ff[0].Q" output="ff[1].DI"/>
|
||||
<direct name="direct4" input="ff[1].Q" output="fabric.sc_out"/>
|
||||
<direct name="direct5" input="ff[1].Q" output="fabric.reg_out"/>
|
||||
<direct name="direct6" input="frac_logic.out[1:1]" output="ff[1:1].D"/>
|
||||
<complete name="complete1" input="fabric.clk" output="ff[1:0].clk"/>
|
||||
<mux name="mux1" input="frac_logic.out[0:0] fabric.reg_in" output="ff[0:0].D">
|
||||
<delay_constant max="25e-12" in_port="frac_logic.out[0:0]" out_port="ff[0:0].D"/>
|
||||
<delay_constant max="45e-12" in_port="fabric.reg_in" out_port="ff[0:0].D"/>
|
||||
</mux>
|
||||
<mux name="mux2" input="ff[0].Q frac_logic.out[0]" output="fabric.out[0]">
|
||||
<mux name="mux2" input="frac_logic.out[1:1] ff[0:0].Q" output="ff[1:1].D">
|
||||
<delay_constant max="25e-12" in_port="frac_logic.out[1:1]" out_port="ff[1:1].D"/>
|
||||
<delay_constant max="45e-12" in_port="ff[0:0].Q" out_port="ff[1:1].D"/>
|
||||
</mux>
|
||||
<mux name="mux3" input="ff[0].Q frac_logic.out[0]" output="fabric.out[0]">
|
||||
<!-- LUT to output is faster than FF to output on a Stratix IV -->
|
||||
<delay_constant max="25e-12" in_port="frac_logic.out[0]" out_port="fabric.out[0]"/>
|
||||
<delay_constant max="45e-12" in_port="ff[0].Q" out_port="fabric.out[0]"/>
|
||||
</mux>
|
||||
<mux name="mux3" input="ff[1].Q frac_logic.out[1]" output="fabric.out[1]">
|
||||
<mux name="mux4" input="ff[1].Q frac_logic.out[1]" output="fabric.out[1]">
|
||||
<!-- LUT to output is faster than FF to output on a Stratix IV -->
|
||||
<delay_constant max="25e-12" in_port="frac_logic.out[1]" out_port="fabric.out[1]"/>
|
||||
<delay_constant max="45e-12" in_port="ff[1].Q" out_port="fabric.out[1]"/>
|
||||
|
@ -551,6 +554,7 @@
|
|||
<mode name="shift_register">
|
||||
<pb_type name="shift_reg" num_pb="1">
|
||||
<input name="reg_in" num_pins="1"/>
|
||||
<output name="ff_out" num_pins="2"/>
|
||||
<output name="reg_out" num_pins="1"/>
|
||||
<clock name="clk" num_pins="1"/>
|
||||
<pb_type name="ff" blif_model=".latch" num_pb="2" class="flipflop">
|
||||
|
@ -564,13 +568,16 @@
|
|||
<direct name="direct1" input="shift_reg.reg_in" output="ff[0].D"/>
|
||||
<direct name="direct2" input="ff[0].Q" output="ff[1].D"/>
|
||||
<direct name="direct3" input="ff[1].Q" output="shift_reg.reg_out"/>
|
||||
<direct name="direct4" input="ff[0].Q" output="shift_reg.ff_out[0:0]"/>
|
||||
<direct name="direct5" input="ff[1].Q" output="shift_reg.ff_out[1:1]"/>
|
||||
<complete name="complete1" input="shift_reg.clk" output="ff.clk"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct name="direct1" input="fle.reg_in" output="shift_reg.reg_in"/>
|
||||
<direct name="direct2" input="shift_reg.reg_out" output="fle.reg_out"/>
|
||||
<direct name="direct3" input="fle.clk" output="shift_reg.clk"/>
|
||||
<direct name="direct3" input="shift_reg.ff_out" output="fle.out"/>
|
||||
<direct name="direct4" input="fle.clk" output="shift_reg.clk"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
<!-- Define shift register end -->
|
||||
|
|
|
@ -0,0 +1,555 @@
|
|||
<?xml version="1.0" ?>
|
||||
<architecture name="QL745A" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<models>
|
||||
<model name="IO_MACRO">
|
||||
<input_ports>
|
||||
<port name="outpad"/>
|
||||
</input_ports>
|
||||
<output_ports>
|
||||
<port name="inpad"/>
|
||||
</output_ports>
|
||||
</model>
|
||||
<model name="openfpga_ff">
|
||||
<input_ports>
|
||||
<port clock="QCK" name="D"/>
|
||||
<port is_clock="1" name="QCK"/>
|
||||
</input_ports>
|
||||
<output_ports>
|
||||
<port clock="QCK" name="CQZ"/>
|
||||
</output_ports>
|
||||
</model>
|
||||
<model name="LUT4">
|
||||
<input_ports>
|
||||
<port combinational_sink_ports="O" name="I0"/>
|
||||
<port combinational_sink_ports="O" name="I1"/>
|
||||
<port combinational_sink_ports="O" name="I2"/>
|
||||
<port combinational_sink_ports="O" name="I3"/>
|
||||
</input_ports>
|
||||
<output_ports>
|
||||
<port name="O"/>
|
||||
</output_ports>
|
||||
</model>
|
||||
<model name="logic_1">
|
||||
<input_ports/>
|
||||
<output_ports>
|
||||
<port name="a"/>
|
||||
</output_ports>
|
||||
</model>
|
||||
<model name="logic_0">
|
||||
<input_ports/>
|
||||
<output_ports>
|
||||
<port name="a"/>
|
||||
</output_ports>
|
||||
</model>
|
||||
</models>
|
||||
<tiles>
|
||||
<tile capacity="8" name="IO">
|
||||
<pinlocations pattern="custom">
|
||||
<loc side="top">
|
||||
IO.OQI
|
||||
</loc>
|
||||
<loc side="right">
|
||||
IO.IQZ
|
||||
</loc>
|
||||
</pinlocations>
|
||||
<fc in_type="frac" in_val="0.50" out_type="frac" out_val="0.25"/>
|
||||
<input equivalent="none" name="OQI" num_pins="1"/>
|
||||
<output equivalent="none" name="IQZ" num_pins="1"/>
|
||||
<equivalent_sites>
|
||||
<site pb_type="IO" pin_mapping="custom">
|
||||
<direct from="IO.IQZ" to="IO.inpad"/>
|
||||
<direct from="IO.OQI" to="IO.outpad"/>
|
||||
</site>
|
||||
</equivalent_sites>
|
||||
</tile>
|
||||
<!-- Super Logic Cluster tile -->
|
||||
<tile area="3900" name="SUPER_LOGIC_CELL">
|
||||
<pinlocations pattern="custom">
|
||||
<loc side="top">
|
||||
SUPER_LOGIC_CELL.L0I
|
||||
SUPER_LOGIC_CELL.L1I
|
||||
SUPER_LOGIC_CELL.L2I
|
||||
SUPER_LOGIC_CELL.L3I
|
||||
SUPER_LOGIC_CELL.L4I
|
||||
SUPER_LOGIC_CELL.L5I
|
||||
SUPER_LOGIC_CELL.L6I
|
||||
SUPER_LOGIC_CELL.L7I
|
||||
SUPER_LOGIC_CELL.CI
|
||||
SUPER_LOGIC_CELL.QCK
|
||||
</loc>
|
||||
<loc side="right">
|
||||
SUPER_LOGIC_CELL.FZ
|
||||
SUPER_LOGIC_CELL.AQZ
|
||||
</loc>
|
||||
<loc side="bottom">
|
||||
SUPER_LOGIC_CELL.CO
|
||||
</loc>
|
||||
</pinlocations>
|
||||
<fc in_type="frac" in_val="0.5" out_type="frac" out_val="0.25"/>
|
||||
<clock name="QCK" num_pins="1"/>
|
||||
<output equivalent="none" name="AQZ" num_pins="8"/>
|
||||
<output equivalent="none" name="FZ" num_pins="8"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<!-- Carry output from the last logic cell -->
|
||||
<input name="CI" num_pins="1"/>
|
||||
<!-- Carry input to the 1st logic cell -->
|
||||
<input equivalent="none" name="L7I" num_pins="4"/>
|
||||
<input equivalent="none" name="L6I" num_pins="4"/>
|
||||
<input equivalent="none" name="L5I" num_pins="4"/>
|
||||
<input equivalent="none" name="L4I" num_pins="4"/>
|
||||
<input equivalent="none" name="L3I" num_pins="4"/>
|
||||
<input equivalent="none" name="L2I" num_pins="4"/>
|
||||
<input equivalent="none" name="L1I" num_pins="4"/>
|
||||
<input equivalent="none" name="L0I" num_pins="4"/>
|
||||
<!-- Data inputs to each logic cell -->
|
||||
<equivalent_sites>
|
||||
<site pb_type="SUPER_LOGIC_CELL" pin_mapping="custom">
|
||||
<direct from="SUPER_LOGIC_CELL.L0I" to="SUPER_LOGIC_CELL.L0I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L1I" to="SUPER_LOGIC_CELL.L1I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L2I" to="SUPER_LOGIC_CELL.L2I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L3I" to="SUPER_LOGIC_CELL.L3I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L4I" to="SUPER_LOGIC_CELL.L4I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L5I" to="SUPER_LOGIC_CELL.L5I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L6I" to="SUPER_LOGIC_CELL.L6I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.L7I" to="SUPER_LOGIC_CELL.L7I"/>
|
||||
<direct from="SUPER_LOGIC_CELL.CI" to="SUPER_LOGIC_CELL.CI"/>
|
||||
<direct from="SUPER_LOGIC_CELL.CO" to="SUPER_LOGIC_CELL.CO"/>
|
||||
<direct from="SUPER_LOGIC_CELL.FZ" to="SUPER_LOGIC_CELL.FZ"/>
|
||||
<direct from="SUPER_LOGIC_CELL.AQZ" to="SUPER_LOGIC_CELL.AQZ"/>
|
||||
<direct from="SUPER_LOGIC_CELL.QCK" to="SUPER_LOGIC_CELL.QCK"/>
|
||||
</site>
|
||||
</equivalent_sites>
|
||||
</tile>
|
||||
<tile capacity="1" name="TL-VCC">
|
||||
<switchbox_locations pattern="all"/>
|
||||
<pinlocations pattern="custom">
|
||||
<loc side="right">TL-VCC.VCC</loc>
|
||||
</pinlocations>
|
||||
<fc in_type="frac" in_val="0.50" out_type="frac" out_val="0.25"/>
|
||||
<equivalent_sites>
|
||||
<site pb_type="LOGIC_1" pin_mapping="custom">
|
||||
<direct from="TL-VCC.VCC" to="LOGIC_1.a"/>
|
||||
</site>
|
||||
</equivalent_sites>
|
||||
<output name="VCC" num_pins="1"/>
|
||||
</tile>
|
||||
<tile capacity="1" name="TL-GND">
|
||||
<switchbox_locations pattern="all"/>
|
||||
<pinlocations pattern="custom">
|
||||
<loc side="right">TL-GND.GND</loc>
|
||||
</pinlocations>
|
||||
<fc in_type="frac" in_val="0.50" out_type="frac" out_val="0.25"/>
|
||||
<equivalent_sites>
|
||||
<site pb_type="LOGIC_0" pin_mapping="custom">
|
||||
<direct from="TL-GND.GND" to="LOGIC_0.a"/>
|
||||
</site>
|
||||
</equivalent_sites>
|
||||
<output name="GND" num_pins="1"/>
|
||||
</tile>
|
||||
</tiles>
|
||||
<layout>
|
||||
<fixed_layout height="12" name="ql-ap3-8x8" width="12">
|
||||
<!-- Fill the entire grid with empty tiles -->
|
||||
<region endx="W-1" endy="H-1" priority="1" startx="0" starty="0" type="EMPTY"/>
|
||||
<!-- Fill with 'SLC' -->
|
||||
<region endx="W-3" endy="H-3" priority="10" startx="2" starty="2" type="SUPER_LOGIC_CELL"/>
|
||||
<!-- Top IOs -->
|
||||
<region endx="W-3" endy="1" priority="20" startx="2" starty="1" type="IO"/>
|
||||
<!-- Left IOs -->
|
||||
<region endx="1" endy="H-3" priority="20" startx="1" starty="2" type="IO"/>
|
||||
<!-- Bottom IOs -->
|
||||
<region endx="W-3" endy="H-2" priority="20" startx="2" starty="H-2" type="IO"/>
|
||||
<!-- Right IOs -->
|
||||
<region endx="W-2" endy="H-3" priority="20" startx="W-2" starty="2" type="IO"/>
|
||||
<!-- Const sources -->
|
||||
<single priority="100" type="TL-VCC" x="1" y="1"/>
|
||||
<single priority="100" type="TL-GND" x="1" y="H-2"/>
|
||||
</fixed_layout>
|
||||
</layout>
|
||||
<device>
|
||||
<sizing R_minW_nmos="13090.000000" R_minW_pmos="19086.831111"/>
|
||||
<area grid_logic_tile_area="0"/>
|
||||
<chan_width_distr>
|
||||
<x distr="uniform" peak="1.000000"/>
|
||||
<y distr="uniform" peak="1.000000"/>
|
||||
</chan_width_distr>
|
||||
<switch_block fs="3" type="wilton"/>
|
||||
<connection_block input_switch_name="routing"/>
|
||||
<default_fc in_type="frac" in_val="0.50" out_type="frac" out_val="0.25"/>
|
||||
</device>
|
||||
<switchlist>
|
||||
<switch Cin="0.0" Cinternal="0.0" Cout="0.0" R="0.0" Tdel="1e-10" buf_size="27.645901" mux_trans_size="2.630740" name="routing" type="mux"/>
|
||||
</switchlist>
|
||||
<segmentlist>
|
||||
<segment Cmetal="22.5e-15" Rmetal="1e-12" freq="1.000000" length="4" name="hop4" type="unidir">
|
||||
<sb type="pattern">1 1 1 1 1</sb>
|
||||
<cb type="pattern">1 1 1 1</cb>
|
||||
<mux name="routing"/>
|
||||
</segment>
|
||||
</segmentlist>
|
||||
<directlist>
|
||||
<direct from_pin="SUPER_LOGIC_CELL.CO" name="adder_carry" to_pin="SUPER_LOGIC_CELL.CI" x_offset="0" y_offset="-1" z_offset="0"/>
|
||||
</directlist>
|
||||
<complexblocklist>
|
||||
<pb_type name="IO">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
<output name="inpad" num_pins="1"/>
|
||||
<mode name="PHYSICAL">
|
||||
<pb_type name="PHYSICAL" num_pb="1">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
<output name="inpad" num_pins="1"/>
|
||||
<pb_type blif_model=".subckt IO_MACRO" name="macro" num_pb="1">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
<output name="inpad" num_pins="1"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="macro.inpad" name="PHYSICAL-inpad" output="PHYSICAL.inpad"/>
|
||||
<direct input="PHYSICAL.outpad" name="macro-outpad" output="macro.outpad"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="PHYSICAL.inpad" name="IO-inpad" output="IO.inpad"/>
|
||||
<direct input="IO.outpad" name="PHYSICAL-outpad" output="PHYSICAL.outpad"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
<mode name="INPUT">
|
||||
<pb_type name="INPUT" num_pb="1">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
<output name="inpad" num_pins="1"/>
|
||||
<pb_type blif_model=".input" name="i_pad" num_pb="1">
|
||||
<output name="inpad" num_pins="1"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="i_pad.inpad" name="INPUT-inpad" output="INPUT.inpad"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="IO.outpad" name="INPUT-outpad" output="INPUT.outpad"/>
|
||||
<direct input="INPUT.inpad" name="IO-inpad" output="IO.inpad"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
<mode name="OUTPUT">
|
||||
<pb_type name="OUTPUT" num_pb="1">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
<output name="inpad" num_pins="1"/>
|
||||
<pb_type blif_model=".output" name="o_pad" num_pb="1">
|
||||
<input name="outpad" num_pins="1"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="OUTPUT.outpad" name="o_pad-outpad" output="o_pad.outpad"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="OUTPUT.inpad" name="IO-inpad" output="IO.inpad"/>
|
||||
<direct input="IO.outpad" name="OUTPUT-outpad" output="OUTPUT.outpad"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
</pb_type>
|
||||
<pb_type name="SUPER_LOGIC_CELL">
|
||||
<clock name="QCK" num_pins="1"/>
|
||||
<input name="CI" num_pins="1"/>
|
||||
<input name="L0I" num_pins="4"/>
|
||||
<input name="L1I" num_pins="4"/>
|
||||
<input name="L2I" num_pins="4"/>
|
||||
<input name="L3I" num_pins="4"/>
|
||||
<input name="L4I" num_pins="4"/>
|
||||
<input name="L5I" num_pins="4"/>
|
||||
<input name="L6I" num_pins="4"/>
|
||||
<input name="L7I" num_pins="4"/>
|
||||
<output name="AQZ" num_pins="8"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<output name="FZ" num_pins="8"/>
|
||||
<pb_type name="LC" num_pb="8">
|
||||
<input name="CI" num_pins="1"/>
|
||||
<input name="LI" num_pins="4"/>
|
||||
<input name="QCK" num_pins="1"/>
|
||||
<output name="AQZ" num_pins="1"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<mode name="PHYSICAL" disabled_in_pack="true">
|
||||
<pb_type name="PHYSICAL" num_pb="1">
|
||||
<input name="CI" num_pins="1"/>
|
||||
<input name="LI" num_pins="4"/>
|
||||
<output name="AQZ" num_pins="1"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<clock name="QCK" num_pins="1"/>
|
||||
<pb_type name="frac_logic" num_pb="1">
|
||||
<input name="LI" num_pins="4"/>
|
||||
<input name="CI" num_pins="1"/>
|
||||
<output name="O" num_pins="1"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<!-- Define LUT -->
|
||||
<pb_type name="frac_lut4" blif_model=".subckt LUT4" num_pb="1">
|
||||
<input name="in" num_pins="4"/>
|
||||
<output name="lut3_out" num_pins="1"/>
|
||||
<output name="lut4_out" num_pins="1"/>
|
||||
<delay_constant in_port="frac_lut4.in" max="1e-10" out_port="frac_lut4.lut3_out"/>
|
||||
<delay_constant in_port="frac_lut4.in" max="1e-10" out_port="frac_lut4.lut4_out"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct name="direct1" input="frac_logic.LI[0]" output="frac_lut4.in[0]" />
|
||||
<direct name="direct2" input="frac_logic.LI[1]" output="frac_lut4.in[1]" />
|
||||
<mux name="i2_ci" input="frac_logic.LI[2] frac_logic.CI" output="frac_lut4.in[2]"/>
|
||||
<direct name="direct3" input="frac_logic.LI[3]" output="frac_lut4.in[3]" />
|
||||
<direct name="direct4" input="frac_lut4.lut4_out" output="frac_logic.O" />
|
||||
<direct name="direct4" input="frac_lut4.lut3_out" output="frac_logic.CO" />
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<!-- Define flip-flop with scan-chain capability, DI is the scan-chain data input -->
|
||||
<pb_type name="ff" blif_model=".subckt openfpga_ff" num_pb="1">
|
||||
<clock name="QCK" num_pins="1"/>
|
||||
<input name="D" num_pins="1"/>
|
||||
<output name="CQZ" num_pins="1"/>
|
||||
<T_clock_to_Q clock="QCK" max="1e-10" port="ff.CQZ"/>
|
||||
<T_setup clock="QCK" port="ff.D" value="1e-10"/>
|
||||
<T_hold clock="QCK" port="ff.D" value="1e-10"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct name="direct_LI0" input="PHYSICAL.LI[0]" output="frac_logic.LI[0]" />
|
||||
<direct name="direct_LI1" input="PHYSICAL.LI[1]" output="frac_logic.LI[1]" />
|
||||
<direct name="direct_LI2" input="PHYSICAL.LI[2]" output="frac_logic.LI[2]" />
|
||||
<direct name="direct_LI3" input="PHYSICAL.LI[3]" output="frac_logic.LI[3]" />
|
||||
<direct name="direct_CI" input="PHYSICAL.CI" output="frac_logic.CI" />
|
||||
<direct name="direct_QCK" input="PHYSICAL.QCK" output="ff.QCK" />
|
||||
<mux name="lut_qdi" input="frac_logic.O PHYSICAL.LI[3]" output="ff.D"/>
|
||||
<direct name="direct_AQZ" input="ff.CQZ" output="PHYSICAL.AQZ" />
|
||||
<direct name="direct_FZ" input="frac_logic.O" output="PHYSICAL.FZ" />
|
||||
<direct name="direct_CO" input="frac_logic.CO" output="PHYSICAL.CO" />
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="PHYSICAL.AQZ" name="LC-AQZ" output="LC.AQZ"/>
|
||||
<direct input="PHYSICAL.CO" name="LC-CO" output="LC.CO"/>
|
||||
<direct input="PHYSICAL.FZ" name="LC-FZ" output="LC.FZ"/>
|
||||
<direct input="LC.CI" name="PHYSICAL-CI" output="PHYSICAL.CI"/>
|
||||
<direct input="LC.LI" name="PHYSICAL-LI" output="PHYSICAL.LI"/>
|
||||
<direct input="LC.QCK" name="PHYSICAL-QCK" output="PHYSICAL.QCK"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
|
||||
<mode name="DEFAULT">
|
||||
<pb_type name="DEFAULT" num_pb="1">
|
||||
<input name="CI" num_pins="1"/>
|
||||
<input name="LI" num_pins="4"/>
|
||||
<input name="QCK" num_pins="1"/>
|
||||
<output name="AQZ" num_pins="1"/>
|
||||
<output name="CO" num_pins="1"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<pb_type blif_model=".subckt openfpga_ff" name="ff" num_pb="1">
|
||||
<clock name="QCK" num_pins="1"/>
|
||||
<input name="D" num_pins="1"/>
|
||||
<output name="CQZ" num_pins="1"/>
|
||||
<T_clock_to_Q clock="QCK" max="1e-10" port="ff.CQZ"/>
|
||||
<T_setup clock="QCK" port="ff.D" value="1e-10"/>
|
||||
<T_hold clock="QCK" port="ff.D" value="1e-10"/>
|
||||
<metadata>
|
||||
<meta name="fasm_prefix">BLK2REG</meta>
|
||||
<meta name="fasm_features"/>
|
||||
</metadata>
|
||||
</pb_type>
|
||||
<pb_type name="lut_part" num_pb="1">
|
||||
<input name="LI" num_pins="4"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<mode name="VPR_LUT4">
|
||||
<pb_type name="VPR_LUT4" num_pb="1">
|
||||
<input name="LI" num_pins="4"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<pb_type name="lut_inst" num_pb="1">
|
||||
<input name="in" num_pins="4"/>
|
||||
<output name="out" num_pins="1"/>
|
||||
<pb_type blif_model=".names" class="lut" name="lut" num_pb="1">
|
||||
<input name="in" num_pins="4" port_class="lut_in"/>
|
||||
<output name="out" num_pins="1" port_class="lut_out"/>
|
||||
<delay_matrix in_port="lut.in" out_port="lut.out" type="max">
|
||||
1e-10 1e-10 1e-10 1e-10
|
||||
</delay_matrix>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="lut_inst.in[0]" name="lut-in[0]" output="lut.in[0]"/>
|
||||
<direct input="lut_inst.in[1]" name="lut-in[1]" output="lut.in[1]"/>
|
||||
<direct input="lut_inst.in[2]" name="lut-in[2]" output="lut.in[2]"/>
|
||||
<direct input="lut_inst.in[3]" name="lut-in[3]" output="lut.in[3]"/>
|
||||
<direct input="lut.out" name="lut_inst-out" output="lut_inst.out"/>
|
||||
</interconnect>
|
||||
<metadata>
|
||||
<meta name="fasm_prefix">LUT4</meta>
|
||||
<meta name="fasm_type">LUT</meta>
|
||||
<meta name="fasm_lut">INIT[15:0] = lut</meta>
|
||||
</metadata>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="lut_inst.out" name="VPR_LUT4-FZ" output="VPR_LUT4.FZ">
|
||||
<pack_pattern in_port="lut_inst.out" name="pack-VPR_LUT_to_FF" out_port="VPR_LUT4.FZ"/>
|
||||
</direct>
|
||||
<direct input="VPR_LUT4.LI[0]" name="lut_inst-in[0]" output="lut_inst.in[0]"/>
|
||||
<direct input="VPR_LUT4.LI[1]" name="lut_inst-in[1]" output="lut_inst.in[1]"/>
|
||||
<direct input="VPR_LUT4.LI[2]" name="lut_inst-in[2]" output="lut_inst.in[2]"/>
|
||||
<direct input="VPR_LUT4.LI[3]" name="lut_inst-in[3]" output="lut_inst.in[3]"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="lut_part.LI" name="VPR_LUT4-LI" output="VPR_LUT4.LI"/>
|
||||
<direct input="VPR_LUT4.FZ" name="lut_part-FZ" output="lut_part.FZ"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
<!--mode name="LUT4">
|
||||
<pb_type name="LUT4" num_pb="1">
|
||||
<input name="LI" num_pins="4"/>
|
||||
<output name="FZ" num_pins="1"/>
|
||||
<pb_type blif_model=".subckt LUT4" name="lut_inst" num_pb="1">
|
||||
<input name="I0" num_pins="1"/>
|
||||
<input name="I1" num_pins="1"/>
|
||||
<input name="I2" num_pins="1"/>
|
||||
<input name="I3" num_pins="1"/>
|
||||
<output name="O" num_pins="1"/>
|
||||
<delay_constant in_port="lut_inst.I0" max="1e-10" out_port="lut_inst.O"/>
|
||||
<delay_constant in_port="lut_inst.I1" max="1e-10" out_port="lut_inst.O"/>
|
||||
<delay_constant in_port="lut_inst.I2" max="1e-10" out_port="lut_inst.O"/>
|
||||
<delay_constant in_port="lut_inst.I3" max="1e-10" out_port="lut_inst.O"/>
|
||||
<metadata>
|
||||
<meta name="fasm_prefix">LUT4</meta>
|
||||
<meta name="fasm_params">INIT[15:0]=INIT</meta>
|
||||
</metadata>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="lut_inst.O" name="LUT4-FZ" output="LUT4.FZ">
|
||||
<pack_pattern in_port="lut_inst.O" name="pack-LUT4_to_FF" out_port="LUT4.FZ"/>
|
||||
</direct>
|
||||
<direct input="LUT4.LI[0]" name="lut_inst-I0" output="lut_inst.I0"/>
|
||||
<direct input="LUT4.LI[1]" name="lut_inst-I1" output="lut_inst.I1"/>
|
||||
<direct input="LUT4.LI[2]" name="lut_inst-I2" output="lut_inst.I2"/>
|
||||
<direct input="LUT4.LI[3]" name="lut_inst-I3" output="lut_inst.I3"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="lut_part.LI" name="LUT4-LI" output="LUT4.LI"/>
|
||||
<direct input="LUT4.FZ" name="lut_part-FZ" output="lut_part.FZ"/>
|
||||
</interconnect>
|
||||
</mode-->
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="ff.CQZ" name="DEFAULT-AQZ" output="DEFAULT.AQZ"/>
|
||||
<direct input="lut_part.FZ" name="DEFAULT-FZ" output="DEFAULT.FZ">
|
||||
<pack_pattern in_port="lut_part.FZ" name="pack-VPR_LUT_to_FF" out_port="DEFAULT.FZ"/>
|
||||
<!--pack_pattern in_port="lut_part.FZ" name="pack-LUT4_to_FF" out_port="DEFAULT.FZ"/-->
|
||||
</direct>
|
||||
<mux input="lut_part.FZ DEFAULT.LI[3]" name="cds_mux" output="ff.D">
|
||||
<metadata>
|
||||
<meta name="fasm_mux">
|
||||
lut_part.FZ : I0
|
||||
DEFAULT.LI[3] : I1
|
||||
</meta>
|
||||
<meta name="type">bel</meta>
|
||||
<meta name="subtype">routing</meta>
|
||||
</metadata>
|
||||
</mux>
|
||||
<direct input="DEFAULT.QCK" name="ff-QCK" output="ff.QCK"/>
|
||||
<direct input="DEFAULT.LI[0]" name="lut_part-LI[0]" output="lut_part.LI[0]"/>
|
||||
<direct input="DEFAULT.LI[1]" name="lut_part-LI[1]" output="lut_part.LI[1]"/>
|
||||
<direct input="DEFAULT.LI[2]" name="lut_part-LI[2]" output="lut_part.LI[2]"/>
|
||||
<direct input="DEFAULT.LI[3]" name="lut_part-LI[3]" output="lut_part.LI[3]"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="LC.CI" name="DEFAULT-CI" output="DEFAULT.CI"/>
|
||||
<direct input="LC.LI" name="DEFAULT-LI" output="DEFAULT.LI"/>
|
||||
<direct input="LC.QCK" name="DEFAULT-QCK" output="DEFAULT.QCK"/>
|
||||
<direct input="DEFAULT.AQZ" name="LC-AQZ" output="LC.AQZ"/>
|
||||
<direct input="DEFAULT.CO" name="LC-CO" output="LC.CO"/>
|
||||
<direct input="DEFAULT.FZ" name="LC-FZ" output="LC.FZ"/>
|
||||
</interconnect>
|
||||
</mode>
|
||||
<metadata>
|
||||
<meta name="fasm_prefix">LC0 LC1 LC2 LC3 LC4 LC5 LC6 LC7</meta>
|
||||
</metadata>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="SUPER_LOGIC_CELL.CI" name="LC[0]-CI" output="LC[0].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L0I[0]" name="LC[0]-LI[0]" output="LC[0].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L0I[1]" name="LC[0]-LI[1]" output="LC[0].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L0I[2]" name="LC[0]-LI[2]" output="LC[0].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L0I[3]" name="LC[0]-LI[3]" output="LC[0].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[0]-QCK" output="LC[0].QCK"/>
|
||||
<direct input="LC[0].CO" name="LC[1]-CI" output="LC[1].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L1I[0]" name="LC[1]-LI[0]" output="LC[1].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L1I[1]" name="LC[1]-LI[1]" output="LC[1].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L1I[2]" name="LC[1]-LI[2]" output="LC[1].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L1I[3]" name="LC[1]-LI[3]" output="LC[1].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[1]-QCK" output="LC[1].QCK"/>
|
||||
<direct input="LC[1].CO" name="LC[2]-CI" output="LC[2].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L2I[0]" name="LC[2]-LI[0]" output="LC[2].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L2I[1]" name="LC[2]-LI[1]" output="LC[2].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L2I[2]" name="LC[2]-LI[2]" output="LC[2].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L2I[3]" name="LC[2]-LI[3]" output="LC[2].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[2]-QCK" output="LC[2].QCK"/>
|
||||
<direct input="LC[2].CO" name="LC[3]-CI" output="LC[3].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L3I[0]" name="LC[3]-LI[0]" output="LC[3].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L3I[1]" name="LC[3]-LI[1]" output="LC[3].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L3I[2]" name="LC[3]-LI[2]" output="LC[3].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L3I[3]" name="LC[3]-LI[3]" output="LC[3].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[3]-QCK" output="LC[3].QCK"/>
|
||||
<direct input="LC[3].CO" name="LC[4]-CI" output="LC[4].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L4I[0]" name="LC[4]-LI[0]" output="LC[4].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L4I[1]" name="LC[4]-LI[1]" output="LC[4].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L4I[2]" name="LC[4]-LI[2]" output="LC[4].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L4I[3]" name="LC[4]-LI[3]" output="LC[4].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[4]-QCK" output="LC[4].QCK"/>
|
||||
<direct input="LC[4].CO" name="LC[5]-CI" output="LC[5].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L5I[0]" name="LC[5]-LI[0]" output="LC[5].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L5I[1]" name="LC[5]-LI[1]" output="LC[5].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L5I[2]" name="LC[5]-LI[2]" output="LC[5].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L5I[3]" name="LC[5]-LI[3]" output="LC[5].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[5]-QCK" output="LC[5].QCK"/>
|
||||
<direct input="LC[5].CO" name="LC[6]-CI" output="LC[6].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L6I[0]" name="LC[6]-LI[0]" output="LC[6].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L6I[1]" name="LC[6]-LI[1]" output="LC[6].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L6I[2]" name="LC[6]-LI[2]" output="LC[6].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L6I[3]" name="LC[6]-LI[3]" output="LC[6].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[6]-QCK" output="LC[6].QCK"/>
|
||||
<direct input="LC[6].CO" name="LC[7]-CI" output="LC[7].CI"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L7I[0]" name="LC[7]-LI[0]" output="LC[7].LI[0]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L7I[1]" name="LC[7]-LI[1]" output="LC[7].LI[1]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L7I[2]" name="LC[7]-LI[2]" output="LC[7].LI[2]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.L7I[3]" name="LC[7]-LI[3]" output="LC[7].LI[3]"/>
|
||||
<direct input="SUPER_LOGIC_CELL.QCK" name="LC[7]-QCK" output="LC[7].QCK"/>
|
||||
<direct input="LC[0].AQZ" name="SUPER_LOGIC_CELL-AQZ[0]" output="SUPER_LOGIC_CELL.AQZ[0]"/>
|
||||
<direct input="LC[1].AQZ" name="SUPER_LOGIC_CELL-AQZ[1]" output="SUPER_LOGIC_CELL.AQZ[1]"/>
|
||||
<direct input="LC[2].AQZ" name="SUPER_LOGIC_CELL-AQZ[2]" output="SUPER_LOGIC_CELL.AQZ[2]"/>
|
||||
<direct input="LC[3].AQZ" name="SUPER_LOGIC_CELL-AQZ[3]" output="SUPER_LOGIC_CELL.AQZ[3]"/>
|
||||
<direct input="LC[4].AQZ" name="SUPER_LOGIC_CELL-AQZ[4]" output="SUPER_LOGIC_CELL.AQZ[4]"/>
|
||||
<direct input="LC[5].AQZ" name="SUPER_LOGIC_CELL-AQZ[5]" output="SUPER_LOGIC_CELL.AQZ[5]"/>
|
||||
<direct input="LC[6].AQZ" name="SUPER_LOGIC_CELL-AQZ[6]" output="SUPER_LOGIC_CELL.AQZ[6]"/>
|
||||
<direct input="LC[7].AQZ" name="SUPER_LOGIC_CELL-AQZ[7]" output="SUPER_LOGIC_CELL.AQZ[7]"/>
|
||||
<direct input="LC[7].CO" name="SUPER_LOGIC_CELL-CO" output="SUPER_LOGIC_CELL.CO"/>
|
||||
<direct input="LC[0].FZ" name="SUPER_LOGIC_CELL-FZ[0]" output="SUPER_LOGIC_CELL.FZ[0]"/>
|
||||
<direct input="LC[1].FZ" name="SUPER_LOGIC_CELL-FZ[1]" output="SUPER_LOGIC_CELL.FZ[1]"/>
|
||||
<direct input="LC[2].FZ" name="SUPER_LOGIC_CELL-FZ[2]" output="SUPER_LOGIC_CELL.FZ[2]"/>
|
||||
<direct input="LC[3].FZ" name="SUPER_LOGIC_CELL-FZ[3]" output="SUPER_LOGIC_CELL.FZ[3]"/>
|
||||
<direct input="LC[4].FZ" name="SUPER_LOGIC_CELL-FZ[4]" output="SUPER_LOGIC_CELL.FZ[4]"/>
|
||||
<direct input="LC[5].FZ" name="SUPER_LOGIC_CELL-FZ[5]" output="SUPER_LOGIC_CELL.FZ[5]"/>
|
||||
<direct input="LC[6].FZ" name="SUPER_LOGIC_CELL-FZ[6]" output="SUPER_LOGIC_CELL.FZ[6]"/>
|
||||
<direct input="LC[7].FZ" name="SUPER_LOGIC_CELL-FZ[7]" output="SUPER_LOGIC_CELL.FZ[7]"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<pb_type name="LOGIC_1">
|
||||
<output name="a" num_pins="1"/>
|
||||
<pb_type blif_model=".subckt logic_1" name="logic_1" num_pb="1">
|
||||
<output name="a" num_pins="1"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="logic_1.a" name="LOGIC_1-a" output="LOGIC_1.a"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
<pb_type name="LOGIC_0">
|
||||
<output name="a" num_pins="1"/>
|
||||
<pb_type blif_model=".subckt logic_0" name="gnd" num_pb="1">
|
||||
<output name="a" num_pins="1"/>
|
||||
</pb_type>
|
||||
<interconnect>
|
||||
<direct input="gnd.a" name="LOGIC_0-a" output="LOGIC_0.a"/>
|
||||
</interconnect>
|
||||
</pb_type>
|
||||
</complexblocklist>
|
||||
</architecture>
|
||||
|
|
@ -25,6 +25,9 @@ Feedback connections between LEs are implemented by the global routing architect
|
|||
Multi-mode Logic Element
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Physical Implementation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
As shown in :numref:`fig_fle_arch`, each Logic Element (LE) consists of
|
||||
|
||||
- a fracturable 4-input Look-Up Table (LUT)
|
||||
|
@ -40,9 +43,63 @@ As shown in :numref:`fig_fle_arch`, each Logic Element (LE) consists of
|
|||
|
||||
The LE can operate in different modes to map logic function efficiently
|
||||
|
||||
- 4-input LUT and single FF
|
||||
- Dual 3-input LUTs and 2 FFs
|
||||
- 2-bit shift registers
|
||||
- 4-input LUT and single FF (see details in :ref:`clb_arch_le_single_lut4_mode`).
|
||||
- Dual 3-input LUTs and 2 FFs (see details in :ref:`clb_arch_le_dual_lut3_mode`).
|
||||
- 2-bit shift registers (see details in :ref:`clb_arch_le_shift_reg_mode`).
|
||||
|
||||
|
||||
.. _clb_arch_le_single_lut4_mode:
|
||||
|
||||
Operating mode: LUT4 + FF
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The logic element can operate in the Look-Up Table (LUT) + Flip-flop (FF) mode as many classical FPGA logic elements.
|
||||
As depicted in :numref:`fig_fle_arch_single_lut4_mode`, the fracturable LUT will operate as a single-output 4-input LUT and the upper FF is used to implemented sequential logic.
|
||||
|
||||
The operating mode is designed to efficiently implement 4-input functions.
|
||||
|
||||
.. _fig_fle_arch_single_lut4_mode:
|
||||
|
||||
.. figure:: ./figures/fle_arch_single_lut4_mode.svg
|
||||
:scale: 30%
|
||||
:alt: Logic element schematic
|
||||
|
||||
Resource usage of the logic element operating in LUT4 + FF mode (Grey blocks and lines are unused resources).
|
||||
|
||||
.. _clb_arch_le_dual_lut3_mode:
|
||||
|
||||
Operating mode: Dual-LUT3
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The logic element can operate in the dual Look-Up Tables (LUTs) and Flip-flops (FFs) mode as many modern FPGA logic elements.
|
||||
As depicted in :numref:`fig_fle_arch_dual_lut3_mode`, the fracturable LUT will operate as two 3-input LUTs with shared inputs.
|
||||
|
||||
The operating mode is designed to efficiently implement two 3-input functions with shared input variables. A popular example is the adder function, where the carry logic can be mapped to the upper LUT3 and the sum logic can be mapped to the lower LUT3.
|
||||
|
||||
.. _fig_fle_arch_dual_lut3_mode:
|
||||
|
||||
.. figure:: ./figures/fle_arch_dual_lut3_mode.svg
|
||||
:scale: 30%
|
||||
:alt: Logic element schematic
|
||||
|
||||
Resource usage of the logic element operating in dual LUT3 + FFs mode (Grey blocks and lines are unused resources).
|
||||
|
||||
.. _clb_arch_le_shift_reg_mode:
|
||||
|
||||
Operating mode: Shift-Register
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
As depicted in :numref:`fig_fle_arch_shift_reg_mode`, the Flip-flops (FFs) can be connected in dedicated routing wires to implement high-performance shift registers.
|
||||
|
||||
The operating mode is designed to efficiently implement shift registers which are widely used in buffer logic, e.g., FIFOs.
|
||||
|
||||
.. _fig_fle_arch_shift_reg_mode:
|
||||
|
||||
.. figure:: ./figures/fle_arch_shift_reg_mode.svg
|
||||
:scale: 30%
|
||||
:alt: Logic element schematic
|
||||
|
||||
Resource usage of the logic element operating in shift register mode (Grey blocks and lines are unused resources).
|
||||
|
||||
.. _clb_arch_scan_chain:
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<metadata> Produced by OmniGraffle 7.18\n2020-11-19 22:55:20 +0000</metadata>
|
||||
<metadata> Produced by OmniGraffle 7.18\n2020-11-25 23:50:03 +0000</metadata>
|
||||
<g id="frac_lut4" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
|
||||
<title>frac_lut4</title>
|
||||
<g id="frac_lut4_图层_1">
|
||||
|
@ -125,7 +125,7 @@
|
|||
</text>
|
||||
</g>
|
||||
<g id="Line_181">
|
||||
<line x1="438.287" y1="324" x2="526.93593" y2="323.47703" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<line x1="408.22477" y1="323.66667" x2="526.93593" y2="323.47703" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_180">
|
||||
<line x1="499.3163" y1="346.9114" x2="525.98805" y2="347.2405" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
|
@ -137,7 +137,7 @@
|
|||
<line x1="460.0294" y1="358.36674" x2="470.1433" y2="358.36674" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_169">
|
||||
<path d="M 435.6845 327.798 L 435.5637 347.33333 L 458.141 346.9114" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<path d="M 405.65013 327.79804 L 405.72657 359.66667 L 437.5637 359.66667 L 435.5637 347.33333 L 458.141 346.9114" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_168">
|
||||
<line x1="541.1507" y1="335.3576" x2="553.153" y2="335.3576" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
|
@ -148,8 +148,8 @@
|
|||
</text>
|
||||
</g>
|
||||
<g id="Graphic_166">
|
||||
<ellipse cx="435.7046" cy="324.54805" rx="2.58243758861829" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="435.7046" cy="324.54805" rx="2.58243758861829" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
<ellipse cx="405.64233" cy="324.54805" rx="2.58243758861832" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="405.64233" cy="324.54805" rx="2.58243758861832" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_187">
|
||||
<text transform="translate(296.82473 251.7978)" fill="black">
|
||||
|
@ -236,7 +236,7 @@
|
|||
<ellipse cx="405.64233" cy="250.738" rx="2.58243758861832" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_230">
|
||||
<line x1="338.24768" y1="324.04805" x2="432.6222" y2="324.53224" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<line x1="338.24768" y1="324.04805" x2="402.55997" y2="324.5252" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_231">
|
||||
<text transform="translate(510.381 408.67923)" fill="black">
|
||||
|
@ -288,6 +288,24 @@
|
|||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_242">
|
||||
<path d="M 429.816 326.56605 L 429.8208 375.6054 C 429.8208 375.6054 445.12786 368.23534 444.8444 367.95188 C 444.56093 367.6684 444.55615 331.95188 444.55615 331.95188 Z" fill="#417fff"/>
|
||||
<path d="M 429.816 326.56605 L 429.8208 375.6054 C 429.8208 375.6054 445.12786 368.23534 444.8444 367.95188 C 444.56093 367.6684 444.55615 331.95188 444.55615 331.95188 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_241">
|
||||
<text transform="translate(430.4519 328.96835)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_243">
|
||||
<path d="M 429.21986 340.20005 L 429.816 341 L 416 341.3335 L 416 312.86334 L 484.9886 312.79427" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_244">
|
||||
<ellipse cx="484.99324" cy="313.3301" rx="2.58243758861832" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="484.99324" cy="313.3301" rx="2.58243758861832" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 21 KiB |
|
@ -0,0 +1,311 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns:xl="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="194.75033 200.8125 415.5905 256.87067" width="415.5905" height="256.87067">
|
||||
<defs>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 7 3 6 5 5 9 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="-1088.8662" x-height="438.96484" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-style="italic" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldItalicMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="12" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<metadata> Produced by OmniGraffle 7.18\n2020-11-25 23:50:03 +0000</metadata>
|
||||
<g id="dual_lut3" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
|
||||
<title>dual_lut3</title>
|
||||
<g id="dual_lut3_图层_1">
|
||||
<title>图层 1</title>
|
||||
<g id="Graphic_419">
|
||||
<rect x="224.2075" y="221.0625" width="344.69553" height="213.72704" fill="#ffffc0"/>
|
||||
<path d="M 568.903 221.0625 L 224.2075 221.0625 L 224.2075 434.78954 L 568.903 434.78954 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="4.0,4.0" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_418">
|
||||
<line x1="309.323" y1="271.7446" x2="398.93888" y2="270.9375" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_417">
|
||||
<rect x="250.71644" y="249.0491" width="56.5337" height="139.87187" fill="#417fff"/>
|
||||
<rect x="250.71644" y="249.0491" width="56.5337" height="139.87187" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<text transform="translate(255.71644 310.66643)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="1.5981503" y="13">4-LUT</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_416">
|
||||
<line x1="224.61372" y1="303.06197" x2="250.96038" y2="303.2143" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_415">
|
||||
<line x1="224.28864" y1="342.13418" x2="250.6353" y2="342.2865" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_414">
|
||||
<text transform="translate(201.45638 365.16465)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">in3</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_413">
|
||||
<text transform="translate(202.20032 256.16208)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in0</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_412">
|
||||
<text transform="translate(202.20032 294.7463)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in1</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_411">
|
||||
<text transform="translate(201.45638 333.33053)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in2</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_410">
|
||||
<rect x="486.0066" y="295.55473" width="29.338917" height="32.89894" fill="#0679ff"/>
|
||||
<rect x="486.0066" y="295.55473" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_409">
|
||||
<path d="M 541.4659 273.46525 L 553.4682 284.43156 L 553.4682 306.05957 L 541.4659 317.63512 L 541.4659 273.46525" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_408">
|
||||
<text transform="translate(490.7888 303.6856)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_407">
|
||||
<line x1="414.8631" y1="281.64207" x2="537.6807" y2="282.27083" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_406">
|
||||
<line x1="516.51346" y1="308.77083" x2="540.518" y2="308.82562" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_405">
|
||||
<line x1="472.671" y1="308.49654" x2="484.6733" y2="308.49654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_404">
|
||||
<line x1="475.8927" y1="319.95187" x2="484.6733" y2="319.95187" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_403">
|
||||
<line x1="452.73503" y1="308.27083" x2="472.671" y2="308.49654" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_402">
|
||||
<line x1="555.6807" y1="296.94274" x2="567.683" y2="296.94274" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_401">
|
||||
<text transform="translate(572.84085 287.1057)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_400">
|
||||
<path d="M 398.93888 258.34444 L 398.94366 307.3838 C 398.94366 307.3838 414.25074 300.01373 413.9673 299.73026 C 413.6838 299.4468 413.67903 263.73026 413.67903 263.73026 Z" fill="#417fff"/>
|
||||
<path d="M 398.93888 258.34444 L 398.94366 307.3838 C 398.94366 307.3838 414.25074 300.01373 413.9673 299.73026 C 413.6838 299.4468 413.67903 263.73026 413.67903 263.73026 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_399">
|
||||
<text transform="translate(400.79194 259.83438)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_398">
|
||||
<line x1="224.4601" y1="264.05562" x2="250.80676" y2="264.20793" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_397">
|
||||
<rect x="486.39405" y="364.59793" width="29.338917" height="32.89894" fill="#0679ff"/>
|
||||
<rect x="486.39405" y="364.59793" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_396">
|
||||
<path d="M 542.68593 342.8176 L 554.6882 353.78393 L 554.6882 375.41194 L 542.68593 386.9875 L 542.68593 342.8176" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_395">
|
||||
<text transform="translate(492.0088 373.03796)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_394">
|
||||
<line x1="423.97477" y1="354.60417" x2="542.68593" y2="354.41453" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_393">
|
||||
<line x1="515.0663" y1="377.8489" x2="541.73805" y2="378.178" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_392">
|
||||
<line x1="473.891" y1="377.8489" x2="485.8933" y2="377.8489" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_391">
|
||||
<line x1="475.7794" y1="389.30424" x2="485.8933" y2="389.30424" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_390">
|
||||
<path d="M 421.40013 358.73554 L 421.47657 390.60417 L 453.3137 390.60417 L 451.3137 378.27083 L 473.891 377.8489" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_389">
|
||||
<line x1="556.9007" y1="366.2951" x2="568.903" y2="366.2951" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_388">
|
||||
<text transform="translate(572.84085 356.4581)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_387">
|
||||
<ellipse cx="421.39233" cy="355.48555" rx="2.5824375886183" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="421.39233" cy="355.48555" rx="2.5824375886183" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_386">
|
||||
<text transform="translate(312.57473 282.7353)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT4_out</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_385">
|
||||
<line x1="224.4601" y1="375.271" x2="250.80676" y2="375.4233" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_384">
|
||||
<line x1="307.5224" y1="302.3982" x2="398.04696" y2="301.9375" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_383">
|
||||
<line x1="307.3313" y1="355.44625" x2="353.99768" y2="354.98555" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_382">
|
||||
<text transform="translate(309.40994 250.47833)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">LUT3_out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_381">
|
||||
<text transform="translate(311.95583 336.9191)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">LUT3_out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_380">
|
||||
<line x1="500.6761" y1="294.55473" x2="500.6761" y2="220.30817" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_379">
|
||||
<text transform="translate(488.17364 202.24173)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_378">
|
||||
<path d="M 500.91157 363.59797 L 500.7386 343.73177 L 529.97684 343.4375 L 530.2322 308.80215" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_377">
|
||||
<path d="M 500.89743 434.78954 L 500.89743 414.10417 L 531.8083 414.1079" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_376">
|
||||
<text transform="translate(483.69894 439.61673)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_375">
|
||||
<line x1="531.85255" y1="434.78954" x2="531.73077" y2="377.8489" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_374">
|
||||
<ellipse cx="531.22594" cy="378.0483" rx="2.58243758861824" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="531.22594" cy="378.0483" rx="2.58243758861824" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_373">
|
||||
<ellipse cx="531.80846" cy="414.1745" rx="2.58243758861826" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="531.80846" cy="414.1745" rx="2.58243758861826" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_372">
|
||||
<ellipse cx="529.8098" cy="308.8012" rx="2.58243758861826" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="529.8098" cy="308.8012" rx="2.58243758861826" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_371">
|
||||
<text transform="translate(422.3918 202.5803)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">regin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_370">
|
||||
<path d="M 449.76406 284.75115 L 449.76885 333.7905 C 449.76885 333.7905 465.07593 326.42044 464.79247 326.13697 C 464.509 325.8535 464.5042 290.13698 464.5042 290.13698 Z" fill="#417fff"/>
|
||||
<path d="M 449.76406 284.75115 L 449.76885 333.7905 C 449.76885 333.7905 465.07593 326.42044 464.79247 326.13697 C 464.509 325.8535 464.5042 290.13698 464.5042 290.13698 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_369">
|
||||
<text transform="translate(451.6171 286.21443)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_368">
|
||||
<path d="M 438.53366 220.64674 L 437.65706 297.92972 L 449.76406 297.60417" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_367">
|
||||
<path d="M 421.42654 281.67567 L 421.41667 323.61854 L 448.87215 323.60417" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_366">
|
||||
<ellipse cx="421.39233" cy="281.6755" rx="2.58243758861827" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="421.39233" cy="281.6755" rx="2.58243758861827" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_365">
|
||||
<line x1="353.99768" y1="354.98555" x2="418.30997" y2="355.4627" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_364">
|
||||
<text transform="translate(526.131 439.61673)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">regout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_363">
|
||||
<text transform="translate(194.75033 406.9196)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="black" x="0" y="11">CLK</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_362">
|
||||
<path d="M 224.61372 412.9375 L 475.7794 413.60417 L 475.7794 389.30424" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_361">
|
||||
<line x1="475.8927" y1="319.95187" x2="475.7794" y2="389.30424" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_360">
|
||||
<ellipse cx="475.7805" cy="388.6107" rx="2.5824375886183" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="475.7805" cy="388.6107" rx="2.5824375886183" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_359">
|
||||
<path d="M 485.9486 317.15567 L 494.7292 320.45187 L 485.9486 323.74807 Z" fill="#ccc"/>
|
||||
<path d="M 485.9486 317.15567 L 494.7292 320.45187 L 485.9486 323.74807 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_358">
|
||||
<path d="M 486.39405 385.8607 L 495.17464 389.1569 L 486.39405 392.4531 Z" fill="#ccc"/>
|
||||
<path d="M 486.39405 385.8607 L 495.17464 389.1569 L 486.39405 392.4531 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_357">
|
||||
<path d="M 539.58856 271.0305 L 539.59334 320.06987 C 539.59334 320.06987 554.9004 312.6998 554.61696 312.41633 C 554.3335 312.13286 554.3287 276.41633 554.3287 276.41633 Z" fill="#417fff"/>
|
||||
<path d="M 539.58856 271.0305 L 539.59334 320.06987 C 539.59334 320.06987 554.9004 312.6998 554.61696 312.41633 C 554.3335 312.13286 554.3287 276.41633 554.3287 276.41633 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_356">
|
||||
<text transform="translate(541.21094 272.9447)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_355">
|
||||
<path d="M 541.4016 342.8176 L 541.4064 391.857 C 541.4064 391.857 556.7135 384.4869 556.43 384.20344 C 556.14654 383.91998 556.14176 348.20344 556.14176 348.20344 Z" fill="#417fff"/>
|
||||
<path d="M 541.4016 342.8176 L 541.4064 391.857 C 541.4064 391.857 556.7135 384.4869 556.43 384.20344 C 556.14654 383.91998 556.14176 348.20344 556.14176 348.20344 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_354">
|
||||
<text transform="translate(543.024 344.7318)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_353">
|
||||
<path d="M 445.566 357.50355 L 445.5708 406.5429 C 445.5708 406.5429 460.87786 399.17284 460.5944 398.88938 C 460.31093 398.6059 460.30615 362.88938 460.30615 362.88938 Z" fill="#417fff"/>
|
||||
<path d="M 445.566 357.50355 L 445.5708 406.5429 C 445.5708 406.5429 460.87786 399.17284 460.5944 398.88938 C 460.31093 398.6059 460.30615 362.88938 460.30615 362.88938 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_352">
|
||||
<text transform="translate(446.2019 359.90585)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_351">
|
||||
<path d="M 444.96986 371.13755 L 445.566 371.9375 L 431.75 372.271 L 431.75 343.80084 L 500.7386 343.73177" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_350">
|
||||
<ellipse cx="500.74324" cy="344.2676" rx="2.58243758861829" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="500.74324" cy="344.2676" rx="2.58243758861829" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 21 KiB |
|
@ -0,0 +1,317 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns:xl="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="179.00033 169.875 415.5905 256.87067" width="415.5905" height="256.87067">
|
||||
<defs>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 7 3 6 5 5 9 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="-1088.8662" x-height="438.96484" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-style="italic" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldItalicMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="12" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<metadata> Produced by OmniGraffle 7.18\n2020-11-25 23:50:03 +0000</metadata>
|
||||
<g id="shift_reg" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
|
||||
<title>shift_reg</title>
|
||||
<g id="shift_reg_图层_1">
|
||||
<title>图层 1</title>
|
||||
<g id="Graphic_310">
|
||||
<rect x="208.45749" y="190.125" width="344.69553" height="213.72704" fill="#ffffc0"/>
|
||||
<path d="M 553.153 190.125 L 208.45749 190.125 L 208.45749 403.85204 L 553.153 403.85204 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="4.0,4.0" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_309">
|
||||
<line x1="293.573" y1="240.8071" x2="383.18888" y2="240" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_308">
|
||||
<rect x="234.96644" y="218.1116" width="56.5337" height="139.87187" fill="#9a9a9a"/>
|
||||
<rect x="234.96644" y="218.1116" width="56.5337" height="139.87187" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<text transform="translate(239.96644 279.72893)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="1.5981503" y="13">4-LUT</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_307">
|
||||
<line x1="208.86372" y1="272.12447" x2="235.21038" y2="272.27678" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_306">
|
||||
<line x1="208.53864" y1="311.19668" x2="234.8853" y2="311.349" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_305">
|
||||
<text transform="translate(185.70638 334.22715)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">in3</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_304">
|
||||
<text transform="translate(186.45032 225.22458)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">in0</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_303">
|
||||
<text transform="translate(186.45032 263.8088)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">in1</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_302">
|
||||
<text transform="translate(185.70638 302.39303)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">in2</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_301">
|
||||
<rect x="470.2566" y="264.61723" width="29.338917" height="32.89894" fill="#0679ff"/>
|
||||
<rect x="470.2566" y="264.61723" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_300">
|
||||
<path d="M 525.7159 242.52775 L 537.7182 253.49406 L 537.7182 275.12207 L 525.7159 286.69762 L 525.7159 242.52775" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_299">
|
||||
<text transform="translate(475.0388 272.7481)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_298">
|
||||
<line x1="399.1131" y1="250.70457" x2="521.9307" y2="251.33333" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_297">
|
||||
<line x1="500.76346" y1="277.83333" x2="524.768" y2="277.88812" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_296">
|
||||
<line x1="456.921" y1="277.55904" x2="468.9233" y2="277.55904" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_295">
|
||||
<line x1="460.1427" y1="289.01437" x2="468.9233" y2="289.01437" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_294">
|
||||
<line x1="436.98503" y1="277.33333" x2="456.921" y2="277.55904" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_293">
|
||||
<line x1="539.9307" y1="266.00524" x2="551.933" y2="266.00524" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_292">
|
||||
<text transform="translate(557.09085 256.1682)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_291">
|
||||
<path d="M 383.18888 227.40694 L 383.19366 276.4463 C 383.19366 276.4463 398.50074 269.07623 398.2173 268.79276 C 397.9338 268.5093 397.92903 232.79276 397.92903 232.79276 Z" fill="#9a9a9a"/>
|
||||
<path d="M 383.18888 227.40694 L 383.19366 276.4463 C 383.19366 276.4463 398.50074 269.07623 398.2173 268.79276 C 397.9338 268.5093 397.92903 232.79276 397.92903 232.79276 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_290">
|
||||
<text transform="translate(385.04194 228.89688)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_289">
|
||||
<line x1="208.7101" y1="233.11812" x2="235.05676" y2="233.27043" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_288">
|
||||
<rect x="470.64405" y="333.66043" width="29.338917" height="32.89894" fill="#0679ff"/>
|
||||
<rect x="470.64405" y="333.66043" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_287">
|
||||
<path d="M 526.93593 311.8801 L 538.9382 322.84643 L 538.9382 344.47444 L 526.93593 356.05 L 526.93593 311.8801" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_286">
|
||||
<text transform="translate(476.2588 342.10046)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_285">
|
||||
<line x1="408.22477" y1="323.66667" x2="526.93593" y2="323.47703" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_284">
|
||||
<line x1="499.3163" y1="346.9114" x2="525.98805" y2="347.2405" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_283">
|
||||
<line x1="458.141" y1="346.9114" x2="470.1433" y2="346.9114" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_282">
|
||||
<line x1="460.0294" y1="358.36674" x2="470.1433" y2="358.36674" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_281">
|
||||
<path d="M 405.65013 327.79804 L 405.72657 359.66667 L 437.5637 359.66667 L 435.5637 347.33333 L 458.141 346.9114" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_280">
|
||||
<line x1="541.1507" y1="335.3576" x2="553.153" y2="335.3576" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_279">
|
||||
<text transform="translate(557.09085 325.5206)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_278">
|
||||
<ellipse cx="405.64233" cy="324.54805" rx="2.58243758861832" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="405.64233" cy="324.54805" rx="2.58243758861832" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_277">
|
||||
<text transform="translate(296.82473 251.7978)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT4_out</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_276">
|
||||
<line x1="208.7101" y1="344.3335" x2="235.05676" y2="344.4858" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_275">
|
||||
<line x1="291.7724" y1="271.4607" x2="382.29696" y2="271" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_274">
|
||||
<line x1="291.5813" y1="324.50875" x2="338.24768" y2="324.04805" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_273">
|
||||
<text transform="translate(293.65994 219.54083)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT3_out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_272">
|
||||
<text transform="translate(296.20583 305.9816)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT3_out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_271">
|
||||
<line x1="484.9261" y1="263.61723" x2="484.9261" y2="189.37067" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_270">
|
||||
<text transform="translate(472.42364 171.30423)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_269">
|
||||
<path d="M 485.16157 332.66047 L 484.9886 312.79427 L 514.22684 312.5 L 514.4822 277.86465" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_268">
|
||||
<path d="M 485.14743 403.85204 L 485.14743 383.16667 L 516.0583 383.1704" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_267">
|
||||
<text transform="translate(467.94894 408.67923)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_266">
|
||||
<line x1="516.10255" y1="403.85204" x2="515.98077" y2="346.9114" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_265">
|
||||
<ellipse cx="515.47594" cy="347.1108" rx="2.58243758861826" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="515.47594" cy="347.1108" rx="2.58243758861826" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_264">
|
||||
<ellipse cx="516.05846" cy="383.237" rx="2.58243758861826" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="516.05846" cy="383.237" rx="2.58243758861826" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_263">
|
||||
<ellipse cx="514.0598" cy="277.86368" rx="2.58243758861826" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="514.0598" cy="277.86368" rx="2.58243758861826" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_262">
|
||||
<text transform="translate(406.6418 171.6428)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">regin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_261">
|
||||
<path d="M 434.01406 253.81365 L 434.01885 302.853 C 434.01885 302.853 449.32593 295.48294 449.04247 295.19947 C 448.759 294.916 448.7542 259.19948 448.7542 259.19948 Z" fill="#417fff"/>
|
||||
<path d="M 434.01406 253.81365 L 434.01885 302.853 C 434.01885 302.853 449.32593 295.48294 449.04247 295.19947 C 448.759 294.916 448.7542 259.19948 448.7542 259.19948 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_260">
|
||||
<text transform="translate(435.8671 255.27693)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_259">
|
||||
<path d="M 422.78366 189.70924 L 421.90706 266.99222 L 434.01406 266.66667" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_258">
|
||||
<path d="M 405.67654 250.73817 L 405.66667 292.68104 L 433.12215 292.66667" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_257">
|
||||
<ellipse cx="405.64233" cy="250.738" rx="2.58243758861832" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="405.64233" cy="250.738" rx="2.58243758861832" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_256">
|
||||
<line x1="338.24768" y1="324.04805" x2="402.55997" y2="324.5252" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_255">
|
||||
<text transform="translate(510.381 408.67923)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">regout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_254">
|
||||
<text transform="translate(179.00033 375.9821)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="black" x="0" y="11">CLK</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_253">
|
||||
<path d="M 208.86372 382 L 460.0294 382.66667 L 460.0294 358.36674" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_252">
|
||||
<line x1="460.1427" y1="289.01437" x2="460.0294" y2="358.36674" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_251">
|
||||
<ellipse cx="460.0305" cy="357.6732" rx="2.58243758861832" ry="2.75000439423017" fill="black"/>
|
||||
<ellipse cx="460.0305" cy="357.6732" rx="2.58243758861832" ry="2.75000439423017" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_250">
|
||||
<path d="M 470.1986 286.21817 L 478.9792 289.51437 L 470.1986 292.81057 Z" fill="#ccc"/>
|
||||
<path d="M 470.1986 286.21817 L 478.9792 289.51437 L 470.1986 292.81057 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_249">
|
||||
<path d="M 470.64405 354.9232 L 479.42464 358.2194 L 470.64405 361.5156 Z" fill="#ccc"/>
|
||||
<path d="M 470.64405 354.9232 L 479.42464 358.2194 L 470.64405 361.5156 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_248">
|
||||
<path d="M 523.83856 240.093 L 523.84334 289.13237 C 523.84334 289.13237 539.1504 281.7623 538.86696 281.47883 C 538.5835 281.19536 538.5787 245.47883 538.5787 245.47883 Z" fill="#417fff"/>
|
||||
<path d="M 523.83856 240.093 L 523.84334 289.13237 C 523.84334 289.13237 539.1504 281.7623 538.86696 281.47883 C 538.5835 281.19536 538.5787 245.47883 538.5787 245.47883 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_247">
|
||||
<text transform="translate(525.46094 242.0072)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_246">
|
||||
<path d="M 525.6516 311.8801 L 525.6564 360.9195 C 525.6564 360.9195 540.9635 353.5494 540.68 353.26594 C 540.39654 352.98248 540.39176 317.26594 540.39176 317.26594 Z" fill="#417fff"/>
|
||||
<path d="M 525.6516 311.8801 L 525.6564 360.9195 C 525.6564 360.9195 540.9635 353.5494 540.68 353.26594 C 540.39654 352.98248 540.39176 317.26594 540.39176 317.26594 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_245">
|
||||
<text transform="translate(527.274 313.7943)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_244">
|
||||
<path d="M 429.816 326.56605 L 429.8208 375.6054 C 429.8208 375.6054 445.12786 368.23534 444.8444 367.95188 C 444.56093 367.6684 444.55615 331.95188 444.55615 331.95188 Z" fill="#417fff"/>
|
||||
<path d="M 429.816 326.56605 L 429.8208 375.6054 C 429.8208 375.6054 445.12786 368.23534 444.8444 367.95188 C 444.56093 367.6684 444.55615 331.95188 444.55615 331.95188 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_243">
|
||||
<text transform="translate(430.4519 328.96835)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_242">
|
||||
<path d="M 429.21986 340.20005 L 429.816 341 L 416 341.3335 L 416 312.86334 L 484.9886 312.79427" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_241">
|
||||
<ellipse cx="484.99324" cy="313.3301" rx="2.58243758861829" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="484.99324" cy="313.3301" rx="2.58243758861829" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_311">
|
||||
<line x1="485.16157" y1="332.66047" x2="485.02154" y2="316.57995" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_313">
|
||||
<path d="M 405.79666 328.3607 L 405.8731 360.22934 L 426.5 359.66667" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 21 KiB |
|
@ -0,0 +1,311 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns:xl="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="158.18783 58.5 415.5905 256.87067" width="415.5905" height="256.87067">
|
||||
<defs>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="15" panose-1="2 2 7 3 6 5 5 9 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="-1088.8662" x-height="438.96484" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-style="italic" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldItalicMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
<font-face font-family="Times New Roman" font-size="12" panose-1="2 2 8 3 7 5 5 2 3 4" units-per-em="1000" underline-position="-108.88672" underline-thickness="95.21484" slope="0" x-height="456.54297" cap-height="662.1094" ascent="891.1133" descent="-216.3086" font-weight="700">
|
||||
<font-face-src>
|
||||
<font-face-name name="TimesNewRomanPS-BoldMT"/>
|
||||
</font-face-src>
|
||||
</font-face>
|
||||
</defs>
|
||||
<metadata> Produced by OmniGraffle 7.18\n2020-11-25 23:50:03 +0000</metadata>
|
||||
<g id="single_lut4" fill="none" stroke="none" stroke-opacity="1" stroke-dasharray="none" fill-opacity="1">
|
||||
<title>single_lut4</title>
|
||||
<g id="single_lut4_图层_1">
|
||||
<title>图层 1</title>
|
||||
<g id="Graphic_170">
|
||||
<rect x="187.64499" y="78.75" width="344.69553" height="213.72704" fill="#ffffc0"/>
|
||||
<path d="M 532.3405 78.75 L 187.64499 78.75 L 187.64499 292.47704 L 532.3405 292.47704 Z" stroke="gray" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="4.0,4.0" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_169">
|
||||
<line x1="272.7605" y1="129.43209" x2="362.37638" y2="128.625" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_168">
|
||||
<rect x="214.15394" y="106.7366" width="56.5337" height="139.87187" fill="#417fff"/>
|
||||
<rect x="214.15394" y="106.7366" width="56.5337" height="139.87187" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
<text transform="translate(219.15394 168.35393)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="1.5981503" y="13">4-LUT</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_167">
|
||||
<line x1="188.05122" y1="160.74947" x2="214.39788" y2="160.90178" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_166">
|
||||
<line x1="187.72614" y1="199.82168" x2="214.0728" y2="199.97399" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_165">
|
||||
<text transform="translate(164.89388 222.85215)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in3</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_164">
|
||||
<text transform="translate(165.63782 113.84958)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in0</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_163">
|
||||
<text transform="translate(165.63782 152.4338)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in1</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_162">
|
||||
<text transform="translate(164.89388 191.01803)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">in2</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_161">
|
||||
<rect x="449.4441" y="153.24223" width="29.338917" height="32.89894" fill="#0679ff"/>
|
||||
<rect x="449.4441" y="153.24223" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_160">
|
||||
<path d="M 504.9034 131.15275 L 516.9057 142.11906 L 516.9057 163.74707 L 504.9034 175.32262 L 504.9034 131.15275" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_159">
|
||||
<text transform="translate(454.2263 161.3731)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_158">
|
||||
<line x1="378.3006" y1="139.32957" x2="501.1182" y2="139.95833" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_157">
|
||||
<line x1="479.95096" y1="166.45833" x2="503.9555" y2="166.51312" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_156">
|
||||
<line x1="436.1085" y1="166.18404" x2="448.1108" y2="166.18404" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_155">
|
||||
<line x1="439.3302" y1="177.63937" x2="448.1108" y2="177.63937" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_154">
|
||||
<line x1="416.17253" y1="165.95833" x2="436.1085" y2="166.18404" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_153">
|
||||
<line x1="519.1182" y1="154.63024" x2="531.1205" y2="154.63024" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_152">
|
||||
<text transform="translate(536.27835 144.79321)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_151">
|
||||
<path d="M 362.37638 116.03194 L 362.38116 165.0713 C 362.38116 165.0713 377.68824 157.70123 377.4048 157.41776 C 377.1213 157.1343 377.11653 121.41776 377.11653 121.41776 Z" fill="#417fff"/>
|
||||
<path d="M 362.37638 116.03194 L 362.38116 165.0713 C 362.38116 165.0713 377.68824 157.70123 377.4048 157.41776 C 377.1213 157.1343 377.11653 121.41776 377.11653 121.41776 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_150">
|
||||
<text transform="translate(364.22944 117.52188)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_149">
|
||||
<line x1="187.8976" y1="121.74312" x2="214.24426" y2="121.89543" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_148">
|
||||
<rect x="449.83155" y="222.28543" width="29.338917" height="32.89894" fill="#9a9a9a"/>
|
||||
<rect x="449.83155" y="222.28543" width="29.338917" height="32.89894" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_147">
|
||||
<path d="M 506.12343 200.50512 L 518.1257 211.47143 L 518.1257 233.09944 L 506.12343 244.675 L 506.12343 200.50512" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_146">
|
||||
<text transform="translate(455.4463 230.72546)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-weight="700" fill="white" x="0" y="13">FF</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_145">
|
||||
<line x1="387.41227" y1="212.29167" x2="506.12343" y2="212.10203" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_144">
|
||||
<line x1="478.5038" y1="235.5364" x2="505.17555" y2="235.8655" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_143">
|
||||
<line x1="437.3285" y1="235.5364" x2="449.3308" y2="235.5364" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_142">
|
||||
<line x1="439.2169" y1="246.99174" x2="449.3308" y2="246.99174" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_141">
|
||||
<path d="M 384.83763 216.42304 L 384.91407 248.29167 L 416.7512 248.29167 L 414.7512 235.95833 L 437.3285 235.5364" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_140">
|
||||
<line x1="520.3382" y1="223.9826" x2="532.3405" y2="223.9826" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_139">
|
||||
<text transform="translate(536.27835 214.14558)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_138">
|
||||
<ellipse cx="384.82983" cy="213.17305" rx="2.5824375886183" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="384.82983" cy="213.17305" rx="2.5824375886183" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_137">
|
||||
<text transform="translate(276.01223 140.4228)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="black" x="0" y="13">LUT4_out</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_136">
|
||||
<line x1="187.8976" y1="232.9585" x2="214.24426" y2="233.11081" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_135">
|
||||
<line x1="270.9599" y1="160.0857" x2="361.48446" y2="159.625" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_134">
|
||||
<line x1="270.7688" y1="213.13375" x2="317.43518" y2="212.67305" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_133">
|
||||
<text transform="translate(272.84744 108.16583)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT3_out[0]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_132">
|
||||
<text transform="translate(275.39333 194.60662)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">LUT3_out[1]</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_131">
|
||||
<line x1="464.1136" y1="152.24223" x2="464.1136" y2="77.99567" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_130">
|
||||
<text transform="translate(451.61114 59.92923)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_129">
|
||||
<path d="M 464.34907 221.28547 L 464.1761 201.41927 L 493.41434 201.125 L 493.6697 166.48965" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_128">
|
||||
<path d="M 464.33493 292.47704 L 464.33493 271.79167 L 495.2458 271.79542" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_127">
|
||||
<text transform="translate(447.13644 297.30423)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">scout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_126">
|
||||
<line x1="495.29005" y1="292.47704" x2="495.16827" y2="235.5364" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_125">
|
||||
<ellipse cx="494.66344" cy="235.7358" rx="2.58243758861829" ry="2.75000439423019" fill="black"/>
|
||||
<ellipse cx="494.66344" cy="235.7358" rx="2.58243758861829" ry="2.75000439423019" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_124">
|
||||
<ellipse cx="495.24596" cy="271.862" rx="2.58243758861829" ry="2.75000439423021" fill="black"/>
|
||||
<ellipse cx="495.24596" cy="271.862" rx="2.58243758861829" ry="2.75000439423021" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_123">
|
||||
<ellipse cx="493.24733" cy="166.48868" rx="2.58243758861829" ry="2.75000439423019" fill="black"/>
|
||||
<ellipse cx="493.24733" cy="166.48868" rx="2.58243758861829" ry="2.75000439423019" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_122">
|
||||
<text transform="translate(385.8293 60.267805)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">regin</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_121">
|
||||
<path d="M 413.20156 142.43865 L 413.20635 191.47802 C 413.20635 191.47802 428.51343 184.10794 428.22997 183.82447 C 427.9465 183.541 427.9417 147.82448 427.9417 147.82448 Z" fill="#417fff"/>
|
||||
<path d="M 413.20156 142.43865 L 413.20635 191.47802 C 413.20635 191.47802 428.51343 184.10794 428.22997 183.82447 C 427.9465 183.541 427.9417 147.82448 427.9417 147.82448 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_120">
|
||||
<text transform="translate(415.0546 143.90193)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_119">
|
||||
<path d="M 401.97116 78.33424 L 401.09456 155.61722 L 413.20156 155.29167" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_118">
|
||||
<path d="M 384.86404 139.36317 L 384.85417 181.30604 L 412.30965 181.29167" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_117">
|
||||
<ellipse cx="384.82983" cy="139.363" rx="2.58243758861826" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="384.82983" cy="139.363" rx="2.58243758861826" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Line_116">
|
||||
<line x1="317.43518" y1="212.67305" x2="381.74747" y2="213.15019" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_115">
|
||||
<text transform="translate(489.5685 297.30423)" fill="#9a9a9a">
|
||||
<tspan font-family="Times New Roman" font-size="15" font-style="italic" font-weight="700" fill="#9a9a9a" x="0" y="13">regout</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_114">
|
||||
<text transform="translate(158.18783 264.6071)" fill="black">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="black" x="0" y="11">CLK</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_113">
|
||||
<path d="M 188.05122 270.625 L 439.2169 271.29167 L 439.2169 246.99174" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Line_112">
|
||||
<line x1="439.3302" y1="177.63937" x2="439.2169" y2="246.99174" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_111">
|
||||
<ellipse cx="439.218" cy="246.29822" rx="2.58243758861829" ry="2.7500043942302" fill="black"/>
|
||||
<ellipse cx="439.218" cy="246.29822" rx="2.58243758861829" ry="2.7500043942302" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_110">
|
||||
<path d="M 449.3861 174.84317 L 458.1667 178.13937 L 449.3861 181.43557 Z" fill="#ccc"/>
|
||||
<path d="M 449.3861 174.84317 L 458.1667 178.13937 L 449.3861 181.43557 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_109">
|
||||
<path d="M 449.83155 243.54822 L 458.61214 246.84442 L 449.83155 250.1406 Z" fill="#ccc"/>
|
||||
<path d="M 449.83155 243.54822 L 458.61214 246.84442 L 449.83155 250.1406 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
<g id="Graphic_108">
|
||||
<path d="M 503.02606 128.718 L 503.03084 177.75737 C 503.03084 177.75737 518.3379 170.3873 518.05446 170.10383 C 517.771 169.82036 517.7662 134.10383 517.7662 134.10383 Z" fill="#417fff"/>
|
||||
<path d="M 503.02606 128.718 L 503.03084 177.75737 C 503.03084 177.75737 518.3379 170.3873 518.05446 170.10383 C 517.771 169.82036 517.7662 134.10383 517.7662 134.10383 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_107">
|
||||
<text transform="translate(504.64844 130.6322)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_106">
|
||||
<path d="M 504.8391 200.50512 L 504.8439 249.54448 C 504.8439 249.54448 520.151 242.1744 519.8675 241.89094 C 519.58404 241.60748 519.57926 205.89094 519.57926 205.89094 Z" fill="#9a9a9a"/>
|
||||
<path d="M 504.8391 200.50512 L 504.8439 249.54448 C 504.8439 249.54448 520.151 242.1744 519.8675 241.89094 C 519.58404 241.60748 519.57926 205.89094 519.57926 205.89094 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_105">
|
||||
<text transform="translate(506.4615 202.4193)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Graphic_104">
|
||||
<path d="M 409.0035 215.19105 L 409.0083 264.23042 C 409.0083 264.23042 424.31536 256.86034 424.0319 256.57688 C 423.74843 256.2934 423.74365 220.57688 423.74365 220.57688 Z" fill="#9a9a9a"/>
|
||||
<path d="M 409.0035 215.19105 L 409.0083 264.23042 C 409.0083 264.23042 424.31536 256.86034 424.0319 256.57688 C 423.74843 256.2934 423.74365 220.57688 423.74365 220.57688 Z" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_103">
|
||||
<text transform="translate(409.6394 217.59335)" fill="white">
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="0" y="11">M</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="25.509766">U</tspan>
|
||||
<tspan font-family="Times New Roman" font-size="12" font-weight="700" fill="white" x="1.3300781" y="40.01953">X</tspan>
|
||||
</text>
|
||||
</g>
|
||||
<g id="Line_102">
|
||||
<path d="M 408.40736 228.82505 L 409.0035 229.625 L 395.1875 229.9585 L 395.1875 201.48834 L 464.1761 201.41927" stroke="#9a9a9a" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
|
||||
</g>
|
||||
<g id="Graphic_101">
|
||||
<ellipse cx="464.18074" cy="201.95509" rx="2.58243758861832" ry="2.75000439423018" fill="black"/>
|
||||
<ellipse cx="464.18074" cy="201.95509" rx="2.58243758861832" ry="2.75000439423018" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 21 KiB |
|
@ -59,6 +59,7 @@ write_verilog_testbench --file ${OPENFPGA_VERILOG_OUTPUT_DIR}/verilog_testbench
|
|||
--print_top_testbench \
|
||||
--print_preconfig_top_testbench \
|
||||
--print_simulation_ini ${OPENFPGA_VERILOG_OUTPUT_DIR}/SimulationDeck/simulation_deck.ini \
|
||||
--include_signal_init \
|
||||
--explicit_port_mapping
|
||||
|
||||
# Write the SDC to run timing analysis for a mapped FPGA fabric
|
||||
|
|
|
@ -6,20 +6,21 @@
|
|||
##################################
|
||||
# Define environment variables
|
||||
set SKYWATER_PDK_HOME "../../PDK/skywater-pdk";
|
||||
set FPGA_NETLIST_HOME "../../FPGA1212_FC_HD_SKY_PNR/fpga_core";
|
||||
#set FPGA_NETLIST_HOME "../../FPGA1212_FC_HD_SKY_PNR/fpga_top";
|
||||
set FPGA_NETLIST_HOME "/research/ece/lnis/USERS/DARPA_ERI/Tapeout/Nov2020_Skywater/FPGA1212_FLAT_HD_SKY_PNR/fpga_top";
|
||||
set SDF_HOME "../../SDF"
|
||||
#
|
||||
# Enable reporting ALL the timing paths even those are NOT constrained
|
||||
set_app_var svr_enable_vpp true
|
||||
|
||||
set search_path ". * ${SKYWATER_PDK_HOME}/vendor/synopsys/results/lib/skywater130_fd_sc_hd/db_nldm"
|
||||
set search_path ". * ${SKYWATER_PDK_HOME}/vendor/synopsys/results/lib/sky130_fd_sc_hd/db_nldm"
|
||||
|
||||
set link_path "* sky130_fd_sc_hd__tt_025C_1v80.db"
|
||||
|
||||
# Top-level module name
|
||||
set DESIGN_NAME fpga_core;
|
||||
set DESIGN_NAME fpga_top;
|
||||
|
||||
set FPGA_NETLIST_FILES "fpga_core_icv_in_design.pt.v"
|
||||
set FPGA_NETLIST_FILES "fpga_top_icv_in_design.pt.v"
|
||||
|
||||
##################################
|
||||
# Read timing libraries
|
||||
|
@ -30,15 +31,20 @@ read_db "${SKYWATER_PDK_HOME}/vendor/synopsys/results/lib/sky130_fd_sc_hd/db_nld
|
|||
read_verilog ${FPGA_NETLIST_HOME}/${FPGA_NETLIST_FILES}
|
||||
link_design ${DESIGN_NAME}
|
||||
|
||||
#########################################
|
||||
# Setup constraints to break combinational loops
|
||||
set_disable_timing [get_pins */*/*chan*]
|
||||
set_disable_timing [get_pins */*/*grid_pin*]
|
||||
|
||||
##################################
|
||||
# Read post-PnR parasitics
|
||||
read_parasitics ${FPGA_NETLIST_HOME}/fpga_core_icv_in_design.nominal_25.spef
|
||||
read_parasitics ${FPGA_NETLIST_HOME}/fpga_top_icv_in_design.nominal_25.spef
|
||||
|
||||
##################################
|
||||
# Write sdf file
|
||||
write_sdf -version 3.0 ${SDF_HOME}/FPGA1212_FC_HD_SKY_PNR/fpga_core_icv_in_design.pt.sdf
|
||||
write_sdf -version 3.0 ${SDF_HOME}/FPGA1212_FC_HD_SKY_PNR/fpga_top_icv_in_design.pt.sdf
|
||||
|
||||
##################################
|
||||
# Finish and quit
|
||||
# Comment it out if you want to debug
|
||||
#exit
|
||||
exit
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue