# -------------------------------------------------------------------------- #
#
# Copyright (C) 2017  Intel Corporation. All rights reserved.
# Your use of Intel Corporation's design tools, logic functions 
# and other software and tools, and its AMPP partner logic 
# functions, and any output files from any of the foregoing 
# (including device programming or simulation files), and any 
# associated documentation or information are expressly subject 
# to the terms and conditions of the Intel Program License 
# Subscription Agreement, the Intel Quartus Prime License Agreement,
# the Intel MegaCore Function License Agreement, or other 
# applicable license agreement, including, without limitation, 
# that your use is for the sole purpose of programming logic 
# devices manufactured by Intel and sold by Intel or its 
# authorized distributors.  Please refer to the applicable 
# agreement for further details.
#
# -------------------------------------------------------------------------- #
#
# Quartus Prime
# Version 16.1.2 Build 203 01/18/2017 SJ Standard Edition
# Date created = 01:53:32  April 20, 2017
#
# -------------------------------------------------------------------------- #

set_global_assignment -name VERILOG_MACRO "LITE=1"

set_global_assignment -name FAMILY "Cyclone V"
set_global_assignment -name DEVICE 5CSEBA6U23I7
set_global_assignment -name TOP_LEVEL_ENTITY sys_top
#set_global_assignment -name TOP_LEVEL_ENTITY emu
set_global_assignment -name ORIGINAL_QUARTUS_VERSION 16.1.2
set_global_assignment -name LAST_QUARTUS_VERSION "17.1.1 Standard Edition"
set_global_assignment -name PROJECT_CREATION_TIME_DATE "01:53:30  APRIL 20, 2017"
set_global_assignment -name DEVICE_FILTER_PACKAGE UFBGA
set_global_assignment -name DEVICE_FILTER_PIN_COUNT 672
set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 7

set_global_assignment -name GENERATE_RBF_FILE ON
set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files
set_global_assignment -name NUM_PARALLEL_PROCESSORS ALL
set_global_assignment -name SAVE_DISK_SPACE OFF
set_global_assignment -name SMART_RECOMPILE OFF
set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Top
set_global_assignment -name PARTITION_FITTER_PRESERVATION_LEVEL PLACEMENT_AND_ROUTING -section_id Top
set_global_assignment -name PARTITION_COLOR 16764057 -section_id Top
set_global_assignment -name MIN_CORE_JUNCTION_TEMP "-40"
set_global_assignment -name MAX_CORE_JUNCTION_TEMP 100
set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW"
set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)"
set_global_assignment -name TIMEQUEST_MULTICORNER_ANALYSIS OFF
set_global_assignment -name OPTIMIZE_POWER_DURING_FITTING OFF
set_global_assignment -name FINAL_PLACEMENT_OPTIMIZATION ALWAYS
set_global_assignment -name FITTER_EFFORT "STANDARD FIT"
set_global_assignment -name OPTIMIZATION_MODE "HIGH POWER EFFORT"
set_global_assignment -name SEED 1
#set_global_assignment -name SDC_FILE sharpmz.sdc
set_global_assignment -name SDC_FILE "sharpmz-lite.sdc"

#============================================================
# ADC
#============================================================
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ADC_CONVST
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ADC_SCK
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ADC_SDI
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ADC_SDO
#set_location_assignment PIN_U9 -to ADC_CONVST
#set_location_assignment PIN_V10 -to ADC_SCK
#set_location_assignment PIN_AC4 -to ADC_SDI
#set_location_assignment PIN_AD4 -to ADC_SDO

