Add missing build script for 4-channel FPGA
This commit is contained in:
		
							parent
							
								
									ff0550eac6
								
							
						
					
					
						commit
						80f2b242f2
					
				|  | @ -0,0 +1,91 @@ | |||
| # | ||||
| # TCL script to build PuzzleFW firmware image | ||||
| # for Red Pitaya 4-inputimage in non-project mode. | ||||
| # | ||||
| # Usage: | ||||
| #   vivado -mode batch -source nonproject_4ch.tcl | ||||
| # | ||||
| 
 | ||||
| # Specify FPGA type. | ||||
| # This is used by "synth_design". | ||||
| set_part xc7z020clg400-1 | ||||
| 
 | ||||
| ## Specify path to RedPitaya board definition. | ||||
| ## Unclear whether this is required. | ||||
| #set_param board.repoPaths [list "RedPitaya-FPGA/brd"] | ||||
| 
 | ||||
| # Specify HDL language. | ||||
| # This determines the language of the HDL wrapper for the block design. | ||||
| set_property target_language VHDL [current_project] | ||||
| 
 | ||||
| # Load VHDL files. | ||||
| read_vhdl -vhdl2008 ../rtl/puzzlefw_pkg.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/acquisition_chain.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/acquisition_manager.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/acquisition_stream.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/adc_capture_ddr.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/adc_range_monitor.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/adc_sample_stream.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/deglitch.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/dma_axi_master.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/dma_write_channel.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/registers.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/sample_decimation.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/shift_engine.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/ffpair.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/simple_fifo.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/timestamp_gen.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/timetagger.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/trigger_detector.vhd | ||||
| read_vhdl -vhdl2008 ../rtl/puzzlefw_top_4ch.vhd | ||||
| 
 | ||||
| # Load Zynq block design. | ||||
| # | ||||
| # Note: The attribute "synth_flow_mode" in the block design file | ||||
| # MUST be set to "None". The default value is "Hierarchical", but that | ||||
| # causes problems with synthesis of the IP cores used in the block design. | ||||
| # | ||||
| # Note: The attribute "gen_directory" in the block design file | ||||
| # determines the location of output produced by "generate_target". | ||||
| # It must be set to a relative path within the project directory. | ||||
| # | ||||
| read_bd redpitaya_puzzlefw.srcs/sources_1/bd/puzzlefw/puzzlefw.bd | ||||
| set_property synth_checkpoint_mode none [get_files puzzlefw.bd] | ||||
| generate_target all [get_files puzzlefw.bd] | ||||
| 
 | ||||
| # Load generated HDL wrapper for block design. | ||||
| read_vhdl redpitaya_puzzlefw.gen/sources_1/bd/puzzlefw/hdl/puzzlefw_wrapper.vhd | ||||
| 
 | ||||
| # Load constraints. | ||||
| read_xdc ../constraints/red_pitaya_4ch.xdc | ||||
| 
 | ||||
| # Run synthesis and implementation. | ||||
| 
 | ||||
| set outdir output_4ch | ||||
| file mkdir $outdir | ||||
| 
 | ||||
| synth_design -top puzzlefw_top_4ch | ||||
| report_utilization -file $outdir/post_synth_utilization.rpt | ||||
| 
 | ||||
| opt_design | ||||
| place_design | ||||
| report_io -file $outdir/post_place_io.rpt | ||||
| 
 | ||||
| phys_opt_design | ||||
| route_design | ||||
| write_checkpoint -force $outdir/post_route.dcp | ||||
| 
 | ||||
| report_drc -file $outdir/post_route_drc.rpt | ||||
| report_utilization -file $outdir/post_route_utilization.rpt | ||||
| report_timing_summary -file $outdir/post_route_timing.rpt | ||||
| report_power -file $outdir/post_route_power.rpt | ||||
| report_datasheet -file $outdir/post_route_datasheet.rpt | ||||
| 
 | ||||
| # Write .bit file. | ||||
| write_bitstream -force $outdir/puzzlefw_top_4ch.bit | ||||
| 
 | ||||
| # Export XSA file. | ||||
| # This MUST be done via a checkpoint file. | ||||
| open_checkpoint $outdir/post_route.dcp | ||||
| write_hw_platform -fixed -force -file $outdir/redpitaya_puzzlefw_4ch.xsa | ||||
| 
 | ||||
		Loading…
	
		Reference in New Issue