From c2b0687e7ba7ab12f7ab6d0ee55e006f460babb7 Mon Sep 17 00:00:00 2001 From: Russell Harmon Date: Sun, 14 Jun 2020 09:16:49 +0000 Subject: [PATCH] Set fast output on HDMI_TX pins. Also adjust timing constraits to reflect working state with line3x at 162 MHz. --- ossc.qsf | 14 ++++++++++++++ ossc.sdc | 8 ++++---- tools/Makefile | 23 +++++++++++++++++++++++ 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 tools/Makefile diff --git a/ossc.qsf b/ossc.qsf index 28bc576..7f11f6a 100644 --- a/ossc.qsf +++ b/ossc.qsf @@ -240,4 +240,18 @@ set_global_assignment -name SDC_FILE ossc.sdc set_global_assignment -name CDF_FILE output_files/Chain1.cdf set_global_assignment -name SIGNALTAP_FILE output_files/ossc_la.stp set_global_assignment -name QIP_FILE rtl/char_array.qip +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_DE +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_HS +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_PCLK +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_VS +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_BD +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_GD +set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to HDMI_TX_RD +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_DE +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_HS +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_PCLK +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_VS +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_BD +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_GD +set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to HDMI_TX_RD set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/ossc.sdc b/ossc.sdc index 3d3d83c..788c142 100644 --- a/ossc.sdc +++ b/ossc.sdc @@ -10,8 +10,8 @@ set_false_path -to {sys:sys_inst|sys_pio_1:pio_1|readdata*} ### Scanconverter clock constraints ### create_clock -period 108MHz -name pclk_1x [get_ports PCLK_in] -create_clock -period 33MHz -name pclk_2x_source [get_ports PCLK_in] -add -create_clock -period 33MHz -name pclk_3x_source [get_ports PCLK_in] -add +create_clock -period 54MHz -name pclk_2x_source [get_ports PCLK_in] -add +create_clock -period 54MHz -name pclk_3x_source [get_ports PCLK_in] -add create_clock -period 33MHz -name pclk_4x_source [get_ports PCLK_in] -add create_clock -period 33MHz -name pclk_5x_source [get_ports PCLK_in] -add @@ -54,8 +54,8 @@ foreach_in_collection c [get_clocks "pclk_1x pclk_*_source"] { } # output delay constraints -set IT_Tsu 1.0 -set IT_Th -0.5 +set IT_Tsu 1.5 +set IT_Th -0.3 set critoutputs_hdmi [get_ports {HDMI_TX_RD* HDMI_TX_GD* HDMI_TX_BD* HDMI_TX_DE HDMI_TX_HS HDMI_TX_VS}] foreach_in_collection c [get_clocks pclk_*_out] { set_output_delay -clock $c -min $IT_Th $critoutputs_hdmi -add diff --git a/tools/Makefile b/tools/Makefile new file mode 100644 index 0000000..ac98ffd --- /dev/null +++ b/tools/Makefile @@ -0,0 +1,23 @@ +.PHONY: generate_hex update_mif generate_firmware assemble_ossc + +all: generate_firmware + +generate_hex: bin2hex + $(MAKE) -C ../software/sys_controller generate_hex + +update_mif: generate_hex + cd .. && quartus_cdb ossc --update_mif + +assemble_ossc: update_mif + cd .. && quartus_asm ossc + +generate_firmware: assemble_ossc create_fw_img + ./create_fw_img ../output_files/ossc.rbf 0.86 aud-psp + +bin2hex: bin2hex.c + $(CC) bin2hex.c -o bin2hex + +create_fw_img: create_fw_img.c + gcc create_fw_img.c -o create_fw_img + +# vim: set noet ts=2 sw=2 sts=2