#============================================================
# ARDUINO
#============================================================
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[3]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[4]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[5]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[6]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[7]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[8]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[9]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[10]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[11]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[12]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[13]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[14]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to ARDUINO_IO[15]
#set_location_assignment PIN_AG9 -to ARDUINO_IO[3]
#set_location_assignment PIN_U14 -to ARDUINO_IO[4]
#set_location_assignment PIN_U13 -to ARDUINO_IO[5]
#set_location_assignment PIN_AG8 -to ARDUINO_IO[6]
#set_location_assignment PIN_AH8 -to ARDUINO_IO[7]
#set_location_assignment PIN_AF17 -to ARDUINO_IO[8]
#set_location_assignment PIN_AE15 -to ARDUINO_IO[9]
#set_location_assignment PIN_AF15 -to ARDUINO_IO[10]
#set_location_assignment PIN_AG16 -to ARDUINO_IO[11]
#set_location_assignment PIN_AH11 -to ARDUINO_IO[12]
#set_location_assignment PIN_AH12 -to ARDUINO_IO[13]
#set_location_assignment PIN_AH9 -to ARDUINO_IO[14]
#set_location_assignment PIN_AG11 -to ARDUINO_IO[15]

#============================================================
# SDIO
#============================================================
set_location_assignment PIN_AF25 -to SDIO_DAT[0]
set_location_assignment PIN_AF23 -to SDIO_DAT[1]
set_location_assignment PIN_AD26 -to SDIO_DAT[2]
set_location_assignment PIN_AF28 -to SDIO_DAT[3]
set_location_assignment PIN_AF27 -to SDIO_CMD
set_location_assignment PIN_AH26 -to SDIO_CLK
set_location_assignment PIN_AH7 -to SDIO_CD
#
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDIO_*
#
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SDIO_*
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to SDIO_DAT[*]
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to SDIO_CMD
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to SDIO_CD

#============================================================
# VGA
#============================================================
set_location_assignment PIN_AE17 -to VGA_R[0]
set_location_assignment PIN_AE20 -to VGA_R[1]
set_location_assignment PIN_AF20 -to VGA_R[2]
set_location_assignment PIN_AH18 -to VGA_R[3]
set_location_assignment PIN_AH19 -to VGA_R[4]
set_location_assignment PIN_AF21 -to VGA_R[5]

set_location_assignment PIN_AE19 -to VGA_G[0]
set_location_assignment PIN_AG15 -to VGA_G[1]
set_location_assignment PIN_AF18 -to VGA_G[2]
set_location_assignment PIN_AG18 -to VGA_G[3]
set_location_assignment PIN_AG19 -to VGA_G[4]
set_location_assignment PIN_AG20 -to VGA_G[5]

set_location_assignment PIN_AG21 -to VGA_B[0]
set_location_assignment PIN_AA20 -to VGA_B[1]
set_location_assignment PIN_AE22 -to VGA_B[2]
set_location_assignment PIN_AF22 -to VGA_B[3]
set_location_assignment PIN_AH23 -to VGA_B[4]
set_location_assignment PIN_AH21 -to VGA_B[5]

set_location_assignment PIN_AH22 -to VGA_HS
set_location_assignment PIN_AG24 -to VGA_VS

set_location_assignment PIN_AH27 -to VGA_EN
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to VGA_EN

set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to VGA_*
set_instance_assignment -name CURRENT_STRENGTH_NEW 8MA -to VGA_*

#============================================================
# AUDIO
#============================================================
set_location_assignment PIN_AC24 -to AUDIO_L
set_location_assignment PIN_AE25 -to AUDIO_R
set_location_assignment PIN_AG26 -to AUDIO_SPDIF
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to AUDIO_*
set_instance_assignment -name CURRENT_STRENGTH_NEW 8MA -to AUDIO_*

#============================================================
# SDRAM
#============================================================
#set_location_assignment PIN_Y11 -to SDRAM_A[0]
#set_location_assignment PIN_AA26 -to SDRAM_A[1]
#set_location_assignment PIN_AA13 -to SDRAM_A[2]
#set_location_assignment PIN_AA11 -to SDRAM_A[3]
#set_location_assignment PIN_W11 -to SDRAM_A[4]
#set_location_assignment PIN_Y19 -to SDRAM_A[5]
#set_location_assignment PIN_AB23 -to SDRAM_A[6]
#set_location_assignment PIN_AC23 -to SDRAM_A[7]
#set_location_assignment PIN_AC22 -to SDRAM_A[8]
#set_location_assignment PIN_C12 -to SDRAM_A[9]
#set_location_assignment PIN_AB26 -to SDRAM_A[10]
#set_location_assignment PIN_AD17 -to SDRAM_A[11]
#set_location_assignment PIN_D12 -to SDRAM_A[12]
#set_location_assignment PIN_Y17 -to SDRAM_BA[0]
#set_location_assignment PIN_AB25 -to SDRAM_BA[1]

#set_location_assignment PIN_E8 -to SDRAM_DQ[0]
#set_location_assignment PIN_V12 -to SDRAM_DQ[1]
#set_location_assignment PIN_D11 -to SDRAM_DQ[2]
#set_location_assignment PIN_W12 -to SDRAM_DQ[3]
#set_location_assignment PIN_AH13 -to SDRAM_DQ[4]
#set_location_assignment PIN_D8 -to SDRAM_DQ[5]
#set_location_assignment PIN_AH14 -to SDRAM_DQ[6]
#set_location_assignment PIN_AF7 -to SDRAM_DQ[7]
#set_location_assignment PIN_AE24 -to SDRAM_DQ[8]
#set_location_assignment PIN_AD23 -to SDRAM_DQ[9]
#set_location_assignment PIN_AE6 -to SDRAM_DQ[10]
#set_location_assignment PIN_AE23 -to SDRAM_DQ[11]
#set_location_assignment PIN_AG14 -to SDRAM_DQ[12]
#set_location_assignment PIN_AD5 -to SDRAM_DQ[13]
#set_location_assignment PIN_AF4 -to SDRAM_DQ[14]
#set_location_assignment PIN_AH3 -to SDRAM_DQ[15]
#set_location_assignment PIN_AG13 -to SDRAM_DQML
#set_location_assignment PIN_AF13 -to SDRAM_DQMH

#set_location_assignment PIN_AD20 -to SDRAM_CLK
#set_location_assignment PIN_AG10 -to SDRAM_CKE

#set_location_assignment PIN_AA19 -to SDRAM_nWE
#set_location_assignment PIN_AA18 -to SDRAM_nCAS
#set_location_assignment PIN_Y18 -to SDRAM_nCS
#set_location_assignment PIN_W14 -to SDRAM_nRAS

#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SDRAM_*
#set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SDRAM_*
#set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_A*
#set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_BA*
#set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_DQ[*]
#set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_DQM*
#set_instance_assignment -name FAST_OUTPUT_REGISTER ON -to SDRAM_n*
#set_instance_assignment -name FAST_OUTPUT_ENABLE_REGISTER ON -to SDRAM_DQ[*]
#set_instance_assignment -name ALLOW_SYNCH_CTRL_USAGE OFF -to *|SDRAM_*

#============================================================
# I/O
#============================================================
set_location_assignment PIN_Y15 -to LED_USER
set_location_assignment PIN_AA15 -to LED_HDD
set_location_assignment PIN_AG28 -to LED_POWER

set_location_assignment PIN_AH24 -to BTN_USER
set_location_assignment PIN_AG25 -to BTN_OSD
set_location_assignment PIN_AG23 -to BTN_RESET

set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED_*
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to BTN_*
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to BTN_*

#============================================================
# CLOCK
#============================================================
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to FPGA_CLK1_50
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to FPGA_CLK2_50
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to FPGA_CLK3_50
set_location_assignment PIN_V11 -to FPGA_CLK1_50
set_location_assignment PIN_Y13 -to FPGA_CLK2_50
set_location_assignment PIN_E11 -to FPGA_CLK3_50

#============================================================
# HDMI
#============================================================
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_I2C_SCL
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_I2C_SDA
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_I2S
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_LRCLK
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_MCLK
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_SCLK
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_CLK
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_DE
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[0]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[1]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[2]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[3]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[4]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[5]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[6]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[7]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[8]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[9]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[10]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[11]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[12]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[13]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[14]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[15]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[16]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[17]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[18]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[19]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[20]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[21]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[22]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_D[23]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_HS
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_INT
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to HDMI_TX_VS
#set_location_assignment PIN_U10 -to HDMI_I2C_SCL
#set_location_assignment PIN_AA4 -to HDMI_I2C_SDA
#set_location_assignment PIN_T13 -to HDMI_I2S
#set_location_assignment PIN_T11 -to HDMI_LRCLK
#set_location_assignment PIN_U11 -to HDMI_MCLK
#set_location_assignment PIN_T12 -to HDMI_SCLK
#set_location_assignment PIN_AG5 -to HDMI_TX_CLK
#set_location_assignment PIN_AD19 -to HDMI_TX_DE
#set_location_assignment PIN_AD12 -to HDMI_TX_D[0]
#set_location_assignment PIN_AE12 -to HDMI_TX_D[1]
#set_location_assignment PIN_W8 -to HDMI_TX_D[2]
#set_location_assignment PIN_Y8 -to HDMI_TX_D[3]
#set_location_assignment PIN_AD11 -to HDMI_TX_D[4]
#set_location_assignment PIN_AD10 -to HDMI_TX_D[5]
#set_location_assignment PIN_AE11 -to HDMI_TX_D[6]
#set_location_assignment PIN_Y5 -to HDMI_TX_D[7]
#set_location_assignment PIN_AF10 -to HDMI_TX_D[8]
#set_location_assignment PIN_Y4 -to HDMI_TX_D[9]
#set_location_assignment PIN_AE9 -to HDMI_TX_D[10]
#set_location_assignment PIN_AB4 -to HDMI_TX_D[11]
#set_location_assignment PIN_AE7 -to HDMI_TX_D[12]
#set_location_assignment PIN_AF6 -to HDMI_TX_D[13]
#set_location_assignment PIN_AF8 -to HDMI_TX_D[14]
#set_location_assignment PIN_AF5 -to HDMI_TX_D[15]
#set_location_assignment PIN_AE4 -to HDMI_TX_D[16]
#set_location_assignment PIN_AH2 -to HDMI_TX_D[17]
#set_location_assignment PIN_AH4 -to HDMI_TX_D[18]
#set_location_assignment PIN_AH5 -to HDMI_TX_D[19]
#set_location_assignment PIN_AH6 -to HDMI_TX_D[20]
#set_location_assignment PIN_AG6 -to HDMI_TX_D[21]
#set_location_assignment PIN_AF9 -to HDMI_TX_D[22]
#set_location_assignment PIN_AE8 -to HDMI_TX_D[23]
#set_location_assignment PIN_T8 -to HDMI_TX_HS
#set_location_assignment PIN_AF11 -to HDMI_TX_INT
#set_location_assignment PIN_V13 -to HDMI_TX_VS

#============================================================
# KEY
#============================================================
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to KEY[0]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to KEY[1]
set_location_assignment PIN_AH17 -to KEY[0]
set_location_assignment PIN_AH16 -to KEY[1]

#============================================================
# LED
#============================================================
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[0]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[1]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[2]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[3]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[4]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[5]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[6]
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[7]
set_location_assignment PIN_W15 -to LED[0]
set_location_assignment PIN_AA24 -to LED[1]
set_location_assignment PIN_V16 -to LED[2]
set_location_assignment PIN_V15 -to LED[3]
set_location_assignment PIN_AF26 -to LED[4]
set_location_assignment PIN_AE26 -to LED[5]
set_location_assignment PIN_Y16 -to LED[6]
set_location_assignment PIN_AA23 -to LED[7]

#============================================================
# SW
#============================================================
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SW[0]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SW[1]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SW[2]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SW[3]
#set_location_assignment PIN_Y24 -to SW[0]
#set_location_assignment PIN_W24 -to SW[1]
#set_location_assignment PIN_W21 -to SW[2]
#set_location_assignment PIN_W20 -to SW[3]

set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:sys/build_id.tcl"

set_global_assignment -name CDF_FILE jtag.cdf
set_global_assignment -name QIP_FILE sys/sys.qip
set_global_assignment -name VHDL_FILE jtag_uart_0.vhd
set_global_assignment -name SYSTEMVERILOG_FILE emu.sv
set_global_assignment -name VHDL_FILE common/config_pkg.vhd
set_global_assignment -name VHDL_FILE bridge.vhd
set_global_assignment -name VHDL_FILE sharpmz.vhd

#============================================================
# Latest T80 CPU
#============================================================
set_global_assignment -name VHDL_FILE common/T80/T80.vhd
set_global_assignment -name VHDL_FILE common/T80/T8080se.vhd
set_global_assignment -name VHDL_FILE common/T80/T80_ALU.vhd
set_global_assignment -name VHDL_FILE common/T80/T80_MCode.vhd
set_global_assignment -name VHDL_FILE common/T80/T80_Pack.vhd
set_global_assignment -name VHDL_FILE common/T80/T80_Reg.vhd
set_global_assignment -name VHDL_FILE common/T80/T80a.vhd
set_global_assignment -name VHDL_FILE common/T80/T80se.vhd
set_global_assignment -name VHDL_FILE common/T80/T80sed.vhd

#============================================================
# i8253 Programmable Interval Timer
#============================================================
set_global_assignment -name VHDL_FILE common/i8254/i8254_counter.vhd
set_global_assignment -name VHDL_FILE common/i8254/i8254.vhd

#============================================================
# i8255 Programmable Peripheral Interface 
#============================================================
set_global_assignment -name VHDL_FILE common/i8255/i8255.vhd
#set_global_assignment -name VHDL_FILE mz80b/i8255/i8255.vhd

#============================================================
# MZ80C specific modules.
#============================================================
set_global_assignment -name VHDL_FILE mz80c/mz80c.vhd

#============================================================
# MZ80B specific modules.
#============================================================
#set_global_assignment -name VHDL_FILE mz80b/mz80b_dummy.vhd
set_global_assignment -name VHDL_FILE mz80b/mz80b.vhd

#============================================================
# NEO430
#============================================================
#set_global_assignment -name VHDL_FILE neo430/neo430.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_addr_gen.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_alu.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_application_image.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_boot_rom.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_bootloader_image.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_cfu.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_control.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_cpu.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_crc.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_dmem.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_gpio.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_imem.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_muldiv.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_package.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_pwm.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_reg_file.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_sysconfig.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_timer.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_top.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_uart.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_spi.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_twi.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_wb_interface.vhd
#set_global_assignment -name VHDL_FILE neo430/neo430_wdt.vhd
#============================================================
# STORM
#============================================================
#set_global_assignment -name VHDL_FILE    storm/STORM_SoC.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/ALU.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/BARREL_SHIFTER.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/BUS_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/CACHE.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/CORE.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/CORE_PKG.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/FLOW_CTRL.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/LOAD_STORE_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/MC_SYS.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/MS_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/MULTIPLY_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/OPCODE_DECODER.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/OPERAND_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/REG_FILE.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/STORM_TOP.vhd
#set_global_assignment -name VHDL_FILE    storm/CPU/WB_UNIT.vhd
#set_global_assignment -name VHDL_FILE    storm/components/boot_rom/rtl/BOOT_ROM_FILE.vhd
#set_global_assignment -name VHDL_FILE    storm/components/seven_segment_controller/rtl/SEVEN_SEG_CTRL.vhd
#set_global_assignment -name VHDL_FILE    storm/components/ps2core/rtl/vhdl/ps2_wb.vhd
#set_global_assignment -name VHDL_FILE    storm/components/ps2core/rtl/vhdl/ps2.vhd
#set_global_assignment -name VHDL_FILE    storm/components/reset_protector/rtl/RST_PROTECT.vhd
#set_global_assignment -name VHDL_FILE    storm/components/timer/rtl/TIMER.vhd
#set_global_assignment -name VHDL_FILE    storm/components/io_controller/rtl/GP_IO_CTRL.vhd
#set_global_assignment -name VHDL_FILE    storm/components/vector_interrupt_controller/rtl/VIC.vhd
#set_global_assignment -name VHDL_FILE    storm/components/miniuart/rtl/vhdl/MINI_UART.vhd
#set_global_assignment -name VHDL_FILE    storm/components/miniuart/rtl/vhdl/Txunit.vhd
#set_global_assignment -name VHDL_FILE    storm/components/miniuart/rtl/vhdl/Rxunit.vhd
#set_global_assignment -name VHDL_FILE    storm/components/miniuart/rtl/vhdl/utils.vhd
#set_global_assignment -name VHDL_FILE    storm/components/i2c_controller/rtl/vhdl/i2c_master_top.vhd
#set_global_assignment -name VHDL_FILE    storm/components/i2c_controller/rtl/vhdl/i2c_master_byte_ctrl.vhd
#set_global_assignment -name VHDL_FILE    storm/components/i2c_controller/rtl/vhdl/i2c_master_bit_ctrl.vhd
#set_global_assignment -name VHDL_FILE    storm/components/pwm_controller/rtl/PWM_CTRL.vhd
#set_global_assignment -name VHDL_FILE    storm/components/sram_memory/rtl/MEMORY.vhd
#set_global_assignment -name VHDL_FILE    storm/components/ioctl/rtl/ioctl.vhd
#set_global_assignment -name VERILOG_FILE storm/components/spi_controller/rtl/verilog/spi_top.v
#set_global_assignment -name VERILOG_FILE storm/components/spi_controller/rtl/verilog/spi_defines.v
#set_global_assignment -name VERILOG_FILE storm/components/spi_controller/rtl/verilog/spi_clgen.v
#set_global_assignment -name VERILOG_FILE storm/components/spi_controller/rtl/verilog/spi_shift.v
#set_global_assignment -name VERILOG_FILE storm/components/spi_controller/rtl/verilog/timescale.v

#============================================================
# PLL
#============================================================
set_global_assignment -name QIP_FILE common/pll.qip
set_global_assignment -name VHDL_FILE common/clkgen.vhd
#set_global_assignment -name QIP_FILE common/pll_1.qip
#set_global_assignment -name QIP_FILE common/pll_2.qip
#set_global_assignment -name QIP_FILE common/pll_4.qip

#============================================================
# Common modules
#============================================================
set_global_assignment -name VHDL_FILE common/dprom.vhd
set_global_assignment -name VHDL_FILE common/clk_div.vhd
set_global_assignment -name VHDL_FILE common/mctrl.vhd
set_global_assignment -name VHDL_FILE common/dpram.vhd
set_global_assignment -name VHDL_FILE common/keymatrix.vhd
set_global_assignment -name VHDL_FILE common/video.vhd
set_global_assignment -name VHDL_FILE common/cmt.vhd
set_global_assignment -name VHDL_FILE common/z8420/z8420.vhd
set_global_assignment -name VHDL_FILE common/z8420/Interrupt.vhd

#============================================================
# Functions
#============================================================
set_global_assignment -name VHDL_FILE common/functions.vhd

set_global_assignment -name FLOW_ENABLE_RTL_VIEWER ON
set_global_assignment -name ALLOW_REGISTER_RETIMING ON


set_location_assignment PIN_AA13 -to UART_TX
set_location_assignment PIN_AA11 -to UART_RX
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to UART_TX
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to UART_RX
set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to UART_TX
#
#set_location_assignment PIN_AF25 -to SPI_MISO
#set_location_assignment PIN_AF28 -to SPI_CS[0]
#set_location_assignment PIN_AF27 -to SPI_MOSI
#set_location_assignment PIN_AH26 -to SPI_SCLK

#set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SPI_MISO
#set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SPI_CS[0]
#set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SPI_MOSI
#set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to SPI_SCLK

#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SPI_MISO
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SPI_CS[0]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SPI_MOSI
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to SPI_SCLK
#set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to SPI_MISO









set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top
